Open
Conversation
c140c58 to
d2fe204
Compare
d2fe204 to
15c481c
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
25.7.4→26.0.3Release Notes
i18next/i18next (i18next)
v26.0.3Compare Source
addResourceBundlenow accepts an optional 6thoptionsparameter ({ silent?: boolean; skipCopy?: boolean }) matching the runtime API 2419v26.0.2Compare Source
t("key", {} as TOptions)no longer produces a type error — the context constraint now bypasses strict checking whencontextisunknown(e.g. fromTOptions) 2418v26.0.1Compare Source
alwaysFormatistrueand no format specifier is present (formatisundefined)undefined/nullvalues as-is instead of producingNaNwhen the value is missingv26.0.0Compare Source
This is a major breaking release:
Breaking Changes
initImmediateoption — the backward-compatibility mapping frominitImmediatetoinitAsync(introduced in v24) has been removed. UseinitAsyncinstead.interpolation.formatfunction — the old monolithic format function (interpolation: { format: (value, format, lng) => ... }) is no longer supported. The built-in Formatter (or a custom Formatter module via.use()) is now always used. Migrate to the new formatting approach usingi18next.services.formatter.add()or.addCached()for custom formatters.showSupportNoticeoption and all related internal suppression logic (globalThis.__i18next_supportNoticeShown,I18NEXT_NO_SUPPORT_NOTICEenv var). See our blog post for the full story.simplifyPluralSuffixoption — this option was unused by the core PluralResolver (which relies entirely onIntl.PluralRules). It only had an effect in the old v1/v2/v3 compatibility layer. The v4 test compatibility layer now defaults totrueinternally.@babel/polyfillfrom devDependencies.Improvements
indexOf() > -1/indexOf() < 0with.includes()(~40+ occurrences)indexOf() === 0with.startsWith()where appropriatevarwithconst,'' + objectwithString(object),.substring()with.slice().apply(observer, [event, ...args])with direct callobserver(event, ...args).call(this, ...)in BackendConnector retry logicarray-callback-returnin LanguageUtilsgetBestMatchFromCodeseslint-disablecomments from source filesonce()method for one-time event subscriptionscheckedLoadedForcache to Translator instance, preventing cross-instance state leakageBackendModulegeneric parameter naming inconsistency between CJS and ESM type definitionsonce()method toi18nandResourceStoretype interfacestest.projectsconfigv25.10.10Compare Source
NODE_ENV=production)v25.10.9Compare Source
SelectorParam<Ns, KPrefix>helper type — a stable, readable alternative toParameters<TFunction<Ns>>[0]for typing selector function props 2414v25.10.8Compare Source
TFunctionSelectoroverloads soParameters<TFunction>resolves to the general selector signature instead of the brandedSelectorKeytype 2412v25.10.7Compare Source
v25.10.6Compare Source
v25.10.5Compare Source
keyPrefixingetFixedTnow provide full type-safe key narrowing — the returnedtfunction is scoped to the prefix subtree 2367v25.10.4Compare Source
exists()is now a type guard that narrows the key toSelectorKey, so a validated key can be passed directly tot()2364v25.10.3Compare Source
v25.10.2Compare Source
keyFromSelectoris now type-safe — the selector callback is constrained against your resource definitions, catching invalid keys at compile time. Supports optionalnsandkeyPrefixoptions for non-default namespace/prefix contexts 2364v25.10.1Compare Source
FilterKeysnow correctly excludes base keys that have context variants when the provided context doesn't match any of them (e.g. keysomewith variantsome_meis no longer accessible withcontext="one")v25.10.0Compare Source
keyFromSelectornow returns a brandedSelectorKeytype thatt()accepts directly, enabling pre-computed and reusable translation keys 2364keyPrefixingetFixedTand per-call options 2367{{val, number}}requiresnumber,{{val, datetime}}requiresDate,{{name}}requiresstring, etc. Custom formatters can be typed viainterpolationFormatTypeMapinCustomTypeOptions2378FilterKeysin selector mode now preserves non-context, non-plural leaf keys whencontextis provided, fixing incorrect type narrowing when combiningreturnObjects: truewithcontext2398v25.9.0Compare Source
{ count: number }when a key resolves to plural forms 2373v25.8.20Compare Source
getFixedT()selector now resolves namespaces against the effectivensrather than the global init options #2406v25.8.19Compare Source
nsand primary namespace in array #2405. Reverts the broad namespace-prefix rewrite from v25.8.15 and replaces it with a targeted fix that only rewrites paths starting with a secondary namespace in a multi-namespace array, matching the type-level contract ofGetSourcev25.8.18Compare Source
v25.8.17Compare Source
v25.8.16Compare Source
on()method now correctly returnsthisinstead ofvoid, matching the runtime behavior and enabling proper method chaining in TypeScriptv25.8.15Compare Source
v25.8.14Compare Source
v25.8.13Compare Source
v25.8.12Compare Source
v25.8.11Compare Source
v25.8.10Compare Source
v25.8.9Compare Source
v25.8.8Compare Source
v25.8.7Compare Source
v25.8.6Compare Source
getFixedT()return value 2318v25.8.5Compare Source
v25.8.4Compare Source
v25.8.3Compare Source
v25.8.2Compare Source
v25.8.1Compare Source
v25.8.0Compare Source
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.