- Remove unnecessary debug print statements in VFS and WebDAV
middleware for cleaner code.
- Fix a bug in `OurDBVFS.exists` to correctly handle root and
current directory paths.
- Enhance `OurDBVFS.get_entry` to handle '.' path correctly.
- Improve WebDAV authentication middleware to gracefully handle
unauthenticated requests.
- Add `move` operation to the VFS interface and implementations.
This allows for moving files and directories within the VFS.
- Add `is_dir`, `is_file`, and `is_symlink` methods to the
`FSEntry` interface and implementations. This allows for
robust file type checking before performing operations.
- Use a counter for consistent ID generation in OurDBFS: This
eliminates reliance on timestamps, preventing ID collisions and
improving data integrity.
- Refactor save methods to directly use the VFS's save_entry
function: This simplifies the code and reduces redundancy across
different file system entity types (Directory, File, Symlink).
- Update `save_entry` in OurDBFS to use IDs for database updates:
This ensures data is correctly updated in the database based on the
unique ID of each entry. This also fixes potential issues with
overwriting data.
- Add user authentication to the WebDAV server using a user
database.
- Implement encoding and decoding functionality for directories,
files, and symlinks in the OurDBFS VFS.
- Add comprehensive unit tests for the encoder and decoder
functions.
- Improve the OurDBFS factory method to handle directory creation
more robustly using pathlib.
- Add `delete` and `link_delete` methods to the `NestedVFS` and
`OurDBVFS` implementations (though currently unimplemented).
- Improve WebDAV file handling to correctly determine and set the
content type. The previous implementation was incomplete and
returned a dummy response.
- Update VFS test to actually test functionality.
- Remove unnecessary `root_dir` parameter from the WebDAV app.
- Fixed ID generation for files and directories in OurDBFS,
preventing collisions and improving data integrity. This
ensures that IDs are consistently and uniquely assigned.
- Updated save methods to correctly update the `metadata.id`
field across all FSEntry types (File, Directory, Symlink).
This change solves a previous issue where IDs weren't being
properly persisted.
- Added incremental mode to OurDB, improving performance for
large datasets. This allows for more efficient updates
instead of full overwrites.
- Handle updates correctly in OurDB `set` function, preventing errors
when incremental mode is enabled.
- Ensure directories are correctly created with metadata in OurDBFS.
- Add debug print statements to OurDBVFS for improved debugging.
- Simplify OurDBVFS `get_entry` function for better readability and
correctness. Fixes potential issues with returning references.
- Update tests to reflect changes and use a temporary directory
to avoid conflicts.
- Updated import paths to reflect the renaming of the
`crystallib` module to `herolib`. This change improves
consistency and clarity in the project structure.