aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.github/dependabot.yml15
-rw-r--r--.github/workflows/ci.yml66
-rw-r--r--README.md2
-rw-r--r--docs/index.html9
-rw-r--r--src/lfs.c2
-rw-r--r--src/lfs.def2
6 files changed, 56 insertions, 40 deletions
diff --git a/.github/dependabot.yml b/.github/dependabot.yml
new file mode 100644
index 0000000..bfccd65
--- /dev/null
+++ b/.github/dependabot.yml
@@ -0,0 +1,15 @@
1# Keep GitHub Actions up to date with GitHub's Dependabot...
2# https://docs.github.com/en/code-security/how-tos/secure-your-supply-chain/secure-your-dependencies/auto-update-actions
3# https://docs.github.com/en/code-security/reference/supply-chain-security/dependabot-options-reference#package-ecosystem
4version: 2
5updates:
6 - package-ecosystem: github-actions
7 directory: /
8 groups:
9 github-actions:
10 patterns:
11 - "*" # Group all Actions updates into a single larger pull request
12 schedule:
13 interval: weekly
14 cooldown: # https://nesbitt.io/2026/03/04/package-managers-need-to-cool-down.html
15 default-days: 7
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 2e8364e..38b6f09 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -4,75 +4,69 @@ on:
4 pull_request: 4 pull_request:
5 push: 5 push:
6 branches: 6 branches:
7 - master 7 - "master"
8
9permissions: read-all
8 10
9jobs: 11jobs:
10 TestMatrix: 12 TestMatrix:
11 strategy: 13 strategy:
12 matrix: 14 matrix:
13 lua-version: ["5.4", "5.3", "5.2", "5.1", "luajit"] 15 lua-version: ["5.5", "5.4", "5.3", "5.2", "5.1", "luajit"]
14 os: ["ubuntu-latest"] 16 os: ["ubuntu-latest"]
15 libflag: ["-shared --coverage"] 17 libflag: ["-shared --coverage"]
16 include: 18 include:
17 - os: "macos-latest" 19 - os: "macos-latest"
18 lua-version: "5.4" 20 lua-version: "5.5"
19 libflag: "-bundle -undefined dynamic_lookup -all_load --coverage" 21 libflag: "-bundle -undefined dynamic_lookup -all_load --coverage"
20 - os: "windows-latest" 22 - os: "windows-latest"
21 toolchain: "msvc" 23 toolchain: "msvc"
22 lua-version: "5.4" 24 lua-version: "5.5"
23 - os: "windows-latest" 25 - os: "windows-latest"
24 lua-version: "luajit" 26 lua-version: "luajit"
27 libflag: "-shared --coverage"
25 runs-on: ${{ matrix.os }} 28 runs-on: ${{ matrix.os }}
26 29
27 steps: 30 steps:
28 - uses: actions/checkout@master 31 - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
32 with:
33 persist-credentials: false
29 34
30 - name: Setup MSVC 35 - name: Setup MSVC
31 # 'luarocks/gh-actions-lua' step requires msvc to build PUC-Rio Lua 36 # 'luarocks/gh-actions-lua' step requires msvc to build PUC-Rio Lua
32 # versions on Windows (LuaJIT will be built using MinGW/gcc). 37 # versions on Windows (LuaJIT will be built using MinGW/gcc).
33 if: ${{ matrix.toolchain == 'msvc' }} 38 if: runner.os == 'Windows' && matrix.toolchain == 'msvc'
34 uses: ilammy/msvc-dev-cmd@v1 39 uses: step-security/msvc-dev-cmd@22c98154b708dbd743e6f27a933cf6ceba3305c4 # v1.13.1
35 40
36 - uses: luarocks/gh-actions-lua@master 41 - uses: luarocks/gh-actions-lua@56eba09993704b908cc3c7c2753e630d18cb9696 # v14
37 with: 42 with:
38 luaVersion: ${{ matrix.lua-version }} 43 luaVersion: ${{ matrix.lua-version }}
39 44
40 - uses: luarocks/gh-actions-luarocks@master 45 - uses: luarocks/gh-actions-luarocks@95d2308a0aff36ad31ebadca493ed14853399842 # v7
41
42 - name: Prep luacov
43 run: |
44 luarocks install luacov
45
46 - name: Prep luacov-coveralls
47 # TODO Windows coverage
48 if: ${{ matrix.os != 'windows-latest' }}
49 run: |
50 pip install --user cpp-coveralls
51 # install luacov-coveralls, but avoid installing luafilesystem
52 luarocks install lua-path
53 luarocks install dkjson
54 luarocks install luacov-coveralls --server=https://luarocks.org/dev --deps-mode=none
55 46
56 - name: Unix Build 47 - name: GCC Build
57 if: ${{ matrix.os != 'windows-latest' }} 48 if: runner.os != 'Windows' || matrix.toolchain != 'msvc'
58 run: | 49 run: |
59 luarocks make CFLAGS="-O2 -fPIC -ftest-coverage -fprofile-arcs" LIBFLAG="${{ matrix.libflag }}" 50 luarocks make CFLAGS="-O2 -fPIC -ftest-coverage -fprofile-arcs" LIBFLAG="${{ matrix.libflag }}"
60 51
61 - name: Windows Build 52 - name: MSVC Build
62 # TODO Windows coverage 53 # TODO Windows coverage on MSVC
63 if: ${{ matrix.os == 'windows-latest' }} 54 if: runner.os == 'Windows' && matrix.toolchain == 'msvc'
64 run: | 55 run: |
65 luarocks make 56 luarocks make
66 57
67 - name: Test 58 - name: Test
68 run: | 59 run: |
69 lua -lluacov tests/test.lua 60 lua tests/test.lua
70 61
71 - name: Coverage 62 - name: Run gcov in the main source file
72 # TODO Windows coverage 63 if: runner.os != 'Windows' || matrix.toolchain != 'msvc'
73 if: ${{ matrix.os != 'windows-latest' }}
74 run: | 64 run: |
75 export MY_PYTHON_VER=$(python -c 'import sys; print(".".join(sys.version.split(".")[0:2]))') 65 gcov --relative-only src/lfs.c
76 export PATH="/Users/runner/Library/Python/$MY_PYTHON_VER/bin:$PATH" 66
77 coveralls -b . -i src --dump c.report.json 67 - name: Upload Coverage
78 luacov-coveralls -j c.report.json -v -t ${{ secrets.GITHUB_TOKEN }} 68 # TODO Windows coverage on MSVC
69 if: runner.os != 'Windows' || matrix.toolchain != 'msvc'
70 uses: coverallsapp/github-action@8d6379e14d29928660c4ba802d8e85393440b329 # v2.3.8
71 with:
72 github-token: ${{ secrets.GITHUB_TOKEN }}
diff --git a/README.md b/README.md
index 7e008b8..97f545d 100644
--- a/README.md
+++ b/README.md
@@ -1,7 +1,7 @@
1[![License](http://img.shields.io/badge/Licence-MIT-brightgreen.svg)](LICENSE) 1[![License](http://img.shields.io/badge/Licence-MIT-brightgreen.svg)](LICENSE)
2[![Build Status](https://github.com/lunarmodules/luafilesystem/actions/workflows/ci.yml/badge.svg)](https://github.com/lunarmodules/luafilesystem/actions) 2[![Build Status](https://github.com/lunarmodules/luafilesystem/actions/workflows/ci.yml/badge.svg)](https://github.com/lunarmodules/luafilesystem/actions)
3[![Build status](https://ci.appveyor.com/api/projects/status/y04s4ms7u16trw8e?svg=true)](https://ci.appveyor.com/project/ignacio/luafilesystem) 3[![Build status](https://ci.appveyor.com/api/projects/status/y04s4ms7u16trw8e?svg=true)](https://ci.appveyor.com/project/ignacio/luafilesystem)
4[![Coverage Status](https://coveralls.io/repos/lunarmodules/luafilesystem/badge.png)](https://coveralls.io/r/lunarmodules/luafilesystem) 4[![Coverage Status](https://coveralls.io/repos/github/lunarmodules/luafilesystem/badge.svg?branch=master)](https://coveralls.io/github/lunarmodules/luafilesystem?branch=master)
5 5
6# LuaFileSystem - File System Library for Lua 6# LuaFileSystem - File System Library for Lua
7 7
diff --git a/docs/index.html b/docs/index.html
index 34e0730..bfc2450 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -70,7 +70,7 @@ the underlying directory structure and file attributes.</p>
70 70
71<h2><a name="status"></a>Status</h2> 71<h2><a name="status"></a>Status</h2>
72 72
73<p>Current version is 1.8.0. It works with Lua 5.1, 5.2, 5.3 and 5.4, and it runs on various 73<p>Current version is 1.9.0. It works with Lua 5.1 to Lua 5.5, and it runs on various
74flavors of Unix (including Linux, BSDs, macOS) and Windows.</p> 74flavors of Unix (including Linux, BSDs, macOS) and Windows.</p>
75 75
76<h2><a name="download"></a>Download</h2> 76<h2><a name="download"></a>Download</h2>
@@ -86,6 +86,13 @@ $ luarocks install luafilesystem
86<h2><a name="history"></a>History</h2> 86<h2><a name="history"></a>History</h2>
87 87
88<dl class="history"> 88<dl class="history">
89 <dt><strong>Version 1.9.0</strong> [28/Dec/2025]</dt>
90 <dd><ul>
91 <li>Lua 5.5 support</li>
92 <li>Fixed some compiler warnings</li>
93 <li>Assorted improvements for Windows</li>
94 </ul></dd>
95
89 <dt><strong>Version 1.8.0</strong> [22/Apr/2020]</dt> 96 <dt><strong>Version 1.8.0</strong> [22/Apr/2020]</dt>
90 <dd><ul> 97 <dd><ul>
91 <li>Lua 5.4 support</li> 98 <li>Lua 5.4 support</li>
diff --git a/src/lfs.c b/src/lfs.c
index 07831aa..6fda53f 100644
--- a/src/lfs.c
+++ b/src/lfs.c
@@ -74,7 +74,7 @@
74 74
75#include "lfs.h" 75#include "lfs.h"
76 76
77#define LFS_VERSION "1.8.0" 77#define LFS_VERSION "1.9.0"
78#define LFS_LIBNAME "lfs" 78#define LFS_LIBNAME "lfs"
79 79
80#if LUA_VERSION_NUM >= 503 /* Lua 5.3+ */ 80#if LUA_VERSION_NUM >= 503 /* Lua 5.3+ */
diff --git a/src/lfs.def b/src/lfs.def
index bd8c847..589b87d 100644
--- a/src/lfs.def
+++ b/src/lfs.def
@@ -1,4 +1,4 @@
1LIBRARY lfs.dll 1LIBRARY lfs.dll
2VERSION 1.8 2VERSION 1.9
3EXPORTS 3EXPORTS
4luaopen_lfs 4luaopen_lfs