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
Tony
c3e1c26194
fix(desktop): set referrerpolicy on youtube embed iframes ( #5039 )
2026-07-12 18:07:09 +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
72e289bb3e
fix(tracker): sample PostHog events at five percent
2026-07-03 16:46:26 +08:00
DIYgod
43fb8f23a7
fix(desktop): avoid idle Spline AI indicator render
2026-06-22 11:38:31 +08:00
DIYgod
84f692ad35
fix(desktop): keep reading mode content when translated
...
Refs RSSNext/Folo#5023 .
2026-06-22 10:43:34 +08:00
DIYgod
4ab06f42b4
fix(desktop): stabilize streaming tts scheduling
2026-06-22 10:41:54 +08:00
Tony
c98f572cf8
fix: dedupe code blocks with nested line divs
...
fix: dedupe code blocks with nested line divs
2026-06-05 19:44:07 +08:00
DIYgod
73870a8170
fix(desktop): reset social timeline on view change
2026-06-05 11:42:37 +08:00
DIYgod
31c10ea635
fix(desktop): hide empty recent reader spacer
2026-06-02 10:38:16 +08:00
DIYgod
2ed4ac546b
fix(timeline): guard mark read during scroll reset
2026-06-02 10:04:30 +08:00
DIYgod
fe1fcff315
fix(timeline): scroll to top before refresh
2026-06-01 10:43:23 +08:00
DIYgod
df8b8d0670
fix(actions): stabilize rule editor state
2026-05-29 14:00:19 +08:00
DIYgod
69202876ed
fix(collection): paginate starred entries by collection time
2026-05-29 11:56:26 +08:00
DIYgod
dc43e39711
fix: retry scroll mark-read after revisiting entries
2026-05-26 20:29:52 +08:00
DIYgod
a52ff66fb3
fix(desktop): clear stale web context menu
2026-05-26 14:31:53 +08:00
DIYgod
07cbf35de7
fix: batch scroll mark-read requests
2026-05-26 11:55:09 +08:00
DIYgod
27b30e0d47
fix(desktop): pause scroll read on timeline changes
2026-05-22 14:15:49 +08:00
DIYgod
8557b9f158
fix(desktop): scroll timeline to top before refresh
2026-05-21 14:31:56 +08:00
DIYgod
431ab0e0be
fix(desktop): preserve native image context menu
2026-05-14 18:55:17 +08:00
DIYgod
444f8e05a5
fix(desktop): prevent duplicate timeline page requests
2026-05-14 15:51:32 +08:00
DIYgod
a48123476d
fix(desktop): improve Obsidian integration metadata
2026-05-14 13:58:30 +08:00
DIYgod
13cc719377
fix(desktop): add Eagle image context menu
2026-05-12 17:14:30 +08:00
DIYgod
425e8610a3
fix: stabilize scroll mark-read footer boundary
2026-05-07 21:55:30 +08:00
DIYgod
2fa23362c3
fix: allow final entries to scroll past
2026-05-07 21:05:59 +08:00
DIYgod
43186b7ffb
fix(desktop): delay feed error indicator
2026-05-01 19:08:29 +08:00
DIYgod
8f56a51b93
fix(desktop): remove connection status indicator
2026-04-30 14:27:39 +08:00
DIYgod
963f3af397
fix(desktop): update desktop download link
2026-04-30 14:25:48 +08:00
DIYgod
e1daec3013
feat(power): restrict power usage to wallet
2026-04-30 14:23:23 +08:00
DIYgod
88ad11a2ae
fix(desktop): dedupe auth session cookies
2026-04-26 09:57:42 +08:00
DIYgod
18e7f76d61
fix(auth): refresh session cookies on clients
2026-04-24 20:37:32 +08:00
Kieran Cui
1ade942ea8
fix: enter and return via the "discover" route ( #4984 )
2026-04-24 19:07:16 +08:00
DIYgod
d3aa46e358
fix: extend API request timeout
2026-04-24 12:51:05 +08:00
DIYgod
5aba30eb4f
fix(desktop): derive MAS review state from OTA versions
2026-04-15 15:57:51 +08:00
DIYgod
bfbce383a2
release(desktop): Release v1.6.0 ( #4970 )
...
* docs(mobile): prepare release changelog
* release(mobile): release v0.4.1
* fix(ssr): route dist-external assets (#4956 )
* fix(cli): close login callback sockets (#4957 )
* fix(ci): sync release branches to dev via pull request
* fix(mobile): increase ai summary font size
* fix(desktop): improve pdf export layout and branding
* fix(mobile): refresh social login state
* fix: correct French translation language detection
* build(deps): bump android-actions/setup-android from 3 to 4 (#4929 )
Bumps [android-actions/setup-android](https://github.com/android-actions/setup-android ) from 3 to 4.
- [Release notes](https://github.com/android-actions/setup-android/releases )
- [Commits](https://github.com/android-actions/setup-android/compare/v3...v4 )
---
updated-dependencies:
- dependency-name: android-actions/setup-android
dependency-version: '4'
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(ai-chat): show reset date for future credits
* feat: refine spotlight settings and highlighting
* feat: add spotlight settings across desktop and mobile
* build(deps): bump actions/github-script from 8 to 9 (#4961 )
Bumps [actions/github-script](https://github.com/actions/github-script ) from 8 to 9.
- [Release notes](https://github.com/actions/github-script/releases )
- [Commits](https://github.com/actions/github-script/compare/v8...v9 )
---
updated-dependencies:
- dependency-name: actions/github-script
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>
* build(deps): bump signpath/github-action-submit-signing-request (#4960 )
Bumps [signpath/github-action-submit-signing-request](https://github.com/signpath/github-action-submit-signing-request ) from 2.0 to 2.1.
- [Release notes](https://github.com/signpath/github-action-submit-signing-request/releases )
- [Commits](https://github.com/signpath/github-action-submit-signing-request/compare/v2.0...v2.1 )
---
updated-dependencies:
- dependency-name: signpath/github-action-submit-signing-request
dependency-version: '2.1'
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* fix(mobile): avoid YouTube embed error on iOS close #4958
* fix(mobile): patch fmt for Xcode 26.4 builds
* build(deps): bump pnpm/action-setup from 4 to 5 (#4922 )
Bumps [pnpm/action-setup](https://github.com/pnpm/action-setup ) from 4 to 5.
- [Release notes](https://github.com/pnpm/action-setup/releases )
- [Commits](https://github.com/pnpm/action-setup/compare/v4...v5 )
---
updated-dependencies:
- dependency-name: pnpm/action-setup
dependency-version: '5'
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>
* feat(desktop): migrate tts to folo service
* docs(ota): add OTA service design spec
* feat(ota): scaffold Cloudflare worker app
* fix(ota): align scaffold with task spec
* fix(ota): use standard worker types
* fix(ota): tighten scaffold schema and dev config
* fix(ota): require at least one platform
* fix(ota): use dev env for local wrangler
* docs(ota): add implementation plan and release scoping
* chore(ota): update lockfile for worker deps
* feat(ota): add release selection primitives
* test(ota): cover incompatible newer release selection
* fix(ota): tighten release compatibility checks
* fix(ota): reject empty platform payloads
* feat(ota): add kv helpers and policy logic
* fix(ota): enforce min binary store policy
* feat(ota): fetch OTA releases from GitHub
* fix(ota): return GitHub release etags
* feat(ota): mirror release payloads into R2
* fix(ota): stream mirrored archive extraction
* fix(ota): verify mirrored asset hashes
* feat(ota): serve manifests assets and policy
* fix(ota): harden manifest and policy routes
* fix(ota): validate route semver inputs
* fix(ota): verify manifest pointer version
* feat(ota): add sync orchestration routes
* fix(ota): dedupe concurrent sync passes
* feat(mobile): enable OTA background updates
* fix(mobile): restore OTA provider typecheck
* feat(mobile): add streaming tts playback
* fix(mobile): align OTA provider state
* feat(mobile): add ota policy client and debug controls
* fix(mobile): harden ota policy and debug controls
* test(mobile): cover ota provider helpers
* ci(desktop): automate Mac App Store pkg upload
* feat(ota): generate release assets from mobile export
* test(mobile): fix ota provider test typing
* test(mobile): discover ota script test via explicit config
* fix: tighten OTA release asset metadata handling
* fix: require OTA platform asset arrays
* ci(ota): publish releases and trigger sync
* fix(ci): harden ota publish workflow
* ci(ota): tighten trailer validation
* docs(ota): add rollout and rollback runbook
* feat(mobile): upgrade expo sdk 55 and rnfirebase
* fix(ota): emit expo-compatible update identifiers
* fix(ota): support private GitHub release assets
* fix(mobile): unblock ios archive on expo sdk 55
* build(deps): bump pnpm/action-setup from 5 to 6 (#4962 )
Bumps [pnpm/action-setup](https://github.com/pnpm/action-setup ) from 5 to 6.
- [Release notes](https://github.com/pnpm/action-setup/releases )
- [Commits](https://github.com/pnpm/action-setup/compare/v5...v6 )
---
updated-dependencies:
- dependency-name: pnpm/action-setup
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>
* fix(ci): restore ota typing and tailwind config compatibility
* test(mobile): fix ota provider test typing
* chore(ota): persist production cloudflare bindings
* fix(ci): restore semver types and ota test mocks
* feat(release): drive mobile release mode from config files
* fix(ota): sign manifests and pin runtime version
* fix(ci): disable frozen lockfile for local eas builds
* docs(spec): add desktop ota unification design
* feat(ota): unify desktop updates with ota service
* fix(ota): harden desktop sync and updater flow
* docs(skill): update desktop release workflow
* fix(release): repair ota and desktop update flows
* feat: cache storefront versions for ota policy
* feat: expose ota version badges
* feat: expose ota version badges
* fix: backfill github version badges
* fix: backfill github version badges
* docs(skills): align release modes with implementation
* fix: update Discord invite link in README.md
* fix: update macOS and Windows app store links in README.md
* fix: update GitHub badge labels in README.md
* build(deps): bump actions/download-artifact from 5 to 8 (#4969 )
Bumps [actions/download-artifact](https://github.com/actions/download-artifact ) from 5 to 8.
- [Release notes](https://github.com/actions/download-artifact/releases )
- [Commits](https://github.com/actions/download-artifact/compare/v5...v8 )
---
updated-dependencies:
- dependency-name: actions/download-artifact
dependency-version: '8'
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 softprops/action-gh-release from 2 to 3 (#4968 )
Bumps [softprops/action-gh-release](https://github.com/softprops/action-gh-release ) from 2 to 3.
- [Release notes](https://github.com/softprops/action-gh-release/releases )
- [Changelog](https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md )
- [Commits](https://github.com/softprops/action-gh-release/compare/v2...v3 )
---
updated-dependencies:
- dependency-name: softprops/action-gh-release
dependency-version: '3'
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>
* docs(release): prepare desktop and mobile release metadata
* release(desktop): release v1.6.0
* fix(desktop): restore spotlight settings sync
* fix(desktop): apply spotlight highlights in entry rendering
* fix(desktop): extend spotlight highlight coverage
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-14 12:49:15 +08:00
Cocoon-Break
b469f07029
fix: use >= for hour-format threshold in PlayerProgress ( Closes #4965 ) ( #4966 )
...
Signed-off-by: Cocoon-Break <54054995+kuishou68@users.noreply.github.com>
2026-04-13 15:13:37 +08:00
DIYgod
421d50fca8
fix(desktop): restore integration typecheck
2026-04-03 13:15:59 +08:00
wait
20cc43cf16
fix: resolve Obsidian EPERM on macOS by using native folder picker ( #4242 ) ( #4924 )
...
- Replace text input with native dialog.showOpenDialog for vault path selection
- Add path validity detection with three-state UI (unselected/valid/invalid)
- Fix YAML frontmatter parsing failure with Chinese/special characters
- Fix ENOENT error when vault subdirectory doesn't exist
- Add AI summary (description) to Obsidian frontmatter export
- Add author fallback to feed title when entry author is empty
- Increase filename truncation limit from 20 to 80 characters for CJK titles
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-03 12:41:59 +08:00
DIYgod
b7ccf7b872
fix(desktop): repair auth and cli sync
2026-04-03 12:38:01 +08:00
DIYgod
4cb761a501
fix(desktop): persist two-factor challenge cookies
2026-04-03 11:24:49 +08:00
DIYgod
43b5052b06
fix(desktop): persist session token after 2fa
2026-04-02 22:19:36 +08:00
DIYgod
69bed891a3
fix(desktop): add explicit 2fa submit
2026-04-02 22:16:26 +08:00
DIYgod
0508144f8d
fix(desktop): use one-time token in cli settings
2026-04-02 21:11:58 +08:00
DIYgod
8b3a1b8965
fix(desktop): use one-time token for cli sync
2026-04-02 21:02:46 +08:00
DIYgod
c799152a1e
fix(desktop): repair cli settings sync
2026-04-02 19:43:05 +08:00
DIYgod
1571396fb6
fix: upgrade sdk packages and align app types ( #4950 )
2026-04-02 09:03:57 +00:00
DIYgod
03ccfa8c56
fix: keep hovered unread entries visible ( #4948 )
2026-04-02 07:28:30 +00:00
DIYgod
ce5e91962c
fix: pause scroll mark read after refresh ( #4946 )
2026-04-02 07:21:57 +00:00