Release/0.4.0#580
Conversation
The release script was not updating uv.lock files after bumping the version in pyproject.toml, causing lockfile desync.
Update translated files with new translations
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: ⛔ Files ignored due to path filters (5)
📒 Files selected for processing (6)
🚧 Files skipped from review as they are similar to previous changes (5)
📝 WalkthroughWalkthroughThis PR prepares a v0.4.0 release: updates CHANGELOG, bumps versions across multiple manifests, adds uv.lock updating to the release script, and expands frontend locale translations (nl-RU-UK). Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Possibly related PRs
Suggested reviewers
Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Tip Try Coding Plans. Let us write the prompt for your AI agent so you can ship faster (with fewer bugs). Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 6
🧹 Nitpick comments (1)
src/frontend/public/locales/common/ru-RU.json (1)
32-33: Fix Russian singular form for selected thread count.Line [32] currently uses the same wording as plural, which reads unnatural for count=1. Please make
_onesingular.💬 Suggested i18n fix
- "{{count}} selected threads_one": "Выбрано обсуждений: {{count}}", - "{{count}} selected threads_other": "Выбрано обсуждений: {{count}}", + "{{count}} selected threads_one": "Выбрано {{count}} обсуждение", + "{{count}} selected threads_other": "Выбрано {{count}} обсуждений",🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@src/frontend/public/locales/common/ru-RU.json` around lines 32 - 33, The Russian singular form for the key "{{count}} selected threads_one" is incorrect (it duplicates the plural); update the translation for "{{count}} selected threads_one" to a natural singular form such as "Выбрано {{count}} обсуждение" while leaving "{{count}} selected threads_other" unchanged so plural behavior remains intact.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@bin/release.py`:
- Around line 130-138: The loop that updates uv.lock uses run_command(f"cd
{pyproject_toml.parent} && uv lock", shell=True) which interpolates paths into a
shell and should be replaced with a non-shell subprocess call; change this to
call subprocess.run(["uv","lock"], cwd=pyproject_toml.parent, check=True) (or
equivalent helper that accepts args + cwd) so the command is invoked directly
without shell=True, and apply the same replacement for the other two occurrences
in the release script (the locations operating on src/backend, src/mta-in,
src/mta-out); keep using pyproject_toml.parent as the cwd.
In `@src/frontend/public/locales/common/nl-NL.json`:
- Line 65: The translation uses "label" instead of the project's established
"tag" terminology; update the JSON entries for the keys "Add tags" (currently
"Labels toevoegen") and the corresponding other key referenced in the comment
(line ~406) to use "tag" wording—e.g., change "Labels toevoegen" to "Tags
toevoegen" and similarly replace "label" translations with "tag" equivalents so
the UI consistently uses "tag" terminology.
- Line 278: The JSON key "Insert 2 columns" is still in English; replace its
value with the Dutch translation "Voeg 2 kolommen in" for the key "Insert 2
columns" in src/frontend/public/locales/common/nl-NL.json, preserving the JSON
string quotes and trailing comma so the entry becomes "Insert 2 columns": "Voeg
2 kolommen in",.
- Line 552: The translated string for the key "You have unsaved changes. Are you
sure you want to close?" uses "annuleren" which alters the action; update the
Dutch translation to preserve the original "close" meaning (e.g., use "sluiten"
or "venster sluiten") so the entry "You have unsaved changes. Are you sure you
want to close?" maps to a phrase like "Je hebt niet-opgeslagen wijzigingen. Weet
je zeker dat je het venster wilt sluiten?" in the nl-NL JSON.
- Around line 28-29: The plural Dutch string under the key "{{count}}
occurrences_other" has a typo ("gebeurtenisen"); update its value to the correct
plural "gebeurtenissen" so the entry becomes "{{count}} occurrences_other":
"{{count}} gebeurtenissen" and ensure the key "{{count}} occurrences_one"
remains "{{count}} gebeurtenis".
- Around line 316-319: The _other plural variants use singular Dutch nouns
and/or English words; update each *_other key to use the correct Dutch plural
wording (e.g., change "Markeer {{count}} discussie als gelezen" for "Mark
{{count}} threads as read_other" to "Markeer {{count}} discussies als gelezen",
and change "{{count}} threads markeren als ongelezen" for "Mark {{count}}
threads as unread_other" to "{{count}} discussies markeren als ongelezen");
apply the same plural corrections to the other _other keys mentioned (the other
plural keys around the diff) so all *_other keys consistently use the Dutch
plural "discussies" and correct verb forms.
---
Nitpick comments:
In `@src/frontend/public/locales/common/ru-RU.json`:
- Around line 32-33: The Russian singular form for the key "{{count}} selected
threads_one" is incorrect (it duplicates the plural); update the translation for
"{{count}} selected threads_one" to a natural singular form such as "Выбрано
{{count}} обсуждение" while leaving "{{count}} selected threads_other" unchanged
so plural behavior remains intact.
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: 8eb92203-9ce3-43e7-ace3-8e6fe1fb2c98
⛔ Files ignored due to path filters (2)
src/e2e/package-lock.jsonis excluded by!**/package-lock.jsonsrc/frontend/package-lock.jsonis excluded by!**/package-lock.json
📒 Files selected for processing (10)
CHANGELOG.mdbin/release.pysrc/backend/pyproject.tomlsrc/e2e/package.jsonsrc/frontend/package.jsonsrc/frontend/public/locales/common/nl-NL.jsonsrc/frontend/public/locales/common/ru-RU.jsonsrc/frontend/public/locales/common/uk-UA.jsonsrc/mta-in/pyproject.tomlsrc/mta-out/pyproject.toml
Update all version files and changelog for minor release. Added - Store thread read state per thread access #575⚠️ This migration requires a search reindex to be run after the upgrade. - Store and display the user who sent a message #574 - Display selected threads count in right panel #576 - Add skip navigation link for keyboard users #573 - Add DeployCenter backend for syncing maildomain admins #572 - Add management command to print all users of the instance Changed - Bump keycloak to 26.5.4 #571 - Add migrations-check Makefile command Fixed - Preserve scroll position across renders #578 - Convert newlines to `<br>` in styled text #577 - Scope labels and user_role to the requested mailbox
Purpose
Update all version files and changelog for minor release.
Added
Store thread read state per thread access Feat/thread access starred flag #575
Store and display the user who sent a message ✨(message) store and display the user who sent a message #574
Display selected threads count in right panel ✨(frontend) display selected threads count in right panel #576
Add skip navigation link for keyboard users ♿(frontend) add skip navigation link for keyboard users #573
Add DeployCenter backend for syncing maildomain admins ✨(entitlements) add DeployCenter backend for syncing maildomain admins #572
Add management command to print all users of the instance
Changed
Fixed
<br>in styled text 🐛(frontend) convert newlines to <br> in styled text #577Summary by CodeRabbit
Documentation
Bug Fixes
Localization