From 60a4714e2a90316326ab7540535e89e250349b4a Mon Sep 17 00:00:00 2001 From: Vasilii Novozhilov Date: Mon, 7 Apr 2025 09:54:55 +0300 Subject: [PATCH 01/10] analyzer version upgrade to v6.4.0 --- packages/yx_scope_linter/pubspec.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/yx_scope_linter/pubspec.yaml b/packages/yx_scope_linter/pubspec.yaml index 6c78cb6..f402652 100644 --- a/packages/yx_scope_linter/pubspec.yaml +++ b/packages/yx_scope_linter/pubspec.yaml @@ -13,7 +13,7 @@ environment: sdk: '>=2.19.6 <4.0.0' dependencies: - analyzer: ^5.13.0 + analyzer: ^6.4.0 analyzer_plugin: ^0.11.2 custom_lint_builder: ^0.5.3 yx_scope: ^1.0.0 From 70a1635a72f867bd19e8c4dfe60fab70a86f4631 Mon Sep 17 00:00:00 2001 From: Vasilii Novozhilov Date: Mon, 7 Apr 2025 12:46:09 +0300 Subject: [PATCH 02/10] try to fix packages conflicts --- .../lib/src/lints/consider_dep_suffix.dart | 12 ++++---- .../lib/src/lints/dep_cycle.dart | 16 +++++------ .../lib/src/lints/final_dep.dart | 24 ++++++++-------- ...s_async_lifecycle_in_initialize_queue.dart | 18 ++++++------ .../use_async_dep_for_async_lifecycle.dart | 28 +++++++++---------- 5 files changed, 49 insertions(+), 49 deletions(-) diff --git a/packages/yx_scope_linter/lib/src/lints/consider_dep_suffix.dart b/packages/yx_scope_linter/lib/src/lints/consider_dep_suffix.dart index 66b2836..07043fd 100644 --- a/packages/yx_scope_linter/lib/src/lints/consider_dep_suffix.dart +++ b/packages/yx_scope_linter/lib/src/lints/consider_dep_suffix.dart @@ -1,4 +1,4 @@ -import 'package:analyzer/error/error.dart'; +import 'package:analyzer/error/error.dart' as analyzer_error; import 'package:analyzer/error/listener.dart'; import 'package:custom_lint_builder/custom_lint_builder.dart'; import 'package:yx_scope_linter/src/extensions.dart'; @@ -11,17 +11,17 @@ class ConsiderDepSuffix extends DartLintRule { name: 'consider_dep_suffix', problemMessage: 'Consider using suffix `$_suffix` for the name of your Dep', correctionMessage: 'Add suffix `$_suffix` like this: `entityName$_suffix`', - errorSeverity: ErrorSeverity.INFO, + errorSeverity: analyzer_error.ErrorSeverity.INFO, ); const ConsiderDepSuffix() : super(code: _code); @override void run( - CustomLintResolver resolver, - ErrorReporter reporter, - CustomLintContext context, - ) { + CustomLintResolver resolver, + ErrorReporter reporter, + CustomLintContext context, + ) { context.registry.addClassDeclaration((node) { if (!ClassUtils.isScopeContainer(node)) { return; diff --git a/packages/yx_scope_linter/lib/src/lints/dep_cycle.dart b/packages/yx_scope_linter/lib/src/lints/dep_cycle.dart index eba5455..8b63d12 100644 --- a/packages/yx_scope_linter/lib/src/lints/dep_cycle.dart +++ b/packages/yx_scope_linter/lib/src/lints/dep_cycle.dart @@ -1,4 +1,4 @@ -import 'package:analyzer/error/error.dart'; +import 'package:analyzer/error/error.dart' as analyzer_error; import 'package:analyzer/error/listener.dart'; import 'package:custom_lint_builder/custom_lint_builder.dart'; import 'package:yx_scope_linter/src/extensions.dart'; @@ -11,17 +11,17 @@ class DepCycle extends DartLintRule { static const _code = LintCode( name: _name, problemMessage: _message, - errorSeverity: ErrorSeverity.ERROR, + errorSeverity: analyzer_error.ErrorSeverity.ERROR, ); const DepCycle() : super(code: _code); @override void run( - CustomLintResolver resolver, - ErrorReporter reporter, - CustomLintContext context, - ) { + CustomLintResolver resolver, + ErrorReporter reporter, + CustomLintContext context, + ) { context.registry.addClassDeclaration((node) { if (!ClassUtils.isScopeContainer(node)) { return; @@ -43,12 +43,12 @@ class DepCycle extends DartLintRule { if (cycles.isNotEmpty) { for (final cycle in cycles) { final cycleDeps = - cycle.map((e) => deps[e]).whereType(); + cycle.map((e) => deps[e]).whereType(); for (final dep in cycleDeps) { reporter.reportErrorForToken( _code.copyWith( problemMessage: - '$_message: ${cycleDeps.map((e) => e.name).join(' <- ')}' + '$_message: ${cycleDeps.map((e) => e.name).join(' <- ')}' ' <- ${cycleDeps.first.name}', ), dep.nameToken, diff --git a/packages/yx_scope_linter/lib/src/lints/final_dep.dart b/packages/yx_scope_linter/lib/src/lints/final_dep.dart index 804dc95..c5e84fd 100644 --- a/packages/yx_scope_linter/lib/src/lints/final_dep.dart +++ b/packages/yx_scope_linter/lib/src/lints/final_dep.dart @@ -1,5 +1,5 @@ import 'package:analyzer/dart/ast/ast.dart'; -import 'package:analyzer/error/error.dart'; +import 'package:analyzer/error/error.dart' as analyzer_error; import 'package:analyzer/error/listener.dart'; import 'package:custom_lint_builder/custom_lint_builder.dart'; import 'package:yx_scope_linter/src/priority.dart'; @@ -10,17 +10,17 @@ class FinalDep extends DartLintRule { name: 'final_dep', problemMessage: 'A dep field must be `late final`', correctionMessage: 'Make your dep field `final`', - errorSeverity: ErrorSeverity.WARNING, + errorSeverity: analyzer_error.ErrorSeverity.WARNING, ); const FinalDep() : super(code: _code); @override void run( - CustomLintResolver resolver, - ErrorReporter reporter, - CustomLintContext context, - ) { + CustomLintResolver resolver, + ErrorReporter reporter, + CustomLintContext context, + ) { context.registry.addClassDeclaration((node) { if (!ClassUtils.isScopeContainer(node)) { return; @@ -49,12 +49,12 @@ class FinalDep extends DartLintRule { class FinalDepFix extends DartFix { @override void run( - CustomLintResolver resolver, - ChangeReporter reporter, - CustomLintContext context, - AnalysisError analysisError, - List others, - ) { + CustomLintResolver resolver, + ChangeReporter reporter, + CustomLintContext context, + analyzer_error.AnalysisError analysisError, + List others, + ) { final changeBuilder = reporter.createChangeBuilder( message: analysisError.correctionMessage!, priority: FixPriority.finalDep.value, diff --git a/packages/yx_scope_linter/lib/src/lints/pass_async_lifecycle_in_initialize_queue.dart b/packages/yx_scope_linter/lib/src/lints/pass_async_lifecycle_in_initialize_queue.dart index 450a34f..39b3d3e 100644 --- a/packages/yx_scope_linter/lib/src/lints/pass_async_lifecycle_in_initialize_queue.dart +++ b/packages/yx_scope_linter/lib/src/lints/pass_async_lifecycle_in_initialize_queue.dart @@ -1,5 +1,5 @@ import 'package:analyzer/dart/ast/ast.dart'; -import 'package:analyzer/error/error.dart'; +import 'package:analyzer/error/error.dart' as analyzer_error; import 'package:analyzer/error/listener.dart'; import 'package:custom_lint_builder/custom_lint_builder.dart'; import 'package:yx_scope_linter/src/names.dart'; @@ -9,21 +9,21 @@ class PassAsyncLifecycleInInitializeQueue extends DartLintRule { static const _code = LintCode( name: 'pass_async_lifecycle_in_initialize_queue', problemMessage: - 'asyncDep (or rawAsyncDep) must be passed to initializeQueue. ' + 'asyncDep (or rawAsyncDep) must be passed to initializeQueue. ' 'Otherwise init/dispose methods will not be called.', correctionMessage: 'Override method initializeQueue in the current scope' ' and pass the Dep there', - errorSeverity: ErrorSeverity.WARNING, + errorSeverity: analyzer_error.ErrorSeverity.WARNING, ); const PassAsyncLifecycleInInitializeQueue() : super(code: _code); @override void run( - CustomLintResolver resolver, - ErrorReporter reporter, - CustomLintContext context, - ) { + CustomLintResolver resolver, + ErrorReporter reporter, + CustomLintContext context, + ) { context.registry.addClassDeclaration((node) { if (!ClassUtils.isScopeContainer(node)) { return; @@ -32,8 +32,8 @@ class PassAsyncLifecycleInInitializeQueue extends DartLintRule { .cast() .firstWhere( (element) => element?.name.lexeme == MethodNames.initializeQueue, - orElse: () => null, - ); + orElse: () => null, + ); final depsInQueue = initializeQueueMethod?.body.childEntities .whereType() diff --git a/packages/yx_scope_linter/lib/src/lints/use_async_dep_for_async_lifecycle.dart b/packages/yx_scope_linter/lib/src/lints/use_async_dep_for_async_lifecycle.dart index d61e102..d74fc33 100644 --- a/packages/yx_scope_linter/lib/src/lints/use_async_dep_for_async_lifecycle.dart +++ b/packages/yx_scope_linter/lib/src/lints/use_async_dep_for_async_lifecycle.dart @@ -1,7 +1,7 @@ import 'package:analyzer/dart/ast/ast.dart'; import 'package:analyzer/dart/element/element.dart'; import 'package:analyzer/dart/element/type.dart'; -import 'package:analyzer/error/error.dart'; +import 'package:analyzer/error/error.dart' as analyzer_error; import 'package:analyzer/error/listener.dart'; import 'package:custom_lint_builder/custom_lint_builder.dart'; import 'package:yx_scope_linter/src/priority.dart'; @@ -15,21 +15,21 @@ class UseAsyncDepForAsyncLifecycle extends DartLintRule { static const _code = LintCode( name: 'use_async_dep_for_async_lifecycle', problemMessage: - 'Dependency implements AsyncLifecycle interface, but uses `dep` declaration. ' + 'Dependency implements AsyncLifecycle interface, but uses `dep` declaration. ' 'In this case init/dispose methods will not be invoked.', correctionMessage: 'You should either use `$_asyncDepKeyword` declaration ' 'or do not implement AsyncLifecycle interface.', - errorSeverity: ErrorSeverity.WARNING, + errorSeverity: analyzer_error.ErrorSeverity.WARNING, ); const UseAsyncDepForAsyncLifecycle() : super(code: _code); @override void run( - CustomLintResolver resolver, - ErrorReporter reporter, - CustomLintContext context, - ) { + CustomLintResolver resolver, + ErrorReporter reporter, + CustomLintContext context, + ) { context.registry.addClassDeclaration((node) { if (!ClassUtils.isScopeContainer(node)) { return; @@ -49,7 +49,7 @@ class UseAsyncDepForAsyncLifecycle extends DartLintRule { .whereType() .first; final implementsAsyncLifecycle = - asyncLifecycleType.isAssignableFromType(depClass.thisType); + asyncLifecycleType.isAssignableFromType(depClass.thisType); if (implementsAsyncLifecycle) { reporter.reportErrorForToken( _code, @@ -70,12 +70,12 @@ class UseAsyncDepForAsyncLifecycle extends DartLintRule { class UseAsyncDepForAsyncLifecycleFix extends DartFix { @override void run( - CustomLintResolver resolver, - ChangeReporter reporter, - CustomLintContext context, - AnalysisError analysisError, - List others, - ) { + CustomLintResolver resolver, + ChangeReporter reporter, + CustomLintContext context, + analyzer_error.AnalysisError analysisError, + List others, + ) { final builder = reporter.createChangeBuilder( message: 'Use `$_asyncDepKeyword` declaration', priority: FixPriority.useAsyncDepForAsyncLifecycle.value, From a36e38d6e05f3daa479f83a1117885528d8fb9f0 Mon Sep 17 00:00:00 2001 From: Vasilii Novozhilov Date: Mon, 7 Apr 2025 12:49:44 +0300 Subject: [PATCH 03/10] code formatted --- .../lib/src/lints/consider_dep_suffix.dart | 8 +++---- .../lib/src/lints/dep_cycle.dart | 12 +++++----- .../lib/src/lints/final_dep.dart | 20 ++++++++-------- ...s_async_lifecycle_in_initialize_queue.dart | 14 +++++------ .../use_async_dep_for_async_lifecycle.dart | 24 +++++++++---------- 5 files changed, 39 insertions(+), 39 deletions(-) diff --git a/packages/yx_scope_linter/lib/src/lints/consider_dep_suffix.dart b/packages/yx_scope_linter/lib/src/lints/consider_dep_suffix.dart index 07043fd..4dc7814 100644 --- a/packages/yx_scope_linter/lib/src/lints/consider_dep_suffix.dart +++ b/packages/yx_scope_linter/lib/src/lints/consider_dep_suffix.dart @@ -18,10 +18,10 @@ class ConsiderDepSuffix extends DartLintRule { @override void run( - CustomLintResolver resolver, - ErrorReporter reporter, - CustomLintContext context, - ) { + CustomLintResolver resolver, + ErrorReporter reporter, + CustomLintContext context, + ) { context.registry.addClassDeclaration((node) { if (!ClassUtils.isScopeContainer(node)) { return; diff --git a/packages/yx_scope_linter/lib/src/lints/dep_cycle.dart b/packages/yx_scope_linter/lib/src/lints/dep_cycle.dart index 8b63d12..f05ef60 100644 --- a/packages/yx_scope_linter/lib/src/lints/dep_cycle.dart +++ b/packages/yx_scope_linter/lib/src/lints/dep_cycle.dart @@ -18,10 +18,10 @@ class DepCycle extends DartLintRule { @override void run( - CustomLintResolver resolver, - ErrorReporter reporter, - CustomLintContext context, - ) { + CustomLintResolver resolver, + ErrorReporter reporter, + CustomLintContext context, + ) { context.registry.addClassDeclaration((node) { if (!ClassUtils.isScopeContainer(node)) { return; @@ -43,12 +43,12 @@ class DepCycle extends DartLintRule { if (cycles.isNotEmpty) { for (final cycle in cycles) { final cycleDeps = - cycle.map((e) => deps[e]).whereType(); + cycle.map((e) => deps[e]).whereType(); for (final dep in cycleDeps) { reporter.reportErrorForToken( _code.copyWith( problemMessage: - '$_message: ${cycleDeps.map((e) => e.name).join(' <- ')}' + '$_message: ${cycleDeps.map((e) => e.name).join(' <- ')}' ' <- ${cycleDeps.first.name}', ), dep.nameToken, diff --git a/packages/yx_scope_linter/lib/src/lints/final_dep.dart b/packages/yx_scope_linter/lib/src/lints/final_dep.dart index c5e84fd..56e12d5 100644 --- a/packages/yx_scope_linter/lib/src/lints/final_dep.dart +++ b/packages/yx_scope_linter/lib/src/lints/final_dep.dart @@ -17,10 +17,10 @@ class FinalDep extends DartLintRule { @override void run( - CustomLintResolver resolver, - ErrorReporter reporter, - CustomLintContext context, - ) { + CustomLintResolver resolver, + ErrorReporter reporter, + CustomLintContext context, + ) { context.registry.addClassDeclaration((node) { if (!ClassUtils.isScopeContainer(node)) { return; @@ -49,12 +49,12 @@ class FinalDep extends DartLintRule { class FinalDepFix extends DartFix { @override void run( - CustomLintResolver resolver, - ChangeReporter reporter, - CustomLintContext context, - analyzer_error.AnalysisError analysisError, - List others, - ) { + CustomLintResolver resolver, + ChangeReporter reporter, + CustomLintContext context, + analyzer_error.AnalysisError analysisError, + List others, + ) { final changeBuilder = reporter.createChangeBuilder( message: analysisError.correctionMessage!, priority: FixPriority.finalDep.value, diff --git a/packages/yx_scope_linter/lib/src/lints/pass_async_lifecycle_in_initialize_queue.dart b/packages/yx_scope_linter/lib/src/lints/pass_async_lifecycle_in_initialize_queue.dart index 39b3d3e..2fb6745 100644 --- a/packages/yx_scope_linter/lib/src/lints/pass_async_lifecycle_in_initialize_queue.dart +++ b/packages/yx_scope_linter/lib/src/lints/pass_async_lifecycle_in_initialize_queue.dart @@ -9,7 +9,7 @@ class PassAsyncLifecycleInInitializeQueue extends DartLintRule { static const _code = LintCode( name: 'pass_async_lifecycle_in_initialize_queue', problemMessage: - 'asyncDep (or rawAsyncDep) must be passed to initializeQueue. ' + 'asyncDep (or rawAsyncDep) must be passed to initializeQueue. ' 'Otherwise init/dispose methods will not be called.', correctionMessage: 'Override method initializeQueue in the current scope' ' and pass the Dep there', @@ -20,10 +20,10 @@ class PassAsyncLifecycleInInitializeQueue extends DartLintRule { @override void run( - CustomLintResolver resolver, - ErrorReporter reporter, - CustomLintContext context, - ) { + CustomLintResolver resolver, + ErrorReporter reporter, + CustomLintContext context, + ) { context.registry.addClassDeclaration((node) { if (!ClassUtils.isScopeContainer(node)) { return; @@ -32,8 +32,8 @@ class PassAsyncLifecycleInInitializeQueue extends DartLintRule { .cast() .firstWhere( (element) => element?.name.lexeme == MethodNames.initializeQueue, - orElse: () => null, - ); + orElse: () => null, + ); final depsInQueue = initializeQueueMethod?.body.childEntities .whereType() diff --git a/packages/yx_scope_linter/lib/src/lints/use_async_dep_for_async_lifecycle.dart b/packages/yx_scope_linter/lib/src/lints/use_async_dep_for_async_lifecycle.dart index d74fc33..b46f5a1 100644 --- a/packages/yx_scope_linter/lib/src/lints/use_async_dep_for_async_lifecycle.dart +++ b/packages/yx_scope_linter/lib/src/lints/use_async_dep_for_async_lifecycle.dart @@ -15,7 +15,7 @@ class UseAsyncDepForAsyncLifecycle extends DartLintRule { static const _code = LintCode( name: 'use_async_dep_for_async_lifecycle', problemMessage: - 'Dependency implements AsyncLifecycle interface, but uses `dep` declaration. ' + 'Dependency implements AsyncLifecycle interface, but uses `dep` declaration. ' 'In this case init/dispose methods will not be invoked.', correctionMessage: 'You should either use `$_asyncDepKeyword` declaration ' 'or do not implement AsyncLifecycle interface.', @@ -26,10 +26,10 @@ class UseAsyncDepForAsyncLifecycle extends DartLintRule { @override void run( - CustomLintResolver resolver, - ErrorReporter reporter, - CustomLintContext context, - ) { + CustomLintResolver resolver, + ErrorReporter reporter, + CustomLintContext context, + ) { context.registry.addClassDeclaration((node) { if (!ClassUtils.isScopeContainer(node)) { return; @@ -49,7 +49,7 @@ class UseAsyncDepForAsyncLifecycle extends DartLintRule { .whereType() .first; final implementsAsyncLifecycle = - asyncLifecycleType.isAssignableFromType(depClass.thisType); + asyncLifecycleType.isAssignableFromType(depClass.thisType); if (implementsAsyncLifecycle) { reporter.reportErrorForToken( _code, @@ -70,12 +70,12 @@ class UseAsyncDepForAsyncLifecycle extends DartLintRule { class UseAsyncDepForAsyncLifecycleFix extends DartFix { @override void run( - CustomLintResolver resolver, - ChangeReporter reporter, - CustomLintContext context, - analyzer_error.AnalysisError analysisError, - List others, - ) { + CustomLintResolver resolver, + ChangeReporter reporter, + CustomLintContext context, + analyzer_error.AnalysisError analysisError, + List others, + ) { final builder = reporter.createChangeBuilder( message: 'Use `$_asyncDepKeyword` declaration', priority: FixPriority.useAsyncDepForAsyncLifecycle.value, From 8a4202634df643878f07c2f47f36e03e98fb2c3c Mon Sep 17 00:00:00 2001 From: Vasilii Novozhilov Date: Mon, 7 Apr 2025 13:28:23 +0300 Subject: [PATCH 04/10] deprecated features removed --- .../lib/src/lints/consider_dep_suffix.dart | 4 ++-- packages/yx_scope_linter/lib/src/lints/dep_cycle.dart | 4 ++-- packages/yx_scope_linter/lib/src/lints/final_dep.dart | 8 +++----- .../lints/pass_async_lifecycle_in_initialize_queue.dart | 5 ++++- .../lib/src/lints/use_async_dep_for_async_lifecycle.dart | 8 +++----- packages/yx_scope_linter/lib/src/utils.dart | 2 +- 6 files changed, 15 insertions(+), 16 deletions(-) diff --git a/packages/yx_scope_linter/lib/src/lints/consider_dep_suffix.dart b/packages/yx_scope_linter/lib/src/lints/consider_dep_suffix.dart index 4dc7814..9291d55 100644 --- a/packages/yx_scope_linter/lib/src/lints/consider_dep_suffix.dart +++ b/packages/yx_scope_linter/lib/src/lints/consider_dep_suffix.dart @@ -33,11 +33,11 @@ class ConsiderDepSuffix extends DartLintRule { continue; } - reporter.reportErrorForToken( + reporter.atToken( + dep.nameToken, _code.copyWith( correctionMessage: 'Change the name to `${dep.name}$_suffix`', ), - dep.nameToken, ); } }); diff --git a/packages/yx_scope_linter/lib/src/lints/dep_cycle.dart b/packages/yx_scope_linter/lib/src/lints/dep_cycle.dart index f05ef60..ca34db0 100644 --- a/packages/yx_scope_linter/lib/src/lints/dep_cycle.dart +++ b/packages/yx_scope_linter/lib/src/lints/dep_cycle.dart @@ -45,13 +45,13 @@ class DepCycle extends DartLintRule { final cycleDeps = cycle.map((e) => deps[e]).whereType(); for (final dep in cycleDeps) { - reporter.reportErrorForToken( + reporter.atToken( + dep.nameToken, _code.copyWith( problemMessage: '$_message: ${cycleDeps.map((e) => e.name).join(' <- ')}' ' <- ${cycleDeps.first.name}', ), - dep.nameToken, ); } } diff --git a/packages/yx_scope_linter/lib/src/lints/final_dep.dart b/packages/yx_scope_linter/lib/src/lints/final_dep.dart index 56e12d5..f11c6a4 100644 --- a/packages/yx_scope_linter/lib/src/lints/final_dep.dart +++ b/packages/yx_scope_linter/lib/src/lints/final_dep.dart @@ -30,12 +30,10 @@ class FinalDep extends DartLintRule { final field = dep.field; if (!field.fields.isFinal) { - reporter.reportErrorForToken( - _code, + reporter.atToken( dep.nameToken, - [], - [], - field.fields, + _code, + data: field.fields, ); } } diff --git a/packages/yx_scope_linter/lib/src/lints/pass_async_lifecycle_in_initialize_queue.dart b/packages/yx_scope_linter/lib/src/lints/pass_async_lifecycle_in_initialize_queue.dart index 2fb6745..d6c914f 100644 --- a/packages/yx_scope_linter/lib/src/lints/pass_async_lifecycle_in_initialize_queue.dart +++ b/packages/yx_scope_linter/lib/src/lints/pass_async_lifecycle_in_initialize_queue.dart @@ -47,7 +47,10 @@ class PassAsyncLifecycleInInitializeQueue extends DartLintRule { continue; } if (!queueDeps.contains(dep.name)) { - reporter.reportErrorForToken(_code, dep.nameToken); + reporter.atToken( + dep.nameToken, + _code, + ); } } }); diff --git a/packages/yx_scope_linter/lib/src/lints/use_async_dep_for_async_lifecycle.dart b/packages/yx_scope_linter/lib/src/lints/use_async_dep_for_async_lifecycle.dart index b46f5a1..84ee4b5 100644 --- a/packages/yx_scope_linter/lib/src/lints/use_async_dep_for_async_lifecycle.dart +++ b/packages/yx_scope_linter/lib/src/lints/use_async_dep_for_async_lifecycle.dart @@ -51,12 +51,10 @@ class UseAsyncDepForAsyncLifecycle extends DartLintRule { final implementsAsyncLifecycle = asyncLifecycleType.isAssignableFromType(depClass.thisType); if (implementsAsyncLifecycle) { - reporter.reportErrorForToken( - _code, + reporter.atToken( methodInvocation.methodName.token, - [], - [], - methodInvocation, + _code, + data: methodInvocation, ); } } diff --git a/packages/yx_scope_linter/lib/src/utils.dart b/packages/yx_scope_linter/lib/src/utils.dart index 304729b..e8a62f4 100644 --- a/packages/yx_scope_linter/lib/src/utils.dart +++ b/packages/yx_scope_linter/lib/src/utils.dart @@ -11,7 +11,7 @@ import 'types.dart'; class ClassUtils { static bool implementsInterface(ClassElement element, String ancestorName) => element.interfaces - .map((e) => e.getDisplayString(withNullability: false)) + .map((e) => e.getDisplayString()) .contains(ancestorName); static bool isScopeContainer(ClassDeclaration node) { From 790c264e5e1adee547e225c6f3a751bb223debe3 Mon Sep 17 00:00:00 2001 From: Vasilii Novozhilov Date: Mon, 7 Apr 2025 13:37:44 +0300 Subject: [PATCH 05/10] code improvement --- .../lib/src/lints/consider_dep_suffix.dart | 4 ++-- packages/yx_scope_linter/lib/src/lints/dep_cycle.dart | 4 ++-- packages/yx_scope_linter/lib/src/lints/final_dep.dart | 8 ++++---- .../lints/pass_async_lifecycle_in_initialize_queue.dart | 4 ++-- .../lib/src/lints/use_async_dep_for_async_lifecycle.dart | 8 ++++---- 5 files changed, 14 insertions(+), 14 deletions(-) diff --git a/packages/yx_scope_linter/lib/src/lints/consider_dep_suffix.dart b/packages/yx_scope_linter/lib/src/lints/consider_dep_suffix.dart index 9291d55..d408369 100644 --- a/packages/yx_scope_linter/lib/src/lints/consider_dep_suffix.dart +++ b/packages/yx_scope_linter/lib/src/lints/consider_dep_suffix.dart @@ -1,4 +1,4 @@ -import 'package:analyzer/error/error.dart' as analyzer_error; +import 'package:analyzer/error/error.dart' hide LintCode; import 'package:analyzer/error/listener.dart'; import 'package:custom_lint_builder/custom_lint_builder.dart'; import 'package:yx_scope_linter/src/extensions.dart'; @@ -11,7 +11,7 @@ class ConsiderDepSuffix extends DartLintRule { name: 'consider_dep_suffix', problemMessage: 'Consider using suffix `$_suffix` for the name of your Dep', correctionMessage: 'Add suffix `$_suffix` like this: `entityName$_suffix`', - errorSeverity: analyzer_error.ErrorSeverity.INFO, + errorSeverity: ErrorSeverity.INFO, ); const ConsiderDepSuffix() : super(code: _code); diff --git a/packages/yx_scope_linter/lib/src/lints/dep_cycle.dart b/packages/yx_scope_linter/lib/src/lints/dep_cycle.dart index ca34db0..0b37c5f 100644 --- a/packages/yx_scope_linter/lib/src/lints/dep_cycle.dart +++ b/packages/yx_scope_linter/lib/src/lints/dep_cycle.dart @@ -1,4 +1,4 @@ -import 'package:analyzer/error/error.dart' as analyzer_error; +import 'package:analyzer/error/error.dart' hide LintCode; import 'package:analyzer/error/listener.dart'; import 'package:custom_lint_builder/custom_lint_builder.dart'; import 'package:yx_scope_linter/src/extensions.dart'; @@ -11,7 +11,7 @@ class DepCycle extends DartLintRule { static const _code = LintCode( name: _name, problemMessage: _message, - errorSeverity: analyzer_error.ErrorSeverity.ERROR, + errorSeverity: ErrorSeverity.ERROR, ); const DepCycle() : super(code: _code); diff --git a/packages/yx_scope_linter/lib/src/lints/final_dep.dart b/packages/yx_scope_linter/lib/src/lints/final_dep.dart index f11c6a4..3cb3418 100644 --- a/packages/yx_scope_linter/lib/src/lints/final_dep.dart +++ b/packages/yx_scope_linter/lib/src/lints/final_dep.dart @@ -1,5 +1,5 @@ import 'package:analyzer/dart/ast/ast.dart'; -import 'package:analyzer/error/error.dart' as analyzer_error; +import 'package:analyzer/error/error.dart' hide LintCode; import 'package:analyzer/error/listener.dart'; import 'package:custom_lint_builder/custom_lint_builder.dart'; import 'package:yx_scope_linter/src/priority.dart'; @@ -10,7 +10,7 @@ class FinalDep extends DartLintRule { name: 'final_dep', problemMessage: 'A dep field must be `late final`', correctionMessage: 'Make your dep field `final`', - errorSeverity: analyzer_error.ErrorSeverity.WARNING, + errorSeverity: ErrorSeverity.WARNING, ); const FinalDep() : super(code: _code); @@ -50,8 +50,8 @@ class FinalDepFix extends DartFix { CustomLintResolver resolver, ChangeReporter reporter, CustomLintContext context, - analyzer_error.AnalysisError analysisError, - List others, + AnalysisError analysisError, + List others, ) { final changeBuilder = reporter.createChangeBuilder( message: analysisError.correctionMessage!, diff --git a/packages/yx_scope_linter/lib/src/lints/pass_async_lifecycle_in_initialize_queue.dart b/packages/yx_scope_linter/lib/src/lints/pass_async_lifecycle_in_initialize_queue.dart index d6c914f..79b59fa 100644 --- a/packages/yx_scope_linter/lib/src/lints/pass_async_lifecycle_in_initialize_queue.dart +++ b/packages/yx_scope_linter/lib/src/lints/pass_async_lifecycle_in_initialize_queue.dart @@ -1,5 +1,5 @@ import 'package:analyzer/dart/ast/ast.dart'; -import 'package:analyzer/error/error.dart' as analyzer_error; +import 'package:analyzer/error/error.dart' hide LintCode; import 'package:analyzer/error/listener.dart'; import 'package:custom_lint_builder/custom_lint_builder.dart'; import 'package:yx_scope_linter/src/names.dart'; @@ -13,7 +13,7 @@ class PassAsyncLifecycleInInitializeQueue extends DartLintRule { 'Otherwise init/dispose methods will not be called.', correctionMessage: 'Override method initializeQueue in the current scope' ' and pass the Dep there', - errorSeverity: analyzer_error.ErrorSeverity.WARNING, + errorSeverity: ErrorSeverity.WARNING, ); const PassAsyncLifecycleInInitializeQueue() : super(code: _code); diff --git a/packages/yx_scope_linter/lib/src/lints/use_async_dep_for_async_lifecycle.dart b/packages/yx_scope_linter/lib/src/lints/use_async_dep_for_async_lifecycle.dart index 84ee4b5..24d2027 100644 --- a/packages/yx_scope_linter/lib/src/lints/use_async_dep_for_async_lifecycle.dart +++ b/packages/yx_scope_linter/lib/src/lints/use_async_dep_for_async_lifecycle.dart @@ -1,7 +1,7 @@ import 'package:analyzer/dart/ast/ast.dart'; import 'package:analyzer/dart/element/element.dart'; import 'package:analyzer/dart/element/type.dart'; -import 'package:analyzer/error/error.dart' as analyzer_error; +import 'package:analyzer/error/error.dart' hide LintCode; import 'package:analyzer/error/listener.dart'; import 'package:custom_lint_builder/custom_lint_builder.dart'; import 'package:yx_scope_linter/src/priority.dart'; @@ -19,7 +19,7 @@ class UseAsyncDepForAsyncLifecycle extends DartLintRule { 'In this case init/dispose methods will not be invoked.', correctionMessage: 'You should either use `$_asyncDepKeyword` declaration ' 'or do not implement AsyncLifecycle interface.', - errorSeverity: analyzer_error.ErrorSeverity.WARNING, + errorSeverity: ErrorSeverity.WARNING, ); const UseAsyncDepForAsyncLifecycle() : super(code: _code); @@ -71,8 +71,8 @@ class UseAsyncDepForAsyncLifecycleFix extends DartFix { CustomLintResolver resolver, ChangeReporter reporter, CustomLintContext context, - analyzer_error.AnalysisError analysisError, - List others, + AnalysisError analysisError, + List others, ) { final builder = reporter.createChangeBuilder( message: 'Use `$_asyncDepKeyword` declaration', From edd145eff4ceb29dafaff8e497c3ac82d375f393 Mon Sep 17 00:00:00 2001 From: Vasilii Novozhilov Date: Mon, 7 Apr 2025 13:47:29 +0300 Subject: [PATCH 06/10] maximum version upgrade without conflicts --- packages/yx_scope_linter/pubspec.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/yx_scope_linter/pubspec.yaml b/packages/yx_scope_linter/pubspec.yaml index f402652..4d8b23f 100644 --- a/packages/yx_scope_linter/pubspec.yaml +++ b/packages/yx_scope_linter/pubspec.yaml @@ -13,7 +13,7 @@ environment: sdk: '>=2.19.6 <4.0.0' dependencies: - analyzer: ^6.4.0 + analyzer: ^6.8.0 analyzer_plugin: ^0.11.2 custom_lint_builder: ^0.5.3 yx_scope: ^1.0.0 From baa7e3c7c43447b2a6581e38ad6b8b97625cfc2e Mon Sep 17 00:00:00 2001 From: Vasilii Novozhilov Date: Mon, 7 Apr 2025 13:52:09 +0300 Subject: [PATCH 07/10] analyzer version set to 6.4.1 --- packages/yx_scope_linter/pubspec.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/yx_scope_linter/pubspec.yaml b/packages/yx_scope_linter/pubspec.yaml index 4d8b23f..6fc9a5e 100644 --- a/packages/yx_scope_linter/pubspec.yaml +++ b/packages/yx_scope_linter/pubspec.yaml @@ -13,7 +13,7 @@ environment: sdk: '>=2.19.6 <4.0.0' dependencies: - analyzer: ^6.8.0 + analyzer: ^6.4.1 analyzer_plugin: ^0.11.2 custom_lint_builder: ^0.5.3 yx_scope: ^1.0.0 From 6bb9891ebe4d135231d8a56188496974204f1353 Mon Sep 17 00:00:00 2001 From: Vasilii Novozhilov Date: Wed, 9 Apr 2025 11:13:03 +0300 Subject: [PATCH 08/10] custom_lint_builder upgrade to support analyzer v6.4.0 --- packages/yx_scope_linter/pubspec.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/yx_scope_linter/pubspec.yaml b/packages/yx_scope_linter/pubspec.yaml index 6fc9a5e..f460cc6 100644 --- a/packages/yx_scope_linter/pubspec.yaml +++ b/packages/yx_scope_linter/pubspec.yaml @@ -15,7 +15,7 @@ environment: dependencies: analyzer: ^6.4.1 analyzer_plugin: ^0.11.2 - custom_lint_builder: ^0.5.3 + custom_lint_builder: ^0.6.2 yx_scope: ^1.0.0 dev_dependencies: From 7296ac51173fa5d3c2397f6387604560c00b3ec1 Mon Sep 17 00:00:00 2001 From: Vasilii Novozhilov Date: Wed, 9 Apr 2025 11:20:24 +0300 Subject: [PATCH 09/10] example's custom_lint version upgrade --- packages/yx_scope_linter/example/pubspec.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/yx_scope_linter/example/pubspec.yaml b/packages/yx_scope_linter/example/pubspec.yaml index 850677d..82c1eb3 100644 --- a/packages/yx_scope_linter/example/pubspec.yaml +++ b/packages/yx_scope_linter/example/pubspec.yaml @@ -11,6 +11,6 @@ dependencies: dev_dependencies: lints: ^2.0.0 - custom_lint: + custom_lint: ^0.6.8 yx_scope_linter: path: .. From 2cd2d4b989ed77ec6fa08d097d6dadd9ae8b802c Mon Sep 17 00:00:00 2001 From: Vasilii Novozhilov Date: Wed, 9 Apr 2025 11:25:31 +0300 Subject: [PATCH 10/10] custom_lint version upgrade --- packages/yx_scope_flutter/example/pubspec.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/yx_scope_flutter/example/pubspec.yaml b/packages/yx_scope_flutter/example/pubspec.yaml index 3f0c8fd..7f626cf 100644 --- a/packages/yx_scope_flutter/example/pubspec.yaml +++ b/packages/yx_scope_flutter/example/pubspec.yaml @@ -18,7 +18,7 @@ dev_dependencies: flutter_test: sdk: flutter flutter_lints: ^2.0.0 - custom_lint: ^0.5.3 + custom_lint: ^0.6.8 yx_scope_linter: ^0.1.0 flutter: