We are excited to announce the release of Vue I18n v11.
We had many contributors.
Thanks for your contributing ❤️
Summary
Deprecate Legacy API mode
The Legacy API mode was the API mode compatible with v8 for Vue 2. When v9 was released, the Legacy API was provided to smooth the migration from v8 to v9.
Legacy API mode will be deprecated in v11, as previous vue-i18n releases have already provided the following to support migration to Composition API mode
- Migration from Legacy API mode to Composition API mode, see the docs
- Composition API usage, see the docs
For compatibility, Legacy API mode still works in v11, but will be removed entirely in v12, so Legacy API mode will not work after that version.
Deprecate Custom Directive v-t
The advantage of v-t
was that it could optimize performance using the vue compiler transform and the pre-translation of vue-i18n-extension
.
This feature was supported from Vue 2.
About details see the blog article
In Vue 3, due to the Composition API, the pre-translation of vue-i18n-extension
is now limited only for global scope.
In addition, Vue 3 Virtual DOM optimization has been introduced, and the optimization provided by vue-i18n-extension
is no longer very effective. We need to require settings for SSR, the benefits of using v-t
have disappeared. And DX of templates using v-t
is not good. Custom directives do not work with key completion in editors (e.g. vscode).
For compatibility, v-t
mode still works in v11, but will be removed entirely in v12, so v-t
will not work after that version.
Drop tc
and $tc
for Legacy API mode
These APIs had already deprecated in warning about being dropped in v11. docs says
Vue I18n maintenance Status
Vue I18n v8 is no longer supported after 2025. Vue I18n v9 and Vue I18n v10 is in maintenance mode after 2025 July.
With the release of Vue I18n v11, that version will become mainstream.
The maintenance detail status of Vue I18n v9 and Vue I18n v10 is as follows:
You can check the maintenance status on the docs
❗ Braeking Changes
- feat!: deprecate Legacy API mode by @kazupon in #2016
- breaking: drop
$tc
andtc
by @kazupon in #2017 - feat!: deprecate
v-t
custom directive by @kazupon in #2045
⚡ Improvement Features
- fix:
tm
function should acceptDefineLocaleMessage
key type by @BobbieGoede in #2014
🔒 Security Fixes
📝️ Documentations
- Change config prop for quasar flags by @chrissyast in #2003
- docs: Pluralization Page by @Sammuel09 in #1998
- docs: fix composition section by @Sammuel09 in #2008
- fix(docs): correct output in composition api example by @pejeio in #2012
- docs: not use deprecated api by @kazupon in #2013
- docs: fix wrong plural example by @kazupon in #2033
- docx(pluralization.md): Correct spelling from 'gloal' to 'global' by @PuppyOne in #2038
- Fix typo by @shaedrich in #2040
- Fix another typo by @shaedrich in #2041
- docs: add maintenance status by @kazupon in #2044
👋 New Contributors
- @chrissyast made their first contribution in #2003
- @Sammuel09 made their first contribution in #1998
- @pejeio made their first contribution in #2012
- @PuppyOne made their first contribution in #2038
- @shaedrich made their first contribution in #2040
Full Changelog: v10.0.4...v11.0.0