Skip to content

[PM-26292] tool: Add script to delete unused Localizable.strings entries#2464

Draft
KatherineInCode wants to merge 6 commits intopm-26293/delete-unused-stringsfrom
pm-26292/delete-unused-strings
Draft

[PM-26292] tool: Add script to delete unused Localizable.strings entries#2464
KatherineInCode wants to merge 6 commits intopm-26293/delete-unused-stringsfrom
pm-26292/delete-unused-strings

Conversation

@KatherineInCode
Copy link
Copy Markdown
Contributor

🎟️ Tracking

https://bitwarden.atlassian.net/browse/PM-26292

📔 Objective

This builds on #2412 by adding a module that finds unused strings and deletes them. I also did some refactoring of the strings file management into a separate python module.

I also ran the script, and it found 308 unused keys, many of which were identified in #2003. I'm not entirely sure why it's so many, especially of what seem like basic strings, though my guess is that some are used on Android, and a lot of them are detritus from MAUI or earlier that just never got cleaned up.

As noted in #2412, eventually we could have running these scripts be part of the CI process in some way, but currently these are still manual runs.

@github-actions github-actions bot added app:password-manager Bitwarden Password Manager app context app:authenticator Bitwarden Authenticator app context t:ci Change Type - Updates to automated workflows labels Mar 18, 2026
@github-actions
Copy link
Copy Markdown
Contributor

Logo
Checkmarx One – Scan Summary & Detailsbcb485d3-e699-45b9-ae7d-bb732dab2549

Great job! No new security vulnerabilities introduced in this pull request

@KatherineInCode KatherineInCode added the ai-review Request a Claude code review label Mar 18, 2026
@codecov
Copy link
Copy Markdown

codecov bot commented Mar 18, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 42.38%. Comparing base (fdf096d) to head (f25e6b7).

❗ There is a different number of reports uploaded between BASE (fdf096d) and HEAD (f25e6b7). Click for more details.

HEAD has 1 upload less than BASE
Flag BASE (fdf096d) HEAD (f25e6b7)
2 1
Additional details and impacted files
@@                         Coverage Diff                         @@
##           pm-26293/delete-unused-strings    #2464       +/-   ##
===================================================================
- Coverage                           85.27%   42.38%   -42.89%     
===================================================================
  Files                                2063      585     -1478     
  Lines                              175943    31627   -144316     
===================================================================
- Hits                               150029    13406   -136623     
+ Misses                              25914    18221     -7693     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@KatherineInCode KatherineInCode changed the title [PM-26292] Add script to delete unused Localizable.strings entries [PM-26292] tool: Add script to delete unused Localizable.strings entries Mar 19, 2026
@KatherineInCode KatherineInCode added the innovation Feature work related to Innovation Sprint or BEEEP projects label Mar 31, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ai-review Request a Claude code review app:authenticator Bitwarden Authenticator app context app:password-manager Bitwarden Password Manager app context innovation Feature work related to Innovation Sprint or BEEEP projects t:ci Change Type - Updates to automated workflows

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant