Post-1.0: unit tests for the new helpers + README tidy
Facebook Messenger on your desktop, without the Facebook clutter
Brought to you by:
kristoffer-r
Originally created by: kristofferR
Follow-up to the v1.0 release (PR [#2]).
is_unsafe_download (incl. dotfile / multi-dot edge cases), theme_for, is_dark, splash_background, the new Settings defaults, the want_tray rule, and percent_decode boundaries. Generated by CodeRabbit (supersedes [#3]) and cleaned up to pass clippy -D warnings + fmt.https://claude.ai/code/session_01Y3bggeShXAoDnXrjtM4kSU
Originally posted by: chatgpt-codex-connector[bot]
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, you can upgrade your account or add credits to your account and enable them for code reviews in your settings.
Originally posted by: coderabbitai[bot]
📝 Walkthrough
## Walkthrough Updates Messenger injection, native theme/window/menu handling, download filename safety, crate metadata and platform dependencies, unit tests, and one README sentence. ## Changes **Carrier theme, tray, and download flow** |Layer / File(s)|Summary| |---|---| |**Injected page behaviors**`src-tauri/inject/messenger.js`|Adds conversation hotkeys, forced theme classes, unread badge syncing, compact mode toggling, login tidy theme selection, backdrop cleanup, and settings-change refresh hooks.| |**Native theme, tray, and menu plumbing**
`src-tauri/Cargo.toml`, `src-tauri/src/lib.rs`|Updates package/MSRV metadata and dependencies, adds new settings fields and defaults, applies theme-aware window styling, rebuilds themed windows on theme changes, changes tray/menu behavior, and centralizes settings mutations.| |**Download safety and filename handling**
`src-tauri/src/lib.rs`|Uses suggested download names, sanitizes filenames to one safe component, rejects unsafe extensions, and removes the older fetch helper.| |**Tests and README**
`src-tauri/src/lib.rs`, `README.md`|Adds unit tests for unsafe downloads, theme helpers, default settings, tray enablement, and percent decoding, and trims one sentence from the auto-updates README text.| ## Estimated code review effort 🎯 4 (Complex) | ⏱️ ~60 minutes ## Possibly related PRs - [[kristofferR/carrier#1](https://github.com/kristofferR/carrier/issues/1)](https://github.com/kristofferR/carrier/pull/1): Overlaps with the same `src-tauri/src/lib.rs` theme, tray, and download-safety areas updated here. - [[kristofferR/carrier#2](https://github.com/kristofferR/carrier/issues/2)](https://github.com/kristofferR/carrier/pull/2): Also changes Messenger injection and native settings/window handling in the same feature area. ## Poem > 🐇 I hopped through themes both dark and light, > And tucked the tray in out of sight. > Safe downloads now land just right, > The unread badge glows in night. > A carrot for tests, a nibble of cheer, > The README trim is tidy here.
🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
| Check name | Status | Explanation | | :------------------------: | :------- | :--------------------------------------------------------------------------------------------------------- | | Description Check | ✅ Passed | Check skipped - CodeRabbit’s high-level summary is enabled. | | Title check | ✅ Passed | The title is concise and mentions real parts of the PR, though it omits the larger theme/download changes. | | Docstring Coverage | ✅ Passed | Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%. | | Linked Issues check | ✅ Passed | Check skipped because no linked issues were found for this pull request. | | Out of Scope Changes check | ✅ Passed | Check skipped because no linked issues were found for this pull request. |✨ Finishing Touches
📝 Generate docstrings
- [ ] Create stacked PR - [ ] Commit on current branch🧪 Generate unit tests (beta)
- [ ] Create PR with unit tests - [ ] Commit unit tests in branch `fix/v1.0-review`Comment
@coderabbitai helpto get the list of available commands.Originally posted by: kristofferR
@coderabbitai review
Originally posted by: coderabbitai[bot]
✅ Action performed
Review finished. > Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.Originally posted by: kristofferR
@coderabbitai review
Originally posted by: coderabbitai[bot]
✅ Action performed
Review finished. > Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.Originally posted by: kristofferR
Superseded by [#6], which replays the v1.0 changes as fresh commits off
pre-v1.0so CodeRabbit/Codex actually review the full release diff (they were skipping the already-merged v1.0 commits here). Continuing review on [#6].Related
Tickets:
#6Ticket changed by: kristofferR