├── .github └── workflows │ ├── ci.yml │ └── pr-title.yml ├── .gitignore ├── CHANGELOG.md ├── Cargo.lock ├── Cargo.toml ├── LICENSE ├── README.md ├── deny.toml ├── ic-test.json ├── integration-tests ├── Cargo.toml └── src │ ├── bindings │ ├── canister_initial_backend.rs │ ├── canister_upgraded_backend.rs │ └── mod.rs │ ├── lib.rs │ ├── test_setup.rs │ └── tests.rs ├── scripts ├── build_tests.sh └── deploy_tests.sh ├── stable-fs ├── Cargo.toml ├── README.md └── src │ ├── error.rs │ ├── filename_cache.rs │ ├── fs.rs │ ├── fs_tests.rs │ ├── lib.rs │ ├── runtime.rs │ ├── runtime │ ├── dir.rs │ ├── fd.rs │ ├── file.rs │ ├── structure_helpers.rs │ └── types.rs │ ├── storage.rs │ ├── storage │ ├── allocator.rs │ ├── chunk_iterator.rs │ ├── dummy.rs │ ├── journal.rs │ ├── metadata_provider.rs │ ├── ptr_cache.rs │ ├── stable.rs │ ├── transient.rs │ └── types.rs │ └── test_utils.rs └── test_canisters ├── a ├── b.sh ├── canister_initial ├── .gitignore ├── Cargo.lock ├── clear_buffer.sh ├── create_buffer.sh ├── dfx.json ├── load_buffer.sh ├── read_buffer.sh ├── src │ └── canister_initial_backend │ │ ├── Cargo.toml │ │ ├── canister_initial_backend.did │ │ └── src │ │ └── lib.rs ├── store_buffer.sh ├── store_buffer_4k.sh └── store_stable.sh ├── canister_upgraded ├── .gitignore ├── Cargo.lock ├── README.md ├── dfx.json └── src │ └── canister_upgraded_backend │ ├── Cargo.toml │ ├── canister_upgraded_backend.did │ └── src │ └── lib.rs ├── fsperf.repl ├── perf.repl └── res ├── memory-v0.4-some_file_content.bin ├── memory-v0_4-op35_1000.bin ├── structure-v0_4-op35_1000.txt └── structure-v0_7-op35_1000.txt /.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/.github/workflows/ci.yml -------------------------------------------------------------------------------- /.github/workflows/pr-title.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/.github/workflows/pr-title.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/.gitignore -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/CHANGELOG.md -------------------------------------------------------------------------------- /Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/Cargo.lock -------------------------------------------------------------------------------- /Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/Cargo.toml -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/README.md -------------------------------------------------------------------------------- /deny.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/deny.toml -------------------------------------------------------------------------------- /ic-test.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/ic-test.json -------------------------------------------------------------------------------- /integration-tests/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/integration-tests/Cargo.toml -------------------------------------------------------------------------------- /integration-tests/src/bindings/canister_initial_backend.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/integration-tests/src/bindings/canister_initial_backend.rs -------------------------------------------------------------------------------- /integration-tests/src/bindings/canister_upgraded_backend.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/integration-tests/src/bindings/canister_upgraded_backend.rs -------------------------------------------------------------------------------- /integration-tests/src/bindings/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/integration-tests/src/bindings/mod.rs -------------------------------------------------------------------------------- /integration-tests/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/integration-tests/src/lib.rs -------------------------------------------------------------------------------- /integration-tests/src/test_setup.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/integration-tests/src/test_setup.rs -------------------------------------------------------------------------------- /integration-tests/src/tests.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/integration-tests/src/tests.rs -------------------------------------------------------------------------------- /scripts/build_tests.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/scripts/build_tests.sh -------------------------------------------------------------------------------- /scripts/deploy_tests.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/scripts/deploy_tests.sh -------------------------------------------------------------------------------- /stable-fs/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/stable-fs/Cargo.toml -------------------------------------------------------------------------------- /stable-fs/README.md: -------------------------------------------------------------------------------- 1 | ../README.md -------------------------------------------------------------------------------- /stable-fs/src/error.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/stable-fs/src/error.rs -------------------------------------------------------------------------------- /stable-fs/src/filename_cache.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/stable-fs/src/filename_cache.rs -------------------------------------------------------------------------------- /stable-fs/src/fs.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/stable-fs/src/fs.rs -------------------------------------------------------------------------------- /stable-fs/src/fs_tests.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/stable-fs/src/fs_tests.rs -------------------------------------------------------------------------------- /stable-fs/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/stable-fs/src/lib.rs -------------------------------------------------------------------------------- /stable-fs/src/runtime.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/stable-fs/src/runtime.rs -------------------------------------------------------------------------------- /stable-fs/src/runtime/dir.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/stable-fs/src/runtime/dir.rs -------------------------------------------------------------------------------- /stable-fs/src/runtime/fd.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/stable-fs/src/runtime/fd.rs -------------------------------------------------------------------------------- /stable-fs/src/runtime/file.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/stable-fs/src/runtime/file.rs -------------------------------------------------------------------------------- /stable-fs/src/runtime/structure_helpers.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/stable-fs/src/runtime/structure_helpers.rs -------------------------------------------------------------------------------- /stable-fs/src/runtime/types.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/stable-fs/src/runtime/types.rs -------------------------------------------------------------------------------- /stable-fs/src/storage.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/stable-fs/src/storage.rs -------------------------------------------------------------------------------- /stable-fs/src/storage/allocator.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/stable-fs/src/storage/allocator.rs -------------------------------------------------------------------------------- /stable-fs/src/storage/chunk_iterator.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/stable-fs/src/storage/chunk_iterator.rs -------------------------------------------------------------------------------- /stable-fs/src/storage/dummy.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/stable-fs/src/storage/dummy.rs -------------------------------------------------------------------------------- /stable-fs/src/storage/journal.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/stable-fs/src/storage/journal.rs -------------------------------------------------------------------------------- /stable-fs/src/storage/metadata_provider.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/stable-fs/src/storage/metadata_provider.rs -------------------------------------------------------------------------------- /stable-fs/src/storage/ptr_cache.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/stable-fs/src/storage/ptr_cache.rs -------------------------------------------------------------------------------- /stable-fs/src/storage/stable.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/stable-fs/src/storage/stable.rs -------------------------------------------------------------------------------- /stable-fs/src/storage/transient.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/stable-fs/src/storage/transient.rs -------------------------------------------------------------------------------- /stable-fs/src/storage/types.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/stable-fs/src/storage/types.rs -------------------------------------------------------------------------------- /stable-fs/src/test_utils.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/stable-fs/src/test_utils.rs -------------------------------------------------------------------------------- /test_canisters/a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/test_canisters/a -------------------------------------------------------------------------------- /test_canisters/b.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/test_canisters/b.sh -------------------------------------------------------------------------------- /test_canisters/canister_initial/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/test_canisters/canister_initial/.gitignore -------------------------------------------------------------------------------- /test_canisters/canister_initial/Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/test_canisters/canister_initial/Cargo.lock -------------------------------------------------------------------------------- /test_canisters/canister_initial/clear_buffer.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/test_canisters/canister_initial/clear_buffer.sh -------------------------------------------------------------------------------- /test_canisters/canister_initial/create_buffer.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/test_canisters/canister_initial/create_buffer.sh -------------------------------------------------------------------------------- /test_canisters/canister_initial/dfx.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/test_canisters/canister_initial/dfx.json -------------------------------------------------------------------------------- /test_canisters/canister_initial/load_buffer.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/test_canisters/canister_initial/load_buffer.sh -------------------------------------------------------------------------------- /test_canisters/canister_initial/read_buffer.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/test_canisters/canister_initial/read_buffer.sh -------------------------------------------------------------------------------- /test_canisters/canister_initial/src/canister_initial_backend/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/test_canisters/canister_initial/src/canister_initial_backend/Cargo.toml -------------------------------------------------------------------------------- /test_canisters/canister_initial/src/canister_initial_backend/canister_initial_backend.did: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/test_canisters/canister_initial/src/canister_initial_backend/canister_initial_backend.did -------------------------------------------------------------------------------- /test_canisters/canister_initial/src/canister_initial_backend/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/test_canisters/canister_initial/src/canister_initial_backend/src/lib.rs -------------------------------------------------------------------------------- /test_canisters/canister_initial/store_buffer.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/test_canisters/canister_initial/store_buffer.sh -------------------------------------------------------------------------------- /test_canisters/canister_initial/store_buffer_4k.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/test_canisters/canister_initial/store_buffer_4k.sh -------------------------------------------------------------------------------- /test_canisters/canister_initial/store_stable.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/test_canisters/canister_initial/store_stable.sh -------------------------------------------------------------------------------- /test_canisters/canister_upgraded/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/test_canisters/canister_upgraded/.gitignore -------------------------------------------------------------------------------- /test_canisters/canister_upgraded/Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/test_canisters/canister_upgraded/Cargo.lock -------------------------------------------------------------------------------- /test_canisters/canister_upgraded/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/test_canisters/canister_upgraded/README.md -------------------------------------------------------------------------------- /test_canisters/canister_upgraded/dfx.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/test_canisters/canister_upgraded/dfx.json -------------------------------------------------------------------------------- /test_canisters/canister_upgraded/src/canister_upgraded_backend/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/test_canisters/canister_upgraded/src/canister_upgraded_backend/Cargo.toml -------------------------------------------------------------------------------- /test_canisters/canister_upgraded/src/canister_upgraded_backend/canister_upgraded_backend.did: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/test_canisters/canister_upgraded/src/canister_upgraded_backend/canister_upgraded_backend.did -------------------------------------------------------------------------------- /test_canisters/canister_upgraded/src/canister_upgraded_backend/src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/test_canisters/canister_upgraded/src/canister_upgraded_backend/src/lib.rs -------------------------------------------------------------------------------- /test_canisters/fsperf.repl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/test_canisters/fsperf.repl -------------------------------------------------------------------------------- /test_canisters/perf.repl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/test_canisters/perf.repl -------------------------------------------------------------------------------- /test_canisters/res/memory-v0.4-some_file_content.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/test_canisters/res/memory-v0.4-some_file_content.bin -------------------------------------------------------------------------------- /test_canisters/res/memory-v0_4-op35_1000.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/test_canisters/res/memory-v0_4-op35_1000.bin -------------------------------------------------------------------------------- /test_canisters/res/structure-v0_4-op35_1000.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/test_canisters/res/structure-v0_4-op35_1000.txt -------------------------------------------------------------------------------- /test_canisters/res/structure-v0_7-op35_1000.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wasm-forge/stable-fs/HEAD/test_canisters/res/structure-v0_7-op35_1000.txt --------------------------------------------------------------------------------