- Added "Push to Library" button to issues archive
- Implemented direct API upload to Grimmory/Booklore
- Added support for `.env` files via `python-dotenv`
- Handled 409 Conflict for duplicate files gracefully
- Resolved library name to numeric ID for direct uploads
- Fixed SQLAlchemy and ebooklib warnings in tests
- Added comprehensive tests for push functionality
Made-with: Cursor
Exclude articles categorized as "Obituaries" from the headline list
passed to cover generation. Applied in all three call sites: manual
publish, issue regenerate, and auto-publish scheduler.
Made-with: Cursor