48 lines
2.3 KiB
Markdown
48 lines
2.3 KiB
Markdown
# Develop Changelog
|
|
|
|
This file tracks changes on the `develop` line.
|
|
`changelog.md` can later be used for release summaries.
|
|
|
|
## 2026-03-22
|
|
- Added blueprint/technical documentation structure in `docs/`.
|
|
- Completed router split and bootstrap structure (`main.py`, routers, migrations, DB pool).
|
|
- Expanded media support to EPUB/PDF/CBR/CBZ in import and scan flows.
|
|
- Expanded Home UI with:
|
|
- import dropzone for EPUB/PDF/CBR/CBZ
|
|
- search functionality
|
|
- alignment matching Library (search top-right, dropzone below)
|
|
- Updated Library import texts and drag/drop filtering for multi-format support.
|
|
- Expanded Library `New` view with:
|
|
- `Grid`/`List` toggle
|
|
- column visibility filter in `List`
|
|
- multi-select + bulk `Remove from New`
|
|
- selection only in `List` mode
|
|
- `Shift+click` range selection on checkboxes
|
|
- Added route: `POST /library/new/mark-reviewed` (bulk set `needs_review=false`).
|
|
- Improved library performance:
|
|
- `/api/library` fast-path (no full rescan on every page load)
|
|
- optional `rescan=true` / `include_file_info=true`
|
|
- SQL optimizations in `list_library_json()`
|
|
- additional DB indexes for scale
|
|
- Restored `/api/home` full dataset output:
|
|
- `continue_reading`
|
|
- `shorts_unread`
|
|
- `novels_unread`
|
|
- `shorts_read`
|
|
- `novels_read`
|
|
- Explicitly filtered series books out of Home sections.
|
|
- Corrected Home read ordering: `shorts_read` and `novels_read` now show oldest first (`ORDER BY MAX(read_at) ASC`).
|
|
- Restored Statistics page by returning the full `/api/stats` payload required for charts, favorites, top books, and reading history.
|
|
- Improved backup implementation:
|
|
- Dropbox token stored encrypted in DB
|
|
- Dropbox backup root configurable via web UI and stored encrypted in DB
|
|
- versioned snapshots + object-store deduplication in Dropbox (`library_snapshots` / `library_objects`)
|
|
- configurable snapshot retention (`snapshots to keep`) via backup settings
|
|
- object pruning based on retained snapshots
|
|
- scheduled backup (enable + interval in hours)
|
|
- backup runs as a background process, so page navigation does not block execution
|
|
- stale running state recovery after restart/crash (old running logs marked interrupted/error)
|
|
- dry-run support in the new flow
|
|
- Updated Docker image with `postgresql-client` for `pg_dump`.
|
|
- Multiple test builds pushed to `gitea.oskamp.info/ivooskamp/novela:dev`.
|