Repository navigation
fix(deps): update dependency analyzer to v14 - #3045
Open
renovate[bot] wants to merge 1 commit into
Open
renovate[bot] wants to merge 1 commit into
renovate[bot] wants to merge 1 commit into
Conversation
renovate
Bot
force-pushed
the
renovate/major-analyzer
branch
2 times, most recently
from
August 12, 2025 00:28
4007757 to
61818c0
Compare
renovate
Bot
force-pushed
the
renovate/major-analyzer
branch
from
September 20, 2025 00:25
61818c0 to
2fc684f
Compare
renovate
Bot
force-pushed
the
renovate/major-analyzer
branch
2 times, most recently
from
October 15, 2025 20:26
c851ee1 to
8f256e3
Compare
renovate
Bot
force-pushed
the
renovate/major-analyzer
branch
from
November 20, 2025 00:00
8f256e3 to
4043669
Compare
renovate
Bot
force-pushed
the
renovate/major-analyzer
branch
from
January 7, 2026 20:24
4043669 to
a21aaef
Compare
renovate
Bot
force-pushed
the
renovate/major-analyzer
branch
from
January 17, 2026 00:24
a21aaef to
004c859
Compare
renovate
Bot
force-pushed
the
renovate/major-analyzer
branch
from
January 30, 2026 20:23
004c859 to
69f9dc0
Compare
renovate
Bot
force-pushed
the
renovate/major-analyzer
branch
2 times, most recently
from
February 21, 2026 20:24
fc75998 to
ab49702
Compare
renovate
Bot
force-pushed
the
renovate/major-analyzer
branch
from
February 27, 2026 20:38
ab49702 to
14fbe09
Compare
renovate
Bot
force-pushed
the
renovate/major-analyzer
branch
from
March 17, 2026 04:34
14fbe09 to
17de1a7
Compare
renovate
Bot
force-pushed
the
renovate/major-analyzer
branch
2 times, most recently
from
March 24, 2026 13:34
e121b5e to
f3d97e8
Compare
renovate
Bot
force-pushed
the
renovate/major-analyzer
branch
from
April 8, 2026 22:32
f3d97e8 to
538e880
Compare
renovate
Bot
force-pushed
the
renovate/major-analyzer
branch
from
April 22, 2026 21:47
538e880 to
a5a490f
Compare
renovate
Bot
force-pushed
the
renovate/major-analyzer
branch
from
May 21, 2026 08:03
a5a490f to
f848b9d
Compare
renovate
Bot
force-pushed
the
renovate/major-analyzer
branch
2 times, most recently
from
June 10, 2026 20:43
d508f51 to
935f08b
Compare
renovate
Bot
force-pushed
the
renovate/major-analyzer
branch
2 times, most recently
from
June 18, 2026 01:51
9a1528e to
9b253b0
Compare
renovate
Bot
force-pushed
the
renovate/major-analyzer
branch
from
July 13, 2026 20:04
9b253b0 to
ace4b60
Compare
renovate
Bot
force-pushed
the
renovate/major-analyzer
branch
3 times, most recently
from
September 1, 2026 18:51
0b04cef to
cc75039
Compare
renovate
Bot
force-pushed
the
renovate/major-analyzer
branch
from
September 11, 2026 18:10
cc75039 to
a046c69
Compare
renovate
Bot
force-pushed
the
renovate/major-analyzer
branch
2 times, most recently
from
October 7, 2026 00:23
c252933 to
896b93e
Compare
renovate
Bot
force-pushed
the
renovate/major-analyzer
branch
from
October 20, 2026 23:09
896b93e to
fd546d0
Compare
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
^7.3.0→^14.6.0Warning
Some dependencies could not be looked up. Check the Dependency Dashboard for more information.
Release Notes
dart-lang/sdk (analyzer)
v14.6.0Added the
enabledExperimentsparameter toAnalysisContextCollectionto override experiments from analysis options files.
Fixed a regression in 14.2.0 through 14.5.0, where
analyzer: exclude:patterns from an included options file, such as
include: package:my_lints/options.yaml, were relative to the includedfile, so they did not exclude any files of the including package. These
patterns are again relative to the folder of the
analysis_options.yamlfile at the start of the
include:chain.See #64549.
Failed name and member lookups are reported by which lookup failed, and
whether a read or a write was required, instead of by the kind of
declaration guessed from the syntax, as proposed in
#64411. Each lookup has two new
diagnostics, one for reads, such as
foo,foo(), and the read offoo += 1, and one for writes, such asfoo = vand the write offoo += 1:undefined_unqualified_name_readandundefined_unqualified_name_write,for names without a qualifier, such as
foo,foo<int>,@foo,for (foo in xs), and(foo) = r.undefined_prefixed_name_readandundefined_prefixed_name_write, fornames imported with a prefix, such as
p.foo.undefined_static_member_readandundefined_static_member_write, forstatic members of a class, enum, mixin, extension type, or extension, such
as
C.foo, and for dot shorthands, such as.fooand.foo().undefined_instance_member_readandundefined_instance_member_write,for members of the static type of the receiver and its applicable
extensions, such as
x.foo, and for the fieldfooof an object patternC(foo: _).undefined_extension_member_readandundefined_extension_member_write,for extension overrides, such as
E(x).foo.undefined_super_member_readandundefined_super_member_write, forsuper.foo.undefined_super_operator, forsuper + v,-super,super[i], andsuper[i] = v, which was a variant ofundefined_super_member.A read fails when there is no method, getter, field, variable, function, or
type with the name; a write fails when there is no setter or assignable
variable. The message says what was found instead: only a setter, for a
read; only a getter, a final or constant variable or field, a function, a
method, or a type, for a write; or a private declaration of another
library, for every lookup except unqualified names. Undefined names in
annotations and constant expressions get corrections that suggest only
what is valid there, and a dot shorthand names its context type.
These diagnostics replace
undefined_identifier,undefined_function,undefined_prefixed_name,undefined_getter,undefined_method,undefined_setter,undefined_enum_constant,dot_shorthand_undefined_member,undefined_extension_getter,undefined_extension_method,undefined_extension_setter,undefined_super_member,assignment_to_const,assignment_to_final,assignment_to_final_no_setter,assignment_to_function,assignment_to_method,assignment_to_type, andprivate_setter, whichare no longer reported. Replace them with the new names in
// ignore:comments and in
analysis_options.yaml, where the old names are stillaccepted, but have no effect.
Other behavior changes:
foo += 1,x.foo += 1,super.foo ??= v,super.foo++, orsuper[i] += 1, reports only theread when both the read and the write fail.
considered to be in a superclass. For example,
super.foo()inmixin M implements Anow reportsundefined_super_member_readinsteadof
abstract_super_member_reference, when onlyAhasfoo.longer found, either through an extension override, such as
E(x)._foo,or as a static member, such as
E._foo.function type, or is a private class of another library, reports
undefined_static_member_readinstead ofdot_shorthand_missing_context,which is now reported only when there is no context type.
instance field declared in an extension, no longer reports anything at
the assignment; the declaration already reports
const_instance_fieldorextension_declares_instance_field.A name in a constant expression whose read is already reported as invalid,
such as an undefined name in
const x = foo;,const y = [C.foo];,const z = 'abc'.lenght;, or@A(p.foo), no longer also reports that theexpression isn't constant, for example
const_initialized_with_non_constant_value,non_constant_list_element,const_eval_property_access, orconst_with_non_constant_argument. Thesame applies to the initializers of a constant constructor, such as
const A() : f = foo;, which no longer also reportsinvalid_constantthere, or
invalid_constantat each invocation such asconst A().ElementAnnotation.constantEvaluationErrorsstill includes these errors.v14.5.0languageVersionOverrideparameter toAnalysisContextCollectionto override the default language version for non-SDK files.
newkeyword in comment references. Text such as[new C]in a documentation comment is nolonger a comment reference, so it isn't resolved, indexed, or renamed. Use
[C.new]instead.CommentReference.newKeyword. It now always returnsnull.deprecated_new_in_comment_referencediagnostic, along with its quick fix.before the iterable, in source order. As a result,
dead_codefor a loopover an expression of type
Neverstarts at the loop body instead of theloop variable.
in a constant context, and an annotation with arguments,
@C(args), is theconstructor invocation
const C(args). Annotations report the samediagnostics as the equivalent constant expressions, usually at the name or
the argument instead of the whole annotation:
undefined_identifierorundefined_prefixed_namefor undefined names.creation_with_non_typefor@f(), wherefisn't a class.const_with_undefined_constructorfor undefined constructors.const_with_non_constfor constructors that aren't const.const_deferred_classfor constructors of classes from a deferred library.invalid_annotation_from_deferred_libraryis still reported forannotations without arguments.
wrong_number_of_type_argumentsfor the type as written, such as a typealias, instead of the class that it denotes.
const_constructor_param_type_mismatchin addition toargument_type_not_assignable, as forconst C(...).invalid_reference_to_generative_enum_constructorfor@E(), whereEisan enum, and
instantiate_abstract_classfor@C(), whereCisabstract. These weren't reported before.
undefined_annotationdiagnostic. It was reported only when thefirst name of an annotation was undefined, while an undefined name after a
class, as in
@Foo.bar, was reported asinvalid_annotation. Annotationsthat aren't identifiers, such as
@1or@'string', report only the syntaxerror.
non_constant_annotation_constructordiagnostic.@C(), wherethe constructor isn't const, reports
const_with_non_const.@Cand@C.namedreportno_annotation_constructor_argumentswhether or not theconstructor is const.
invalid_annotationis reported only for an annotation without argumentsthat references neither a constant variable nor a constructor, such as a
getter or a function. It's no longer reported for undefined names, undefined
constructors, invocations of things that aren't classes, or in addition to
ambiguous_importorannotation_with_type_arguments_uninstantiated.missing_required_argumentfor an annotation highlights the constructorreference, such as
A.namedorp.A, andinference_failure_on_instance_creationhighlights the class name, insteadof the whole annotation.
const_with_non_constant_argumentis no longer reported in addition toconst_with_non_constfor an invocation of a constructor that isn't const inthe arguments of an annotation.
const_with_non_constant_argument, like a positional argument, instead ofinvalid_constant.ElementAnnotation.constantEvaluationErrorsreports the same error as thediagnostic for the annotation. For example, for
@A(x), wherexisn't aconstant, it is now
const_with_non_constant_argumentinstead ofinvalid_constant./// @docImport 'dart:io' as io;.Documentation comments can reference
[io.File], and the prefix itself as[io].The prefix is a
PrefixElementwhoseimportsare the doc imports with this prefix;it isn't included into
LibraryFragment.prefixes.Removed the
doc_import_cannot_have_prefixdiagnostic.multiple doc-imported libraries is ambiguous instead of resolving to the first one,
and
show/hidecombinators are applied.Removed the
doc_import_cannot_have_combinatorsdiagnostic.PrefixElement.scopeLibraries, the libraries that provide the namesin
PrefixElement.scope. Unlikeimports, it includes the librariesimported with the same prefix in the enclosing files. When a prefix is used
alone, such as
[math]in a documentation comment, it references thelibrary, if there is exactly one.
ambiguous_comment_referencewarning. It is reported for a name ina comment reference that is imported, or doc-imported, from more than one
library, and for a prefix used alone, such as
[p], when more than onelibrary is imported with this prefix.
v14.4.0CompilationUnit.lookupThisType, which queries the type ofthisat an arbitrary offset within the compilation unit.FunctionBody.lookupThisType. UseCompilationUnit.lookupThisTypeinstead; unlike the removed method, it alsoworks at offsets that aren't inside a function body (for example inside the
initializer of a
lateinstance field).v14.3.014.2.0was retracted because of adding acccidental files.v14.1.0v14.0.0FormalParameterElement.isInitializingFormal. Use type checks (element is FieldFormalParameterElement) instead.FormalParameterElement.isSuperFormal. Use type checks (element is SuperFormalParameterElement) instead.PackageConfigFileBuilderfrompackage:analyzer/utilities/package_config_file_builder.dart. Usepackage:analyzer_testing/package_config_file_builder.dartinstead.FormalParameterElement.formalParameters. UseFormalParameterElement.typeinstead.FormalParameterElement.typeParameters. UseFormalParameterElement.typeinstead.v13.3.0Folder.getFile, deprecateFolder.getChildAssumingFile.Folder.getFolder, deprecateFolder.getChildAssumingFolder.v13.2.03.x.x.FormalParameterElement.formalParametersandtypeParameters. UseFormalParameterElement.typeinstead.isCompletetoConstructorDeclaration,FunctionDeclaration, andMethodDeclaration.MethodDeclaration.isAbstract. Use!isCompleteinstead.excludedPathsparameter inAnalysisContextCollection. Useanalysis_options.yamlto configure excluded paths instead.v13.1.0PackageConfigFileBuilderinpackage:analyzer/utilities/package_config_file_builder.dart. Usepackage:analyzer_testing/package_config_file_builder.dartinstead.isInitializingFormalinFormalParameterElement. Use type checks (element is FieldFormalParameterElement) instead.isSuperFormalinFormalParameterElement. Use type checks (element is SuperFormalParameterElement) instead.ExtensionTypeDeclaration.primaryConstructor. UseExtensionTypeDeclaration.namePartinstead.v13.0.0MixinFragment.superclassConstraintshas been removed. Usefragment.element.superclassConstraintsinstead.DefaultFormalParameterhas been removed. Default values for parameters are now represented compositionally via adefaultClauseproperty on allFormalParameternodes.SimpleFormalParameterandFunctionTypedFormalParameterhave been removed and replaced byRegularFormalParameter.functionTypedSuffixproperty onFormalParameter.NormalFormalParameterhas been removed from the AST hierarchy.AstVisitormethodsvisitDefaultFormalParameter,visitSimpleFormalParameter, andvisitFunctionTypedFormalParameterhave been removed. UsevisitRegularFormalParameterinstead for standard parameters.FormalParameterDefaultClauseandFunctionTypedFormalParameterSuffixAST nodes to represent parameter defaults and function-typed parameter structures.NamedExpressionhas been removed and replaced withNamedArgumentinArgumentListandRecordLiteralNamedFieldinRecordLiteral.ArgumentandRecordLiteralFieldAST node interfaces, whichExpressionnow implements.ArgumentList.argumentsnow returnsNodeList<Argument>instead ofNodeList<Expression>.RecordLiteral.fieldsnow returnsNodeList<RecordLiteralField>instead ofNodeList<Expression>.AstVisitor.visitNamedExpressionhas been removed. UsevisitNamedArgumentandvisitRecordLiteralNamedFieldinstead.FormalParameterElement.firstFragmentand.fragmentsnow returnFormalParameterFragment(instead of specific parameter fragment subtypes likeFieldFormalParameterFragment), making formal parameter fragments heterogeneous to support augmentations.LabelReferenceAST node to represent references to labels without them being in the expression hierarchy.Labelnow uses aToken nameinstead ofSimpleIdentifier label.BreakStatement.labelandContinueStatement.labelnow returnLabelReference?instead ofSimpleIdentifier?.v12.1.0dynamic,Never, andvoid. As a result, it is no longer safe to assume thatthere is a single instance of
DynamicType,NeverType, orVoidType. Use type checks (is DynamicType)instead of
identical().v12.0.0InstantiatedTypeAliasElement.nullabilitySuffix.;) in enums, extensions, and mixins, representingthem in the AST with
EmptyEnumBodyandEmptyClassBody.ClassBodyis now asealed classwith subclassesBlockClassBodyandEmptyClassBody. Getters like.members,.leftBracket,and
.rightBracketare available onBlockClassBody. This affectsClassDeclaration,ExtensionDeclaration, andMixinDeclarationbodies.EnumBodyis now asealed classwith subclassesBlockEnumBodyandEmptyEnumBody. Getters like.members,.leftBracket,and
.rightBracketare available onBlockEnumBody.LibraryIdentifier.LibraryDirective.nameandPartOfDirective.libraryNamenow returnDottedName?.DottedName.components(NodeList) isreplaced with
DottedName.tokens(List).v11.0.0ClassDeclaration.leftBracket.ClassDeclaration.members.ClassDeclaration.name.ClassDeclaration.rightBracket.ClassDeclaration.typeParameters.EnumDeclaration.constants.EnumDeclaration.leftBracket.EnumDeclaration.members.EnumDeclaration.name.EnumDeclaration.rightBracket.EnumDeclaration.semicolon.EnumDeclaration.typeParameters.ExtensionDeclaration.leftBracket.ExtensionDeclaration.members.ExtensionDeclaration.rightBracket.ExtensionTypeDeclaration.constKeyword.ExtensionTypeDeclaration.leftBracket.ExtensionTypeDeclaration.members.ExtensionTypeDeclaration.name.ExtensionTypeDeclaration.representation.ExtensionTypeDeclaration.rightBracket.ExtensionTypeDeclaration.typeParameters.ConstructorDeclaration.returnType.MixinDeclaration.leftBracket.MixinDeclaration.members.MixinDeclaration.rightBracket.NamedCompilationUnitMember.RepresentationConstructorName.RepresentationDeclaration.ConstructorElement.isSynthetic.ConstructorFragment.isSynthetic.Element.isSynthetic.ExecutableFragment.isSynthetic.PropertyAccessorElement.isSynthetic.PropertyInducingElement.isSynthetic.PropertyInducingFragment.isSynthetic.visitNamedCompilationUnitMember.visitRepresentationConstructorName.visitRepresentationDeclaration.RuleVisitorRegistry.addRepresentationConstructorName.RuleVisitorRegistry.addRepresentationDeclaration.ClassDeclaration,EnumDeclaration,FunctionDeclaration,MixinDeclaration, andTypeAliasnow implementCompilationUnitMemberdirectly (instead of
NamedCompilationUnitMember).v10.2.0RuleVisitorRegistry.addRepresentationConstructorName.RuleVisitorRegistry.addRepresentationDeclaration.v10.1.0TypeSystem.futureValueType.ConstructorElement.isDeclaring.ConstructorElement.isPrimary.FieldElement.declaringFormalParameter.FieldFormalParameterElement.isDeclaringandprivateName.FieldFormalParameterFragment.privateName.LibraryFragment.isSynthetic, useisOriginNotExistingFileinstead.alias,
dynamic, orNever) in a value expression slot are now represented asTypeLiteralnodes instead ofSimpleIdentifierorPrefixedIdentifiernodes (Issues 62763, 63113).v10.0.2v10.0.1v10.0.0ClassDeclaration:leftBracket,members,rightBracketare deprecated; usebodyinstead.name,typeParametersare deprecated; usenamePartinstead.EnumDeclaration:leftBracket,constants,members,rightBracketaredeprecated; use
bodyinstead.name,typeParametersare deprecated; usenamePartinstead.ExtensionDeclaration:leftBracket,members,rightBracketare deprecated; usebodyinstead.ExtensionTypeDeclaration:leftBracket,constants,members,rightBracketaredeprecated; use
bodyinstead.constKeyword,name,representation,typeParametersaredeprecated; use
primaryConstructorinstead.in the AST, their parent nodes have changed. This means that code relying on
specific parent-child relationships for these nodes might break.
DiagnosticOrErrorListenerand theDiagnosticOrErrorListenerExtensionextension.RecordingDiagnosticListener.onErrorand
BooleanDiagnosticListener.onErrormethods.LintCode.new'shasPublishedDocsparameter.RemovedAnalysisRuleas the preferred way to represent removed lintrules. Deprecated
RuleState.removed(which was the previous way to do so).ConstructorElement.isSynthetic.Use
isOriginDeclaration,isOriginImplicitDefault,isOriginMixinApplicationinstead.TopLevelVariableElement.isSynthetic.Use
isOriginDeclaration,isOriginGetterSetter.FieldElement.isSynthetic.Use
isOriginDeclaration,isOriginGetterSetter,isOriginDeclaringFormalParameter,isOriginEnumValuesinstead.PropertyAccessorElement.isSynthetic.Use
isOriginDeclaration,isOriginInterface,isOriginVariableinstead.Element.isSynthetic; useisOriginXyzproperties instead.LibraryElement.isSynthetic; useisOriginNotExistingFileinstead.SyntacticEntityis not intended to be subclassed byclients.
DiagnosticCode.nameandDiagnosticCode.uniqueName. UseDiagnosticCode.lowerCaseNameandDiagnosticCode.lowerCaseUniqueNameinstead.
GitPluginSource,PathPluginSource,PluginConfiguration,PluginSource,VersionedPluginSourcefrom thepublic API.
AnalysisOptions.pluginConfigurations.v9.0.0Diagnostic.data.DiagnosticReporter.atOffsetand the constructorsDiagnostic.tmpandDiagnostic.forValues, remove the deprecated namedparameter
errorCode, and make the named parameterdiagnosticCodenon-nullable and required.
DiagnosticReporter.atOffsetnamed parameter,errorCode.BooleanErrorListener.RecordingErrorListener.AnalysisErrorListener.NULL_LISTENER.AstNodeExtension.NullShortableExpression.PartDirective.configurations.TypeDefiningElement.TypeAliasElement.aliasedElement.resolveFile2.ErrorCode.ErrorSeverity.ErrorType.AnalysisErrorListener.RecordingDiagnosticListener.errors.RecordingDiagnosticListener.getErrorForSource.BooleanDiagnosticListener.onErrorin favor of.onDiagnostic.RecordingDiagnosticListener.onErrorin favor of.onDiagnostic.DiagnosticOrErrorListenerin favor ofDiagnosticListener.v8.4.0experimental_member_usewarning, which warns about any reference toa declaration annotated with
@experimental.TypeAliasElement.aliasedElement, usealiasedTypeinstead.v8.3.0TypeDefiningElement, check for specific elements.TypeDefiningFragment, check for specific fragments.PartDirective.configurations, removed from the specification.v8.2.0^3.9.0.Diagnostic.data. Instead, please use an expando to attach data tothe
Diagnosticobject.CatchClauseParameter.declaredElementandCatchClauseParameter.declaredElement2.Use
CatchClauseParameter.declaredFragmentinstead.DeclaredIdentifier.declaredElementandDeclaredIdentifier.declaredElement2.Use
DeclaredIdentifier.declaredFragmentinstead.DeclaredVariablePattern.declaredElementandDeclaredVariablePattern.declaredElement2.Use
DeclaredVariablePattern.declaredFragmentinstead.VariableDeclaration.declaredElementandVariableDeclaration.declaredElement2.Use
VariableDeclaration.declaredFragmentinstead.InterfaceFragment.interfaces, useInterfaceElement.interfacesinstead.InterfaceFragment.mixins, useInterfaceElement.mixinsinstead.InterfaceFragment.supertype, useInterfaceElement.supertypeinstead.ExtensionTypeFragment.primaryConstructor, useExtensionTypeElement.primaryConstructor.ExtensionTypeFragment.representation, useExtensionTypeElement.representation.NullShortableExpression. This interface should not be needed byanalyzer clients, and is no longer supported.
v8.1.1EnumSetusage when compiled to JavaScript.v8.1.0DartObject.constructorInvocationwith the constructor and arguments.PropertyAccessorElement.variablenon-nullable.documentationCommenttoElementandFragment.metadatatoElementandFragment.metadatatoElementDirective.partKeywordOffsettoPartInclude.package:build.LibraryElementResult.element2, useelementinstead.ResolvedLibraryResult.element2, useelementinstead.ResolvedUnitResult.libraryElement2, uselibraryElementinstead.AnalysisSession.getParsedLibraryByElement2, usegetParsedLibraryByElementinstead.AnalysisSession.getResolvedLibraryByElement2, usegetResolvedLibraryByElementinstead.resolveFile2, useresolveFileinstead.DartObject.variable2, usevariableinstead.DartObject.toFunctionValue2, usetoFunctionValueinstead.Annotatable, usedocumentationCommentandmetadataofElementorFragmentdirectly.ClassElement.isExtendableIn; useisExtendableOutsideinstead.ClassElement.isImplementableIn; useisImplementableOutsideinstead.ClassElement.isMixableIn; useisMixableOutsideinstead.MixinElement.isImplementableIn; useisImplementableOutsideinstead.v8.0.0DartType.isStructurallyEqualTo.RecordType.positionalTypes.RecordType.sortedNamedTypes.ElementLocationclass; its values are not returned anymore.AnalysisContext.analysisOptions.PromotableElementandPromotableFragment.LocalVariableElement.hasInitializer.LocalVariableFragment.hasInitializer.LocalVariableFragment.nameOffset.JoinPatternVariableFragment.isConsistent.JoinPatternVariableFragment.variables2.VariableElement.constantInitializer2.VariableFragment.initializer.ConstantInitializer.HasSinceSdkVersion.LibraryFragmentis notAnnotatableanymore.ConstantEvaluationTargetbyElementAnnotation.This is an internal interface that should not have been exposed.
element2.dartlibrary; importelement.dart.XyzElement2classes; useXyzElementinstead.AnalysisError.correctionfield; useAnalysisError.correctionMessageinstead.AnalysisError; useDiagnosticinstead.ErrorCode; useDiagnosticCodeinstead.ErrorReporter.atOffset'serrorCodeparameter; usediagnosticCodeinstead.ErrorSeverity; useDiagnosticSeverityinstead.DiagnosticCode.errorSeverity; useDiagnosticCode.diagnosticSeverityinstead.AnalysisErrorListener,BooleanErrorListener, andRecordingErrorListener; useDiagnosticListener,BooleanDiagnosticListener, andRecordingDiagnosticListenerrespectively,instead. Instead of calling or overriding
AnalysisErrorListener.onError,call or override
DiagnosticListener.onDiagnostic. Instead of usingAnalysisErrorListener.NULL_LISTENER, useDiagnosticListener.nullListener.RecordingErrorListener.errors; useRecordingDiagnosticListener.diagnosticsinstead.RecordingErrorListener.getErrorsForSource; no longer supported.AnalysisResultWithErrors; useAnalysisResultWithDiagnosticsinstead.
AnalysisResultWithErrors.errors; useAnalysisResultWithErrors.diagnosticsinstead.ErrorType; useDiagnosticTypeinstead.ElementDirectivefromsealedtoabstract.This allows the analyzer to have an internal implementation
class corresponding to
ElementDirective.NamedType.name2, usenameinstead.ClassElement.isXyzIn2, useisXyzIninstead.Element.enclosingElement2, useenclosingElementinstead.InstanceElement.fields2, usefieldsinstead.InstanceElement.getters2, usegettersinstead.InstanceElement.setters2, usesettersinstead.InstanceElement.methods2, usemethodsinstead.InstanceElement.getField2, usegetFieldinstead.InstanceElement.getGetter2, usegetGetterinstead.InstanceElement.getSetter2, usegetSetterinstead.InstanceElement.getMethod2, usegetMethodinstead.InstanceFragment.fields2, usefieldsinstead.InstanceFragment.methods2, usemethodsinstead.InterfaceElement.constructors2, useconstructorsinstead.InterfaceFragment.constructors2, useconstructorsinstead.JoinPatternVariableElement.variables2, usevariablesinstead.Annotatable.metadata2, usemetadatainstead.Element.nonSynthetic2, usenonSyntheticinstead.Element.library2, uselibraryinstead.ExtensionTypeElement.primaryConstructor2, useprimaryConstructorinstead.ExtensionTypeElement.representation2, userepresentationinstead.ExtensionTypeFragment.primaryConstructor2, useprimaryConstructorinstead.ExtensionTypeFragment.representation2, userepresentationinstead.InterfaceType.getGetter2, usegetGetterinstead.InterfaceType.getMethod2, usegetMethodinstead.InterfaceType.getSetter2, usegetSetterinstead.InterfaceType.lookUpConstructor2, uselookUpConstructorinstead.InterfaceType.lookUpGetter3, uselookUpGetterinstead.InterfaceType.lookUpMethod3, uselookUpMethodinstead.InterfaceType.lookUpSetter3, uselookUpSetterinstead.PropertyAccessorFragmentImplImplicitGetter,PropertyAccessorFragmentImplImplicitSetter,and
FormalParameterFragmentImplOfImplicitSetter, replace withGetterFragmentImpl, andSetterFragmentImpl.ExtensionTypeFragment.representation2, userepresentationinstead.DartType.element3, useelementinstead.LibraryElement.loadLibraryFunction2, useloadLibraryFunctioninstead.InterfaceType.constructors2, useconstructorsinstead.Element.accept2, useacceptinstead.InstantiatedTypeAliasElement.element2, useelementinstead.TypeProvider.boolElement2, useboolElementinstead.TypeProvider.doubleElement2, usedoubleElementinstead.TypeProvider.enumElement2, useenumElementinstead.TypeProvider.futureElement2, usefutureElementinstead.TypeProvider.futureOrElement2, usefutureOrElementinstead.TypeProvider.intElement2, useintElementinstead.TypeProvider.iterableElement2, useiterableElementinstead.TypeProvider.listElement2, uselistElementinstead.TypeProvider.mapElement2, usemapElementinstead.TypeProvider.nullElement2, usenullElementinstead.TypeProvider.numElement2, usenumElementinstead.TypeProvider.objectElement2, useobjectElementinstead.TypeProvider.recordElement2, userecordElementinstead.TypeProvider.setElement2, usesetElementinstead.TypeProvider.streamElement2, usestreamElementinstead.TypeProvider.stringElement2, usestringElementinstead.TypeProvider.symbolElement2, usesymbolElementinstead.Annotation.element2, useelementinstead.LibraryDirective.name2, usenameinstead.CatchClauseParameter.declaredElement2, usedeclaredElementinstead.CompoundAssignmentExpression.readElement2, usereadElementinstead.CompoundAssignmentExpression.writeElement2, usewriteElementinstead.DeclaredIdentifier.declaredElement2, usedeclaredElementinstead.DeclaredVariablePattern.declaredElement2, usedeclaredElementinstead.EnumConstantDeclaration.constructorElement2, useconstructorElementinstead.ExtensionOverride.element2, useelementinstead.FunctionBody.isPotentiallyMutatedInScope2, useisPotentiallyMutatedInScopeinstead.ImportPrefixReference.element2, useelementinstead.LibraryDirective.element2, useelementinstead.LibraryDirective.name2, usenameinstead.NamedExpression.element2, useelementinstead.NamedType.element2, useelementinstead.PatternField.element2, useelementinstead.RelationalPattern.element2, useelementinstead.VariableDeclaration.declaredElement2, usedeclaredElementinstead.InterfaceType.methods2, usemethodsinstead.Fragment.name2, usenameinstead.Element.name3, usenameinstead.ConstructorElement.redirectedConstructor2, useredirectedConstructorinstead.ConstructorElement.superConstructor2, usesuperConstructor˙instead.Element.children2, usechildreninstead.Element.displayString2, usedisplayStringinstead.Element.getExtendedDisplayName2, usegetExtendedDisplayNameinstead.Element.isAccessibleIn2, useisAccessibleIninstead.Element.thisOrAncestorMatching2, usethisOrAncestorMatchinginstead.Element.thisOrAncestorOfType2, usethisOrAncestorOfTypeinstead.EnumElement.constants2, useconstantsinstead.FieldFormalParameterElement.field2, usefieldinstead.FormalParameterElement.typeParameters2, usetypeParametersinstead.Fragment.children3, usechildreninstead.DartType.asInstanceOf2, useasInstanceOfinstead.TypeSystem.instantiateInterfaceToBounds2, useinstantiateInterfaceToBoundsinstead.TypeSystem.instantiateTypeAliasToBounds2, useinstantiateTypeAliasToBoundsinstead.FormalParameterElement.appendToWithoutDelimiters, useappendToWithoutDelimitersinstead.GetterElement.correspondingSetter2, usecorrespondingSetterinstead.InterfaceElement.unnamedConstructor2, useunnamedConstructorinstead.InterfaceElement.getNamedConstructor2, usegetNamedConstructorinstead.TypeParameterizedElement.typeParameters2, usetypeParametersinstead.FormalParameterElement.appendToWithoutDelimiters2, useappendToWithoutDelimitersinstead.GetterElement.correspondingSetter2, usecorrespondingSetterinstead.InterfaceElement.unnamedConstructor2, useunnamedConstructorinstead.InterfaceElement.getNamedConstructor2, usegetNamedConstructorinstead.LibraryElement.entryPoint2, useentryPointinstead.LibraryElement.exportedLibraries2, useexportedLibrariesinstead.LibraryElement.getClass2, usegetClassinstead.LibraryElement.getEnum2, usegetEnuminstead.LibraryElement.getMixin2, usegetMixininstead.LibraryExport.exportedLibrary2, useexportedLibraryinstead.LibraryFragment.accessibleExtensions2, useaccessibleExtensionsinstead.LibraryFragment.importedLibraries2, useimportedLibrariesinstead.LibraryImport.importedLibrary2, useimportedLibraryinstead.MixinElement.isImplementableIn2, useisImplementableIninstead.PatternVariableElement.join2, usejoininstead.PropertyAccessorElement.variable3, usevariableinstead.PropertyInducingElement.getter2, usegetterinstead.PropertyInducingElement.setter2, usesetterinstead.SetterElement.correspondingGetter2, usecorrespondingGetterinstead.SuperFormalParameterElement.superConstructorParameter2, usesuperConstructorParameterinstead.TypeAliasElement.aliasedElement2, usealiasedElementinstead.TypeParameterizedElement.typeParameters2, usetypeParametersinstead.VariableElement.constantInitializer2, useconstantInitializerinstead.TypeProvider.isNonSubtypableClass2, useisNonSubtypableClassinstead.EnumFragment.constants2, useconstantsinstead.InterfaceElement.lookUpInheritedMethod2, uselookUpInheritedMethodinstead.LibraryFragment.classes2, useclassesinstead.LibraryFragment.enums2, useenumsinstead.LibraryFragment.extensionTypes2, useextensionTypesinstead.LibraryFragment.extensions2, useextensionsinstead.LibraryFragment.functions2, usefunctionsinstead.LibraryFragment.libraryExports2, uselibraryExportsinstead.LibraryFragment.libraryImports2, uselibraryImportsinstead.LibraryFragment.mixins2, usemixinsinstead.LibraryFragment.topLevelVariables2, usetopLevelVariablesinstead.LibraryFragment.typeAliases2, usetypeAliasesinstead.PatternVariableFragment.join2, usejoininstead.LibraryFragment.isNonSubtypableClass2, useisNonSubtypableClassinstead.TypeParameterizedFragment.typeParameters2, usetypeParametersinstead.Fragment.nameOffset2, usenameOffsetinstead.DirectiveUriWithLibrary.library2, uselibraryinstead.ElementAnnotation.element2, useelementinstead.LibraryImport.prefix2, useprefixinstead.MultiplyDefinedElement.conflictingElements2, useconflictingElementsinstead.ScopeLookupResult.getter2, usegetterinstead.ScopeLookupResult.setter2, usesetterinstead.v7.7.0HasSinceSdkVersion, useElement2.sinceSdkVersion.v7.6.0VariableElement.constantInitializer2, useconstantInitializerinstead.VariableFragment.initializer, useVariableElement.constantInitializerinstead.ConstantInitializer.v7.5.9JoinPatternVariableFragment.isConsistentandvariables2.Use corresponding properties of
JoinPatternVariableElement2instead.v7.5.8Cherry-pick https://dart-review.googlesource.com/c/sdk/+/439820
v7.5.7LocalVariableFragment.nameOffset, usenameOffset2instead.v7.5.6EnumFragment.constants2, useEnumElement2.constants2instead.v7.5.5LocalVariableElement.hasInitializerandLocalVariableFragment.hasInitializer.This property is not useful and was not de-facto used.
v7.5.4PromotableFragmentandPromotableElement.These interfaces are implementation details.
v7.5.3AugmentedExpressionandAugmentedInvocation.This feature was removed from the specification.
v7.5.2LibraryElement.identifier, useuriinstead.LibraryElement2.identifier, useuriinstead.v7.5.1ConstantEvaluationTargetitself, and its methods.AnalysisTarget.api.txtmanifest.v7.5.0ElementAnnotationfromConstantEvaluationTarget.ElementAnnotationwill stop implementingConstantEvaluationTarget.ElementAnnotation.libraryFragment, as the replacement for thedeprecations above. It provides enough information about the location.
v7.4.6PropertyAccessorFragment.variable3.Use
PropertyAccessorElement2.variable3instead.PropertyInducingFragment.getter2.Use
PropertyInducingElement2.getter2instead.PropertyInducingFragment.setter2.Use
PropertyInducingElement2.setter2instead.v7.4.5v7.4.4LabelElement2.v7.4.3v7.4.2PrefixElement2.v7.4.1InstanceElement.augmentedgetter.This API was removed in 7.4.0 under the assumption that its removal would
not be a breaking change, because it was marked as
@experimental.But it turns out that some clients had been published to pub that relied
on it. So, these APIs were restored, and implemented on top of
Element2.v7.4.0^3.5.0.See migration guide.
Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.