Localized messages are generated into source, not a synthetic package.
Summary
#
The flutter tool will no longer generate a synthetic package:flutter_gen
or modify the package_config.json of the app.
Applications or tools that referenced package:flutter_gen should instead
reference source files generated into the app's source directory directly.
In addition, the property generate: true is now required when using generated
l10n source.
Background
#
flutter_gen is a virtual (synthetic) package that is
created by the flutter command-line tool to allow developers to
import that package to access generated symbols and functionality,
such as for internationalization.
As the package isn't listed in an app's pubspec.yaml, and
is created via re-writing the generated package_config.json file,
many problems have been created.
Migration guide
#
This change only affects apps that have the
following entry in their pubspec.yaml:
flutter:
generate: true
If your app previously used gen-l10n without this property, it is now
required.
A synthetic package (package:flutter_gen) is
created and referenced by the app:
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
// ...
const MaterialApp(
title: 'Localizations Sample App',
localizationsDelegates: AppLocalizations.localizationsDelegates,
supportedLocales: AppLocalizations.supportedLocales,
);
There are two ways to migrate away from importing package:flutter_gen:
-
Specify
synthetic-package: falsein the accompanyingl10n.yamlfile:l10n.yamlyamlsynthetic-package: false # The files are generated into the path specified by `arb-dir` arb-dir: lib/i18n # Or, specifically provide an output path: output-dir: lib/src/generated/i18n -
Enable the
explicit-package-dependenciesfeature flag:shflutter config --explicit-package-dependencies
Timeline
#
Landed in version: 3.28.0-0.0.pre
Stable release: 3.32.0
In the next stable release after this change lands,
package:flutter_gen support will be removed.
References
#Relevant Issues:
-
Issue 73870, where
package:flutter_genpub problems are first found. -
Issue 102983, where
package:flutter_genproblems are outlined. -
Issue 157819, where
--implicit-pubspec-resolutionis discussed.
Relevant Articles:
- Internationalizing Flutter apps, the canonical documentation for the feature.
Unless stated otherwise, the documentation on this site reflects Flutter 3.35.5. Page last updated on 2025-10-28. View source or report an issue.