All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
v0.4.2 - 2024-12-21
- When deleting a category or subscription, propagate the deletion to feeds with no remaining subscriptions
- Bump
golang/x/net
to v0.33.0:
v0.4.1 - 2024-12-14
- Bump
golang.org/x/crypto
to v0.31.0:
v0.4.0 - 2024-12-10
- Add PostgreSQL integration tests for feed operations
- Split PostgreSQL repository into dedicated domain repositories
- Update testcontainers configuration to use a tmpfs volume and disable WAL features to speed up integration tests
- Update page title to display the subscription alias (if set) or the feed title
- Update listed entries to display the subscription alias (if set) or the feed title
- Relocate HTTP packages to
internal/http
- Relocate version detection helpers to
internal/version
v0.3.1 - 2024-12-07
- Fix HTML templates after renaming querying models
v0.3.0 - 2024-12-07
- Add dedicated tests for PostrgeSQL database migrations (up/down)
- Add custom CSS to display wider content on large screens
- For each entry in the list, display the title of the corresponding feed
- Save and display feed descriptions
- Extract keywords (significant terms) from entry content/description with TextRank
- Add full-text search based on feed and entry metadata
- Store and compare the hash (xxHash64) of the feed data to avoid unnecessary database upserts
- Document the feed polling and caching strategy
- Allow users to set an alias title for feed subscriptions
- Lint and format SQL files with SQLFluff
- Publish HTML documentation to Github Pages
- Update documentation structure to follow the Diátaxis approach
- Disable mdBook file auto-creation
- Check for broken links with mdbook-linkcheck
- Update the home page
- Render HTTP 4xx errors as HTML views
- Install the
ca-certificates
package in the Docker image for TLS connections
- Ensure entry publication and update dates are non-zero
- Ensure entry publication and update dates are not in the (far) future (limit: 2 days)
- In the subscription edit form, ensure the correct category is selected
v0.2.0 - 2024-11-14
- Subscribe to Atom and RSS feeds
- Categorize subscriptions
- Display subscriptions
- Periodically synchronize subscriptions
- Import existing subscriptions from OPML
- Export subscriptions
- Enforce CSRF validation for import and export forms
- Update repository helpers
- Build with Go 1.23
- Update direct and transitive dependencies
v0.1.1 - 2024-01-26
Initial release
- Create and manage users of the application
- Create and manage bookmarks to Web pages (links)
- Display bookmarks and bookmark tags
- Import existing bookmarks
- Search bookmarks by keywords (full-text search)
- Add a
sparklemuffin
root command to handle common program configuration - Add a
createadmin
subcommand to create users with administrator privileges - Add a
migrate
subcommand to manage database migrations - Add a
run
subcommand to start all services - Add a
version
subcommand to display the running version (featuring Git version information) - Allow configuring services via:
- application defaults
- configuration file
- command-line flags
- environment variables
- Setup structured logging (formats: console, JSON)
- Expose Prometheus metrics:
- Go runtime
- HTTP requests
- Application build and version information
- Package the application as a Docker container
- Provide Docker Compose configuration for:
- local development
- example usage
- Add mdBook documentation
- Add Make targets to:
- run static analysis tools (linters)
- run unitary tests
- run integration tests
- generate coverage reports
- run live-reload development servers
- build HTML documentation
- Add Github Actions workflows:
- CI: build the application, run linters, run tests
- Copywrite: ensure license headers are present in source files
- Docker: build and publish Docker image to the Github Container Registry (GHCR)