From bbd0ce2932aa1ff8e4b867a5774257ca640a7e0d Mon Sep 17 00:00:00 2001 From: "Shams Zakhour (ignore Sfshaza)" Date: Wed, 15 Jul 2026 14:32:18 -0700 Subject: [PATCH 1/3] Adding a page on dependency management. --- sites/docs/src/data/sidenav/default.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sites/docs/src/data/sidenav/default.yml b/sites/docs/src/data/sidenav/default.yml index 26152d41fe1..84e876d5a51 100644 --- a/sites/docs/src/data/sidenav/default.yml +++ b/sites/docs/src/data/sidenav/default.yml @@ -470,6 +470,8 @@ children: - title: Use packages & plugins permalink: /packages-and-plugins/using-packages + - title: Package dependency management + permalink: /packages-and-plugins/dependency-management - title: Develop packages & plugins permalink: /packages-and-plugins/developing-packages - title: Swift Package Manager From aa0106fbc87dcb999a4af79417dcffe3d489cbbf Mon Sep 17 00:00:00 2001 From: "Shams Zakhour (ignore Sfshaza)" Date: Wed, 15 Jul 2026 14:42:35 -0700 Subject: [PATCH 2/3] Oops forgot to add new page --- .../dependency-management.md | 250 ++++++++++++++++++ 1 file changed, 250 insertions(+) create mode 100644 sites/docs/src/content/packages-and-plugins/dependency-management.md diff --git a/sites/docs/src/content/packages-and-plugins/dependency-management.md b/sites/docs/src/content/packages-and-plugins/dependency-management.md new file mode 100644 index 00000000000..0c6695a3e95 --- /dev/null +++ b/sites/docs/src/content/packages-and-plugins/dependency-management.md @@ -0,0 +1,250 @@ +--- +title: Package dependency management +description: >- + Learn how Flutter and Dart resolve package dependencies, + and how to handle version conflicts. +--- + +When you build a Flutter app, +you often use external packages to add functionality. +Each package can depend on other packages, creating a tree of dependencies. +Understanding how Dart and Flutter manage these dependencies helps you resolve +version conflicts and keep your app stable. + +## How dependency resolution works + +Your Flutter project specifies dependencies in the `pubspec.yaml` file. +When you run `flutter pub get`, +the package manager resolves the dependencies and records the exact versions in +the `pubspec.lock` file. + +### Direct and transitive dependencies + +A dependency can be direct or transitive: + +**Direct dependencies** +: The packages you explicitly list under the `dependencies` or + `dev_dependencies` section in your `pubspec.yaml` file. + +**Transitive dependencies** +: The packages that your direct dependencies depend on. + You do not list these packages in your `pubspec.yaml` file, + but your project requires them to compile. + +### The pubspec.lock file + +The `pubspec.lock` file contains the exact version of every direct and +transitive dependency used in your project. +This file ensures that every developer on your team, and your build servers, +use the exact same package versions. +Commit the `pubspec.lock` file to version control for application projects, +but not for package projects. + +:::note Use version ranges, not exact versions +Some developers specify exact versions in `pubspec.yaml` +(for example, `foo: 1.0.0`) to guarantee that their builds are predictable. +However, `pubspec.lock` already pins exact versions for predictable builds. + +Specify version ranges (using caret syntax) in your `pubspec.yaml` file +instead of exact versions. +This allows the version solver to find compatible versions of +transitive dependencies, and enables you to safely update dependencies +using `flutter pub upgrade`. +::: + +## The role of the version solver + +Unlike some package managers, +the Dart package manager (`pub`) allows only a single version of any package in +your app's compilation tree. + +This constraint exists for several reasons: + +1. **Type safety:** If your app uses two versions of the same package, + you can get type mismatch errors. + For example, if `v1` and `v2` of a package both define a `User` class, + the Dart compiler treats them as two distinct types. + You cannot pass a `v1.User` to a method expecting a `v2.User`. +1. **Binary size:** Including multiple versions of the same package + increases the size of your application. +1. **Global state:** Many packages use global variables or singletons. + Having multiple copies of the package can lead to inconsistent state or + bugs. + +The version solver's job is to look at all version constraints for your direct +and transitive dependencies and find a single concrete version for each package +that satisfies all constraints. + +## Understand version constraints + +When you declare a dependency in `pubspec.yaml`, +you specify a version constraint. +Dart packages use [Semantic Versioning](https://semver.org) (SemVer). +A version number has three parts: `major.minor.patch` (for example, `2.1.4`). + +You can define version constraints in your `pubspec.yaml` file using different +syntaxes: + +### Caret syntax + +The caret syntax (`^`) is the most common way to define a version constraint. +It tells the solver to use any version that is compatible with the specified +version. + +* For stable versions (1.0.0 and higher), + the caret allows updates that do not change the major version: + * `^1.2.3` translates to `>=1.2.3 <2.0.0` +* For pre-release/pre-1.0.0 versions, + any change in the minor or patch version can introduce breaking changes. + Therefore, the caret constraint is more restrictive: + * `^0.8.0` translates to `>=0.8.0 <0.9.0` + * `^0.0.3` translates to `>=0.0.3 <0.0.4` + +### Traditional ranges + +You can define explicit version ranges using comparison operators: + +```yaml +dependencies: + url_launcher: '>=5.4.0 <6.0.0' +``` + +### Any version + +If you do not specify a version constraint or use `any`, +the solver can choose any version: + +```yaml +dependencies: + url_launcher: any +``` + +Avoid using `any` because a future package update might introduce breaking +changes that break your build. + +## Understand dependency conflicts + +A dependency conflict occurs when two packages in your dependency tree require +incompatible versions of the same transitive dependency. + +Consider this example scenario: + +1. Your app depends on two direct dependencies: `package_a` and `package_b`. +1. `package_a` depends on `foo: ^1.0.0`. +1. `package_b` depends on `foo: ^2.0.0`. + +```mermaid +graph TD + App[Your App] --> package_a[package_a ^1.0.0] + App --> package_b[package_b ^1.0.0] + package_a --> foo_v1[foo ^1.0.0] + package_b --> foo_v2[foo ^2.0.0] +``` + +Because `foo` cannot be both `^1.0.0` (which is `<2.0.0`) and +`^2.0.0` (which is `>=2.0.0`), the version solver fails. + +When you run `flutter pub get` or try to build the app, +the solver prints an error message: + +```console +Because every version of package_a depends on foo ^1.0.0 and +every version of package_b depends on foo ^2.0.0, +package_a is incompatible with package_b. +So, because my_app depends on both package_a ^1.0.0 +and package_b ^1.0.0, version solving failed. +``` + +To read this error message, trace the conflict from the bottom up: +1. Identify the conflicting package (`foo`). +1. Find which packages require conflicting versions (`package_a` requires `foo + ^1.0.0` and `package_b` requires `foo ^2.0.0`). +1. Check which direct dependencies pull in those conflicting packages + (`my_app` depends on both `package_a ^1.0.0` and `package_b ^1.0.0`). + +## Resolve dependency conflicts + +You can use the following steps to resolve dependency conflicts. + +### Upgrade package versions + +Before making manual changes, check if newer, +compatible versions of your dependencies exist. +Run the following command to upgrade your packages to the latest versions +allowed by your `pubspec.yaml` constraints: + +```bash +flutter pub upgrade +``` + +To see which packages have newer versions available beyond your current +constraints, run: + +```bash +flutter pub outdated +``` + +If newer versions exist, +update the version constraints in your `pubspec.yaml` to the newer versions and +run `flutter pub get`. + +### Use dependency overrides + +If no compatible versions exist because one of the packages has not been +updated, you can force the version solver to use a specific version. +Add a `dependency_overrides` section to your `pubspec.yaml` file: + +```yaml +dependencies: + package_a: ^1.0.0 + package_b: ^1.0.0 + +dependency_overrides: + foo: ^2.0.0 +``` + +This overrides all constraints for `foo` and forces the version solver to use +`^2.0.0`. + +> [!WARNING] +> Use dependency overrides only as a temporary fix. +> Bypassing the version solver can cause compilation errors or runtime crashes +(such as `NoSuchMethodError`) if the packages are not actually compatible. +> Thoroughly test your app after applying an override. + +> [!NOTE] +> Dependency overrides only apply to the root package. +> If you are developing a package to publish to pub.dev, +> do not include `dependency_overrides` in your `pubspec.yaml` file because +> other projects that depend on your package will ignore them. + +### Support the ecosystem + +If a package is unmaintained or slow to update, you can help resolve the issue: + +1. **File an issue:** Search the package's repository for existing issues or + file a new issue to notify the maintainer. +1. **Submit a pull request:** If you can fix the conflict, fork the package + repository, update the constraints, and submit a pull request. +1. **Use a git or path dependency:** While waiting for the maintainer to merge + your pull request, you can point your `pubspec.yaml` to your fork or a local + copy: + ```yaml + dependencies: + package_a: + git: + url: https://github.com/your-username/package_a.git + ref: update-foo-dependency + ``` + +## Learn more + +For more information on how Dart manages dependencies, see the following resources: + +* [Package versioning][] on dart.dev +* [Pub dependencies][] on dart.dev +* [Dependency overrides][] on dart.dev + +[Dependency overrides]: {{site.dart-site}}/tools/pub/dependencies#dependency-overrides +[Package versioning]: {{site.dart-site}}/tools/pub/versioning +[Pub dependencies]: {{site.dart-site}}/tools/pub/dependencies From cd0ce8bd6b29d802a385d32f5412909429c55e20 Mon Sep 17 00:00:00 2001 From: "Shams Zakhour (ignore Sfshaza)" Date: Thu, 16 Jul 2026 10:21:28 -0700 Subject: [PATCH 3/3] Incorporating feedback --- .../dependency-management.md | 31 ++++++++---------- .../packages-and-plugins/version-solver.png | Bin 0 -> 37380 bytes 2 files changed, 13 insertions(+), 18 deletions(-) create mode 100644 sites/docs/web/assets/images/docs/development/packages-and-plugins/version-solver.png diff --git a/sites/docs/src/content/packages-and-plugins/dependency-management.md b/sites/docs/src/content/packages-and-plugins/dependency-management.md index 0c6695a3e95..08664ae1159 100644 --- a/sites/docs/src/content/packages-and-plugins/dependency-management.md +++ b/sites/docs/src/content/packages-and-plugins/dependency-management.md @@ -41,15 +41,12 @@ Commit the `pubspec.lock` file to version control for application projects, but not for package projects. :::note Use version ranges, not exact versions -Some developers specify exact versions in `pubspec.yaml` -(for example, `foo: 1.0.0`) to guarantee that their builds are predictable. -However, `pubspec.lock` already pins exact versions for predictable builds. - -Specify version ranges (using caret syntax) in your `pubspec.yaml` file -instead of exact versions. +Since `pubspec.lock` always pins exact versions for predictable builds, +you should use ranges in your `pubspec.yaml` file (possibly using +caret syntax described below). This allows the version solver to find compatible versions of -transitive dependencies, and enables you to safely update dependencies -using `flutter pub upgrade`. +transitive dependencies, +and enables you to safely update dependencies using `flutter pub upgrade`. ::: ## The role of the version solver @@ -119,8 +116,10 @@ dependencies: url_launcher: any ``` -Avoid using `any` because a future package update might introduce breaking -changes that break your build. +:::note Avoid using `any` +We don't recommend using `any` because a future package +update might introduce breaking changes that break your build. +::: ## Understand dependency conflicts @@ -133,13 +132,7 @@ Consider this example scenario: 1. `package_a` depends on `foo: ^1.0.0`. 1. `package_b` depends on `foo: ^2.0.0`. -```mermaid -graph TD - App[Your App] --> package_a[package_a ^1.0.0] - App --> package_b[package_b ^1.0.0] - package_a --> foo_v1[foo ^1.0.0] - package_b --> foo_v2[foo ^2.0.0] -``` +![Version solver conflict](/assets/images/docs/development/packages-and-plugins/version-solver.png) Because `foo` cannot be both `^1.0.0` (which is `<2.0.0`) and `^2.0.0` (which is `>=2.0.0`), the version solver fails. @@ -155,7 +148,9 @@ So, because my_app depends on both package_a ^1.0.0 and package_b ^1.0.0, version solving failed. ``` -To read this error message, trace the conflict from the bottom up: +To read this error message, trace the conflict from the bottom up +in the dependency graph: + 1. Identify the conflicting package (`foo`). 1. Find which packages require conflicting versions (`package_a` requires `foo ^1.0.0` and `package_b` requires `foo ^2.0.0`). diff --git a/sites/docs/web/assets/images/docs/development/packages-and-plugins/version-solver.png b/sites/docs/web/assets/images/docs/development/packages-and-plugins/version-solver.png new file mode 100644 index 0000000000000000000000000000000000000000..84165a11c4d0df3c20bc4b757a6f8268fb6568ee GIT binary patch literal 37380 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 VW>&-7nJo~oPW$+KH+fRC{s)2cr>6h_ literal 0 HcmV?d00001