mirror of
https://github.com/miniflux/v2.git
synced 2025-06-27 16:36:00 +00:00
docs(changelog): update release notes for version 2.2.10
This commit is contained in:
parent
1503a5c946
commit
875618d786
1 changed files with 84 additions and 0 deletions
84
ChangeLog
84
ChangeLog
|
@ -1,3 +1,87 @@
|
|||
Version 2.2.10 (June 23, 2025)
|
||||
------------------------------
|
||||
|
||||
* test(sanitizer): add unit test for 0x0 pixel tracker
|
||||
* test(sanitizer): add test case to cover Vimeo iframe rewrite without query string
|
||||
* refactor(youtube): Remove a regex and make use of `fetchWatchTime`
|
||||
* refactor(youtube): initialize two maps to the proper length
|
||||
* refactor(tests): use `b.Loop()` instead of for range `b.N`
|
||||
* refactor(server): avoid double call to `Sprintf`
|
||||
* refactor(sanitizer): use global variables to avoid recreating slices on every call
|
||||
* refactor(sanitizer): use a map for iframe allow list
|
||||
* refactor(sanitizer): remove two useless `www.` prefixes
|
||||
* refactor(sanitizer): make `isValidAttribute()` check O(1)
|
||||
* refactor(rewrite): rename `Rewriter` function to `ApplyContentRewriteRules`
|
||||
* refactor(processor): simplify Bilibili processing
|
||||
* refactor(processor): remove a useless type declaration
|
||||
* refactor(processor): remove a duplicated function call
|
||||
* refactor(processor): refactor common code into a `fetchWatchTime` function
|
||||
* refactor(processor): move filters to a `filter` package
|
||||
* refactor(processor): move `FilterEntryMaxAgeDays` filter to filter package
|
||||
* refactor(processor): move `RewriteEntryURL` function to `rewrite` package
|
||||
* refactor(processor): minor simplification of a loop
|
||||
* refactor(internal): add an `urllib.DomainWithoutWWW` function
|
||||
* refactor(http): rename package from `httpd` to `server` for consistency
|
||||
* refactor(http): Don't hardcode TLS configuration
|
||||
* refactor(filter): avoid code duplication between `IsBlockedEntry` and `IsAllowedEntry` functions
|
||||
* refactor(database): drop 3 columns in a single transaction
|
||||
* refactor(crypto): use `rand.Text()` instead of a custom implementation
|
||||
* refactor(config): remove deprecated config options
|
||||
* refactor(appjs): no need to check if always present elements are always present
|
||||
* perf(xml): optimized `NewXMLDecoder`
|
||||
* perf(xml): optimize XML filtering
|
||||
* perf(validator): slightly optimize a regex
|
||||
* perf(timezone): cache `getLocation`'s results
|
||||
* perf(storage): pre-allocate a slice in `RefreshFeedEntries`
|
||||
* perf(storage): optimize away two `Sprintf` calls
|
||||
* perf(sanitizer): use a switch-case instead of a map
|
||||
* perf(sanitizer): minor simplifications of the sanitizer
|
||||
* perf(sanitizer): extract a call to `url.Parse` and make intensive use of it
|
||||
* perf(rss): optimize a bit `BuildFeed`
|
||||
* perf(rss): early return when looking for an item's author
|
||||
* perf(rewrite): make `getPredefinedRewriteRules` O(1)
|
||||
* perf(reader): use a non-cryptographic hash when possible
|
||||
* perf(reader): optimize `RemoveTrackingParameters`
|
||||
* perf(readability): minor regex improvement
|
||||
* perf(media): minor regex simplification
|
||||
* perf(fetcher): pre-allocate the cipherSuites
|
||||
* perf(database): use `TRUNCATE` instead of `DELETE FROM` in migrations
|
||||
* perf(database): marginally speeds migrations up
|
||||
* perf(api): use `math/rand/v2` instead of `math/rand` for better performance
|
||||
* fix(readability): do not remove elements within code blocks
|
||||
* fix(karakeep): correct method name and improve error handling in `SaveURL`
|
||||
* fix(filter): skip invalid rules instead of exiting the loop
|
||||
* feat(ui): display external link in single entry view because the URL was not visible on mobile (no mouse over)
|
||||
* feat(ui): avoid showing an excessive number of tags
|
||||
* feat(ui): add user setting to control `target="_blank"` on links
|
||||
* feat(sanitizer): validate MathML XML namespace
|
||||
* feat(sanitizer): consider images of size 0x0 as pixel trackers
|
||||
* feat(sanitizer): add validation for empty `width` and `height` attributes in img tags
|
||||
* feat(sanitizer): add support for `fetchpriority` and `decoding` attributes in img tags
|
||||
* feat(rewrite): add support for YouTube Shorts video URL pattern
|
||||
* feat(rewrite): add `parkablogs.com` to the referer override list
|
||||
* feat(oidc): use `preferred_username` first instead of `email` claim
|
||||
* feat(locale): update Polish translations
|
||||
* feat(locale): update locales using machine translation
|
||||
* feat(locale): update Indonesian translations
|
||||
* feat(locale): update German translations
|
||||
* feat(locale): update Chinese translations
|
||||
* feat(integration)!: remove Pocket integration (Pocket will no longer be available after July 8, 2025)
|
||||
* feat(filter): add `EntryDate=max-age:duration` filter
|
||||
* feat(css): add margin-bottom to input for consistent spacing
|
||||
* feat(config)!: remove `SERVER_TIMING_HEADER` config option
|
||||
* feat: Allow multiple listen addresses
|
||||
* feat: adding support for saving entries to Karakeep
|
||||
* feat: add entry filters at the feed level
|
||||
* docs(readme): document a couple of nifty features
|
||||
* docs: add `CONTRIBUTING.md` file
|
||||
* chore(template): remove `X-UA-Compatible` meta tag specific to Internet Explorer
|
||||
* build(go): bump to go 1.24
|
||||
* build(deps): bump `library/alpine` in `/packaging/docker/alpine`
|
||||
* build(deps): bump `golang.org/x/net` from `0.40.0` to `0.41.0`
|
||||
* build(deps): bump `golang.org/x/image` from `0.27.0` to `0.28.0`
|
||||
* build(deps): bump `golang.org/x/crypto` from `0.38.0` to `0.39.0`
|
||||
|
||||
Version 2.2.9 (May 26, 2025)
|
||||
----------------------------
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue