Skip to content

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Jul 26, 2025

This PR contains the following updates:

Package Type Update Change Pending
analyzer (source) dependencies major ^7.0.010.0.1 10.0.2
build (source) dependencies major ^2.2.14.0.4
build_runner (source) dev_dependencies minor 2.5.42.10.5
build_test (source) dev_dependencies minor 3.2.13.5.5
copy_with_extension (source) dependencies major 6.0.111.0.0
copy_with_extension_gen (source) dev_dependencies major 6.0.111.0.0
source_gen (source) dependencies major ^2.0.04.2.0
test (source) dev_dependencies minor 1.26.21.29.0

Release Notes

dart-lang/sdk (analyzer)

v10.0.1

  • Require version ^1.18.0 of the meta package.

v10.0.0

  • Deprecations in ClassDeclaration:
    • Properties leftBracket, members, rightBracket are deprecated; use
      body instead.
    • Properties name, typeParameters are deprecated; use namePart instead.
  • Deprecations in EnumDeclaration:
    • Properties leftBracket, constants, members, rightBracket are
      deprecated; use body instead.
    • Properties name, typeParameters are deprecated; use namePart instead.
  • Deprecations in ExtensionDeclaration:
    • Properties leftBracket, members, rightBracket are deprecated; use
      body instead.
  • Deprecations in ExtensionTypeDeclaration:
    • Properties leftBracket, constants, members, rightBracket are
      deprecated; use body instead.
    • Properties constKeyword, name, representation, typeParameters are
      deprecated; use primaryConstructor instead.
  • Breaking Change: While the deprecated members mentioned above still exist
    in the AST, their parent nodes have changed. This means that code relying on
    specific parent-child relationships for these nodes might break.
  • Breaking Change: Remove deprecated DiagnosticOrErrorListener and the
    DiagnosticOrErrorListenerExtension extension.
  • Breaking Change: Remove deprecated RecordingDiagnosticListener.onError
    and BooleanDiagnosticListener.onError methods.
  • Deprecate LintCode.new's hasPublishedDocs parameter.
  • Add RemovedAnalysisRule as the preferred way to represent removed lint
    rules. Deprecated RuleState.removed (which was the previous way to do so).
  • Deprecate ConstructorElement.isSynthetic.
    Use isOriginDeclaration, isOriginImplicitDefault,
    isOriginMixinApplication instead.
  • Deprecate TopLevelVariableElement.isSynthetic.
    Use isOriginDeclaration, isOriginGetterSetter.
  • Deprecate FieldElement.isSynthetic.
    Use isOriginDeclaration, isOriginGetterSetter,
    isOriginDeclaringFormalParameter, isOriginEnumValues instead.
  • Deprecate PropertyAccessorElement.isSynthetic.
    Use isOriginDeclaration, isOriginInterface, isOriginVariable instead.
  • Deprecate Element.isSynthetic; use isOriginXyz properties instead.
  • Deprecate LibraryElement.isSynthetic; use isOriginNotExistingFile instead.
  • Document that the class SyntacticEntity is not intended to be subclassed by
    clients.
  • Deprecate DiagnosticCode.name and DiagnosticCode.uniqueName. Use
    DiagnosticCode.lowerCaseName and DiagnosticCode.lowerCaseUniqueName
    instead.
  • Breaking Change: Remove GitPluginSource, PathPluginSource,
    PluginConfiguration, PluginSource, VersionedPluginSource from the
    public API.
  • Breaking Change: Remove deprecated
    AnalysisOptions.pluginConfigurations.

v9.0.0

  • Remove deprecated field Diagnostic.data.
  • In the method DiagnosticReporter.atOffset and the constructors
    Diagnostic.tmp and Diagnostic.forValues, remove the deprecated named
    parameter errorCode, and make the named parameter diagnosticCode
    non-nullable and required.
  • Remove deprecated DiagnosticReporter.atOffset named parameter, errorCode.
  • Remove deprecated BooleanErrorListener.
  • Remove deprecated RecordingErrorListener.
  • Remove deprecated AnalysisErrorListener.NULL_LISTENER.
  • Remove deprecated AstNodeExtension.
  • Remove deprecated NullShortableExpression.
  • Remove deprecated getters and methods from AST and element model.
  • Remove deprecated PartDirective.configurations.
  • Remove deprecated TypeDefiningElement.
  • Remove deprecated TypeAliasElement.aliasedElement.
  • Remove deprecated resolveFile2.
  • Remove deprecated ErrorCode.
  • Remove deprecated ErrorSeverity.
  • Remove deprecated ErrorType.
  • Remove deprecated AnalysisErrorListener.
  • Remove deprecated RecordingDiagnosticListener.errors.
  • Remove deprecated RecordingDiagnosticListener.getErrorForSource.
  • Deprecate BooleanDiagnosticListener.onError in favor of .onDiagnostic.
  • Deprecate RecordingDiagnosticListener.onError in favor of .onDiagnostic.
  • Deprecate DiagnosticOrErrorListener in favor of DiagnosticListener.

v8.4.0

  • Add the experimental_member_use warning, which warns about any reference to
    a declaration annotated with @experimental.
  • Deprecate TypeAliasElement.aliasedElement, use aliasedType instead.

v8.3.0

  • Deprecate TypeDefiningElement, check for specific elements.
  • Deprecate TypeDefiningFragment, check for specific fragments.
  • Deprecate PartDirective.configurations, removed from the specification.

v8.2.0

  • Updated SDK constraint to ^3.9.0.
  • Deprecate Diagnostic.data. Instead, please use an expando to attach data to
    the Diagnostic object.
  • Deprecate CatchClauseParameter.declaredElement and CatchClauseParameter.declaredElement2.
    Use CatchClauseParameter.declaredFragment instead.
  • Deprecate DeclaredIdentifier.declaredElement and DeclaredIdentifier.declaredElement2.
    Use DeclaredIdentifier.declaredFragment instead.
  • Deprecate DeclaredVariablePattern.declaredElement and DeclaredVariablePattern.declaredElement2.
    Use DeclaredVariablePattern.declaredFragment instead.
  • Deprecate VariableDeclaration.declaredElement and VariableDeclaration.declaredElement2.
    Use VariableDeclaration.declaredFragment instead.
  • Deprecate InterfaceFragment.interfaces, use InterfaceElement.interfaces instead.
  • Deprecate InterfaceFragment.mixins, use InterfaceElement.mixins instead.
  • Deprecate InterfaceFragment.supertype, use InterfaceElement.supertype instead.
  • Deprecate ExtensionTypeFragment.primaryConstructor, use ExtensionTypeElement.primaryConstructor.
  • Deprecate ExtensionTypeFragment.representation, use ExtensionTypeElement.representation.
  • Deprecate NullShortableExpression. This interface should not be needed by
    analyzer clients, and is no longer supported.

v8.1.1

  • Fix for EnumSet usage when compiled to JavaScript.

v8.1.0

  • Add DartObject.constructorInvocation with the constructor and arguments.
  • Make PropertyAccessorElement.variable non-nullable.
  • Add documentationComment to Element and Fragment.
  • Add metadata to Element and Fragment.
  • Add metadata to ElementDirective.
  • Add partKeywordOffset to PartInclude.
  • Fix draining analysis events when used by package:build.
  • Deprecate LibraryElementResult.element2, use element instead.
  • Deprecate ResolvedLibraryResult.element2, use element instead.
  • Deprecate ResolvedUnitResult.libraryElement2, use libraryElement instead.
  • Deprecate AnalysisSession.getParsedLibraryByElement2, use getParsedLibraryByElement instead.
  • Deprecate AnalysisSession.getResolvedLibraryByElement2, use getResolvedLibraryByElement instead.
  • Deprecate resolveFile2, use resolveFile instead.
  • Deprecate DartObject.variable2, use variable instead.
  • Deprecate DartObject.toFunctionValue2, use toFunctionValue instead.
  • Deprecate Annotatable, use documentationComment and metadata of Element or Fragment directly.
  • Deprecate ClassElement.isExtendableIn; use isExtendableOutside instead.
  • Deprecate ClassElement.isImplementableIn; use isImplementableOutside instead.
  • Deprecate ClassElement.isMixableIn; use isMixableOutside instead.
  • Deprecate MixinElement.isImplementableIn; use isImplementableOutside instead.

v8.0.0

  • Remove deprecated element model V1.
  • Remove deprecated DartType.isStructurallyEqualTo.
  • Remove deprecated RecordType.positionalTypes.
  • Remove deprecated RecordType.sortedNamedTypes.
  • Remove ElementLocation class; its values are not returned anymore.
  • Remove deprecated AnalysisContext.analysisOptions.
  • Remove deprecated PromotableElement and PromotableFragment.
  • Remove deprecated LocalVariableElement.hasInitializer.
  • Remove deprecated LocalVariableFragment.hasInitializer.
  • Remove deprecated LocalVariableFragment.nameOffset.
  • Remove deprecated JoinPatternVariableFragment.isConsistent.
  • Remove deprecated JoinPatternVariableFragment.variables2.
  • Remove deprecated VariableElement.constantInitializer2.
  • Remove deprecated VariableFragment.initializer.
  • Remove deprecated ConstantInitializer.
  • Remove deprecated HasSinceSdkVersion.
  • LibraryFragment is not Annotatable anymore.
  • Stop implementing ConstantEvaluationTarget by ElementAnnotation.
    This is an internal interface that should not have been exposed.
  • Deprecate element2.dart library; import element.dart.
  • Deprecate XyzElement2 classes; use XyzElement instead.
  • Deprecate AnalysisError.correction field; use
    AnalysisError.correctionMessage instead.
  • Deprecate AnalysisError; use Diagnostic instead.
  • Deprecate ErrorCode; use DiagnosticCode instead.
  • Deprecate ErrorReporter.atOffset's errorCode parameter; use
    diagnosticCode instead.
  • Deprecate ErrorSeverity; use DiagnosticSeverity instead.
  • Deprecate DiagnosticCode.errorSeverity; use
    DiagnosticCode.diagnosticSeverity instead.
  • Deprecate AnalysisErrorListener, BooleanErrorListener, and
    RecordingErrorListener; use DiagnosticListener,
    BooleanDiagnosticListener, and RecordingDiagnosticListener respectively,
    instead. Instead of calling or overriding AnalysisErrorListener.onError,
    call or override DiagnosticListener.onDiagnostic. Instead of using
    AnalysisErrorListener.NULL_LISTENER, use DiagnosticListener.nullListener.
  • Deprecate RecordingErrorListener.errors; use
    RecordingDiagnosticListener.diagnostics instead.
  • Deprecate RecordingErrorListener.getErrorsForSource; no longer supported.
  • Deprecate AnalysisResultWithErrors; use AnalysisResultWithDiagnostics
    instead.
  • Deprecate AnalysisResultWithErrors.errors; use
    AnalysisResultWithErrors.diagnostics instead.
  • Deprecate ErrorType; use DiagnosticType instead.
  • Change ElementDirective from sealed to abstract.
    This allows the analyzer to have an internal implementation
    class corresponding to ElementDirective.
  • Deprecate NamedType.name2, use name instead.
  • Deprecate ClassElement.isXyzIn2, use isXyzIn instead.
  • Deprecate Element.enclosingElement2, use enclosingElement instead.
  • Deprecate InstanceElement.fields2, use fields instead.
  • Deprecate InstanceElement.getters2, use getters instead.
  • Deprecate InstanceElement.setters2, use setters instead.
  • Deprecate InstanceElement.methods2, use methods instead.
  • Deprecate InstanceElement.getField2, use getField instead.
  • Deprecate InstanceElement.getGetter2, use getGetter instead.
  • Deprecate InstanceElement.getSetter2, use getSetter instead.
  • Deprecate InstanceElement.getMethod2, use getMethod instead.
  • Deprecate InstanceFragment.fields2, use fields instead.
  • Deprecate InstanceFragment.methods2, use methods instead.
  • Deprecate InterfaceElement.constructors2, use constructors instead.
  • Deprecate InterfaceFragment.constructors2, use constructors instead.
  • Deprecate JoinPatternVariableElement.variables2, use variables instead.
  • Deprecate Annotatable.metadata2, use metadata instead.
  • Deprecate Element.nonSynthetic2, use nonSynthetic instead.
  • Deprecate Element.library2, use library instead.
  • Deprecate ExtensionTypeElement.primaryConstructor2, use primaryConstructor instead.
  • Deprecate ExtensionTypeElement.representation2, use representation instead.
  • Deprecate ExtensionTypeFragment.primaryConstructor2, use primaryConstructor instead.
  • Deprecate ExtensionTypeFragment.representation2, use representation instead.
  • Deprecate InterfaceType.getGetter2, use getGetter instead.
  • Deprecate InterfaceType.getMethod2, use getMethod instead.
  • Deprecate InterfaceType.getSetter2, use getSetter instead.
  • Deprecate InterfaceType.lookUpConstructor2, use lookUpConstructor instead.
  • Deprecate InterfaceType.lookUpGetter3, use lookUpGetter instead.
  • Deprecate InterfaceType.lookUpMethod3, use lookUpMethod instead.
  • Deprecate InterfaceType.lookUpSetter3, use lookUpSetter instead.
  • Remove PropertyAccessorFragmentImplImplicitGetter, PropertyAccessorFragmentImplImplicitSetter,
    and FormalParameterFragmentImplOfImplicitSetter, replace with GetterFragmentImpl, and SetterFragmentImpl.
  • Deprecate ExtensionTypeFragment.representation2, use representation instead.
  • Deprecate DartType.element3, use element instead.
  • Deprecate LibraryElement.loadLibraryFunction2, use loadLibraryFunction instead.
  • Deprecate InterfaceType.constructors2, use constructors instead.
  • Deprecate Element.accept2, use accept instead.
  • Deprecate InstantiatedTypeAliasElement.element2, use element instead.
  • Deprecate TypeProvider.boolElement2, use boolElement instead.
  • Deprecate TypeProvider.doubleElement2, use doubleElement instead.
  • Deprecate TypeProvider.enumElement2, use enumElement instead.
  • Deprecate TypeProvider.futureElement2, use futureElement instead.
  • Deprecate TypeProvider.futureOrElement2, use futureOrElement instead.
  • Deprecate TypeProvider.intElement2, use intElement instead.
  • Deprecate TypeProvider.iterableElement2, use iterableElement instead.
  • Deprecate TypeProvider.listElement2, use listElement instead.
  • Deprecate TypeProvider.mapElement2, use mapElement instead.
  • Deprecate TypeProvider.nullElement2, use nullElement instead.
  • Deprecate TypeProvider.numElement2, use numElement instead.
  • Deprecate TypeProvider.objectElement2, use objectElement instead.
  • Deprecate TypeProvider.recordElement2, use recordElement instead.
  • Deprecate TypeProvider.setElement2, use setElement instead.
  • Deprecate TypeProvider.streamElement2, use streamElement instead.
  • Deprecate TypeProvider.stringElement2, use stringElement instead.
  • Deprecate TypeProvider.symbolElement2, use symbolElement instead.
  • Deprecate Annotation.element2, use element instead.
  • Deprecate LibraryDirective.name2, use name instead.
  • Deprecate CatchClauseParameter.declaredElement2, use declaredElement instead.
  • Deprecate CompoundAssignmentExpression.readElement2, use readElement instead.
  • Deprecate CompoundAssignmentExpression.writeElement2, use writeElement instead.
  • Deprecate DeclaredIdentifier.declaredElement2, use declaredElement instead.
  • Deprecate DeclaredVariablePattern.declaredElement2, use declaredElement instead.
  • Deprecate EnumConstantDeclaration.constructorElement2, use constructorElement instead.
  • Deprecate ExtensionOverride.element2, use element instead.
  • Deprecate FunctionBody.isPotentiallyMutatedInScope2, use isPotentiallyMutatedInScope instead.
  • Deprecate ImportPrefixReference.element2, use element instead.
  • Deprecate LibraryDirective.element2, use element instead.
  • Deprecate LibraryDirective.name2, use name instead.
  • Deprecate NamedExpression.element2, use element instead.
  • Deprecate NamedType.element2, use element instead.
  • Deprecate PatternField.element2, use element instead.
  • Deprecate RelationalPattern.element2, use element instead.
  • Deprecate VariableDeclaration.declaredElement2, use declaredElement instead.
  • Deprecate InterfaceType.methods2, use methods instead.
  • Deprecate Fragment.name2, use name instead.
  • Deprecate Element.name3, use name instead.
  • Deprecate ConstructorElement.redirectedConstructor2, use redirectedConstructor instead.
  • Deprecate ConstructorElement.superConstructor2, use superConstructor˙ instead.
  • Deprecate Element.children2, use children instead.
  • Deprecate Element.displayString2, use displayString instead.
  • Deprecate Element.getExtendedDisplayName2, use getExtendedDisplayName instead.
  • Deprecate Element.isAccessibleIn2, use isAccessibleIn instead.
  • Deprecate Element.thisOrAncestorMatching2, use thisOrAncestorMatching instead.
  • Deprecate Element.thisOrAncestorOfType2, use thisOrAncestorOfType instead.
  • Deprecate EnumElement.constants2, use constants instead.
  • Deprecate FieldFormalParameterElement.field2, use field instead.
  • Deprecate FormalParameterElement.typeParameters2, use typeParameters instead.
  • Deprecate Fragment.children3, use children instead.
  • Deprecate DartType.asInstanceOf2, use asInstanceOf instead.
  • Deprecate TypeSystem.instantiateInterfaceToBounds2, use instantiateInterfaceToBounds instead.
  • Deprecate TypeSystem.instantiateTypeAliasToBounds2, use instantiateTypeAliasToBounds instead.
  • Deprecate FormalParameterElement.appendToWithoutDelimiters, use appendToWithoutDelimiters instead.
  • Deprecate GetterElement.correspondingSetter2, use correspondingSetter instead.
  • Deprecate InterfaceElement.unnamedConstructor2, use unnamedConstructor instead.
  • Deprecate InterfaceElement.getNamedConstructor2, use getNamedConstructor instead.
  • Deprecate TypeParameterizedElement.typeParameters2, use typeParameters instead.
  • Deprecate FormalParameterElement.appendToWithoutDelimiters2, use appendToWithoutDelimiters instead.
  • Deprecate GetterElement.correspondingSetter2, use correspondingSetter instead.
  • Deprecate InterfaceElement.unnamedConstructor2, use unnamedConstructor instead.
  • Deprecate InterfaceElement.getNamedConstructor2, use getNamedConstructor instead.
  • Deprecate LibraryElement.entryPoint2, use entryPoint instead.
  • Deprecate LibraryElement.exportedLibraries2, use exportedLibraries instead.
  • Deprecate LibraryElement.getClass2, use getClass instead.
  • Deprecate LibraryElement.getEnum2, use getEnum instead.
  • Deprecate LibraryElement.getMixin2, use getMixin instead.
  • Deprecate LibraryExport.exportedLibrary2, use exportedLibrary instead.
  • Deprecate LibraryFragment.accessibleExtensions2, use accessibleExtensions instead.
  • Deprecate LibraryFragment.importedLibraries2, use importedLibraries instead.
  • Deprecate LibraryImport.importedLibrary2, use importedLibrary instead.
  • Deprecate MixinElement.isImplementableIn2, use isImplementableIn instead.
  • Deprecate PatternVariableElement.join2, use join instead.
  • Deprecate PropertyAccessorElement.variable3, use variable instead.
  • Deprecate PropertyInducingElement.getter2, use getter instead.
  • Deprecate PropertyInducingElement.setter2, use setter instead.
  • Deprecate SetterElement.correspondingGetter2, use correspondingGetter instead.
  • Deprecate SuperFormalParameterElement.superConstructorParameter2, use superConstructorParameter instead.
  • Deprecate TypeAliasElement.aliasedElement2, use aliasedElement instead.
  • Deprecate TypeParameterizedElement.typeParameters2, use typeParameters instead.
  • Deprecate VariableElement.constantInitializer2, use constantInitializer instead.
  • Deprecate TypeProvider.isNonSubtypableClass2, use isNonSubtypableClass instead.
  • Deprecate EnumFragment.constants2, use constants instead.
  • Deprecate InterfaceElement.lookUpInheritedMethod2, use lookUpInheritedMethod instead.
  • Deprecate LibraryFragment.classes2, use classes instead.
  • Deprecate LibraryFragment.enums2, use enums instead.
  • Deprecate LibraryFragment.extensionTypes2, use extensionTypes instead.
  • Deprecate LibraryFragment.extensions2, use extensions instead.
  • Deprecate LibraryFragment.functions2, use functions instead.
  • Deprecate LibraryFragment.libraryExports2, use libraryExports instead.
  • Deprecate LibraryFragment.libraryImports2, use libraryImports instead.
  • Deprecate LibraryFragment.mixins2, use mixins instead.
  • Deprecate LibraryFragment.topLevelVariables2, use topLevelVariables instead.
  • Deprecate LibraryFragment.typeAliases2, use typeAliases instead.
  • Deprecate PatternVariableFragment.join2, use join instead.
  • Deprecate LibraryFragment.isNonSubtypableClass2, use isNonSubtypableClass instead.
  • Deprecate TypeParameterizedFragment.typeParameters2, use typeParameters instead.
  • Deprecate Fragment.nameOffset2, use nameOffset instead.
  • Deprecate DirectiveUriWithLibrary.library2, use library instead.
  • Deprecate ElementAnnotation.element2, use element instead.
  • Deprecate LibraryImport.prefix2, use prefix instead.
  • Deprecate MultiplyDefinedElement.conflictingElements2, use conflictingElements instead.
  • Deprecate ScopeLookupResult.getter2, use getter instead.
  • Deprecate ScopeLookupResult.setter2, use setter instead.
dart-lang/build (build)

v4.0.4

Compare Source

  • Allow analyzer 10.0.0.

v4.0.3

Compare Source

  • Allow analyzer 9.0.0.

v4.0.2

Compare Source

  • Require analyzer 8.0.0. Remove use of deprecated analyzer members, use
    their recommended and compatible replacements.

v4.0.1

Compare Source

  • Improvements to dartdoc.

v4.0.0

Compare Source

  • Remove methods and classes deprecated in 4.0.0.
  • Make AssetReader.digest abstract.
  • Remove unused deps: async, build_runner_core, convert.

v3.1.0

Compare Source

  • Deprecate runBuilder. It has been moved to package:build_runner_core and
    will be removed from package:build. Please note: the currently supported
    ways to run builders are using build_runner on the command line or
    build_test in tests. If you need ongoing support for a different way to run
    builders please get in touch at
    https://github.com/dart-lang/build/discussions.
  • Deprecate runPostProcessBuilder. Like runBuilder, it has been moved to
    package:build_runner_core and will be removed from package:build.
  • Deprecate AssetWriterSpy. It will be removed.
  • Deprecate MultiplexingBuilder. It will be removed.
  • Use build_runner_core 9.3.1.

v3.0.2

Compare Source

  • Use build_runner_core 9.3.0.
  • Documentation revamp.
  • Allow meta 1.16.0.

v3.0.1

Compare Source

  • Small improvements to RAM usage.
  • Allow analyzer 8.0.0.

v3.0.0

Compare Source

dart-lang/build (build_runner)

v2.10.5

Compare Source

  • Add logging of builder compilation so you can tell how much time is spent
    on the JIT or AOT compile. Explicitly log restarts to recompile builders.
  • Allow analyzer 10.0.0.

v2.10.4

Compare Source

  • Allow analyzer 9.0.0.

v2.10.3

Compare Source

  • Performance: improve scalability with the number of library cycles, making
    builds much faster for some large codebases.
  • Bug fix: fix crash when you run dart run build_runner build in a
    subdirectory of a package.
  • Bug fix: in a workspace, generate for transitive dependencies of the current
    package instead of for all packages in the workspace.

v2.10.2

Compare Source

  • Bug fix: fix issue with webdev failing due to a modification during a build.
  • In "serve" and "watch" modes, retry failed compiles instead of exiting.

v2.10.1

Compare Source

  • Performance: improve findAssets scalability, making it much faster for
    prefix matches in packages with thousands of files or more. One specific use
    case that is now faster is builders that use source_gen shared parts, for
    example built_value and json_serializable.
  • Bug fix: look up triggers in the triggers section of build.yaml using the
    full name. For the case in which the builder name matched the package name,
    the abbreviated name was being used instead.
  • Bug fix: fix incorrect log with build_runner/aot on Windows with JIT.

v2.10.0

Compare Source

  • Add AOT compilation of builders. A future release will AOT compile builders
    automatically, for this release it's behind a flag. AOT compiled builders
    start up faster and have higher throughput, for faster builds overall.
    Builders that use dart:mirrors cannot be AOT compiled.
  • Add force-aot flag to AOT compile builders.
  • Add force-jit flag to force the current default of JIT compiling builders.
  • Add the --dart-jit-vm-arg option. Its values are passed to dart run when
    a build script is started in JIT mode. This allows specifying options to
    attach a debugger to builders.
  • Require analyzer 8.0.0. Remove use of deprecated analyzer members, use
    their recommended and compatible replacements.
  • Internal changes for build_test.

v2.9.0

Compare Source

  • Watch mode: handle builder code and config changes without recompiling or
    exiting.
  • Remove log output about build_runner internals.
  • Print the port that gets picked if you pass 0 for a port number, for example
    with dart run build_runner serve web:0.
  • Improve warnings when an option is specified for an unknown builder.
  • Rewrite bootstrap code to remove use of dart:mirrors.
  • Bug fix: require args 2.5.0.

v2.8.0

Compare Source

  • Make errors more prominent in log output, highlight in red.
  • Remove "deleting declared outputs" warning.
  • Bug fix: fix incorrect display of some "usage" messages.
  • Move code from build_resolvers into build_runner.
  • Move code from build_runner_core into build_runner.
  • Move code from timing into build_runner.
  • Remove unused deps: build_resolvers, build_runner_core, timing.

v2.7.2

Compare Source

  • Use build 4.0.0.

v2.7.1

Compare Source

  • Bug fix: with build_runner serve, special handling of paths containing
    /packages/ was hiding actual folders called packages. Serve the actual
    folders first, before trying the package lookup.
  • Remove undocumented / unused features: lib/build_script_generate.dart,
    bin/graph_inspector.dart, build_runner doctor and
    build_runner generate-build-script commands.
  • Remove deps on pubspec_parse and timing.
  • Use build 3.1.0.

v2.7.0

Compare Source

  • Performance: builders can choose to run only when "triggered". A builder runs
    only if triggered if the option run_only_if_triggered is true. Triggers
    are configured in new a top-level section of build.yaml called triggers.
    See the build_config docs
    for more information.
  • Remove interactive prompts for whether to delete files.
  • Ignore -d flag: always delete files as if -d was passed.
  • Remove --use-polling-watcher flag.
  • Remove build_runner serve mode $graph and $perf handlers.
  • Documentation revamp.
  • Bug fix: delete transitive generated outputs as well as direct generated
    outputs. So, a generated file now gets deleted if its input was a generated
    file that is no longer output.
  • Bug fix: fix crash creating a merged output dir with a file called lib.

v2.6.1

Compare Source

  • Use build 3.0.1.

v2.6.0

Compare Source

  • Remove unused deps: analyzer, build_resolvers, collection, http,
    js, meta, package_config, pool, web, yaml.
  • Remove unused dev_deps: http, package_config, web.
  • Testing: read build configs using AssetReader so they're easier to test.
  • Use build 3.0.0.
  • Use build_resolvers 3.0.0.
dart-lang/build (build_test)

v3.5.5

Compare Source

  • Use build_runner 2.10.5.

v3.5.4

Compare Source

  • Use build_runner 2.10.4.

v3.5.3

Compare Source

  • Use build_runner 2.10.3.

v3.5.2

Compare Source

  • Use build_runner 2.10.2.

v3.5.1

Compare Source

  • Use build_runner 2.10.1.

v3.5.0

Compare Source

  • Improve TestBuilderResult: add succeeded, outputs and errors.
    Deprecate buildResult in favor of these new members.
  • Add verbose to testBuilders and related methods. Like the command line
    flag it enables info logging from builders.
  • Add flattenOutput to testBuilders. Use it for a less realistic but simpler
    build in which generated outputs are always written directly to each package
    instead of "hidden" output being written to .dart_tool/build/generated.

v3.4.1

Compare Source

  • Use build_runner 2.9.0.
  • Use build 4.0.1.

v3.4.0

Compare Source

  • Support post process builders in testBuilders. And, add appliesBuilders
    so that builders can apply post process builders.
  • Add testBuilderFactories: like testBuilders, but provide the builder
    factories instead of the builders. Use this to allow config read from
    build.yaml to be passed in to the factory.
  • TestBuilder now accepts a name: this is the name that will be shown
    in logging and can be used to refer to the builder in build.yaml.
  • More realistic test builds: in resolveSources and testBuilders, stop
    builders reading from .dart_tool.
  • Bug fix: in testBuilders, configure the root package correctly when it
    has no sources.
  • Use build_runner_core 9.4.0.
  • Remove unused dep: build_resolvers.
  • Remove unused dep: build_runner_core.

v3.3.4

Compare Source

  • Use build 4.0.0.
  • Use build_runner 2.7.2.

v3.3.3

Compare Source

  • Use build 3.1.0.
  • Use build_runner 2.7.1.

v3.3.2

Compare Source

  • Use build 3.0.2.
  • Use build_runner 2.7.0.
  • Documentation revamp.

v3.3.1

Compare Source

  • Use build 3.0.1.
  • Allow analyzer 8.0.0.

v3.3.0

Compare Source

  • Read build configs using AssetReader so they're easier to test: you can now
    pass in build.yaml like any other asset.
  • Bug fix: don't crash when a builder logs during a testBuilder or
    resolveSource call outside a test.
  • Remove unused deps: async, convert.
  • Remove unused dev_deps: collection.
  • Files loaded from disk for resolveSources and testBuilders that are in
    the same package as explicitly-passed test inputs are now loaded if they
    match the default globs, such as lib/**, instead of ignored. This more
    closely matches version 2 behavior.
  • Use build 3.0.0.
  • Use build_resolvers 3.0.0.
numen31337/copy_with_extension (copy_with_extension)

v11.0.0: Dependency Sync

Compare Source

  • Updating analyzer to ^9.0.0

v10.0.1: Bugfix

Compare Source

  • Proxy generator now inherits only within the same library, inlines otherwise. Fixes #​114.

v10.0.0: Dependency Sync

Compare Source

  • Updating analyzer to ^8.0.0
  • Updating source_gen to ^4.0.0
  • Updating build to ^4.0.0

v9.1.1: Bugfix

Compare Source

  • Fix constructor parameter resolution when initializers reference parameters or super constructors.

v9.1.0: immutableFields and annotations

Compare Source

  • Added immutableFields option to treat class fields as immutable by default.
  • Forward annotations (e.g., @Deprecated) to generated copyWith parameters.
  • Preserve type aliases.
  • Added support for redirection constructors.

v9.0.0: Support copyWith across parent and child classes

Compare Source

  • BREAKING Dynamic fields are treated as nullable, affecting generated copyWith signatures.
  • Added robust inheritance support enabling copyWith across parent and child classes

v8.0.0: Inherited field annotations, Immutable private params

Compare Source

  • BREAKING Private constructor parameters are now treated as immutable to avoid invalid copyWith parameter names.
  • BREAKING Field annotations are inherited from parent classes.

v7.1.0: Namespace support

Compare Source

  • Added namespace support for classes using import prefixes.
  • Added comments and tests for clarity.

v7.0.0: Migrating to Element2

  • Migrated to the new analyzer element2 APIs.
  • Updating analyzer to ^7.0.0
  • Updating source_gen to ^3.0.0
dart-lang/source_gen (source_gen)

v4.2.0

Compare Source

  • Add header configuration to CombiningBuilder.

v4.1.2

Compare Source

  • Allow analyzer: '>=8.1.1 <11.0.0'.

v4.1.1

Compare Source

  • Allow analyzer: '>=8.1.1 <10.0.0'.

v4.1.0

Compare Source

  • Add TypeChecker.typeNamedLiterally. It's like TypeChecker.typeNamed,
    but takes a String instead of a Type.

v4.0.2

Compare Source

  • Bug fix: fix possible null pointer exception in TypeChecker.typeNamed on
    invalid code.

v4.0.1

Compare Source

  • Require analyzer: '>=8.1.1 <9.0.0'.
  • Allow build: '>=3.0.0 <5.0.0'.

v4.0.0

Compare Source

  • Breaking Change: remove TypeChecker.fromRuntime, use
    TypeChecker.typeNamed instead. This removes all use of dart:mirror, so
    builders using source_gen can be AOT compiled for better performance.
  • Keep // GENERATED FILE comments on the first line.

v3.1.0

Compare Source

  • Prepare to stop using dart:mirrors: deprecate TypeChecker.fromRuntime.
    It will be removed in version 4.0.0. Add TypeChecker.typeNamed which is
    the recommended replacement.
  • Prepare to stop using dart:mirrors: add inPackage and inSdk parameters
    to GenerateForAnnotation. These will start being used in version 4.0.0
    when it switches to TypeChecker.typeNamed.
  • InvalidGenerationSource support for Fragment, ElementDirective and
    Annotatable.
  • Allow analyzer: '>=7.4.0 <9.0.0'.

v3.0.0

Compare Source

  • Breaking Change: use the new element2 APIs in analyzer. Builders that
    do resolution need to switch to the new API, see
    https://github.com/dart-lang/sdk/blob/main/pkg/analyzer/doc/element_model_migration_guide.md.
    For questions please use https://github.com/dart-lang/build/discussions.
  • Breaking Change: annotations are now reported separately for elements
    and directives. If you use TypeChecker().annotatedWith(), see also
    the new TypeChecker().libraryDirectivesAnnotatedWith(). If you use
    GeneratorForAnnotation see the new generateForAnnotatedDirective.
  • Require build: ^3.0.0
  • Updated the minimum package versions for a number of dependencies.
  • Require Dart 3.7.0
  • Update the GeneratorForAnnotation optimization to skip files with well known
    annotation names such as override, Deprecated, and pragma.
dart-lang/test (test)

v1.29.0

Compare Source

  • Add --coverage-package flag, which filters the coverage report to specific
    packages using RegExps.
  • Require a function definition named main directly in a test suite and
    provide a more direct error message than a failing compiler output.
  • Suppress skip reason messages in the compact and failures-only reporters.
  • Allow analyzer major version 10.

v1.28.0

Compare Source

  • Add isSorted and related matchers for iterables.
  • Consider NaN to be equal to itself in equals.
  • Bump test_core to 0.6.14
  • Removed unused js dependency

v1.27.0

Compare Source

  • Add --coverage-path and --branch-coverage options to dart test.
  • Serve dart2wasm source map files.
  • Fix Node.js dart2wasm tests on windows.
  • Doc edit: clarify in README that a platform selector includes the compiler.
  • Allow analyzer major version 9.
  • Require Dart 3.7

v1.26.3

Compare Source

  • Expand pub constraint to allow the latest analyzer.

Configuration

📅 Schedule: Branch creation - "after 6pm every weekday,every weekend" in timezone Australia/Sydney, Automerge - "after 6pm every weekday,every weekend" in timezone Australia/Sydney.

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot enabled auto-merge (squash) July 26, 2025 18:38
@renovate renovate bot force-pushed the renovate/code-generation-dependencies branch from e2bfda8 to 32f0ab9 Compare July 27, 2025 01:13
@renovate renovate bot changed the title chore(deps): update dependency build_runner to v2.6.0 chore(deps): update code generation dependencies Jul 27, 2025
@renovate renovate bot force-pushed the renovate/code-generation-dependencies branch from 32f0ab9 to 7da0a49 Compare July 27, 2025 01:28
@renovate renovate bot changed the title chore(deps): update code generation dependencies fix(deps): update code generation dependencies Jul 27, 2025
@renovate renovate bot force-pushed the renovate/code-generation-dependencies branch 2 times, most recently from 1a222a8 to f1ef0ff Compare August 3, 2025 09:23
@renovate
Copy link
Contributor Author

renovate bot commented Aug 3, 2025

⚠️ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: pubspec.lock
Command failed: flutter pub upgrade build_runner copy_with_extension copy_with_extension_gen
Because copy_with_extension_gen >=11.0.0 depends on analyzer ^9.0.0 and every version of appainter_builder from path depends on analyzer 10.0.1, copy_with_extension_gen >=11.0.0 is incompatible with appainter_builder from path.
So, because appainter depends on both appainter_builder from path and copy_with_extension_gen 11.0.0, version solving failed.
Failed to update packages.

@renovate renovate bot force-pushed the renovate/code-generation-dependencies branch 3 times, most recently from 6f20830 to c1ef5ef Compare August 9, 2025 01:32
@renovate renovate bot force-pushed the renovate/code-generation-dependencies branch 4 times, most recently from 2c869c5 to 02dcc2b Compare August 14, 2025 14:24
@renovate renovate bot force-pushed the renovate/code-generation-dependencies branch 2 times, most recently from 722e648 to e299e15 Compare August 22, 2025 14:05
@renovate renovate bot force-pushed the renovate/code-generation-dependencies branch 6 times, most recently from d5db1dc to b5fead5 Compare September 13, 2025 09:07
@renovate renovate bot force-pushed the renovate/code-generation-dependencies branch 2 times, most recently from 577ef10 to 66b15cb Compare September 25, 2025 20:40
@renovate renovate bot force-pushed the renovate/code-generation-dependencies branch 3 times, most recently from 01d2924 to 5dce4e3 Compare September 29, 2025 01:33
@renovate renovate bot force-pushed the renovate/code-generation-dependencies branch 8 times, most recently from e6a76cb to 6abfe09 Compare October 8, 2025 10:52
@renovate renovate bot force-pushed the renovate/code-generation-dependencies branch from 6abfe09 to 8ae466c Compare October 15, 2025 10:09
@renovate renovate bot force-pushed the renovate/code-generation-dependencies branch 2 times, most recently from 060054c to 677345a Compare October 27, 2025 18:01
@renovate renovate bot force-pushed the renovate/code-generation-dependencies branch 2 times, most recently from 0bd1be5 to 4bedb75 Compare October 31, 2025 16:43
@renovate renovate bot force-pushed the renovate/code-generation-dependencies branch 3 times, most recently from f311803 to 14d0392 Compare November 21, 2025 11:07
@renovate renovate bot force-pushed the renovate/code-generation-dependencies branch 3 times, most recently from ebc9fad to a206f0b Compare November 28, 2025 01:12
@renovate renovate bot force-pushed the renovate/code-generation-dependencies branch from a206f0b to 5f84dfe Compare December 18, 2025 00:10
@renovate renovate bot force-pushed the renovate/code-generation-dependencies branch 2 times, most recently from 5c6cd93 to f0caa86 Compare December 30, 2025 12:52
@renovate renovate bot force-pushed the renovate/code-generation-dependencies branch 4 times, most recently from 80d8597 to 839ea84 Compare January 20, 2026 21:15
@renovate renovate bot force-pushed the renovate/code-generation-dependencies branch 2 times, most recently from c357ac0 to 4f0d41b Compare January 27, 2026 08:31
@renovate renovate bot force-pushed the renovate/code-generation-dependencies branch from 4f0d41b to 6b8c013 Compare February 2, 2026 18:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant