From 938c62c6d12567286f842307ca8f2f941a7b06f3 Mon Sep 17 00:00:00 2001 From: Minsu Lee Date: Fri, 15 Sep 2023 17:07:52 +0900 Subject: [PATCH 1/4] feat: require analyzer: '>=4.4.0 <6.2.0' --- mobx_codegen/CHANGELOG.md | 4 ++++ mobx_codegen/lib/version.dart | 2 +- mobx_codegen/pubspec.yaml | 4 ++-- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/mobx_codegen/CHANGELOG.md b/mobx_codegen/CHANGELOG.md index 5888395f..20e4b55e 100644 --- a/mobx_codegen/CHANGELOG.md +++ b/mobx_codegen/CHANGELOG.md @@ -1,3 +1,7 @@ +## 2.3.1 + +- Update analyzer version to `>=4.4.0 <6.2.0` + ## 2.3.0 - Adds `@alwaysNotify` annotation support for creating always notify observables. [@amondnet](https://github.com/amondnet) in [#907](https://github.com/mobxjs/mobx.dart/pull/907) diff --git a/mobx_codegen/lib/version.dart b/mobx_codegen/lib/version.dart index 855f13a8..962a8a1c 100644 --- a/mobx_codegen/lib/version.dart +++ b/mobx_codegen/lib/version.dart @@ -1,4 +1,4 @@ // Generated via set_version.dart. !!!DO NOT MODIFY BY HAND!!! /// The current version as per `pubspec.yaml`. -const version = '2.2.0'; +const version = '2.3.1'; diff --git a/mobx_codegen/pubspec.yaml b/mobx_codegen/pubspec.yaml index a437ed68..abf2e9d6 100644 --- a/mobx_codegen/pubspec.yaml +++ b/mobx_codegen/pubspec.yaml @@ -1,6 +1,6 @@ name: mobx_codegen description: Code generator for MobX that adds support for annotating your code with @observable, @computed, @action and also creating Store classes. -version: 2.3.0 +version: 2.3.1 homepage: https://github.com/mobxjs/mobx.dart issue_tracker: https://github.com/mobxjs/mobx.dart/issues @@ -9,7 +9,7 @@ environment: sdk: ">=2.13.0 <3.0.0" dependencies: - analyzer: ">=4.4.0 <6.0.0" + analyzer: ">=4.4.0 <6.2.0" build: ^2.2.1 build_resolvers: ^2.0.6 meta: ^1.3.0 From b7225fe0526a40da0ae014a5a2a22255f3133f2a Mon Sep 17 00:00:00 2001 From: Minsu Lee Date: Fri, 15 Sep 2023 17:16:55 +0900 Subject: [PATCH 2/4] feat: require analyzer: '>=4.4.0 <6.2.0' --- mobx_codegen/lib/src/template/util.dart | 2 ++ mobx_codegen/test/util_test.dart | 2 ++ 2 files changed, 4 insertions(+) diff --git a/mobx_codegen/lib/src/template/util.dart b/mobx_codegen/lib/src/template/util.dart index 73363250..fe980286 100644 --- a/mobx_codegen/lib/src/template/util.dart +++ b/mobx_codegen/lib/src/template/util.dart @@ -22,12 +22,14 @@ class AsyncMethodChecker { method.returnType.isDartAsyncFuture || (method.isAsynchronous && !method.isGenerator && + // ignore: deprecated_member_use method.returnType.isDynamic); bool returnsStream(MethodElement method) => _checkStream.isAssignableFromType(method.returnType) || (method.isAsynchronous && method.isGenerator && + // ignore: deprecated_member_use method.returnType.isDynamic); } diff --git a/mobx_codegen/test/util_test.dart b/mobx_codegen/test/util_test.dart index 19a5def6..e5637902 100644 --- a/mobx_codegen/test/util_test.dart +++ b/mobx_codegen/test/util_test.dart @@ -20,6 +20,7 @@ MockMethod mockFutureMethod({ bool isGenerator = false, }) { final returnType = MockType(); + // ignore: deprecated_member_use when(() => returnType.isDynamic).thenReturn(returnsDynamic); when(() => returnType.isDartAsyncFuture).thenReturn(returnsFuture); when(() => returnType.isDartAsyncFutureOr).thenReturn(returnsFutureOr); @@ -37,6 +38,7 @@ MockMethod mockStreamMethod({ bool returnsDynamic = false, }) { final returnType = MockType(); + // ignore: deprecated_member_use when(() => returnType.isDynamic).thenReturn(returnsDynamic); final method = MockMethod(); From b5d4cad2be14123f66f705701592b7465b94a247 Mon Sep 17 00:00:00 2001 From: Minsu Lee Date: Fri, 15 Sep 2023 17:24:36 +0900 Subject: [PATCH 3/4] feat: require `analyzer: '^5.12.0'` --- mobx_codegen/CHANGELOG.md | 6 ++++-- mobx_codegen/lib/src/template/util.dart | 7 +++---- mobx_codegen/lib/src/type_names.dart | 7 ++----- mobx_codegen/lib/version.dart | 2 +- mobx_codegen/pubspec.yaml | 6 +++--- mobx_codegen/test/util_test.dart | 6 ++---- 6 files changed, 15 insertions(+), 19 deletions(-) diff --git a/mobx_codegen/CHANGELOG.md b/mobx_codegen/CHANGELOG.md index 20e4b55e..6f58bd96 100644 --- a/mobx_codegen/CHANGELOG.md +++ b/mobx_codegen/CHANGELOG.md @@ -1,6 +1,8 @@ -## 2.3.1 +## 2.4.0 -- Update analyzer version to `>=4.4.0 <6.2.0` +- Require `analyzer: ^5.12.0` +- Support the latest package:analyzer +- Require Dart 3.0 ## 2.3.0 diff --git a/mobx_codegen/lib/src/template/util.dart b/mobx_codegen/lib/src/template/util.dart index fe980286..51cae4eb 100644 --- a/mobx_codegen/lib/src/template/util.dart +++ b/mobx_codegen/lib/src/template/util.dart @@ -1,4 +1,5 @@ import 'package:analyzer/dart/element/element.dart'; +import 'package:analyzer/dart/element/type.dart'; import 'package:mobx_codegen/src/template/params.dart'; import 'package:mobx_codegen/src/type_names.dart'; import 'package:source_gen/source_gen.dart'; @@ -22,15 +23,13 @@ class AsyncMethodChecker { method.returnType.isDartAsyncFuture || (method.isAsynchronous && !method.isGenerator && - // ignore: deprecated_member_use - method.returnType.isDynamic); + method.returnType is DynamicType); bool returnsStream(MethodElement method) => _checkStream.isAssignableFromType(method.returnType) || (method.isAsynchronous && method.isGenerator && - // ignore: deprecated_member_use - method.returnType.isDynamic); + method.returnType is DynamicType); } TypeParamTemplate typeParamTemplate( diff --git a/mobx_codegen/lib/src/type_names.dart b/mobx_codegen/lib/src/type_names.dart index d6c1e0db..7c1cdcb9 100644 --- a/mobx_codegen/lib/src/type_names.dart +++ b/mobx_codegen/lib/src/type_names.dart @@ -35,7 +35,6 @@ class LibraryScopedNameFinder { // Reverse each import's export namespace so we can map elements to their // library-local names. Note that the definedNames include a prefix if there // is one. - // ignore: deprecated_member_use for (final import in library.libraryImports) { for (final entry in import.namespace.definedNames.entries) { _namesByElement[entry.value] = entry.key; @@ -75,14 +74,12 @@ class LibraryScopedNameFinder { /// /// The returned string will include import prefixes on all applicable types. String _getDartTypeName(DartType type) { - // ignore: deprecated_member_use - var typeElement = type.element2; + var typeElement = type.element; if (type is FunctionType) { // If we're dealing with a typedef, we let it undergo the standard name // lookup. Otherwise, we special case the function naming. if (type.alias?.element is TypeAliasElement) { - // ignore: deprecated_member_use - typeElement = type.alias!.element.aliasedElement?.enclosingElement3; + typeElement = type.alias!.element.aliasedElement?.enclosingElement; } else { return _getFunctionTypeName(type); } diff --git a/mobx_codegen/lib/version.dart b/mobx_codegen/lib/version.dart index 962a8a1c..5c81252f 100644 --- a/mobx_codegen/lib/version.dart +++ b/mobx_codegen/lib/version.dart @@ -1,4 +1,4 @@ // Generated via set_version.dart. !!!DO NOT MODIFY BY HAND!!! /// The current version as per `pubspec.yaml`. -const version = '2.3.1'; +const version = '2.4.0'; diff --git a/mobx_codegen/pubspec.yaml b/mobx_codegen/pubspec.yaml index abf2e9d6..165b4d4f 100644 --- a/mobx_codegen/pubspec.yaml +++ b/mobx_codegen/pubspec.yaml @@ -1,15 +1,15 @@ name: mobx_codegen description: Code generator for MobX that adds support for annotating your code with @observable, @computed, @action and also creating Store classes. -version: 2.3.1 +version: 2.4.0 homepage: https://github.com/mobxjs/mobx.dart issue_tracker: https://github.com/mobxjs/mobx.dart/issues environment: - sdk: ">=2.13.0 <3.0.0" + sdk: ^3.0.0 dependencies: - analyzer: ">=4.4.0 <6.2.0" + analyzer: ">=5.12.0 <7.0.0" build: ^2.2.1 build_resolvers: ^2.0.6 meta: ^1.3.0 diff --git a/mobx_codegen/test/util_test.dart b/mobx_codegen/test/util_test.dart index e5637902..a92222b7 100644 --- a/mobx_codegen/test/util_test.dart +++ b/mobx_codegen/test/util_test.dart @@ -20,8 +20,7 @@ MockMethod mockFutureMethod({ bool isGenerator = false, }) { final returnType = MockType(); - // ignore: deprecated_member_use - when(() => returnType.isDynamic).thenReturn(returnsDynamic); + when(() => returnType is DynamicType).thenReturn(returnsDynamic); when(() => returnType.isDartAsyncFuture).thenReturn(returnsFuture); when(() => returnType.isDartAsyncFutureOr).thenReturn(returnsFutureOr); @@ -38,8 +37,7 @@ MockMethod mockStreamMethod({ bool returnsDynamic = false, }) { final returnType = MockType(); - // ignore: deprecated_member_use - when(() => returnType.isDynamic).thenReturn(returnsDynamic); + when(() => returnType is DynamicType).thenReturn(returnsDynamic); final method = MockMethod(); when(() => method.returnType).thenReturn(returnType); From 69a73c1c6eabaaa90361ab40ee912c17200d2d9a Mon Sep 17 00:00:00 2001 From: Minsu Lee Date: Fri, 15 Sep 2023 17:48:06 +0900 Subject: [PATCH 4/4] feat: require `analyzer: '^5.12.0'` --- mobx_codegen/lib/src/template/util.dart | 7 ++++--- mobx_codegen/pubspec.yaml | 2 +- ...valid_output_annotation_store_config_has_to_string.dart | 2 +- mobx_codegen/test/util_test.dart | 6 ++++-- 4 files changed, 10 insertions(+), 7 deletions(-) diff --git a/mobx_codegen/lib/src/template/util.dart b/mobx_codegen/lib/src/template/util.dart index 51cae4eb..fe980286 100644 --- a/mobx_codegen/lib/src/template/util.dart +++ b/mobx_codegen/lib/src/template/util.dart @@ -1,5 +1,4 @@ import 'package:analyzer/dart/element/element.dart'; -import 'package:analyzer/dart/element/type.dart'; import 'package:mobx_codegen/src/template/params.dart'; import 'package:mobx_codegen/src/type_names.dart'; import 'package:source_gen/source_gen.dart'; @@ -23,13 +22,15 @@ class AsyncMethodChecker { method.returnType.isDartAsyncFuture || (method.isAsynchronous && !method.isGenerator && - method.returnType is DynamicType); + // ignore: deprecated_member_use + method.returnType.isDynamic); bool returnsStream(MethodElement method) => _checkStream.isAssignableFromType(method.returnType) || (method.isAsynchronous && method.isGenerator && - method.returnType is DynamicType); + // ignore: deprecated_member_use + method.returnType.isDynamic); } TypeParamTemplate typeParamTemplate( diff --git a/mobx_codegen/pubspec.yaml b/mobx_codegen/pubspec.yaml index 165b4d4f..6e988cdd 100644 --- a/mobx_codegen/pubspec.yaml +++ b/mobx_codegen/pubspec.yaml @@ -23,5 +23,5 @@ dev_dependencies: coverage: ^1.0.4 lints: ^2.0.0 logging: ^1.0.2 - mocktail: ^0.3.0 + mocktail: ^1.0.0 test: ^1.20.1 diff --git a/mobx_codegen/test/data/valid_output_annotation_store_config_has_to_string.dart b/mobx_codegen/test/data/valid_output_annotation_store_config_has_to_string.dart index 55ac955e..a151b3b3 100644 --- a/mobx_codegen/test/data/valid_output_annotation_store_config_has_to_string.dart +++ b/mobx_codegen/test/data/valid_output_annotation_store_config_has_to_string.dart @@ -1,6 +1,6 @@ // GENERATED CODE - DO NOT MODIFY BY HAND -part of generator_sample; +part of 'generator_sample.dart'; // ************************************************************************** // StoreGenerator diff --git a/mobx_codegen/test/util_test.dart b/mobx_codegen/test/util_test.dart index a92222b7..e5637902 100644 --- a/mobx_codegen/test/util_test.dart +++ b/mobx_codegen/test/util_test.dart @@ -20,7 +20,8 @@ MockMethod mockFutureMethod({ bool isGenerator = false, }) { final returnType = MockType(); - when(() => returnType is DynamicType).thenReturn(returnsDynamic); + // ignore: deprecated_member_use + when(() => returnType.isDynamic).thenReturn(returnsDynamic); when(() => returnType.isDartAsyncFuture).thenReturn(returnsFuture); when(() => returnType.isDartAsyncFutureOr).thenReturn(returnsFutureOr); @@ -37,7 +38,8 @@ MockMethod mockStreamMethod({ bool returnsDynamic = false, }) { final returnType = MockType(); - when(() => returnType is DynamicType).thenReturn(returnsDynamic); + // ignore: deprecated_member_use + when(() => returnType.isDynamic).thenReturn(returnsDynamic); final method = MockMethod(); when(() => method.returnType).thenReturn(returnType);