Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
132 commits
Select commit Hold shift + click to select a range
f239ab8
chore(npm-deps:frontend)(deps-dev): bump @cypress/vite-dev-server
dependabot[bot] Mar 26, 2026
839542d
chore(npm-deps:frontend)(deps-dev): bump @typescript-eslint/eslint-pl…
dependabot[bot] Mar 26, 2026
461d3c6
chore(npm-deps:website)(deps-dev): bump vite in /website
dependabot[bot] Mar 26, 2026
449b506
chore(npm-deps:website)(deps): bump vue in /website
dependabot[bot] Mar 26, 2026
e56e0f4
chore(go-deps:backend)(deps): bump modernc.org/sqlite
dependabot[bot] Mar 26, 2026
e510c98
chore(npm-deps:frontend)(deps-dev): bump knip in /frontend
dependabot[bot] Mar 26, 2026
6fafcff
chore(npm-deps:website)(deps-dev): bump @typescript-eslint/parser
dependabot[bot] Mar 26, 2026
190797f
chore(npm-deps:frontend)(deps): bump vue in /frontend
dependabot[bot] Mar 26, 2026
dcb4d74
chore: update version to 1.3.24 in various files and changelog
WCY-dt Mar 26, 2026
4df7871
Merge pull request #850 from WCY-dt/dependabot/npm_and_yarn/website/v…
WCY-dt Mar 26, 2026
bd23daa
Merge pull request #849 from WCY-dt/dependabot/npm_and_yarn/frontend/…
WCY-dt Mar 26, 2026
104e344
Merge pull request #848 from WCY-dt/dependabot/npm_and_yarn/website/v…
WCY-dt Mar 26, 2026
6bcb69a
Merge pull request #847 from WCY-dt/dependabot/go_modules/modernc.org…
WCY-dt Mar 26, 2026
aca5898
Merge pull request #845 from WCY-dt/dependabot/npm_and_yarn/website/t…
WCY-dt Mar 26, 2026
c0d8054
Merge pull request #844 from WCY-dt/dependabot/npm_and_yarn/frontend/…
WCY-dt Mar 26, 2026
6955537
Merge pull request #841 from WCY-dt/dependabot/npm_and_yarn/frontend/…
WCY-dt Mar 26, 2026
2859f32
Merge pull request #838 from WCY-dt/dependabot/npm_and_yarn/frontend/…
WCY-dt Mar 26, 2026
24d10a3
chore: Update package-lock.json files
WCY-dt Mar 26, 2026
e78efe8
chore(actions-deps): bump codecov/codecov-action from 5 to 6
dependabot[bot] Mar 30, 2026
10a6de6
chore(actions-deps): bump actions/configure-pages from 5 to 6
dependabot[bot] Mar 30, 2026
9e457b5
chore(actions-deps): bump actions/deploy-pages from 4 to 5
dependabot[bot] Mar 30, 2026
7ed1e9f
chore(npm-deps:frontend)(deps): bump vue in /frontend
dependabot[bot] Mar 30, 2026
d730470
chore(go-deps:backend)(deps): bump github.com/antchfx/xmlquery
dependabot[bot] Mar 30, 2026
084f6f5
chore(npm-deps:frontend)(deps-dev): bump vitest in /frontend
dependabot[bot] Mar 30, 2026
c984f84
chore(go-deps:backend)(deps): bump modernc.org/sqlite
dependabot[bot] Mar 30, 2026
9c4b0f4
chore(npm-deps:frontend)(deps-dev): bump vite in /frontend
dependabot[bot] Mar 30, 2026
fdcb581
chore(npm-deps:frontend)(deps-dev): bump @types/node in /frontend
dependabot[bot] Mar 30, 2026
5e152ff
chore(npm-deps:website)(deps-dev): bump @typescript-eslint/eslint-plugin
dependabot[bot] Mar 30, 2026
1172c70
chore(npm-deps:website)(deps): bump vue in /website
dependabot[bot] Mar 30, 2026
20eac17
chore(npm-deps:website)(deps-dev): bump vite in /website
dependabot[bot] Mar 30, 2026
3b278eb
chore(npm-deps:website)(deps-dev): bump @typescript-eslint/parser
dependabot[bot] Mar 30, 2026
875a86e
Merge pull request #857 from WCY-dt/dependabot/github_actions/codecov…
WCY-dt Mar 30, 2026
cbd4941
Merge pull request #858 from WCY-dt/dependabot/github_actions/actions…
WCY-dt Mar 30, 2026
4c681b7
Merge pull request #860 from WCY-dt/dependabot/github_actions/actions…
WCY-dt Mar 30, 2026
8e42230
Merge pull request #861 from WCY-dt/dependabot/npm_and_yarn/frontend/…
WCY-dt Mar 30, 2026
73b0282
Merge pull request #862 from WCY-dt/dependabot/go_modules/github.com/…
WCY-dt Mar 30, 2026
6306f2d
Merge pull request #863 from WCY-dt/dependabot/npm_and_yarn/frontend/…
WCY-dt Mar 30, 2026
22e3448
Merge branch 'release/v1.3.24' into dependabot/go_modules/modernc.org…
WCY-dt Mar 30, 2026
e7f4d70
Merge pull request #864 from WCY-dt/dependabot/go_modules/modernc.org…
WCY-dt Mar 30, 2026
2b82638
Merge branch 'release/v1.3.24' into dependabot/npm_and_yarn/frontend/…
WCY-dt Mar 30, 2026
d1f33cb
Merge pull request #865 from WCY-dt/dependabot/npm_and_yarn/frontend/…
WCY-dt Mar 30, 2026
39985f0
Merge branch 'release/v1.3.24' into dependabot/npm_and_yarn/frontend/…
WCY-dt Mar 30, 2026
0a1d368
Merge pull request #866 from WCY-dt/dependabot/npm_and_yarn/frontend/…
WCY-dt Mar 30, 2026
ead29bb
Merge pull request #871 from WCY-dt/dependabot/npm_and_yarn/website/t…
WCY-dt Mar 30, 2026
cba9521
Merge branch 'release/v1.3.24' into dependabot/npm_and_yarn/website/v…
WCY-dt Mar 30, 2026
08567d9
Merge pull request #870 from WCY-dt/dependabot/npm_and_yarn/website/v…
WCY-dt Mar 30, 2026
d4eaa68
Merge pull request #868 from WCY-dt/dependabot/npm_and_yarn/website/v…
WCY-dt Mar 30, 2026
87eebe2
Merge branch 'release/v1.3.24' into dependabot/npm_and_yarn/website/t…
WCY-dt Mar 30, 2026
8d1f032
Merge pull request #867 from WCY-dt/dependabot/npm_and_yarn/website/t…
WCY-dt Mar 30, 2026
2121468
chore: Add peer dependencies to package-lock.json and remove unused p…
WCY-dt Mar 30, 2026
21e9b0d
chore(go-deps:backend)(deps): bump github.com/go-git/go-git/v5
dependabot[bot] Mar 30, 2026
f5928e5
Merge pull request #872 from WCY-dt/dependabot/go_modules/go_modules-…
WCY-dt Mar 31, 2026
e9e3f00
chore(actions-deps): bump actions/configure-pages from 5 to 6
dependabot[bot] Apr 6, 2026
a99789d
chore(actions-deps): bump codecov/codecov-action from 5 to 6
dependabot[bot] Apr 6, 2026
181066a
chore(actions-deps): bump actions/deploy-pages from 4 to 5
dependabot[bot] Apr 6, 2026
95480e1
chore(npm-deps:frontend)(deps): bump vue-i18n in /frontend
dependabot[bot] Apr 6, 2026
07a6806
chore(go-deps:backend)(deps): bump github.com/antchfx/xmlquery
dependabot[bot] Apr 6, 2026
6a0586f
chore(npm-deps:website)(deps-dev): bump vite in /website
dependabot[bot] Apr 6, 2026
ef61f5d
chore(npm-deps:frontend)(deps-dev): bump @typescript-eslint/parser
dependabot[bot] Apr 6, 2026
db7cdc5
chore(npm-deps:frontend)(deps-dev): bump lint-staged in /frontend
dependabot[bot] Apr 6, 2026
8058cf4
chore(npm-deps:website)(deps-dev): bump @typescript-eslint/eslint-plugin
dependabot[bot] Apr 6, 2026
c5c4104
chore(npm-deps:frontend)(deps-dev): bump knip in /frontend
dependabot[bot] Apr 6, 2026
03e1097
chore(npm-deps:frontend)(deps): bump katex in /frontend
dependabot[bot] Apr 6, 2026
dbd7f7a
chore(npm-deps:website)(deps-dev): bump @typescript-eslint/parser
dependabot[bot] Apr 6, 2026
4fa5fcd
chore(npm-deps:website)(deps): bump vue in /website
dependabot[bot] Apr 6, 2026
b09f77f
chore(npm-deps:website)(deps-dev): bump eslint in /website
dependabot[bot] Apr 6, 2026
a7a6262
chore(npm-deps:website)(deps-dev): bump vite
dependabot[bot] Apr 6, 2026
364d721
chore(npm-deps:frontend)(deps-dev): bump vite
dependabot[bot] Apr 6, 2026
e63b7e0
chore(actions-deps): bump softprops/action-gh-release from 2 to 3
dependabot[bot] Apr 13, 2026
aa2c79c
chore(go-deps:backend)(deps): bump modernc.org/sqlite
dependabot[bot] Apr 13, 2026
54152fe
chore(go-deps:backend)(deps): bump golang.org/x/net
dependabot[bot] Apr 13, 2026
12e8b90
chore(go-deps:backend)(deps): bump golang.org/x/crypto
dependabot[bot] Apr 13, 2026
44167be
chore(go-deps:backend)(deps): bump golang.org/x/text
dependabot[bot] Apr 13, 2026
3785e5a
chore(go-deps:backend)(deps): bump github.com/go-git/go-git/v5
dependabot[bot] Apr 17, 2026
87afa96
chore(actions-deps): bump actions/upload-pages-artifact from 4 to 5
dependabot[bot] Apr 20, 2026
4fe981c
Fix custom translation JSON placeholders
atoz03 Jun 5, 2026
10873a0
feat: enhance window state persistence and add Turkish localization
WCY-dt Jun 9, 2026
216ed11
feat: add update check feature with toggle in settings
WCY-dt Jun 9, 2026
cdb65a0
Merge pull request #877 from WCY-dt/dependabot/github_actions/actions…
WCY-dt Jun 14, 2026
fd88d3e
Merge pull request #878 from WCY-dt/dependabot/github_actions/codecov…
WCY-dt Jun 14, 2026
523c783
Merge pull request #879 from WCY-dt/dependabot/github_actions/actions…
WCY-dt Jun 14, 2026
cdeebba
Merge pull request #881 from WCY-dt/dependabot/go_modules/github.com/…
WCY-dt Jun 14, 2026
9d92fee
Merge pull request #889 from WCY-dt/dependabot/npm_and_yarn/frontend/…
WCY-dt Jun 14, 2026
7118e1a
Merge pull request #897 from WCY-dt/dependabot/github_actions/softpro…
WCY-dt Jun 14, 2026
4acde4c
Merge pull request #906 from WCY-dt/dependabot/github_actions/actions…
WCY-dt Jun 14, 2026
e2c8b2d
Merge pull request #880
WCY-dt Jun 14, 2026
c712ec0
Merge pull request #882
WCY-dt Jun 14, 2026
3d25ef4
Merge pull request #883
WCY-dt Jun 14, 2026
39fd82a
Merge pull request #885
WCY-dt Jun 14, 2026
35dbca8
Merge pull request #886
WCY-dt Jun 14, 2026
a341ead
Merge pull request #887
WCY-dt Jun 14, 2026
82f0dc4
Merge pull request #888
WCY-dt Jun 14, 2026
a51c7e9
Merge pull request #890
WCY-dt Jun 14, 2026
5ff5676
Merge pull request #891
WCY-dt Jun 14, 2026
19af1e5
Merge pull request #892
WCY-dt Jun 14, 2026
380eb7c
Merge pull request #893
WCY-dt Jun 14, 2026
c2a1c0f
Merge pull request #898
WCY-dt Jun 14, 2026
09afdbc
Merge pull request #899
WCY-dt Jun 14, 2026
56ec839
Merge pull request #900
WCY-dt Jun 14, 2026
f5d4784
Merge pull request #901
WCY-dt Jun 14, 2026
3947baa
Merge pull request #905
WCY-dt Jun 14, 2026
90b1707
Merge pull request #919
WCY-dt Jun 25, 2026
9836c70
fix(database): improve cleanup and foreign key handling
rogeryk Jul 13, 2026
e34d9d0
fix(database): improve cleanup and foreign key handling
rogeryk Jul 13, 2026
69dcde5
fix(feeds): limit batch selection to filtered feeds
WCY-dt Jul 19, 2026
1fffcf5
chore(actions-deps): bump codecov/codecov-action from 5 to 7
dependabot[bot] Jun 15, 2026
2e821e9
chore(go-deps): update net and go-git dependencies
WCY-dt Jul 19, 2026
cfad161
chore(go-deps): update sqlite dependency
WCY-dt Jul 19, 2026
fc53170
chore(npm-deps): update frontend and website dependencies
WCY-dt Jul 19, 2026
f3294d8
fix(ai): normalize DeepSeek API endpoints
WCY-dt Jul 19, 2026
3a2e4dc
fix(ci): sync frontend lockfile for npm ci
WCY-dt Jul 19, 2026
543285e
feat(summary): support RSS-provided summaries
WCY-dt Jul 19, 2026
94207f7
fix(feed): honor XML encoding declarations
WCY-dt Jul 19, 2026
5ce3cc5
fix(translation): align Tencent signature headers
WCY-dt Jul 19, 2026
a9c4730
fix(feed): extract lazy image URLs from article HTML
WCY-dt Jul 19, 2026
d0d82fd
fix(article): show loading state while content loads
WCY-dt Jul 19, 2026
6b12bfb
fix(rsshub): preserve route query parameters
WCY-dt Jul 19, 2026
6704193
fix(ui): preload shared settings before mount
WCY-dt Jul 19, 2026
5031e05
feat(feeds): open existing feed on duplicate add
WCY-dt Jul 19, 2026
971ac4e
feat(feeds): refresh current feed or category
WCY-dt Jul 19, 2026
b9fd8ea
feat(article): reload current article content
WCY-dt Jul 19, 2026
bd3bca1
fix(database): retain articles per feed
WCY-dt Jul 19, 2026
6ab5d75
Merge branch 'release/v1.3.24' into codex/pr-947-merge-test
WCY-dt Jul 19, 2026
1ce1101
chore(changelog): document v1.3.24 changes
WCY-dt Jul 19, 2026
c3847e0
Merge pull request #947 from rogeryk/fix/cleanup-article
WCY-dt Jul 19, 2026
c5f5d94
fix(article): reload content from card modal
WCY-dt Jul 19, 2026
02602a9
fix(settings): clean FreshRSS feeds when disabled
WCY-dt Jul 19, 2026
efa6ec6
feat(shortcuts): toggle article list filters
WCY-dt Jul 19, 2026
d99df4b
chore(changelog): cover full-text proxy fix
WCY-dt Jul 19, 2026
fa3a225
fix(changelog): correct compatibility issue references for AI and tra…
WCY-dt Jul 19, 2026
3562f0e
chore(changelog): remove unreleased section from changelog
WCY-dt Jul 19, 2026
cf3ee73
fix(frontend): sync package lock for npm ci
WCY-dt Jul 19, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .github/workflows/deploy-site.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ jobs:
uses: actions/checkout@v6

- name: Setup Pages
uses: actions/configure-pages@v5
uses: actions/configure-pages@v6

- name: Setup Node.js
uses: actions/setup-node@v6
Expand All @@ -43,10 +43,10 @@ jobs:
rm -rf node_modules

- name: Upload artifact
uses: actions/upload-pages-artifact@v4
uses: actions/upload-pages-artifact@v5
with:
path: './website/dist'

- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4
uses: actions/deploy-pages@v5
4 changes: 2 additions & 2 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@ jobs:
echo "==============================="

- name: Create Release
uses: softprops/action-gh-release@v2
uses: softprops/action-gh-release@v3
with:
tag_name: ${{ steps.get_version.outputs.tag }}
name: MrRSS ${{ steps.get_version.outputs.tag }}
Expand Down Expand Up @@ -598,7 +598,7 @@ jobs:

- name: Upload Release Assets
if: steps.check_artifacts.outputs.skip_build == 'false'
uses: softprops/action-gh-release@v2
uses: softprops/action-gh-release@v3
with:
tag_name: ${{ needs.create-release.outputs.tag }}
files: |
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ jobs:
run: go test -v -timeout=5m -coverprofile=coverage.out -covermode=atomic ./internal/...

- name: Upload coverage to Codecov
uses: codecov/codecov-action@v5
uses: codecov/codecov-action@v7
with:
files: ./coverage.out
flags: backend
Expand Down
25 changes: 25 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,31 @@ All notable changes to MrRSS will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [1.3.24] - 2026-07-19

### Added

- Added targeted refresh actions for the current article, feed, and category. (#555, #594)
- Added keyboard shortcuts for toggling unread, favorites, and read-later article filters. (#590)
- Added support for using RSS-provided summaries directly. (#910)
- Added per-feed refresh interval support and Turkish translation options. (#695, #902)
- Added controls to disable update notifications and open article links in the system browser. (#801, #903)

### Changed

- Updated Go, frontend, website, and GitHub Actions dependencies for the release branch.

### Fixed

- Fixed database cleanup and refresh regressions that caused existing articles to be fetched again, lose cached data, or reappear after cleanup. (#802, #904, #946) (@rogeryk)
- Fixed repeated feed refresh behavior, unread filtering, bulk selection, and duplicate feed handling. (#562, #619, #669, #826, #873, #896, #917)
- Fixed FreshRSS-synced feeds remaining after the FreshRSS integration is disabled. (#797)
- Fixed lazy-loaded article images, XML encoding detection, proxy usage during full-text fetching, and content loading states for article rendering. (#655, #804, #853, #875, #876)
- Fixed RSSHub route query preservation and subscription failures for some feeds. (#631, #894)
- Fixed AI and translation provider compatibility issues, including Tencent, LibreTranslate, DeepSeek, Ollama, and newsletter sender handling. (#750, #911, #912, #919, #920, #942) (@atoz03)
- Fixed window state and close behavior issues on macOS. (#643, #716, #770, #913)
- Fixed compact/card layout visual jumps during initial settings load. (#663)

## [1.3.23] - 2026-03-26

### Fixed
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
<strong>English</strong> | <a href="README_zh.md">简体中文</a>
</p>

[![Version](https://img.shields.io/badge/version-1.3.23-blue.svg)](https://github.com/WCY-dt/MrRSS/releases)
[![Version](https://img.shields.io/badge/version-1.3.24-blue.svg)](https://github.com/WCY-dt/MrRSS/releases)
[![License](https://img.shields.io/badge/license-GPLv3-green.svg)](LICENSE)
[![Go](https://img.shields.io/badge/Go-1.25+-00ADD8?logo=go)](https://go.dev/)
[![Wails](https://img.shields.io/badge/Wails-v3%20alpha-red)](https://wails.io/)
Expand Down
2 changes: 1 addition & 1 deletion README_zh.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
<a href="README.md">English</a> | <strong>简体中文</strong>
</p>

[![Version](https://img.shields.io/badge/version-1.3.23-blue.svg)](https://github.com/WCY-dt/MrRSS/releases)
[![Version](https://img.shields.io/badge/version-1.3.24-blue.svg)](https://github.com/WCY-dt/MrRSS/releases)
[![License](https://img.shields.io/badge/license-GPLv3-green.svg)](LICENSE)
[![Go](https://img.shields.io/badge/Go-1.25+-00ADD8?logo=go)](https://go.dev/)
[![Wails](https://img.shields.io/badge/Wails-v3%20alpha-red)](https://wails.io/)
Expand Down
4 changes: 2 additions & 2 deletions build/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ info:
description: "A modern, standalone RSS reader" # The application description
copyright: "Copyright © 2026" # Copyright text
comments: "Built with Wails" # Comments
version: "1.3.23" # The application version
version: "1.3.24" # The application version

# iOS build configuration (uncomment to customise iOS project generation)
# Note: Keys under `ios` OVERRIDE values under `info` when set.
Expand All @@ -21,7 +21,7 @@ info:
# # The display name shown under the app icon (CFBundleDisplayName/CFBundleName)
# displayName: "MrRSS"
# # The app version to embed in Info.plist (CFBundleShortVersionString/CFBundleVersion)
# version: "1.3.23"
# version: "1.3.24"
# # The company/organisation name for templates and project settings
# company: "Ch3nyang"
# # Additional comments to embed in Info.plist metadata
Expand Down
4 changes: 2 additions & 2 deletions build/darwin/Info.dev.plist
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,11 @@
<key>CFBundleIdentifier</key>
<string>com.mrrss.app</string>
<key>CFBundleVersion</key>
<string>1.3.23</string>
<string>1.3.24</string>
<key>CFBundleGetInfoString</key>
<string>Built with Wails</string>
<key>CFBundleShortVersionString</key>
<string>1.3.23</string>
<string>1.3.24</string>
<key>CFBundleIconFile</key>
<string>icons</string>
<key>LSMinimumSystemVersion</key>
Expand Down
4 changes: 2 additions & 2 deletions build/darwin/Info.plist
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,11 @@
<key>CFBundleIdentifier</key>
<string>com.mrrss.app</string>
<key>CFBundleVersion</key>
<string>1.3.23</string>
<string>1.3.24</string>
<key>CFBundleGetInfoString</key>
<string>Built with Wails</string>
<key>CFBundleShortVersionString</key>
<string>1.3.23</string>
<string>1.3.24</string>
<key>CFBundleIconFile</key>
<string>icons</string>
<key>LSMinimumSystemVersion</key>
Expand Down
4 changes: 2 additions & 2 deletions build/darwin/Taskfile.yml
Original file line number Diff line number Diff line change
Expand Up @@ -72,9 +72,9 @@ tasks:
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>1.3.23</string>
<string>1.3.24</string>
<key>CFBundleVersion</key>
<string>1.3.23</string>
<string>1.3.24</string>
<key>LSMinimumSystemVersion</key>
<string>10.13</string>
<key>NSHighResolutionCapable</key>
Expand Down
2 changes: 1 addition & 1 deletion build/darwin/create-dmg.sh
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ set -e

APP_NAME="MrRSS"
# Get version from frontend/package.json if available, otherwise use default
VERSION=$(grep -o '"version"[[:space:]]*:[[:space:]]*"[^"]*"' frontend/package.json 2>/dev/null | head -1 | sed 's/.*"\([^"]*\)".*/\1/' || echo "1.3.23")
VERSION=$(grep -o '"version"[[:space:]]*:[[:space:]]*"[^"]*"' frontend/package.json 2>/dev/null | head -1 | sed 's/.*"\([^"]*\)".*/\1/' || echo "1.3.24")
APP_PUBLISHER="Ch3nyang"
APP_URL="https://github.com/WCY-dt/MrRSS"
APP_DESCRIPTION="A Modern, Cross-Platform Desktop RSS Reader"
Expand Down
4 changes: 2 additions & 2 deletions build/ios/Info.dev.plist
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,9 @@
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>1.3.23-dev</string>
<string>1.3.24-dev</string>
<key>CFBundleVersion</key>
<string>1.3.23</string>
<string>1.3.24</string>
<key>LSRequiresIPhoneOS</key>
<true/>
<key>MinimumOSVersion</key>
Expand Down
4 changes: 2 additions & 2 deletions build/ios/Info.plist
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,9 @@
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>1.3.23</string>
<string>1.3.24</string>
<key>CFBundleVersion</key>
<string>1.3.23</string>
<string>1.3.24</string>
<key>LSRequiresIPhoneOS</key>
<true/>
<key>MinimumOSVersion</key>
Expand Down
4 changes: 2 additions & 2 deletions build/ios/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ set -e
# Build configuration
APP_NAME="MrRSS"
BUNDLE_ID="com.mrrss.app"
VERSION="1.3.23"
BUILD_NUMBER="1.3.23"
VERSION="1.3.24"
BUILD_NUMBER="1.3.24"
BUILD_DIR="build/ios"
TARGET="simulator"

Expand Down
2 changes: 1 addition & 1 deletion build/linux/Taskfile.yml
Original file line number Diff line number Diff line change
Expand Up @@ -124,7 +124,7 @@ tasks:
cmds:
- cd {{.BIN_DIR}} && tar -czf {{.APP_NAME}}-{{.VERSION}}-linux-{{.ARCH}}.tar.gz {{.APP_NAME}}
vars:
VERSION: '1.3.23'
VERSION: '1.3.24'
ARCH: '{{.ARCH | default "amd64"}}'

generate:dotdesktop:
Expand Down
2 changes: 1 addition & 1 deletion build/linux/create-appimage.sh
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ set -e

APP_NAME="MrRSS"
# Get version from frontend/package.json if available, otherwise use default
VERSION=$(grep -o '"version"[[:space:]]*:[[:space:]]*"[^"]*"' frontend/package.json 2>/dev/null | head -1 | sed 's/.*"\([^"]*\)".*/\1/' || echo "1.3.23")
VERSION=$(grep -o '"version"[[:space:]]*:[[:space:]]*"[^"]*"' frontend/package.json 2>/dev/null | head -1 | sed 's/.*"\([^"]*\)".*/\1/' || echo "1.3.24")
# Get architecture from environment variable or default to amd64
ARCH=${ARCH:-amd64}
echo "Target architecture: ${ARCH}"
Expand Down
2 changes: 1 addition & 1 deletion build/linux/nfpm/nfpm.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
name: "MrRSS"
arch: ${GOARCH}
platform: "linux"
version: "1.3.23"
version: "1.3.24"
section: "default"
priority: "extra"
maintainer: ${GIT_COMMITTER_NAME} <${GIT_COMMITTER_EMAIL}>
Expand Down
4 changes: 2 additions & 2 deletions build/windows/info.json
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
{
"fixed": {
"file_version": "1.3.23"
"file_version": "1.3.24"
},
"info": {
"0000": {
"ProductVersion": "1.3.23",
"ProductVersion": "1.3.24",
"CompanyName": "Ch3nyang",
"FileDescription": "MrRSS",
"LegalCopyright": "Copyright © 2026",
Expand Down
4 changes: 2 additions & 2 deletions build/windows/installer.nsi
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@
; All paths in this script are relative to the script directory.

!define APP_NAME "MrRSS"
!define APP_VERSION "1.3.23"
!define APP_VERSION_NUMERIC "1.3.23.0" ; NSIS requires X.X.X.X format
!define APP_VERSION "1.3.24"
!define APP_VERSION_NUMERIC "1.3.24.0" ; NSIS requires X.X.X.X format
!define APP_PUBLISHER "Ch3nyang"
!define APP_URL "https://github.com/WCY-dt/MrRSS"
!define APP_DESCRIPTION "A Modern, Cross-Platform Desktop RSS Reader"
Expand Down
2 changes: 1 addition & 1 deletion build/windows/nsis/wails_tools.nsh
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
!define INFO_PRODUCTNAME "MrRSS"
!endif
!ifndef INFO_PRODUCTVERSION
!define INFO_PRODUCTVERSION "1.3.23"
!define INFO_PRODUCTVERSION "1.3.24"
!endif
!ifndef INFO_COPYRIGHT
!define INFO_COPYRIGHT "Copyright © 2026"
Expand Down
2 changes: 1 addition & 1 deletion build/windows/wails.exe.manifest
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3">
<assemblyIdentity type="win32" name="com.mrrss.app" version="1.3.23.0" processorArchitecture="*"/>
<assemblyIdentity type="win32" name="com.mrrss.app" version="1.3.24.0" processorArchitecture="*"/>
<dependency>
<dependentAssembly>
<assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="*" publicKeyToken="6595b64144ccf1df" language="*"/>
Expand Down
1 change: 1 addition & 0 deletions config/defaults.json
Original file line number Diff line number Diff line change
Expand Up @@ -100,6 +100,7 @@
"translation_enabled": false,
"translation_only_mode": false,
"translation_provider": "google",
"update_check_enabled": true,
"update_interval": 30,
"window_height": "768",
"window_maximized": "false",
Expand Down
77 changes: 77 additions & 0 deletions docs/ISSUE_FIX_VERIFICATION.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
# Issue Fix Verification

Date: 2026-06-09

This document records the urgent and low-effort open issue fixes handled in this pass, plus the verification status for items that cannot be fully reproduced in the current Windows development environment.

## Verified By Automated Checks

- #920 LibreTranslate custom API template error
- Fixed quoted `{{text}}` placeholder handling and preset request bodies.
- Covered by `TestCustomTranslatorReplacePlaceholdersAcceptsQuotedTextPlaceholder` and `TestCustomTranslatorReplacePlaceholdersAcceptsRawTextPlaceholder`.

- #902 Turkish translation target option
- Added `tr` to the translation target selector and English/Chinese labels.
- Covered by frontend build.

- #911 LAN Ollama/local AI with self-signed TLS
- AI HTTP clients now use the shared HTTP client and can opt into `MRRSS_INSECURE_SKIP_TLS_VERIFY=true`.
- Covered by `TestCreateHTTPClientHonorsInsecureTLSVerifyEnv` and `TestCreateHTTPClientKeepsTLSVerificationByDefault`.

- #875 full-text fetch does not use proxy
- Full-text fetching now uses the same feed/global proxy selection semantics as feed refresh.
- Covered by `TestCreateArticleHTTPClientUsesFeedProxy` and `TestCreateArticleHTTPClientUsesGlobalProxyWhenFeedRequestsIt`.

- #912 newsletter sender filter does not work
- IMAP search now includes a `From` header criterion and applies a local sender match fallback.
- Covered by `TestEmailMatchesSenderFilter`.

- #896 feed management search then select-all selects all feeds
- Select-all now operates on the currently filtered/sorted visible feed list.
- Covered by frontend build.

- #802 old deleted articles reappear when cache threshold is small
- Size cleanup now removes cached article content first and preserves unread/read-state metadata when possible.
- Covered by `TestCleanupBySizePreservesUnreadMetadataAndDeletesContentFirst`.

- #669 unread view can be empty or fail to load more
- Normal article pages now support server-side `only_unread=true` pagination. The unread activity page no longer applies an extra client-side unread filter on top of server results.
- Covered by `TestGetArticlesWithUnreadFilterCombinesWithFavorites`, frontend unit tests, and frontend build.

## Code-Level Fixes With Partial Verification

- #913, #770, #716, #643, #320 macOS/window restore and maximize behavior
- Window maximize state is now persisted and reapplied on startup, tray reopen, second instance activation, and macOS dock reopen.
- Verified by Go compilation and existing window handler tests.
- Not fully verified locally because this environment is Windows and cannot reproduce macOS dock/window-manager behavior.

- #917, #826, #873 old/read articles appearing again or in unread views
- The size-based cleanup fix preserves article metadata and dedupe keys instead of deleting unread article rows. The unread list now uses server-side unread pagination.
- Verified by database tests and frontend build.
- Not fully verified against the reporter feeds because they depend on live RSSHub/GitHub feed update behavior and user-specific local state.

- #918, #909, #772, #767, #750 translation and AI failures
- Fixed custom translation template quoting, added safer HTTP client creation for AI and translation clients, and added optional TLS bypass for local/self-signed AI endpoints.
- Verified by unit tests and build.
- Not fully verified against Tencent Cloud, every custom translation endpoint, or reporter API credentials because those external services and credentials are not available locally.

- #467, #601, #795, #876, #894 full-text extraction, subscription, and encoding edge cases
- Full-text fetching now sends browser-like headers and uses the configured proxy instead of `readability.FromURL`'s internal default client.
- Verified by proxy client unit tests and Go compilation.
- Not fully verified against each reported website/feed because outcomes depend on live site behavior, access policy, encoding, and anti-scraping responses.

## Verification Commands Run

```powershell
go test -v ./internal/utils/httputil ./internal/translation ./internal/handlers/core ./internal/database ./internal/feed
go test -v ./internal/database ./internal/handlers/article
go test -v -timeout=5m ./...
cd frontend; npm run test:unit
cd frontend; npm run build
git diff --check
```

Notes:

- `go test` emits existing SQLite migration warnings about an unavailable `MD5` function in tests, but the test suites pass.
- `npm run build` emits the existing Vite large chunk warning, but the production build succeeds.
Loading
Loading