6 releases

0.3.0 Jul 26, 2024
0.2.0 Aug 23, 2021
0.1.3 Nov 19, 2020
0.1.2 Mar 29, 2020

#917 in Filesystem

Download history 36/week @ 2024-12-16 13/week @ 2024-12-23 17/week @ 2024-12-30 20/week @ 2025-01-06 29/week @ 2025-01-13 31/week @ 2025-01-20 49/week @ 2025-01-27 83/week @ 2025-02-03 48/week @ 2025-02-10 70/week @ 2025-02-17 62/week @ 2025-02-24 63/week @ 2025-03-03 42/week @ 2025-03-10 59/week @ 2025-03-17 40/week @ 2025-03-24 113/week @ 2025-03-31

258 downloads per month
Used in rojo

MIT license

33KB
700 lines

memofs

Crates.io

Implementation of a virtual filesystem with a configurable backend and file watching.

memofs is currently an unstable minimum viable library. Its primary consumer is Rojo, a build system for Roblox.

Current Features

  • API similar to std::fs
  • Configurable backends
    • StdBackend, which uses std::fs and the notify crate
    • NoopBackend, which always throws errors
    • InMemoryFs, a simple in-memory filesystem useful for testing

Future Features

  • Hash-based hierarchical memoization keys (hence the name)
  • Configurable caching (write-through, write-around, write-back)

License

memofs is available under the terms of the MIT license. See LICENSE.txt or https://opensource.org/licenses/MIT for more details.

Dependencies

~1–8.5MB
~71K SLoC