✨ New Features
- TLS support for Unix sockets: Miniflux can now serve TLS over Unix domain sockets using
CERT_FILE
andKEY_FILE
(#fcf86e3). - RSS fallback: If a feed entry has no URL, Miniflux now uses the enclosure URL as a fallback (#d9de9d1).
- Bearer token for Linkwarden: The Linkwarden integration now uses Bearer token authorization instead of cookies (#1d11623).
- Cookie policy improvement:
SameSiteStrictMode
is enforced for cookies when OAuth2/OIDC is not used (#135ce1d). - Readability engine: Avoid removing elements with the
content
class during readability parsing (#66b269e).
🛠️ Improvements
-
Massive readability engine refactoring and performance optimizations:
-
Improved performance of
getClassWeight
,getLinkDensity
, andtransformMisusedDivsIntoParagraphs
. - Simplified and optimized internal logic of
removeUnlikelyCandidates
,getSelectionLength
, andgetArticle
. - Reduced memory allocation in sanitizer and readability components.
- Storage optimization: Strings are now truncated on the Go side to respect
tsvector
limits, reducing DB load and ensuring valid UTF-8 (#703f113). -
Simplified and clarified internal code structure:
-
Major cleanup and size optimization of internal structs (
Feed
,FeedCreationRequest
, etc.). - Reduced memory use and improved CPU cache locality.
- Numerous refactors across
config
,template
,locale
,subscription
, andfetcher
modules.
🐛 Bug Fixes
- Fixed an issue with feeds having excessive leading whitespace causing parser buffer issues (#54abd0a).
- Properly preserve UTF-8 when truncating strings for full-text search (#703f113).
- Fixed logic error in enclosure type detection (#50d5cb9).
- Fixed incorrect filter rule parsing of Windows-style newlines (#dc81725).
- Fixed a panic in
startAutoCertTLSServer
function when using Let's Encrypt automatic certificates (#f7a6b02) - Improved UI spacing consistency around header/footer (#32fbb4e).
⚠️ Breaking Changes
- Windows binary no longer distributed: Windows is no longer a supported platform for binary distribution. Users must build from source if needed (#b470b18).
🧪 Tests & CI
- Test coverage significantly increased for modules like
readability
,sanitizer
,processor
,locale
, andstorage
. - Commit linter updated to support new Git revert message format.
🐘 Docker & Environment
- Base Docker image updated to Alpine 3.22.
- PostgreSQL Docker example updated to use the latest version.
🌐 Localization
- Updated Chinese and German translations.
🔒 Dependency Updates
- Bumped
github.com/go-webauthn/webauthn
to0.13.4
- Bumped
github.com/tdewolff/minify/v2
to2.23.10
- Bumped
golang.org/x/*
modules:image
,net
,term
,crypto
- Bumped
github.com/andybalholm/brotli
to1.2.0