NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
pub.dev · #271 most downloaded on pub.dev
Core tools to organize the structure of a build and run Builders.
Last release 1 years ago
02 Sep 2025
Release timing varies
gaps range from 8 days to 6 months
Nearly every release is documented
notes for 60 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
8 years old
98 releases · first in 2018
Added a new BuildFilter class which matches a set of assets with glob syntax support for both package and file names.
BuildFilter class which matches a set of assets with glob
syntax support for both package and file names.buildFilters to BuildOptions which is a Set<BuildFilter> and
is used to filter exactly which outputs will be generated.
BuildRunner.run also now accepts an optional Set<BuildFilter> argument.FinalizedReader also now accepts a Set<BuildFilter> optional parameter
and will only allow reading matched files.
FinalizedReader.reset now requires an additional Set<BuildFilter>
argument.When skipping build script updates, don't check if the build script is a part of the asset graph either.
One column per quarter.
Factor out the logic to do a manual file system scan for changes into a new AssetTracker class.
AssetTracker class.
build_runner package.Support the latest release of package:json_annotation.
package:json_annotation.Fix --log-performance crash on windows by ensuring we use valid windows directory names.
Support the latest package:build_config.
package:build_config.Handle symlink creation failures and link to dev mode docs for windows.
Explicitly require Dart SDK >=2.2.0 <3.0.0.
>=2.2.0 <3.0.0.Add additional error details and a fallback for https://github.com/dart-lang/build/issues/1804
Share an asset graph when building regardless of whether the build script was started from a snapshot.
Only track valid and readable assets as inputs to globs. Fixes a crash when attempting to check outputs from an invalid asset.
Remove usage of set literals to fix errors on older sdks that don't support them.
Fix an issue where --symlink was forcing outputs to not be hoisted.
--symlink was forcing outputs to not be hoisted.BuildImpl now takes an optional list of BuildTargets instead of a list of
buildDirs.Handle asset graph decode failures.
Update build_resolvers to version 1.0.0.
build_resolvers to version 1.0.0.Fix an issue where the finalizedReader was not reset prior to build.
finalizedReader was not reset prior to build.The build method now requires a list of buildDirs.
build method now requires a list of buildDirs.buildDirs from BuildOptions.overrideGeneratedDirectory method which overrides the directory
for generated outputs.
BuildRunner instance.Update to package:graphs version 0.2.0.
package:graphs version 0.2.0.build version 1.1.x.Fix a NoSuchMethodError that the user could get when adding new dependencies.
NoSuchMethodError that the user could get when adding new
dependencies.Fix a bug where adding new dependencies or removing dependencies could cause subsequent build errors, requiring a pub run build_runner clean to fix.
pub run build_runner clean to fix.Support running the build script as a snapshot.
BuildScriptChangedException and
BuildConfigChangedException. These should be handled by scripts as described
in the documentation.FailureTypes of buildScriptChanged and buildConfigChanged.Support the latest package:json_annotation.
package:json_annotation.Update package:build version constraint to >1.0.0 <1.0.1.
package:build version constraint to >1.0.0 <1.0.1.The performance tracking apis have changed significantly, and performance tracking now uses the timing package.
timing package.BuildOptions static factory now takes a LogSubscription instead of a
BuildEnvironment. Logging should be start as early as possible to catch logs
emitted during setup.timing package for performance tracking.BuildStep.trackStage to track performance of custom build
stages within your builder.Migrated glob tracking to a specialized node type to fix dart-lang/build#1702.
Bug Fix: Don't include any non-lib assets from dependencies in the build, even if they are a source in a target.
Restore new keyword for a working release on Dart 1 VM.
new keyword for a working release on Dart 1 VM.Bug Fix: Don't output a packages symlink within the packages directory.
packages symlink within the packages directory.Removed the constraint on reading files that output to cache from files that output to source.
Fixed an issue where builders that didn't read their primary input would get invalidated on fresh builds when they shouldn't.
Implementations of BuildEnvironment must now implement the finalizeBuild method. There is a default implementation if you extend BuildEnvironment that
BuildEnvironment must now implement the finalizeBuild
method. There is a default implementation if you extend BuildEnvironment
that is a no-op.
assumeTty argument on IOEnvironment has moved to a named argument
since null is an accepted value.outputMap field on BuildOptions has moved to the IOEnvironment
class.outputSymlinksOnly option to IOEnvironment constructor, that
causes the merged output directories to contain only symlinks, which is much
faster than copying files.FinalizedAssetView class which provides a list of all available
assets to the BuildEnvironment during the build finalization phase.
outputMap has moved from BuildOptions to this constructor, as a named
argument.OverridableEnvironment now supports overriding the new finalizeBuild
api.Changed the default file caching logic to use an LRU cache.
Support package:json_annotation v1.
package:json_annotation v1.The hash dir for the asset graph under .dart_tool/build is now based on a relative path to the build script instead of the absolute path.
.dart_tool/build is now based on a
relative path to the build script instead of the absolute path.
.dart_tool/build directories to be reused across different
computers and directories for the same project.Allow reuse cache between machines with different OS
Clarify wording for conflicting output directory options. No behavioral differences.
<3.0.0.The BuildPerformance class is now serializable, it has a fromJson constructor and a toJson instance method.
BuildPerformance class is now serializable, it has a fromJson
constructor and a toJson instance method.BuildOptions.logPerformanceDir, performance logs will be continuously
written to that directory if provided.global_options in build.yaml of the root package.Resolvers implementation.BuildPhasePerformance.action has been replaced with
BuildPhasePerformance.builderKeys.BuilderActionPerformance.builder has been replaced with
BuilderActionPerformance.builderKey.BuildResult no longer has an exception or stackTrace field.failOnSevere arguments. Severe logs are always considered failing.Initial release, migrating the core functionality of package:build_runner to this package.
Initial release, migrating the core functionality of package:build_runner to this package.
Your coding agent can read these notes before it upgrades. Set up the MCP server →