- Remove _db_dep singleton and its use as default value in function signatures
- Use DbSession = Annotated[Session, Depends(get_db)] directly (matches files.py pattern)
- Declare db: DbSession without a default (FastAPI DI provides the session)
- Delete 10 experimental test_*.py files left at repo root from B008 debugging
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com>
Refactor `app/api/audit_logs.py` to use the `Annotated` type hint pattern while maintaining default values for dependencies using module-level singletons.
- Resolves B008: Function-call in default argument.
- Maintains compatibility with decorators (e.g., `@require_login`) that call the function without explicitly providing the `db` argument.
- Uses standard FastAPI patterns for query parameters with constant defaults.
- No changes to API runtime behavior.
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com>
Add 18 previously missing language entries to SUPPORTED_LANGUAGES in
app/utils/i18n.py so every translation JSON file in frontend/translations/
is properly indexed and served by the language selector:
New languages: af, ar, cy, eo, fa, fy, gl, he, ja, kn, ko, li, nds, no, pa, sr, vi, vls
Each new language entry includes:
- Correct ISO 639-1/639-3 code matching its JSON filename
- Native name and display name
- Appropriate country/language flag emoji
- Locale-specific date and number formatting rules in _LOCALE_FORMATS
Also: rename nb "Norwegian" → "Norwegian Bokmål" to distinguish it from no "Norwegian".
Update tests/test_i18n.py:
- Count assertions: 31 → 49
- Expected code set expanded to all 49 codes
- Fix test_unsupported_language_fallback (ja/ko now supported, use xx/yy)
Update docs/InternationalizationGuide.md:
- Language count: 10 → 49
- Full language table with flags, native names, tiers
- Complete file structure listing all 49 JSON files
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com>
Translate all 927 keys from English to Catalan in frontend/translations/ca.json.
Previously the file contained only English placeholder values. All strings
have been translated to proper Catalan, preserving technical terms, product
names, and placeholder variables (e.g. {size}, {year}, {count}).
- 872 out of 927 keys now have Catalan translations
- 55 values intentionally kept unchanged (proper names, product names,
technical acronyms like IP/ID/ENV, language names in their native form,
numeric error codes, and words identical in Catalan and English)"
Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com>
Merged main (v0.126.0) into branch. Main added 26 new translation keys
via Crowdin l10n PR. Resolved conflict in pl.json by:
- Keeping all 280 Polish translations from our branch
- Adding Polish translations for 26 new keys from main