Sebastion
bd91b015ee
fix(desktop/ipc): allowlist URL scheme protocols in openURLScheme ( #5056 )
...
The 'integration.openURLScheme' IPC method invokes 'shell.openExternal'
with a renderer-supplied string after only checking that it contains
'://'. Electron's documentation explicitly warns that passing untrusted
URLs to 'shell.openExternal' is unsafe: schemes such as 'file://',
'smb://', 'ms-msdt:', 'search-ms:', 'jar:', 'res:', 'javascript:',
'data:' and 'vbscript:' have well-known abuse chains (local file
disclosure, NTLM credential theft over SMB on Windows, MSDT/Follina-style
RCE, etc.). Because the renderer process can also reach this IPC via any
XSS sink in untrusted RSS feed content, the previous validation was not
sufficient.
Replace the substring check with strict URL parsing plus an allowlist of
protocols that match the integration use-cases documented in the UI
(Obsidian, Bear, Drafts, Things, Notion, DEVONthink) plus generic
http/https/mailto. All other protocols are rejected with a clear error.
Adds vitest cases for representative dangerous schemes (verifying that
'shell.openExternal' is never invoked) and for every scheme shipped as a
built-in example, so future regressions on either side are caught.
2026-07-28 13:40:13 +08:00
DIYgod
2350884eae
fix(mobile): handle RSSHub subscription limit errors
2026-07-26 07:29:14 +08:00
DIYgod
52f587dacb
fix(desktop): dismiss share popover after actions
2026-07-25 20:23:44 +08:00
DIYgod
3d65478fb6
fix(subscription): recover past-due Stripe checkout
2026-07-25 20:22:55 +08:00
DIYgod
22c8a667e6
fix(desktop): restore category chevron rotation
2026-07-25 20:18:50 +08:00
DIYgod
2034702df6
fix(styles): avoid DaisyUI border token collision
2026-07-25 20:17:55 +08:00
DIYgod
764c70b48c
fix(mobile): restore dark mode text colors
2026-07-25 18:20:36 +08:00
DIYgod
a9e2b1a818
fix: make Codex worktree setup portable
2026-07-25 15:31:42 +08:00
DIYgod
110960a6f0
fix(ssr): restore shared user profiles
2026-07-25 15:06:20 +08:00
DIYgod
cf224d63f5
fix(ssr): escape hydration data in inline scripts
2026-07-25 12:38:49 +08:00
dependabot[bot]
773f1bfe21
build(deps): bump actions/setup-node from 6 to 7 ( #5046 )
...
Bumps [actions/setup-node](https://github.com/actions/setup-node ) from 6 to 7.
- [Release notes](https://github.com/actions/setup-node/releases )
- [Commits](https://github.com/actions/setup-node/compare/v6...v7 )
---
updated-dependencies:
- dependency-name: actions/setup-node
dependency-version: '7'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-07-15 09:00:49 +08:00
DIYgod
192a7139ce
fix(desktop): use js-yaml ESM exports for Windows metadata
2026-07-13 13:03:42 +08:00
DIYgod
c3eb7285f9
Merge pull request #5044 from RSSNext/main
...
chore(sync): merge main into dev
2026-07-13 12:37:24 +08:00
DIYgod
d7365aebf4
Merge pull request #5041 from RSSNext/release/desktop/1.11.0
...
release(desktop): Release v1.11.0
2026-07-13 12:36:53 +08:00
DIYgod
d90cdfe2b3
fix(desktop): package jsdom runtime dependencies
2026-07-13 12:13:57 +08:00
DIYgod
713c53352d
fix(desktop): package jsdom runtime dependencies
2026-07-13 12:12:50 +08:00
DIYgod
c231c05ed9
Merge pull request #5043 from RSSNext/mobile-main
...
chore(sync): merge mobile-main into dev
2026-07-13 11:47:28 +08:00
DIYgod
8f7471951d
Merge pull request #5042 from RSSNext/release/mobile/0.5.6
...
release(mobile): Release v0.5.6
2026-07-13 11:46:49 +08:00
DIYgod
57fd759f25
fix(desktop): use js-yaml ESM exports
2026-07-13 11:33:09 +08:00
DIYgod
d726ccccb2
fix(desktop): use js-yaml ESM exports
2026-07-13 11:32:42 +08:00
DIYgod
06135760ba
docs(mobile): restore desktop release inputs
2026-07-13 11:14:43 +08:00
DIYgod
7c4d51a642
release(mobile): release v0.5.6
2026-07-13 11:14:04 +08:00
DIYgod
c3fae852aa
docs(desktop): restore mobile release inputs
2026-07-13 11:13:00 +08:00
DIYgod
c77e60e161
release(desktop): release v1.11.0
2026-07-13 11:11:44 +08:00
DIYgod
ce905f8c5a
docs(mobile): prepare release metadata
2026-07-13 11:10:19 +08:00
DIYgod
5318b9e156
docs(desktop): prepare release inputs
2026-07-13 11:10:13 +08:00
DIYgod
212db8a584
fix(mobile): restore push notification registration
2026-07-12 19:43:36 +08:00
DIYgod
451e263db4
chore(sync): merge mobile-main into dev
2026-07-12 18:32:36 +08:00
Tony
c3e1c26194
fix(desktop): set referrerpolicy on youtube embed iframes ( #5039 )
2026-07-12 18:07:09 +08:00
DIYgod
de935145da
fix(ci): run iOS builds on macOS 26
2026-07-11 10:21:42 +08:00
DIYgod
dd99acf8ef
fix(ci): trigger iOS builds for toolchain changes
2026-07-11 10:16:55 +08:00
DIYgod
815536c93f
fix(ci): use Xcode 26.4.1 for iOS builds
2026-07-11 10:15:31 +08:00
DIYgod
f89260362b
fix(ci): use Xcode 26.3 for iOS builds
2026-07-11 09:45:50 +08:00
DIYgod
cde24e2614
fix(mobile): declare Expo Babel preset
2026-07-11 09:45:08 +08:00
DIYgod
c144c36baa
fix(mobile): restore scrolled header background
2026-07-11 09:05:16 +08:00
DIYgod
87862b4b93
fix(mobile): prevent timeline view selector overflow
2026-07-11 09:04:44 +08:00
DIYgod
8ae78f747f
fix(mobile): restore signed-out launch login
2026-07-11 09:03:59 +08:00
DIYgod
1158281f59
chore(deps): update frontend dependencies ( #5038 )
...
* chore(deps): update frontend dependencies
* fix(ci): format OTA verification commands
2026-07-10 22:36:12 +08:00
DIYgod
e48a8f4f2e
fix(mobile): use folo callback for social auth
2026-07-03 17:41:58 +08:00
DIYgod
dfcfb0ddff
docs: remove status badge from readme
2026-07-03 16:49:39 +08:00
DIYgod
72e289bb3e
fix(tracker): sample PostHog events at five percent
2026-07-03 16:46:26 +08:00
dependabot[bot]
54447e6faa
build(deps): bump actions/cache from 5 to 6 ( #5034 )
...
Bumps [actions/cache](https://github.com/actions/cache ) from 5 to 6.
- [Release notes](https://github.com/actions/cache/releases )
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md )
- [Commits](https://github.com/actions/cache/compare/v5...v6 )
---
updated-dependencies:
- dependency-name: actions/cache
dependency-version: '6'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-24 09:20:14 +08:00
DIYgod
c782efa65e
fix(landing): bundle legal markdown content
2026-06-22 20:57:58 +08:00
DIYgod
e4483e9052
release(mobile): Release v0.5.5 ( #5030 )
...
* fix(release): extend OTA sync trigger timeout
* docs(release): clarify mobile OTA runtime selection
* fix(timeline): scroll to top before refresh
* fix(timeline): guard mark read during scroll reset
* fix(desktop): hide empty recent reader spacer
* fix(mobile): preserve social timeline scroll reset
* fix(desktop): reset social timeline on view change
* fix: dedupe code blocks with nested line divs
fix: dedupe code blocks with nested line divs
* build(deps): bump actions/checkout from 6 to 7 (#5025 )
Bumps [actions/checkout](https://github.com/actions/checkout ) from 6 to 7.
- [Release notes](https://github.com/actions/checkout/releases )
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md )
- [Commits](https://github.com/actions/checkout/compare/v6...v7 )
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-version: '7'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* build(deps): bump expo/expo-github-action from 8 to 9 (#5019 )
Bumps [expo/expo-github-action](https://github.com/expo/expo-github-action ) from 8 to 9.
- [Release notes](https://github.com/expo/expo-github-action/releases )
- [Changelog](https://github.com/expo/expo-github-action/blob/main/CHANGELOG.md )
- [Commits](https://github.com/expo/expo-github-action/compare/v8...v9 )
---
updated-dependencies:
- dependency-name: expo/expo-github-action
dependency-version: '9'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* fix(desktop): stabilize streaming tts scheduling
* fix(desktop): keep reading mode content when translated
Refs RSSNext/Folo#5023 .
* fix(desktop): avoid idle Spline AI indicator render
* docs(mobile): prepare release metadata
* docs(desktop): prepare release inputs
* release(mobile): release v0.5.5
* docs(mobile): restore desktop release inputs
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Tony <TonyRL@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-22 15:07:05 +08:00
github-actions[bot]
cbe4e06733
Merge pull request #5031 from RSSNext/main
...
chore(sync): merge main into dev
2026-06-22 07:06:40 +00:00
DIYgod
39857c6958
Merge pull request #5029 from RSSNext/release/desktop/1.10.0
...
release(desktop): Release v1.10.0
2026-06-22 15:01:31 +08:00
DIYgod
aa91b25bff
docs(mobile): restore desktop release inputs
2026-06-22 14:59:02 +08:00
DIYgod
5d6b5ed40f
release(mobile): release v0.5.5
2026-06-22 14:58:32 +08:00
DIYgod
195a2a71f4
docs(desktop): restore mobile release inputs
2026-06-22 14:57:45 +08:00
DIYgod
ddef59d1bc
release(desktop): release v1.10.0
2026-06-22 14:57:04 +08:00