This is a major refactor, improving performance and adding support for Gemini.
- Support for building a Gemini capsule
- Many Gemini announcers were added (Antenna, CAPCOM, Geminispace)
- Some announcers were not migrated (Twitter, WT.Social, Medium, 50/90, FAWM)
- Some publishers were not migrated (NeoCities, IPFS)
- Commands (build, publish) now run in parallel and more efficiently
- Support for multiple announcers of the same type
- Support for per-build announcers and publishers
- Allow defining mini-templates for different post types
- New assistant for fetching current weather
- Fix for reading time assistant
- New assistant that displays approximate reading time on posts
- Do not load non-configured announcers
- Add missing entries for FTP publisher and 50/90 announcer in skeleton YAML
- Fix Neocities publisher so it doesn't try to POST without modified files
- Simplified code using context managers to parse HTML and handle JSON storage
- Renamed "categories" to "tags", in anticipation of proper categories
- Allow building and/or publishing a single post with the
-s
option - When webmentions are queued, poll for their status on build
- Added announcer for 50/90 (https://fiftyninety.fawmers.org/)
- Add timeout to archive.org call
- Playlist assistant is now a builder
- Added support for Twitter cards
- Added FTP publisher
- Updated docs
- Use the Rich library to colorize output from the CLI
- Fix rsync call in IPFS publisher that stripped the trailing slash
- Fix rsync call in IPFS publisher that required used to be in blog root
- Clean up the codebase:
- Improved plugin architecture with builders, assistants, publishers and announcers
- Pre-commit hooks for mymy, flake8, black & more
- 100% unit test coverage
- Announcers:
- Removed Facebook announcer, since their closed API is impossible to use
- Completed FAWM announcer
- Added Mastodon announcer
- Added Medium announcer
- Added Webmention announcer
- Added WT.Social announcer
- Assistants:
- Moved mirror image functionality to a separate assistant
- Moved external link warning functionality to a separate assistant
- Added archive.org assistant
- Added MP3 playlist assistant
- Added assistant to make all links relative (for IPFS publishing)
- Builders:
- Created builders for post, index, categories and Atom feed
- Publishers:
- Added Neocities publisher
- Added IPFS publisher
- Fix project URL in setup.cfg
- Rewrite from scratch for Python 3
- Initial release