feat: mount lazyly

This commit is contained in:
Jan Bader committed 2026-09-19 23:36:10 +02:00
1 parent cf391172a1
commit 3b91a26b2c
3 files changed
+381 -12

No files matched your search

+5 -5
View File
@@ -131,18 +131,18 @@ By default the command starts the mount process in the background. To run it in
DOCSPELL_CLI_MOUNT_FOREGROUND=1 docspell-cli mount ~/mnt/docspell
```
Mounted files are grouped by Docspell folder and date:
Mounted files are organized by item date:
```text
<Docspell folder>/<year>/<month>/<item name>.<attachment extension>
<year>/<month>/<item name>.<attachment extension>
```
Items without a folder are placed below `No Folder`; items without a date are placed below `No Date`. Multiple attachments are named with a numeric suffix. File contents are downloaded lazily from Docspell when read.
The mount creates year and month directories without querying Docspell. Opening a month queries Docspell for that date, so documents added after mounting appear without a remount. Items without a date are placed below `No Date`. Multiple attachments and conflicting item names are given numeric suffixes. File contents are downloaded lazily from Docspell when read.
The mount also includes:
- `by-id/<id-prefix>/<item-id>.<extension>` entries for stable ID-based lookups.
- `.docspell-cli-metadata.json`, used by helper commands to map item IDs to friendly mounted paths.
- `by-id/<id-prefix>/<item-id>.<extension>` entries for stable ID-based lookups. Every two-character Docspell ID prefix is shown; opening one queries only IDs with that prefix.
- `.docspell-cli-metadata.json`, which is empty for the lazy mount.
Mount options: