From e318df47f870add648bbadd2888f3e7afff11780 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Istv=C3=A1n=20So=C3=B3s?= Date: Thu, 11 Jul 2024 11:59:14 +0200 Subject: [PATCH] New suggestion for packages failing because of SDK `_macros` dependency. (#1388) --- CHANGELOG.md | 4 ++++ lib/src/report/static_analysis.dart | 13 ++++++++++--- lib/src/version.dart | 2 +- pubspec.yaml | 2 +- 4 files changed, 16 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 31a3f7081..4fde8b649 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,7 @@ +## 0.22.9 + +- Updated suggestion for packages depending on SDK `_macros`. + ## 0.22.8 - Updated dependency: `tar: ^2.0.0`. diff --git a/lib/src/report/static_analysis.dart b/lib/src/report/static_analysis.dart index 3409601d9..52e7213e3 100644 --- a/lib/src/report/static_analysis.dart +++ b/lib/src/report/static_analysis.dart @@ -90,10 +90,17 @@ Future<_AnalysisResult> _analyzePackage(PackageContext context) async { final dirs = await listFocusDirs(context.packageDir); try { - final resolveErrorMessage = await context.resolveErrorMessage; - if (resolveErrorMessage != null) { + final errorMessage = await context.resolveErrorMessage; + if (errorMessage != null) { + String? suggestion; + if (errorMessage.contains('from sdk which doesn\'t match any versions') && + errorMessage.contains('requires _macros ')) { + suggestion = + 'The SDK package `_macros` is an experimental feature which is only available in newer SDKs. ' + 'Increase your minimum SDK constraint for `pub.dev` to select such SDK for analysis.'; + } return _AnalysisResult( - [Issue(resolveErrorMessage)], + [Issue(errorMessage, suggestion: suggestion)], [], [], context.usesFlutter ? 'flutter pub get' : 'dart pub get', diff --git a/lib/src/version.dart b/lib/src/version.dart index f196d80eb..05d57b428 100644 --- a/lib/src/version.dart +++ b/lib/src/version.dart @@ -1,2 +1,2 @@ // Generated code. Do not modify. -const packageVersion = '0.22.8'; +const packageVersion = '0.22.9-dev'; diff --git a/pubspec.yaml b/pubspec.yaml index a41d1be53..93dc2aff5 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,6 +1,6 @@ name: pana description: PAckage aNAlyzer - produce a report summarizing the health and quality of a Dart package. -version: 0.22.8 +version: 0.22.9-dev repository: https://github.com/dart-lang/pana topics: - tool