Atualizar eslint-scope de 8.x para 9.x
Comparação da API pública de eslint-scope 8.4.0 e 9.1.2, calculada automaticamente a partir dos tipos TypeScript. Uma assinatura alterada é uma possível mudança incompatível, não uma certeza.
Resumo
| Caminhos de importação removidos | 0 |
|---|---|
| Exports removidos | 0 |
| Assinaturas alteradas | 1 |
| Membros de classes ou interfaces removidos | 4 |
| Membros de classes ou interfaces alterados | 45 |
| Novas descontinuações | 48 |
| Mudanças de requisitos (engines, dependências peer) | 1 |
| Novos exports | 13 |
Exports removidos
Nenhuma detectada.
Assinaturas alteradas
| export | Antes | Depois |
|---|---|---|
eslint-scope · Definition | class | ({ type: "CatchClause"; node: ESTree.CatchClause; parent: null; } | { type: "ClassName"; node: any; parent: null; } | { type: "FunctionName"; node: any; parent: null; } | { type: "ImplicitGlobalVariable"; node: any; parent: null; } | { type: "ImportBinding"; node: any; parent: ESTree.ImportDeclaration; } | { type: "Parameter"; node: any; parent: null; } | { type: "Variable"; node: ESTree.VariableDeclarator; parent: ESTree.VariableDeclaration; }) & { name: ESTree.Identifier; index: number | null; kind: string | null; } |
Membros de classes ou interfaces removidos
| member | import | Antes |
|---|---|---|
Scope.implicit | eslint-scope | { left: TReference[]; set: Map<string, Variable<Reference>>; variables: Variable<Reference>[]; } |
BlockScope.implicit | eslint-scope | { left: Reference[]; set: Map<string, Variable<Reference>>; variables: Variable<Reference>[]; } |
ModuleScope.implicit | eslint-scope | { left: Reference[]; set: Map<string, Variable<Reference>>; variables: Variable<Reference>[]; } |
FunctionScope.implicit | eslint-scope | { left: Reference[]; set: Map<string, Variable<Reference>>; variables: Variable<Reference>[]; } |
Membros de classes ou interfaces alterados
| member | Antes | Depois |
|---|---|---|
Scope.set | eslint.Scope.Scope | Map<string, TVariable> |
Scope.type | eslint.Scope.Scope | "function" | "module" | "block" | "catch" | "class" | "class-field-initializer" | "class-static-block" | "for" | "function-expression-name" | "global" | "switch" | "with" |
Scope.taints | Map<string, Variable<Reference>> | Map<string, TVariable> |
Scope.resolve | (ref: Reference, noChain?: boolean | undefined): void | (ident: ESTree.Identifier): TReference | null |
Scope.through | eslint.Scope.Scope | TReference[] |
Scope.constructor | <TVariable extends Variable = Variable<Reference>, TReference extends Reference = Reference>(scopeManager: ScopeManager, type: string, upper: Scope<Variable<Reference>, Reference> | null, block: ESTree.Node, isMethodDefinition: boolean): Scope<TVariable, TReference> | <TVariable extends Variable = Variable<Reference>, TReference extends Reference = Reference>(scopeManager: ScopeManager, type: "function" | "module" | "block" | "catch" | "class" | "class-field-initializer" | "class-static-block" | "for" | "function-expression-name" | "global" | "switch" | "with", u… |
Scope.variableScope | Scope<TVariable, TReference> | Scope<Variable<Reference>, Reference> |
Variable.defs | eslint.Scope.Definition[] | Definition[] |
Reference.init | boolean | boolean | undefined |
Reference.isRead | eslint.Scope.Reference | (): boolean |
Reference.isWrite | eslint.Scope.Reference | (): boolean |
Reference.partial | boolean | boolean | undefined |
Reference.identifier | ESTree.Identifier | any |
Reference.constructor | (identifier: ESTree.Identifier, scope: Scope<Variable<Reference>, Reference>, flag: number, writeExpr: any, maybeImplicitGlobal: boolean, partial: boolean, init: boolean): Reference | (ident: any, scope: Scope<Variable<Reference>, Reference>, flag: number, writeExpr: any, maybeImplicitGlobal: { pattern: ESTree.Pattern; node: ESTree.Node; } | null, partial: boolean, init: boolean): Reference |
BlockScope.set | eslint.Scope.Scope | Map<string, Variable<Reference>> |
BlockScope.resolve | (ref: Reference, noChain?: boolean | undefined): void | (ident: ESTree.Identifier): Reference | null |
BlockScope.through | eslint.Scope.Scope | Reference[] |
BlockScope.constructor | (scopeManager: ScopeManager, upper: Scope<Variable<Reference>, Reference>, block: ESTree.Node): BlockScope | (scopeManager: ScopeManager, upperScope: Scope<Variable<Reference>, Reference>, block: ESTree.Node): BlockScope |
BlockScope.variableScope | BlockScope | Scope<Variable<Reference>, Reference> |
BlockScope.isThisMaterialized | (): boolean | (): true |
BlockScope.functionExpressionScope | boolean | false |
BlockScope.isArgumentsMaterialized | (): boolean | (): true |
GlobalScope.set | eslint.Scope.Scope | Map<string, Variable<Reference>> |
GlobalScope.resolve | (ref: Reference, noChain?: boolean | undefined): void | (ident: ESTree.Identifier): Reference | null |
GlobalScope.through | eslint.Scope.Scope | Reference[] |
GlobalScope.variableScope | GlobalScope | Scope<Variable<Reference>, Reference> |
GlobalScope.isThisMaterialized | (): boolean | (): true |
GlobalScope.functionExpressionScope | boolean | false |
GlobalScope.isArgumentsMaterialized | (): boolean | (): true |
ModuleScope.set | eslint.Scope.Scope | Map<string, Variable<Reference>> |
ModuleScope.resolve | (ref: Reference, noChain?: boolean | undefined): void | (ident: ESTree.Identifier): Reference | null |
ModuleScope.through | eslint.Scope.Scope | Reference[] |
ModuleScope.constructor | (scopeManager: ScopeManager, upper: Scope<Variable<Reference>, Reference>, block: ESTree.Node): ModuleScope | (scopeManager: ScopeManager, upperScope: Scope<Variable<Reference>, Reference>, block: ESTree.Node): ModuleScope |
ModuleScope.variableScope | ModuleScope | Scope<Variable<Reference>, Reference> |
ModuleScope.isThisMaterialized | (): boolean | (): true |
ModuleScope.functionExpressionScope | boolean | false |
ModuleScope.isArgumentsMaterialized | (): boolean | (): true |
ScopeManager.globalScope | GlobalScope | GlobalScope | null |
FunctionScope.set | eslint.Scope.Scope | Map<string, Variable<Reference>> |
FunctionScope.resolve | (ref: Reference, noChain?: boolean | undefined): void | (ident: ESTree.Identifier): Reference | null |
FunctionScope.through | eslint.Scope.Scope | Reference[] |
FunctionScope.constructor | (scopeManager: ScopeManager, upper: Scope<Variable<Reference>, Reference>, block: ESTree.Node, isMethodDefinition: boolean): FunctionScope | (scopeManager: ScopeManager, upperScope: Scope<Variable<Reference>, Reference>, block: ESTree.Node, isMethodDefinition: boolean): FunctionScope |
FunctionScope.variableScope | FunctionScope | Scope<Variable<Reference>, Reference> |
FunctionScope.functionExpressionScope | boolean | false |
AnalyzeOptions.childVisitorKeys | any | { readonly [type: string]: readonly string[]; } | null | undefined |
Novas descontinuações
| export | @deprecated |
|---|---|
eslint-scope · Scope.taints | — |
eslint-scope · Scope.dynamic | — |
eslint-scope · Scope.resolve | — |
eslint-scope · Scope.isStatic | — |
eslint-scope · Scope.thisFound | — |
eslint-scope · Scope.isUsedName | — |
eslint-scope · Scope.isThisMaterialized | — |
eslint-scope · Scope.directCallToEvalScope | — |
eslint-scope · Scope.isArgumentsMaterialized | — |
eslint-scope · Variable.stack | — |
eslint-scope · Variable.tainted | — |
eslint-scope · Reference.partial | — |
eslint-scope · Reference.tainted | — |
eslint-scope · Reference.isStatic | — |
eslint-scope · BlockScope.taints | — |
eslint-scope · BlockScope.dynamic | — |
eslint-scope · BlockScope.resolve | — |
eslint-scope · BlockScope.isStatic | — |
eslint-scope · BlockScope.thisFound | — |
eslint-scope · BlockScope.isUsedName | — |
eslint-scope · BlockScope.directCallToEvalScope | — |
eslint-scope · GlobalScope.taints | — |
eslint-scope · GlobalScope.dynamic | — |
eslint-scope · GlobalScope.resolve | — |
eslint-scope · GlobalScope.isStatic | — |
eslint-scope · GlobalScope.thisFound | — |
eslint-scope · GlobalScope.isUsedName | — |
eslint-scope · GlobalScope.directCallToEvalScope | — |
eslint-scope · ModuleScope.taints | — |
eslint-scope · ModuleScope.dynamic | — |
eslint-scope · ModuleScope.resolve | — |
eslint-scope · ModuleScope.isStatic | — |
eslint-scope · ModuleScope.thisFound | — |
eslint-scope · ModuleScope.isUsedName | — |
eslint-scope · ModuleScope.directCallToEvalScope | — |
eslint-scope · ScopeManager.isModule | — |
eslint-scope · ScopeManager.acquireAll | — |
eslint-scope · ScopeManager.isImpliedStrict | — |
eslint-scope · ScopeManager.isStrictModeSupported | — |
eslint-scope · FunctionScope.taints | — |
eslint-scope · FunctionScope.dynamic | — |
eslint-scope · FunctionScope.resolve | — |
eslint-scope · FunctionScope.isStatic | — |
eslint-scope · FunctionScope.thisFound | — |
eslint-scope · FunctionScope.isUsedName | — |
eslint-scope · FunctionScope.isThisMaterialized | — |
eslint-scope · FunctionScope.directCallToEvalScope | — |
eslint-scope · FunctionScope.isArgumentsMaterialized | — |
Mudanças de requisitos (engines, dependências peer)
| Antes | Depois | |
|---|---|---|
engines.node | ^18.18.0 || ^20.9.0 || >=21.1.0 | ^20.19.0 || ^22.13.0 || >=24 |
Novos exports (13)
| import | export | kind |
|---|---|---|
eslint-scope | version | variable |
eslint-scope | ForScope | class |
eslint-scope | WithScope | class |
eslint-scope | CatchScope | class |
eslint-scope | ClassScope | class |
eslint-scope | Referencer | class |
eslint-scope | SwitchScope | class |
eslint-scope | JSXIdentifier | interface |
eslint-scope | PatternVisitor | class |
eslint-scope | ClassStaticBlockScope | class |
eslint-scope | PatternVisitorCallback | type |
eslint-scope | ClassFieldInitializerScope | class |
eslint-scope | FunctionExpressionNameScope | class |
Perguntas frequentes
Quais são as mudanças incompatíveis ao atualizar eslint-scope de 8 para 9?
Entre eslint-scope 8.4.0 e 9.1.2, o Vigia encontrou 0 exports removidos, 1 assinaturas alteradas e 49 membros de classes ou interfaces removidos ou alterados.
O que foi descontinuado em eslint-scope 9?
48 exports ou membros foram marcados como descontinuados em eslint-scope 9.1.2.
Para agentes
GET https://vigia.coredls.cloud/v1/packages/npm/eslint-scope/upgrade?from=8.4.0&to=9.1.2