Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
ac20758
Fixed some more LFS_TRACE format specifiers
geky Jun 25, 2024
6e72698
gha: Update github actions to the latest versions
yamt Sep 18, 2024
72a4b57
gha: Make the artifact names unique
yamt Sep 18, 2024
2c4b262
gha: Merge artifacts on download
geky Sep 19, 2024
7db9e16
gha: Switched to standard da for cross-workflow downloads
geky Sep 19, 2024
798073c
gha: Dropped minor/patch version pinning of actions
geky Sep 19, 2024
b78afe2
Merge pull request #1026 from yamt/update-gh-actions
geky Sep 24, 2024
e1636d0
Add an alternative way to override LFS_MALLOC etc
yamt Jul 10, 2024
4a845be
Rename LFS_USER_DEFINES to LFS_DEFINES
yamt Sep 18, 2024
f1c430e
Added some tests around seek integer overflow/underflow
geky Sep 24, 2024
abaec45
Fixed seek undefined behavior on signed integer overflow
geky Sep 24, 2024
a2c2e49
Write the detect cycles function as a function to optimize code
wdfk-prog Oct 4, 2024
1f82c0f
Added some metadata_max testing
geky Oct 3, 2024
2d62d2f
Fixed metadata_max==prog_size commit->end calculation
geky Oct 4, 2024
ea431bd
Added some checks that metadata_max makes sense
geky Oct 4, 2024
1407db9
Added links to ramcrc32bd and ramrsbd
geky Nov 1, 2024
0de0389
paths: Reworked test_paths to cover more corner cases
geky Nov 20, 2024
232e736
paths: Added trailing slashes and dots tests
geky Nov 21, 2024
a603507
paths: Fixed/doc trailing slash/dot POSIX incompatibilities
geky Nov 22, 2024
dc92dec
paths: Reject dotdots above root
geky Nov 23, 2024
815f0d8
paths: Fixed dots followed by dotdots
geky Nov 23, 2024
80ca1ea
paths: Reject empty paths
geky Nov 24, 2024
3094705
paths: Extended tests to cover open with CREAT/EXCL
geky Nov 25, 2024
b735c8f
paths: Added tests over NOENT + trailing slash/dot
geky Nov 25, 2024
999ef66
paths: Changed CREAT with a trailing slash to return NOTDIR
geky Nov 25, 2024
bd01a4c
Merge pull request #1013 from wdfk-prog/feature_2.9.3
geky Dec 6, 2024
c961e1f
Merge pull request #1004 from yamt/user-define-header
geky Dec 6, 2024
2ba4280
Merge pull request #997 from littlefs-project/fix-trace-format-again
geky Dec 6, 2024
d7a9119
Merge pull request #1027 from littlefs-project/fix-seek-overflow-ub
geky Dec 6, 2024
83fe41b
Merge pull request #1031 from littlefs-project/fix-enospc-issues
geky Dec 6, 2024
78f9a5f
Merge pull request #1038 from littlefs-project/link-ramcrc32bd-ramrsbd
geky Dec 6, 2024
2fcecc8
Merge pull request #1046 from littlefs-project/fix-trailing-slashes
geky Dec 6, 2024
215613e
gha: Fixed x86-only statuses
geky Dec 9, 2024
469c863
Assert on NULL IO function
wangdongustc Dec 9, 2024
dae656a
Fix prettyasserts.py for pointer asserts
wangdongustc Dec 9, 2024
b8e4433
Merge pull request #1052 from wangdongustc/assert_null_sync
geky Dec 10, 2024
3d03864
Bumped minor version to v2.10
geky Dec 11, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 16 additions & 13 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ jobs:
github.event.workflow_run.head_sha == github.sha}}

steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
with:
ref: ${{github.event.workflow_run.head_sha}}
# need workflow access since we push branches
Expand All @@ -30,26 +30,29 @@ jobs:
fetch-depth: 0

# try to get results from tests
- uses: dawidd6/action-download-artifact@v2
- uses: actions/download-artifact@v4
continue-on-error: true
with:
workflow: ${{github.event.workflow_run.name}}
run_id: ${{github.event.workflow_run.id}}
name: sizes
github-token: ${{secrets.GITHUB_TOKEN}}
run-id: ${{github.event.workflow_run.id}}
pattern: '{sizes,sizes-*}'
merge-multiple: true
path: sizes
- uses: dawidd6/action-download-artifact@v2
- uses: actions/download-artifact@v4
continue-on-error: true
with:
workflow: ${{github.event.workflow_run.name}}
run_id: ${{github.event.workflow_run.id}}
name: cov
github-token: ${{secrets.GITHUB_TOKEN}}
run-id: ${{github.event.workflow_run.id}}
pattern: '{cov,cov-*}'
merge-multiple: true
path: cov
- uses: dawidd6/action-download-artifact@v2
- uses: actions/download-artifact@v4
continue-on-error: true
with:
workflow: ${{github.event.workflow_run.name}}
run_id: ${{github.event.workflow_run.id}}
name: bench
github-token: ${{secrets.GITHUB_TOKEN}}
run-id: ${{github.event.workflow_run.id}}
pattern: '{bench,bench-*}'
merge-multiple: true
path: bench

- name: find-version
Expand Down
18 changes: 10 additions & 8 deletions .github/workflows/status.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,12 +13,13 @@ jobs:
status:
runs-on: ubuntu-latest
steps:
- uses: dawidd6/action-download-artifact@v2
- uses: actions/download-artifact@v4
continue-on-error: true
with:
workflow: ${{github.event.workflow_run.name}}
run_id: ${{github.event.workflow_run.id}}
name: status
github-token: ${{secrets.GITHUB_TOKEN}}
run-id: ${{github.event.workflow_run.id}}
pattern: '{status,status-*}'
merge-multiple: true
path: status
- name: update-status
continue-on-error: true
Expand Down Expand Up @@ -67,12 +68,13 @@ jobs:

steps:
# generated comment?
- uses: dawidd6/action-download-artifact@v2
- uses: actions/download-artifact@v4
continue-on-error: true
with:
workflow: ${{github.event.workflow_run.name}}
run_id: ${{github.event.workflow_run.id}}
name: comment
github-token: ${{secrets.GITHUB_TOKEN}}
run-id: ${{github.event.workflow_run.id}}
pattern: '{comment,comment-*}'
merge-multiple: true
path: comment
- name: update-comment
continue-on-error: true
Expand Down
71 changes: 37 additions & 34 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ jobs:
arch: [x86_64, thumb, mips, powerpc]

steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- name: install
run: |
# need a few things
Expand Down Expand Up @@ -235,9 +235,9 @@ jobs:

# create size statuses
- name: upload-sizes
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v4
with:
name: sizes
name: sizes-${{matrix.arch}}
path: sizes
- name: status-sizes
run: |
Expand Down Expand Up @@ -273,16 +273,16 @@ jobs:
}' | tee status/$(basename $f .csv).json
done
- name: upload-status-sizes
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v4
with:
name: status
name: status-sizes-${{matrix.arch}}
path: status
retention-days: 1

# create cov statuses
- name: upload-cov
if: ${{matrix.arch == 'x86_64'}}
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v4
with:
name: cov
path: cov
Expand Down Expand Up @@ -317,11 +317,11 @@ jobs:
target_step: env.STEP,
}' | tee status/$(basename $f .csv)-$s.json
done
- name: upload-status-sizes
- name: upload-status-cov
if: ${{matrix.arch == 'x86_64'}}
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v4
with:
name: status
name: status-cov
path: status
retention-days: 1

Expand All @@ -336,7 +336,7 @@ jobs:
pls: [1, 2]

steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- name: install
run: |
# need a few things
Expand All @@ -361,7 +361,7 @@ jobs:
test-no-intrinsics:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- name: install
run: |
# need a few things
Expand All @@ -378,7 +378,7 @@ jobs:
test-multiversion:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- name: install
run: |
# need a few things
Expand All @@ -395,7 +395,7 @@ jobs:
test-lfs2_0:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- name: install
run: |
# need a few things
Expand All @@ -414,7 +414,7 @@ jobs:
test-valgrind:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- name: install
run: |
# need a few things
Expand All @@ -436,7 +436,7 @@ jobs:
test-clang:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- name: install
run: |
# need a few things
Expand All @@ -459,7 +459,7 @@ jobs:
bench:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- name: install
run: |
# need a few things
Expand Down Expand Up @@ -491,7 +491,7 @@ jobs:

# create bench statuses
- name: upload-bench
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v4
with:
name: bench
path: bench
Expand Down Expand Up @@ -525,20 +525,20 @@ jobs:
}' | tee status/$(basename $f .csv)-$s.json
done
- name: upload-status-bench
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v4
with:
name: status
name: status-bench
path: status
retention-days: 1

# run compatibility tests using the current master as the previous version
test-compat:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
if: ${{github.event_name == 'pull_request'}}
# checkout the current pr target into lfsp
- uses: actions/checkout@v2
- uses: actions/checkout@v4
if: ${{github.event_name == 'pull_request'}}
with:
ref: ${{github.event.pull_request.base.ref}}
Expand Down Expand Up @@ -572,7 +572,7 @@ jobs:
runs-on: ubuntu-latest
if: ${{!endsWith(github.ref, '-prefix')}}
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- name: install
run: |
# need a few things
Expand All @@ -582,7 +582,7 @@ jobs:
gcc --version
python3 --version
fusermount -V
- uses: actions/checkout@v2
- uses: actions/checkout@v4
with:
repository: littlefs-project/littlefs-fuse
ref: v2
Expand Down Expand Up @@ -622,7 +622,7 @@ jobs:
runs-on: ubuntu-latest
if: ${{!endsWith(github.ref, '-prefix')}}
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- name: install
run: |
# need a few things
Expand All @@ -632,12 +632,12 @@ jobs:
gcc --version
python3 --version
fusermount -V
- uses: actions/checkout@v2
- uses: actions/checkout@v4
with:
repository: littlefs-project/littlefs-fuse
ref: v2
path: v2
- uses: actions/checkout@v2
- uses: actions/checkout@v4
with:
repository: littlefs-project/littlefs-fuse
ref: v1
Expand Down Expand Up @@ -694,7 +694,7 @@ jobs:
runs-on: ubuntu-latest
needs: [test, bench]
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
if: ${{github.event_name == 'pull_request'}}
- name: install
if: ${{github.event_name == 'pull_request'}}
Expand All @@ -704,23 +704,26 @@ jobs:
pip3 install toml
gcc --version
python3 --version
- uses: actions/download-artifact@v2
- uses: actions/download-artifact@v4
if: ${{github.event_name == 'pull_request'}}
continue-on-error: true
with:
name: sizes
pattern: '{sizes,sizes-*}'
merge-multiple: true
path: sizes
- uses: actions/download-artifact@v2
- uses: actions/download-artifact@v4
if: ${{github.event_name == 'pull_request'}}
continue-on-error: true
with:
name: cov
pattern: '{cov,cov-*}'
merge-multiple: true
path: cov
- uses: actions/download-artifact@v2
- uses: actions/download-artifact@v4
if: ${{github.event_name == 'pull_request'}}
continue-on-error: true
with:
name: bench
pattern: '{bench,bench-*}'
merge-multiple: true
path: bench

# try to find results from tests
Expand Down Expand Up @@ -862,7 +865,7 @@ jobs:
body: $comment,
}' | tee comment/comment.json
- name: upload-comment
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v4
with:
name: comment
path: comment
Expand Down
8 changes: 8 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -251,6 +251,12 @@ License Identifiers that are here available: http://spdx.org/licenses/
filesystem over USB. Allows mounting littlefs on a host PC without additional
drivers.

- [ramcrc32bd] - An example block device using littlefs's 32-bit CRC for
error-correction.

- [ramrsbd] - An example block device using Reed-Solomon codes for
error-correction.

- [Mbed OS] - The easiest way to get started with littlefs is to jump into Mbed
which already has block device drivers for most forms of embedded storage.
littlefs is available in Mbed OS as the [LittleFileSystem] class.
Expand Down Expand Up @@ -281,6 +287,8 @@ License Identifiers that are here available: http://spdx.org/licenses/
[mklfs]: https://github.com/whitecatboard/Lua-RTOS-ESP32/tree/master/components/mklfs/src
[mklittlefs]: https://github.com/earlephilhower/mklittlefs
[pico-littlefs-usb]: https://github.com/oyama/pico-littlefs-usb
[ramcrc32bd]: https://github.com/geky/ramcrc32bd
[ramrsbd]: https://github.com/geky/ramrsbd
[Mbed OS]: https://github.com/armmbed/mbed-os
[LittleFileSystem]: https://os.mbed.com/docs/mbed-os/latest/apis/littlefilesystem.html
[SPIFFS]: https://github.com/pellepl/spiffs
Expand Down
Loading
Loading