Patch release fixing an English-only display bug introduced in v2.12.0.
Fixed
The entire UI rendered raw translation keys (NAV.DASHBOARD, AUTH.SIGN_IN) for English users. Other locales were unaffected (#389).
The v2.12.0 ngx-translate v18 upgrade moved defaultLanguage to fallbackLang. Those are not equivalent: v18 loads the fallback language eagerly from inside the TranslateService constructor, which resolves the loader while the injector is still building the service and fails with NG0200: Circular dependency detected. The loader downgrades that to a console warning, so nothing crashed — English simply never loaded, while every other locale (requested later via use()) worked normally.
The fallback is now set after bootstrap, where the injector is complete.
Upgrade notes
No configuration changes and no database migration.
Hard-refresh your browser after updating. Angular fingerprints its bundles, but a cached index.html keeps pointing at the old one, so a normal reload can still show the broken build.
Verification
Regression-tested against a live instance: 20 routes scanned for untranslated keys (zero found), language switching exercised in both directions including back to English, all 11 locales loading, dialogs and admin settings search working.
Changelog
Fixed
- English UI showed raw translation keys (
NAV.DASHBOARD,AUTH.SIGN_IN) after upgrading to v2.12.0. The ngx-translate v18 upgrade moveddefaultLanguagetofallbackLang, but v18 loads the fallback language eagerly from inside theTranslateServiceconstructor. Setting it inprovideTranslateService()therefore resolvedTranslateLoaderwhile the injector was still buildingTranslateService, failing withNG0200: Circular dependency detected. Only the fallback language was affected, so English rendered raw keys while every other locale — loaded later viause()— worked normally. The fallback is now set inI18nService.init()after bootstrap, where the injector is complete. Regression tests exercise the realappConfigproviders, so re-addingfallbackLangto the provider config fails CI.