From 9d1bb7b5bdeb657b79ed9d53a50343672be02f0e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Istv=C3=A1n=20So=C3=B3s?= Date: Tue, 20 Aug 2024 11:26:38 +0200 Subject: [PATCH] Expose wasm readiness analysis in the report (without any score) (#1396) --- CHANGELOG.md | 4 ++ lib/src/internal_model.dart | 23 +++++++ lib/src/package_analyzer.dart | 53 +-------------- lib/src/package_context.dart | 67 ++++++++++++++++--- lib/src/report/create_report.dart | 6 +- lib/src/report/multi_platform.dart | 59 ++++++++++++++-- lib/src/report/static_analysis.dart | 8 +-- lib/src/version.dart | 2 +- pubspec.yaml | 2 +- .../_dummy_pkg-1.0.0-null-safety.1.json | 2 +- ...mmy_pkg-1.0.0-null-safety.1.json_report.md | 5 ++ test/goldens/end2end/async-2.11.0.json | 2 +- .../end2end/async-2.11.0.json_report.md | 4 ++ .../end2end/audio_service-0.18.10.json | 4 +- .../audio_service-0.18.10.json_report.md | 20 ++++++ test/goldens/end2end/bulma_min-0.7.4.json | 2 +- .../end2end/bulma_min-0.7.4.json_report.md | 5 ++ test/goldens/end2end/dnd-2.0.1.json | 4 +- test/goldens/end2end/dnd-2.0.1.json_report.md | 13 ++++ test/goldens/end2end/gg-1.0.12.json | 4 +- test/goldens/end2end/gg-1.0.12.json_report.md | 20 ++++++ test/goldens/end2end/http-0.13.0.json | 2 +- .../end2end/http-0.13.0.json_report.md | 4 ++ test/goldens/end2end/lints-1.0.0.json | 2 +- .../end2end/lints-1.0.0.json_report.md | 4 ++ test/goldens/end2end/mime_type-0.3.2.json | 2 +- .../end2end/mime_type-0.3.2.json_report.md | 5 ++ test/goldens/end2end/nsd_android-1.2.2.json | 2 +- .../end2end/nsd_android-1.2.2.json_report.md | 4 ++ test/goldens/end2end/onepub-1.1.0.json | 2 +- .../end2end/onepub-1.1.0.json_report.md | 4 ++ test/goldens/end2end/sdp_transform-0.2.0.json | 4 +- .../sdp_transform-0.2.0.json_report.md | 5 ++ test/goldens/end2end/skiplist-0.1.0.json | 2 +- .../end2end/skiplist-0.1.0.json_report.md | 5 ++ test/goldens/end2end/steward-0.3.1.json | 4 +- .../end2end/steward-0.3.1.json_report.md | 15 +++++ test/goldens/end2end/url_launcher-6.1.12.json | 2 +- .../url_launcher-6.1.12.json_report.md | 4 ++ test/goldens/end2end/webdriver-3.0.0.json | 2 +- .../end2end/webdriver-3.0.0.json_report.md | 14 ++++ 41 files changed, 297 insertions(+), 100 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a94e6af09..655f5de65 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,7 @@ +## 0.22.11 + +- Expose `wasm` readiness analysis in the report (without any score). + ## 0.22.10 - Remove `workspace` and `resolution` properties from pubspec before analyzing. diff --git a/lib/src/internal_model.dart b/lib/src/internal_model.dart index 19a1a8cb3..8194f6ebf 100644 --- a/lib/src/internal_model.dart +++ b/lib/src/internal_model.dart @@ -5,6 +5,9 @@ import 'package:json_annotation/json_annotation.dart'; import 'model.dart'; +import 'tag/_common.dart'; +import 'tag/pana_tags.dart'; +import 'tool/run_constrained.dart'; part 'internal_model.g.dart'; @@ -47,6 +50,26 @@ class VersionDescriptor { Map toJson() => _$VersionDescriptorToJson(this); } +class AnalyzeToolResult { + final List? items; + final List tags; + final List explanations; + final ToolException? toolError; + + AnalyzeToolResult({ + required this.items, + required this.tags, + required this.explanations, + }) : toolError = null; + + AnalyzeToolResult.toolError(this.toolError) + : items = null, + tags = [PanaTags.hasError], + explanations = []; + + bool get hasError => toolError != null; +} + @JsonSerializable() class CodeProblem implements Comparable { /// The errors which don't block platform classification. diff --git a/lib/src/package_analyzer.dart b/lib/src/package_analyzer.dart index f5265e3e4..2476f136c 100644 --- a/lib/src/package_analyzer.dart +++ b/lib/src/package_analyzer.dart @@ -10,19 +10,15 @@ import 'package:logging/logging.dart'; import 'package:path/path.dart' as path; import 'download_utils.dart'; -import 'internal_model.dart'; import 'logging.dart'; import 'maintenance.dart'; -import 'messages.dart'; import 'model.dart'; import 'package_context.dart'; import 'pubspec.dart'; import 'report/create_report.dart'; import 'sdk_env.dart'; import 'tag/pana_tags.dart'; -import 'tag/tagger.dart'; import 'tool/git_tool.dart'; -import 'tool/run_constrained.dart'; import 'utils.dart'; class InspectOptions { @@ -120,17 +116,6 @@ class PackageAnalyzer { packageDir: pkgDir, ); - final dartFiles = []; - final fileList = listFiles(pkgDir, deleteBadExtracted: true); - await for (final file in fileList) { - final isInBin = path.isWithin('bin', file); - final isInLib = path.isWithin('lib', file); - final isDart = file.endsWith('.dart'); - if (isDart && (isInLib || isInBin)) { - dartFiles.add(file); - } - } - Pubspec? pubspec; try { pubspec = context.pubspec; @@ -157,42 +142,8 @@ class PackageAnalyzer { '[report the issue](https://github.com/dart-lang/pana/issues).'); } - if (await context.resolveDependencies()) { - List? analyzerItems; - if (dartFiles.isNotEmpty) { - try { - analyzerItems = await context.staticAnalysis(); - } on ToolException catch (e) { - context.errors - .add(runningDartAnalyzerFailed(context.usesFlutter, e.message)); - } - } else { - analyzerItems = []; - } - if (analyzerItems != null && !analyzerItems.any((item) => item.isError)) { - final tagger = Tagger(pkgDir); - final tags_ = []; - final explanations = []; - // TODO: refactor these methods to return the tags+explanations - tagger.sdkTags(tags_, explanations); - tagger.platformTags(tags_, explanations); - tagger.runtimeTags(tags_, explanations); - tagger.flutterPluginTags(tags_, explanations); - tagger.nullSafetyTags(tags_, explanations); - tagger.wasmReadyTag(tags_, explanations); - // tags are exposed, explanations are ignored - // TODO: use a single result object to derive tags + report - tags.addAll(tags_); - - if (context.currentSdkVersion.major >= 3) { - tags.add(PanaTags.isDart3Compatible); - } - } else { - tags.add(PanaTags.hasError); - } - } else { - tags.add(PanaTags.hasError); - } + final tr = await context.staticAnalysis; + tags.addAll(tr.tags); final licenses = await context.licenses; tags.addAll((await context.licenceTags).tags); diff --git a/lib/src/package_context.dart b/lib/src/package_context.dart index bb2a43821..ba0e6a9d1 100644 --- a/lib/src/package_context.dart +++ b/lib/src/package_context.dart @@ -26,8 +26,10 @@ import 'repository/check_repository.dart'; import 'screenshots.dart'; import 'sdk_env.dart'; import 'tag/license_tags.dart'; +import 'tag/pana_tags.dart'; +import 'tag/tagger.dart'; import 'tool/run_constrained.dart'; -import 'utils.dart' show listFocusDirs; +import 'utils.dart' show listFiles, listFocusDirs; /// Shared (intermediate) results between different packages or versions. /// External systems that may be independent of the archive content may be @@ -94,7 +96,6 @@ class PackageContext { final _stopwatch = Stopwatch(); Pubspec? _pubspec; - List? _codeProblems; PackageContext({ required this.sharedContext, @@ -228,17 +229,61 @@ class PackageContext { } }(); - Future> staticAnalysis() async { - if (_codeProblems != null) return _codeProblems!; - try { + late final Future> _dartFiles = () async { + final results = []; + final fileList = listFiles(packageDir, deleteBadExtracted: true); + await for (final file in fileList) { + final isInBin = p.isWithin('bin', file); + final isInLib = p.isWithin('lib', file); + final isDart = file.endsWith('.dart'); + if (isDart && (isInLib || isInBin)) { + results.add(file); + } + } + return results; + }(); + + late final Future staticAnalysis = () async { + List? items; + final tags = []; + final explanations = []; + final dartFiles = await _dartFiles; + + if (!await resolveDependencies()) { + tags.add(PanaTags.hasError); + } else if (dartFiles.isEmpty) { + items = []; + } else { log.info('Analyzing package...'); - _codeProblems = await _staticAnalysis(packageDir: packageDir); - return _codeProblems!; - } on ToolException catch (e) { - errors.add(messages.runningDartAnalyzerFailed(usesFlutter, e.message)); - rethrow; + try { + items = await _staticAnalysis(packageDir: packageDir); + } on ToolException catch (e) { + errors.add(messages.runningDartAnalyzerFailed(usesFlutter, e.message)); + return AnalyzeToolResult.toolError(e); + } } - } + + if (items != null && !items.any((item) => item.isError)) { + final tagger = Tagger(packageDir); + // TODO: refactor these methods to return the tags+explanations + tagger.sdkTags(tags, explanations); + tagger.platformTags(tags, explanations); + tagger.runtimeTags(tags, explanations); + tagger.flutterPluginTags(tags, explanations); + tagger.nullSafetyTags(tags, explanations); + tagger.wasmReadyTag(tags, explanations); + if (currentSdkVersion.major >= 3) { + tags.add(PanaTags.isDart3Compatible); + } + } else { + tags.add(PanaTags.hasError); + } + return AnalyzeToolResult( + items: items, + tags: tags, + explanations: explanations, + ); + }(); Future> _staticAnalysis({ required String packageDir, diff --git a/lib/src/report/create_report.dart b/lib/src/report/create_report.dart index 6c3227246..797635a22 100644 --- a/lib/src/report/create_report.dart +++ b/lib/src/report/create_report.dart @@ -8,7 +8,6 @@ import '../model.dart'; import '../package_context.dart'; -import '../pubspec.dart'; import 'dependencies.dart'; import 'documentation.dart'; @@ -19,9 +18,8 @@ import 'template.dart'; export '_common.dart' show renderSimpleSectionSummary; Future createReport(PackageContext context) async { - Pubspec pubspec; try { - pubspec = context.pubspec; + context.pubspec; } on Exception catch (e) { return Report( sections: [ @@ -38,7 +36,7 @@ Future createReport(PackageContext context) async { } final templateReport = await followsTemplate(context); - final platformReport = await multiPlatform(context.packageDir, pubspec); + final platformReport = await multiPlatform(context); final staticAnalysisReport = await staticAnalysis(context); final dependenciesReport = await trustworthyDependency(context); diff --git a/lib/src/report/multi_platform.dart b/lib/src/report/multi_platform.dart index 78e612cbd..0807c74c2 100644 --- a/lib/src/report/multi_platform.dart +++ b/lib/src/report/multi_platform.dart @@ -7,20 +7,20 @@ import 'dart:io'; import 'package:path/path.dart' as p; import '../model.dart'; -import '../pubspec.dart'; +import '../package_context.dart'; import '../tag/pana_tags.dart'; import '../tag/tagger.dart'; import '_common.dart'; -Future multiPlatform(String packageDir, Pubspec pubspec) async { +Future multiPlatform(PackageContext context) async { Subsection subsection; - final flutterPackage = pubspec.usesFlutter; + final flutterPackage = context.pubspec.usesFlutter; - if (File(p.join(packageDir, '.dart_tool', 'package_config.json')) + if (File(p.join(context.packageDir, '.dart_tool', 'package_config.json')) .existsSync()) { final tags = []; final explanations = []; - final tagger = Tagger(packageDir); + final tagger = Tagger(context.packageDir); final sdkTags = []; final sdkExplanations = []; tagger.sdkTags(sdkTags, sdkExplanations); @@ -117,11 +117,56 @@ Future multiPlatform(String packageDir, Pubspec pubspec) async { ); } + final wasmSubsection = await _createWasmSubsection(context); + return makeSection( id: ReportSectionId.platform, title: 'Platform support', maxPoints: 20, - basePath: packageDir, - subsections: [subsection], + basePath: context.packageDir, + subsections: [subsection, wasmSubsection], maxIssues: 20); } + +Future _createWasmSubsection(PackageContext context) async { + final tr = await context.staticAnalysis; + final description = 'WASM compatibility'; + final explanation = + tr.explanations.where((e) => e.tag == PanaTags.isWasmReady).firstOrNull; + if (explanation != null) { + return Subsection( + description, + [ + explanationToIssue(explanation), + RawParagraph('See https://dart.dev/web/wasm for details.'), + ], + 0, + 0, + ReportStatus.failed, + ); + } + + if (tr.tags.contains(PanaTags.isWasmReady)) { + return Subsection( + description, + [ + RawParagraph('Package is compatible with runtime `wasm`. ' + 'See https://dart.dev/web/wasm for details.') + ], + 0, + 0, + ReportStatus.passed, + ); + } else { + return Subsection( + description, + [ + RawParagraph('Unable to detect compatibility with runtime `wasm`.'), + RawParagraph('See https://dart.dev/web/wasm for details.'), + ], + 0, + 0, + ReportStatus.failed, + ); + } +} diff --git a/lib/src/report/static_analysis.dart b/lib/src/report/static_analysis.dart index a4b74d5fc..9d09c3648 100644 --- a/lib/src/report/static_analysis.dart +++ b/lib/src/report/static_analysis.dart @@ -106,18 +106,18 @@ Future<_AnalysisResult> _analyzePackage(PackageContext context) async { context.usesFlutter ? 'flutter pub get' : 'dart pub get', ); } - final list = await context.staticAnalysis(); + final rs = await context.staticAnalysis; return _AnalysisResult( - list + rs.items! .where((element) => element.isError) .map(issueFromCodeProblem) .toList(), - list + rs.items! .where((element) => element.isWarning) .map(issueFromCodeProblem) .toList(), - list + rs.items! .where((element) => element.isInfo) .map(issueFromCodeProblem) .toList(), diff --git a/lib/src/version.dart b/lib/src/version.dart index 57f391b89..0b0f0ab59 100644 --- a/lib/src/version.dart +++ b/lib/src/version.dart @@ -1,2 +1,2 @@ // Generated code. Do not modify. -const packageVersion = '0.22.10'; +const packageVersion = '0.22.11'; diff --git a/pubspec.yaml b/pubspec.yaml index 833c5e82a..174ba6ff0 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.10 +version: 0.22.11 repository: https://github.com/dart-lang/pana topics: - tool diff --git a/test/goldens/end2end/_dummy_pkg-1.0.0-null-safety.1.json b/test/goldens/end2end/_dummy_pkg-1.0.0-null-safety.1.json index 4aa6dbc30..fac083e30 100644 --- a/test/goldens/end2end/_dummy_pkg-1.0.0-null-safety.1.json +++ b/test/goldens/end2end/_dummy_pkg-1.0.0-null-safety.1.json @@ -57,7 +57,7 @@ "grantedPoints": 0, "maxPoints": 20, "status": "failed", - "summary": "### [x] 0/20 points: Platform support detection failed\n\n
\n\nCould not determine supported platforms as package resolution failed.\n\n\nRun `dart pub get` for more information.\n
" + "summary": "### [x] 0/20 points: Platform support detection failed\n\n
\n\nCould not determine supported platforms as package resolution failed.\n\n\nRun `dart pub get` for more information.\n
\n\n### [x] 0/0 points: WASM compatibility\n\nUnable to detect compatibility with runtime `wasm`.\nSee https://dart.dev/web/wasm for details." }, { "id": "analysis", diff --git a/test/goldens/end2end/_dummy_pkg-1.0.0-null-safety.1.json_report.md b/test/goldens/end2end/_dummy_pkg-1.0.0-null-safety.1.json_report.md index b0623200c..b3bc032b4 100644 --- a/test/goldens/end2end/_dummy_pkg-1.0.0-null-safety.1.json_report.md +++ b/test/goldens/end2end/_dummy_pkg-1.0.0-null-safety.1.json_report.md @@ -78,6 +78,11 @@ Could not determine supported platforms as package resolution failed. Run `dart pub get` for more information. +### [x] 0/0 points: WASM compatibility + +Unable to detect compatibility with runtime `wasm`. +See https://dart.dev/web/wasm for details. + ## 0/50 Pass static analysis ### [x] 0/50 points: code has no errors, warnings, lints, or formatting issues diff --git a/test/goldens/end2end/async-2.11.0.json b/test/goldens/end2end/async-2.11.0.json index 30fff320f..26208757a 100644 --- a/test/goldens/end2end/async-2.11.0.json +++ b/test/goldens/end2end/async-2.11.0.json @@ -87,7 +87,7 @@ "grantedPoints": 20, "maxPoints": 20, "status": "passed", - "summary": "### [*] 20/20 points: Supports 6 of 6 possible platforms (**iOS**, **Android**, **Web**, **Windows**, **macOS**, **Linux**)\n\n* ✓ Android\n* ✓ iOS\n* ✓ Windows\n* ✓ Linux\n* ✓ macOS\n* ✓ Web" + "summary": "### [*] 20/20 points: Supports 6 of 6 possible platforms (**iOS**, **Android**, **Web**, **Windows**, **macOS**, **Linux**)\n\n* ✓ Android\n* ✓ iOS\n* ✓ Windows\n* ✓ Linux\n* ✓ macOS\n* ✓ Web\n\n### [*] 0/0 points: WASM compatibility\n\nPackage is compatible with runtime `wasm`. See https://dart.dev/web/wasm for details." }, { "id": "analysis", diff --git a/test/goldens/end2end/async-2.11.0.json_report.md b/test/goldens/end2end/async-2.11.0.json_report.md index 2fc5876e2..46c6a1292 100644 --- a/test/goldens/end2end/async-2.11.0.json_report.md +++ b/test/goldens/end2end/async-2.11.0.json_report.md @@ -40,6 +40,10 @@ See [package layout](https://dart.dev/tools/pub/package-layout#examples) guideli * ✓ macOS * ✓ Web +### [*] 0/0 points: WASM compatibility + +Package is compatible with runtime `wasm`. See https://dart.dev/web/wasm for details. + ## 50/50 Pass static analysis ### [*] 50/50 points: code has no errors, warnings, lints, or formatting issues diff --git a/test/goldens/end2end/audio_service-0.18.10.json b/test/goldens/end2end/audio_service-0.18.10.json index 8b9b30230..85a0c1214 100644 --- a/test/goldens/end2end/audio_service-0.18.10.json +++ b/test/goldens/end2end/audio_service-0.18.10.json @@ -154,8 +154,8 @@ "title": "Platform support", "grantedPoints": 20, "maxPoints": 20, - "status": "passed", - "summary": "### [*] 20/20 points: Supports 4 of 6 possible platforms (**iOS**, **Android**, **Web**, Windows, **macOS**, Linux)\n\n* ✓ Android\n* ✓ iOS\n* ✓ macOS\n* ✓ Web\n\nThese platforms are not supported:\n\n
\n\nPackage does not support platform `Windows`.\n\n\nBecause:\n* `package:audio_service/audio_service.dart` that declares support for platforms: `Android`, `iOS`, `macOS`, `Web`.\n
\n
\n\nPackage does not support platform `Linux`.\n\n\nBecause:\n* `package:audio_service/audio_service.dart` that declares support for platforms: `Android`, `iOS`, `macOS`, `Web`.\n
\n\nThese issues are present but do not affect the score, because they may not originate in your package:\n\n
\n\nPackage does not support platform `Web`.\n\n\nBecause:\n* `package:audio_service/audio_service.dart` that imports:\n* `package:flutter_cache_manager/flutter_cache_manager.dart` that imports:\n* `package:flutter_cache_manager/src/storage/cache_info_repositories/cache_info_repositories.dart` that imports:\n* `package:flutter_cache_manager/src/storage/cache_info_repositories/json_cache_info_repository.dart` that imports:\n* `package:path_provider/path_provider.dart` that declares support for platforms: `Android`, `iOS`, `Windows`, `Linux`, `macOS`.\n
" + "status": "failed", + "summary": "### [*] 20/20 points: Supports 4 of 6 possible platforms (**iOS**, **Android**, **Web**, Windows, **macOS**, Linux)\n\n* ✓ Android\n* ✓ iOS\n* ✓ macOS\n* ✓ Web\n\nThese platforms are not supported:\n\n
\n\nPackage does not support platform `Windows`.\n\n\nBecause:\n* `package:audio_service/audio_service.dart` that declares support for platforms: `Android`, `iOS`, `macOS`, `Web`.\n
\n
\n\nPackage does not support platform `Linux`.\n\n\nBecause:\n* `package:audio_service/audio_service.dart` that declares support for platforms: `Android`, `iOS`, `macOS`, `Web`.\n
\n\nThese issues are present but do not affect the score, because they may not originate in your package:\n\n
\n\nPackage does not support platform `Web`.\n\n\nBecause:\n* `package:audio_service/audio_service.dart` that imports:\n* `package:flutter_cache_manager/flutter_cache_manager.dart` that imports:\n* `package:flutter_cache_manager/src/storage/cache_info_repositories/cache_info_repositories.dart` that imports:\n* `package:flutter_cache_manager/src/storage/cache_info_repositories/json_cache_info_repository.dart` that imports:\n* `package:path_provider/path_provider.dart` that declares support for platforms: `Android`, `iOS`, `Windows`, `Linux`, `macOS`.\n
\n\n### [x] 0/0 points: WASM compatibility\n\n
\n\nPackage not compatible with runtime wasm\n\n\nBecause:\n* `package:audio_service/audio_service.dart` that imports:\n* `package:flutter_cache_manager/flutter_cache_manager.dart` that imports:\n* `package:flutter_cache_manager/src/web/web_helper.dart` that imports:\n* `package:flutter_cache_manager/src/cache_store.dart` that imports:\n* `package:flutter_cache_manager/src/storage/file_system/file_system.dart` that imports:\n* `package:file/file.dart` that imports:\n* `package:file/src/interface.dart` that imports:\n* `package:file/src/io.dart` that imports:\n* `dart:io`\n
\nSee https://dart.dev/web/wasm for details." }, { "id": "analysis", diff --git a/test/goldens/end2end/audio_service-0.18.10.json_report.md b/test/goldens/end2end/audio_service-0.18.10.json_report.md index b619491f6..19c745244 100644 --- a/test/goldens/end2end/audio_service-0.18.10.json_report.md +++ b/test/goldens/end2end/audio_service-0.18.10.json_report.md @@ -61,6 +61,26 @@ Because: * `package:path_provider/path_provider.dart` that declares support for platforms: `Android`, `iOS`, `Windows`, `Linux`, `macOS`. +### [x] 0/0 points: WASM compatibility + +
+ +Package not compatible with runtime wasm + + +Because: +* `package:audio_service/audio_service.dart` that imports: +* `package:flutter_cache_manager/flutter_cache_manager.dart` that imports: +* `package:flutter_cache_manager/src/web/web_helper.dart` that imports: +* `package:flutter_cache_manager/src/cache_store.dart` that imports: +* `package:flutter_cache_manager/src/storage/file_system/file_system.dart` that imports: +* `package:file/file.dart` that imports: +* `package:file/src/interface.dart` that imports: +* `package:file/src/io.dart` that imports: +* `dart:io` +
+See https://dart.dev/web/wasm for details. + ## 50/50 Pass static analysis ### [*] 50/50 points: code has no errors, warnings, lints, or formatting issues diff --git a/test/goldens/end2end/bulma_min-0.7.4.json b/test/goldens/end2end/bulma_min-0.7.4.json index 9bfcb5ed8..ecfdf3b0f 100644 --- a/test/goldens/end2end/bulma_min-0.7.4.json +++ b/test/goldens/end2end/bulma_min-0.7.4.json @@ -58,7 +58,7 @@ "grantedPoints": 0, "maxPoints": 20, "status": "failed", - "summary": "### [x] 0/20 points: Platform support detection failed\n\n
\n\nCould not determine supported platforms as package resolution failed.\n\n\nRun `dart pub get` for more information.\n
" + "summary": "### [x] 0/20 points: Platform support detection failed\n\n
\n\nCould not determine supported platforms as package resolution failed.\n\n\nRun `dart pub get` for more information.\n
\n\n### [x] 0/0 points: WASM compatibility\n\nUnable to detect compatibility with runtime `wasm`.\nSee https://dart.dev/web/wasm for details." }, { "id": "analysis", diff --git a/test/goldens/end2end/bulma_min-0.7.4.json_report.md b/test/goldens/end2end/bulma_min-0.7.4.json_report.md index cf881211d..d42277076 100644 --- a/test/goldens/end2end/bulma_min-0.7.4.json_report.md +++ b/test/goldens/end2end/bulma_min-0.7.4.json_report.md @@ -37,6 +37,11 @@ Could not determine supported platforms as package resolution failed. Run `dart pub get` for more information. +### [x] 0/0 points: WASM compatibility + +Unable to detect compatibility with runtime `wasm`. +See https://dart.dev/web/wasm for details. + ## 0/50 Pass static analysis ### [x] 0/50 points: code has no errors, warnings, lints, or formatting issues diff --git a/test/goldens/end2end/dnd-2.0.1.json b/test/goldens/end2end/dnd-2.0.1.json index 15bb8262c..644d22a6c 100644 --- a/test/goldens/end2end/dnd-2.0.1.json +++ b/test/goldens/end2end/dnd-2.0.1.json @@ -70,8 +70,8 @@ "title": "Platform support", "grantedPoints": 20, "maxPoints": 20, - "status": "passed", - "summary": "### [*] 20/20 points: Supports 1 of 6 possible platforms (iOS, Android, **Web**, Windows, macOS, Linux)\n\n* ✓ Web\n\nThese platforms are not supported:\n\n
\n\nPackage not compatible with platform Android\n\n\nBecause:\n* `package:dnd/dnd.dart` that imports:\n* `dart:js`\n
\n
\n\nPackage not compatible with platform iOS\n\n\nBecause:\n* `package:dnd/dnd.dart` that imports:\n* `dart:js`\n
\n
\n\nPackage not compatible with platform Windows\n\n\nBecause:\n* `package:dnd/dnd.dart` that imports:\n* `dart:js`\n
\n
\n\nPackage not compatible with platform Linux\n\n\nBecause:\n* `package:dnd/dnd.dart` that imports:\n* `dart:js`\n
\n
\n\nPackage not compatible with platform macOS\n\n\nBecause:\n* `package:dnd/dnd.dart` that imports:\n* `dart:js`\n
" + "status": "failed", + "summary": "### [*] 20/20 points: Supports 1 of 6 possible platforms (iOS, Android, **Web**, Windows, macOS, Linux)\n\n* ✓ Web\n\nThese platforms are not supported:\n\n
\n\nPackage not compatible with platform Android\n\n\nBecause:\n* `package:dnd/dnd.dart` that imports:\n* `dart:js`\n
\n
\n\nPackage not compatible with platform iOS\n\n\nBecause:\n* `package:dnd/dnd.dart` that imports:\n* `dart:js`\n
\n
\n\nPackage not compatible with platform Windows\n\n\nBecause:\n* `package:dnd/dnd.dart` that imports:\n* `dart:js`\n
\n
\n\nPackage not compatible with platform Linux\n\n\nBecause:\n* `package:dnd/dnd.dart` that imports:\n* `dart:js`\n
\n
\n\nPackage not compatible with platform macOS\n\n\nBecause:\n* `package:dnd/dnd.dart` that imports:\n* `dart:js`\n
\n\n### [x] 0/0 points: WASM compatibility\n\n
\n\nPackage not compatible with runtime wasm\n\n\nBecause:\n* `package:dnd/dnd.dart` that imports:\n* `dart:js`\n
\nSee https://dart.dev/web/wasm for details." }, { "id": "analysis", diff --git a/test/goldens/end2end/dnd-2.0.1.json_report.md b/test/goldens/end2end/dnd-2.0.1.json_report.md index cacdf80b7..bd078ee8f 100644 --- a/test/goldens/end2end/dnd-2.0.1.json_report.md +++ b/test/goldens/end2end/dnd-2.0.1.json_report.md @@ -78,6 +78,19 @@ Because: * `dart:js` +### [x] 0/0 points: WASM compatibility + +
+ +Package not compatible with runtime wasm + + +Because: +* `package:dnd/dnd.dart` that imports: +* `dart:js` +
+See https://dart.dev/web/wasm for details. + ## 30/50 Pass static analysis ### [x] 30/50 points: code has no errors, warnings, lints, or formatting issues diff --git a/test/goldens/end2end/gg-1.0.12.json b/test/goldens/end2end/gg-1.0.12.json index 7da117835..7b6d3ac83 100644 --- a/test/goldens/end2end/gg-1.0.12.json +++ b/test/goldens/end2end/gg-1.0.12.json @@ -146,8 +146,8 @@ "title": "Platform support", "grantedPoints": 20, "maxPoints": 20, - "status": "passed", - "summary": "### [*] 20/20 points: Supports 5 of 6 possible platforms (**iOS**, **Android**, Web, **Windows**, **macOS**, **Linux**)\n\n* ✓ Android\n* ✓ iOS\n* ✓ Windows\n* ✓ Linux\n* ✓ macOS\n\nThese platforms are not supported:\n\n
\n\nPackage not compatible with platform Web\n\n\nBecause:\n* `package:gg/gg.dart` that imports:\n* `package:gg/src/tools/checks.dart` that imports:\n* `package:gg_publish/gg_publish.dart` that imports:\n* `package:gg_publish/src/commands/publish.dart` that imports:\n* `package:gg_version/gg_version.dart` that imports:\n* `package:gg_version/src/commands/published_version.dart` that imports:\n* `package:gg_args/gg_args.dart` that imports:\n* `package:gg_args/src/missing_sub_commands.dart` that imports:\n* `dart:io`\n
" + "status": "failed", + "summary": "### [*] 20/20 points: Supports 5 of 6 possible platforms (**iOS**, **Android**, Web, **Windows**, **macOS**, **Linux**)\n\n* ✓ Android\n* ✓ iOS\n* ✓ Windows\n* ✓ Linux\n* ✓ macOS\n\nThese platforms are not supported:\n\n
\n\nPackage not compatible with platform Web\n\n\nBecause:\n* `package:gg/gg.dart` that imports:\n* `package:gg/src/tools/checks.dart` that imports:\n* `package:gg_publish/gg_publish.dart` that imports:\n* `package:gg_publish/src/commands/publish.dart` that imports:\n* `package:gg_version/gg_version.dart` that imports:\n* `package:gg_version/src/commands/published_version.dart` that imports:\n* `package:gg_args/gg_args.dart` that imports:\n* `package:gg_args/src/missing_sub_commands.dart` that imports:\n* `dart:io`\n
\n\n### [x] 0/0 points: WASM compatibility\n\n
\n\nPackage not compatible with runtime wasm\n\n\nBecause:\n* `package:gg/gg.dart` that imports:\n* `package:gg/src/tools/checks.dart` that imports:\n* `package:gg_publish/gg_publish.dart` that imports:\n* `package:gg_publish/src/commands/publish.dart` that imports:\n* `package:gg_version/gg_version.dart` that imports:\n* `package:gg_version/src/commands/published_version.dart` that imports:\n* `package:gg_args/gg_args.dart` that imports:\n* `package:gg_args/src/missing_sub_commands.dart` that imports:\n* `dart:io`\n
\nSee https://dart.dev/web/wasm for details." }, { "id": "analysis", diff --git a/test/goldens/end2end/gg-1.0.12.json_report.md b/test/goldens/end2end/gg-1.0.12.json_report.md index d22a3a4e0..b83798b7d 100644 --- a/test/goldens/end2end/gg-1.0.12.json_report.md +++ b/test/goldens/end2end/gg-1.0.12.json_report.md @@ -47,6 +47,26 @@ Because: * `dart:io` +### [x] 0/0 points: WASM compatibility + +
+ +Package not compatible with runtime wasm + + +Because: +* `package:gg/gg.dart` that imports: +* `package:gg/src/tools/checks.dart` that imports: +* `package:gg_publish/gg_publish.dart` that imports: +* `package:gg_publish/src/commands/publish.dart` that imports: +* `package:gg_version/gg_version.dart` that imports: +* `package:gg_version/src/commands/published_version.dart` that imports: +* `package:gg_args/gg_args.dart` that imports: +* `package:gg_args/src/missing_sub_commands.dart` that imports: +* `dart:io` +
+See https://dart.dev/web/wasm for details. + ## 50/50 Pass static analysis ### [*] 50/50 points: code has no errors, warnings, lints, or formatting issues diff --git a/test/goldens/end2end/http-0.13.0.json b/test/goldens/end2end/http-0.13.0.json index 01cdf3253..74861c543 100644 --- a/test/goldens/end2end/http-0.13.0.json +++ b/test/goldens/end2end/http-0.13.0.json @@ -92,7 +92,7 @@ "grantedPoints": 20, "maxPoints": 20, "status": "passed", - "summary": "### [*] 20/20 points: Supports 6 of 6 possible platforms (**iOS**, **Android**, **Web**, **Windows**, **macOS**, **Linux**)\n\n* ✓ Android\n* ✓ iOS\n* ✓ Windows\n* ✓ Linux\n* ✓ macOS\n* ✓ Web" + "summary": "### [*] 20/20 points: Supports 6 of 6 possible platforms (**iOS**, **Android**, **Web**, **Windows**, **macOS**, **Linux**)\n\n* ✓ Android\n* ✓ iOS\n* ✓ Windows\n* ✓ Linux\n* ✓ macOS\n* ✓ Web\n\n### [*] 0/0 points: WASM compatibility\n\nPackage is compatible with runtime `wasm`. See https://dart.dev/web/wasm for details." }, { "id": "analysis", diff --git a/test/goldens/end2end/http-0.13.0.json_report.md b/test/goldens/end2end/http-0.13.0.json_report.md index cf97c31ed..55fcc36f8 100644 --- a/test/goldens/end2end/http-0.13.0.json_report.md +++ b/test/goldens/end2end/http-0.13.0.json_report.md @@ -29,6 +29,10 @@ Detected license: `BSD-3-Clause`. * ✓ macOS * ✓ Web +### [*] 0/0 points: WASM compatibility + +Package is compatible with runtime `wasm`. See https://dart.dev/web/wasm for details. + ## 40/50 Pass static analysis ### [~] 40/50 points: code has no errors, warnings, lints, or formatting issues diff --git a/test/goldens/end2end/lints-1.0.0.json b/test/goldens/end2end/lints-1.0.0.json index 89aef3df9..0fb830a7e 100644 --- a/test/goldens/end2end/lints-1.0.0.json +++ b/test/goldens/end2end/lints-1.0.0.json @@ -69,7 +69,7 @@ "grantedPoints": 20, "maxPoints": 20, "status": "passed", - "summary": "### [*] 20/20 points: Supports 6 of 6 possible platforms (**iOS**, **Android**, **Web**, **Windows**, **macOS**, **Linux**)\n\n* ✓ Android\n* ✓ iOS\n* ✓ Windows\n* ✓ Linux\n* ✓ macOS\n* ✓ Web" + "summary": "### [*] 20/20 points: Supports 6 of 6 possible platforms (**iOS**, **Android**, **Web**, **Windows**, **macOS**, **Linux**)\n\n* ✓ Android\n* ✓ iOS\n* ✓ Windows\n* ✓ Linux\n* ✓ macOS\n* ✓ Web\n\n### [*] 0/0 points: WASM compatibility\n\nPackage is compatible with runtime `wasm`. See https://dart.dev/web/wasm for details." }, { "id": "analysis", diff --git a/test/goldens/end2end/lints-1.0.0.json_report.md b/test/goldens/end2end/lints-1.0.0.json_report.md index 16d30b5eb..e08ddd40d 100644 --- a/test/goldens/end2end/lints-1.0.0.json_report.md +++ b/test/goldens/end2end/lints-1.0.0.json_report.md @@ -38,6 +38,10 @@ See [package layout](https://dart.dev/tools/pub/package-layout#examples) guideli * ✓ macOS * ✓ Web +### [*] 0/0 points: WASM compatibility + +Package is compatible with runtime `wasm`. See https://dart.dev/web/wasm for details. + ## 50/50 Pass static analysis ### [*] 50/50 points: code has no errors, warnings, lints, or formatting issues diff --git a/test/goldens/end2end/mime_type-0.3.2.json b/test/goldens/end2end/mime_type-0.3.2.json index f7ded78e8..4854631e8 100644 --- a/test/goldens/end2end/mime_type-0.3.2.json +++ b/test/goldens/end2end/mime_type-0.3.2.json @@ -51,7 +51,7 @@ "grantedPoints": 0, "maxPoints": 20, "status": "failed", - "summary": "### [x] 0/20 points: Platform support detection failed\n\n
\n\nCould not determine supported platforms as package resolution failed.\n\n\nRun `dart pub get` for more information.\n
" + "summary": "### [x] 0/20 points: Platform support detection failed\n\n
\n\nCould not determine supported platforms as package resolution failed.\n\n\nRun `dart pub get` for more information.\n
\n\n### [x] 0/0 points: WASM compatibility\n\nUnable to detect compatibility with runtime `wasm`.\nSee https://dart.dev/web/wasm for details." }, { "id": "analysis", diff --git a/test/goldens/end2end/mime_type-0.3.2.json_report.md b/test/goldens/end2end/mime_type-0.3.2.json_report.md index 058d4b7d7..8a4d32c77 100644 --- a/test/goldens/end2end/mime_type-0.3.2.json_report.md +++ b/test/goldens/end2end/mime_type-0.3.2.json_report.md @@ -66,6 +66,11 @@ Could not determine supported platforms as package resolution failed. Run `dart pub get` for more information. +### [x] 0/0 points: WASM compatibility + +Unable to detect compatibility with runtime `wasm`. +See https://dart.dev/web/wasm for details. + ## 0/50 Pass static analysis ### [x] 0/50 points: code has no errors, warnings, lints, or formatting issues diff --git a/test/goldens/end2end/nsd_android-1.2.2.json b/test/goldens/end2end/nsd_android-1.2.2.json index 4fa661b16..dfbcf84b5 100644 --- a/test/goldens/end2end/nsd_android-1.2.2.json +++ b/test/goldens/end2end/nsd_android-1.2.2.json @@ -87,7 +87,7 @@ "grantedPoints": 20, "maxPoints": 20, "status": "passed", - "summary": "### [*] 20/20 points: Supports 1 of 6 possible platforms (iOS, **Android**, Web, Windows, macOS, Linux)\n\n* ✓ Android\n\nThese platforms are not supported:\n\n
\n\nPackage does not support platform `iOS`.\n\n\nBecause:\n* `nsd_android` that declares support for platforms: `Android`.\n
\n
\n\nPackage does not support platform `Windows`.\n\n\nBecause:\n* `nsd_android` that declares support for platforms: `Android`.\n
\n
\n\nPackage does not support platform `Linux`.\n\n\nBecause:\n* `nsd_android` that declares support for platforms: `Android`.\n
\n
\n\nPackage does not support platform `macOS`.\n\n\nBecause:\n* `nsd_android` that declares support for platforms: `Android`.\n
\n
\n\nPackage does not support platform `Web`.\n\n\nBecause:\n* `nsd_android` that declares support for platforms: `Android`.\n
" + "summary": "### [*] 20/20 points: Supports 1 of 6 possible platforms (iOS, **Android**, Web, Windows, macOS, Linux)\n\n* ✓ Android\n\nThese platforms are not supported:\n\n
\n\nPackage does not support platform `iOS`.\n\n\nBecause:\n* `nsd_android` that declares support for platforms: `Android`.\n
\n
\n\nPackage does not support platform `Windows`.\n\n\nBecause:\n* `nsd_android` that declares support for platforms: `Android`.\n
\n
\n\nPackage does not support platform `Linux`.\n\n\nBecause:\n* `nsd_android` that declares support for platforms: `Android`.\n
\n
\n\nPackage does not support platform `macOS`.\n\n\nBecause:\n* `nsd_android` that declares support for platforms: `Android`.\n
\n
\n\nPackage does not support platform `Web`.\n\n\nBecause:\n* `nsd_android` that declares support for platforms: `Android`.\n
\n\n### [*] 0/0 points: WASM compatibility\n\nPackage is compatible with runtime `wasm`. See https://dart.dev/web/wasm for details." }, { "id": "analysis", diff --git a/test/goldens/end2end/nsd_android-1.2.2.json_report.md b/test/goldens/end2end/nsd_android-1.2.2.json_report.md index fb4c81c13..9c72d7bc6 100644 --- a/test/goldens/end2end/nsd_android-1.2.2.json_report.md +++ b/test/goldens/end2end/nsd_android-1.2.2.json_report.md @@ -74,6 +74,10 @@ Because: * `nsd_android` that declares support for platforms: `Android`. +### [*] 0/0 points: WASM compatibility + +Package is compatible with runtime `wasm`. See https://dart.dev/web/wasm for details. + ## 50/50 Pass static analysis ### [*] 50/50 points: code has no errors, warnings, lints, or formatting issues diff --git a/test/goldens/end2end/onepub-1.1.0.json b/test/goldens/end2end/onepub-1.1.0.json index b706c74f1..a71436087 100644 --- a/test/goldens/end2end/onepub-1.1.0.json +++ b/test/goldens/end2end/onepub-1.1.0.json @@ -149,7 +149,7 @@ "grantedPoints": 20, "maxPoints": 20, "status": "passed", - "summary": "### [*] 20/20 points: Supports 3 of 6 possible platforms (iOS, Android, Web, **Windows**, **macOS**, **Linux**)\n\n* ✓ Linux\n* ✓ macOS\n* ✓ Windows\n\nThese platforms are not supported:\n\n
\n\nAndroid\n\n\nCannot assign Android automatically to a binary only package.\n
\n
\n\niOS\n\n\nCannot assign iOS automatically to a binary only package.\n
\n
\n\nWeb\n\n\nCannot assign Web automatically to a binary only package.\n
" + "summary": "### [*] 20/20 points: Supports 3 of 6 possible platforms (iOS, Android, Web, **Windows**, **macOS**, **Linux**)\n\n* ✓ Linux\n* ✓ macOS\n* ✓ Windows\n\nThese platforms are not supported:\n\n
\n\nAndroid\n\n\nCannot assign Android automatically to a binary only package.\n
\n
\n\niOS\n\n\nCannot assign iOS automatically to a binary only package.\n
\n
\n\nWeb\n\n\nCannot assign Web automatically to a binary only package.\n
\n\n### [*] 0/0 points: WASM compatibility\n\nPackage is compatible with runtime `wasm`. See https://dart.dev/web/wasm for details." }, { "id": "analysis", diff --git a/test/goldens/end2end/onepub-1.1.0.json_report.md b/test/goldens/end2end/onepub-1.1.0.json_report.md index f4d636adc..67c77b8c1 100644 --- a/test/goldens/end2end/onepub-1.1.0.json_report.md +++ b/test/goldens/end2end/onepub-1.1.0.json_report.md @@ -82,6 +82,10 @@ Web Cannot assign Web automatically to a binary only package. +### [*] 0/0 points: WASM compatibility + +Package is compatible with runtime `wasm`. See https://dart.dev/web/wasm for details. + ## 50/50 Pass static analysis ### [*] 50/50 points: code has no errors, warnings, lints, or formatting issues diff --git a/test/goldens/end2end/sdp_transform-0.2.0.json b/test/goldens/end2end/sdp_transform-0.2.0.json index 108559f96..34b229e51 100644 --- a/test/goldens/end2end/sdp_transform-0.2.0.json +++ b/test/goldens/end2end/sdp_transform-0.2.0.json @@ -66,8 +66,8 @@ "title": "Platform support", "grantedPoints": 20, "maxPoints": 20, - "status": "passed", - "summary": "### [*] 20/20 points: Supports 6 of 6 possible platforms (**iOS**, **Android**, **Web**, **Windows**, **macOS**, **Linux**)\n\n* ✓ Android\n* ✓ iOS\n* ✓ Windows\n* ✓ Linux\n* ✓ macOS\n* ✓ Web" + "status": "failed", + "summary": "### [*] 20/20 points: Supports 6 of 6 possible platforms (**iOS**, **Android**, **Web**, **Windows**, **macOS**, **Linux**)\n\n* ✓ Android\n* ✓ iOS\n* ✓ Windows\n* ✓ Linux\n* ✓ macOS\n* ✓ Web\n\n### [x] 0/0 points: WASM compatibility\n\nUnable to detect compatibility with runtime `wasm`.\nSee https://dart.dev/web/wasm for details." }, { "id": "analysis", diff --git a/test/goldens/end2end/sdp_transform-0.2.0.json_report.md b/test/goldens/end2end/sdp_transform-0.2.0.json_report.md index 6c2034257..af09edcac 100644 --- a/test/goldens/end2end/sdp_transform-0.2.0.json_report.md +++ b/test/goldens/end2end/sdp_transform-0.2.0.json_report.md @@ -43,6 +43,11 @@ See [package layout](https://dart.dev/tools/pub/package-layout#examples) guideli * ✓ macOS * ✓ Web +### [x] 0/0 points: WASM compatibility + +Unable to detect compatibility with runtime `wasm`. +See https://dart.dev/web/wasm for details. + ## 0/50 Pass static analysis ### [x] 0/50 points: code has no errors, warnings, lints, or formatting issues diff --git a/test/goldens/end2end/skiplist-0.1.0.json b/test/goldens/end2end/skiplist-0.1.0.json index 156fa4f0f..1188dea20 100644 --- a/test/goldens/end2end/skiplist-0.1.0.json +++ b/test/goldens/end2end/skiplist-0.1.0.json @@ -64,7 +64,7 @@ "grantedPoints": 0, "maxPoints": 20, "status": "failed", - "summary": "### [x] 0/20 points: Platform support detection failed\n\n
\n\nCould not determine supported platforms as package resolution failed.\n\n\nRun `dart pub get` for more information.\n
" + "summary": "### [x] 0/20 points: Platform support detection failed\n\n
\n\nCould not determine supported platforms as package resolution failed.\n\n\nRun `dart pub get` for more information.\n
\n\n### [x] 0/0 points: WASM compatibility\n\nUnable to detect compatibility with runtime `wasm`.\nSee https://dart.dev/web/wasm for details." }, { "id": "analysis", diff --git a/test/goldens/end2end/skiplist-0.1.0.json_report.md b/test/goldens/end2end/skiplist-0.1.0.json_report.md index 56ddef7dd..1cd2207c6 100644 --- a/test/goldens/end2end/skiplist-0.1.0.json_report.md +++ b/test/goldens/end2end/skiplist-0.1.0.json_report.md @@ -44,6 +44,11 @@ Could not determine supported platforms as package resolution failed. Run `dart pub get` for more information. +### [x] 0/0 points: WASM compatibility + +Unable to detect compatibility with runtime `wasm`. +See https://dart.dev/web/wasm for details. + ## 0/50 Pass static analysis ### [x] 0/50 points: code has no errors, warnings, lints, or formatting issues diff --git a/test/goldens/end2end/steward-0.3.1.json b/test/goldens/end2end/steward-0.3.1.json index c53bb282c..5b51fe9ca 100644 --- a/test/goldens/end2end/steward-0.3.1.json +++ b/test/goldens/end2end/steward-0.3.1.json @@ -95,8 +95,8 @@ "title": "Platform support", "grantedPoints": 20, "maxPoints": 20, - "status": "passed", - "summary": "### [*] 20/20 points: Supports 3 of 6 possible platforms (iOS, Android, Web, **Windows**, **macOS**, **Linux**)\n\n* ✓ Windows\n* ✓ Linux\n* ✓ macOS\n\nThese platforms are not supported:\n\n
\n\nPackage not compatible with platform Android\n\n\nBecause:\n* `package:steward/steward.dart` that imports:\n* `package:steward/app/app.dart` that imports:\n* `package:steward/router/router.dart` that imports:\n* `package:steward/controllers/route_utils.dart` that imports:\n* `dart:mirrors`\n
\n
\n\nPackage not compatible with platform iOS\n\n\nBecause:\n* `package:steward/steward.dart` that imports:\n* `package:steward/app/app.dart` that imports:\n* `package:steward/router/router.dart` that imports:\n* `package:steward/controllers/route_utils.dart` that imports:\n* `dart:mirrors`\n
\n
\n\nPackage not compatible with platform Web\n\n\nBecause:\n* `package:steward/steward.dart` that imports:\n* `package:steward/app/app.dart` that imports:\n* `package:steward/config/config_reader.dart` that imports:\n* `dart:io`\n
" + "status": "failed", + "summary": "### [*] 20/20 points: Supports 3 of 6 possible platforms (iOS, Android, Web, **Windows**, **macOS**, **Linux**)\n\n* ✓ Windows\n* ✓ Linux\n* ✓ macOS\n\nThese platforms are not supported:\n\n
\n\nPackage not compatible with platform Android\n\n\nBecause:\n* `package:steward/steward.dart` that imports:\n* `package:steward/app/app.dart` that imports:\n* `package:steward/router/router.dart` that imports:\n* `package:steward/controllers/route_utils.dart` that imports:\n* `dart:mirrors`\n
\n
\n\nPackage not compatible with platform iOS\n\n\nBecause:\n* `package:steward/steward.dart` that imports:\n* `package:steward/app/app.dart` that imports:\n* `package:steward/router/router.dart` that imports:\n* `package:steward/controllers/route_utils.dart` that imports:\n* `dart:mirrors`\n
\n
\n\nPackage not compatible with platform Web\n\n\nBecause:\n* `package:steward/steward.dart` that imports:\n* `package:steward/app/app.dart` that imports:\n* `package:steward/config/config_reader.dart` that imports:\n* `dart:io`\n
\n\n### [x] 0/0 points: WASM compatibility\n\n
\n\nPackage not compatible with runtime wasm\n\n\nBecause:\n* `package:steward/steward.dart` that imports:\n* `package:steward/app/app.dart` that imports:\n* `package:steward/config/config_reader.dart` that imports:\n* `dart:io`\n
\nSee https://dart.dev/web/wasm for details." }, { "id": "analysis", diff --git a/test/goldens/end2end/steward-0.3.1.json_report.md b/test/goldens/end2end/steward-0.3.1.json_report.md index d265af40a..9c55007dc 100644 --- a/test/goldens/end2end/steward-0.3.1.json_report.md +++ b/test/goldens/end2end/steward-0.3.1.json_report.md @@ -64,6 +64,21 @@ Because: * `dart:io` +### [x] 0/0 points: WASM compatibility + +
+ +Package not compatible with runtime wasm + + +Because: +* `package:steward/steward.dart` that imports: +* `package:steward/app/app.dart` that imports: +* `package:steward/config/config_reader.dart` that imports: +* `dart:io` +
+See https://dart.dev/web/wasm for details. + ## 40/50 Pass static analysis ### [~] 40/50 points: code has no errors, warnings, lints, or formatting issues diff --git a/test/goldens/end2end/url_launcher-6.1.12.json b/test/goldens/end2end/url_launcher-6.1.12.json index e91e28ee8..b3d0182d8 100644 --- a/test/goldens/end2end/url_launcher-6.1.12.json +++ b/test/goldens/end2end/url_launcher-6.1.12.json @@ -134,7 +134,7 @@ "grantedPoints": 20, "maxPoints": 20, "status": "passed", - "summary": "### [*] 20/20 points: Supports 6 of 6 possible platforms (**iOS**, **Android**, **Web**, **Windows**, **macOS**, **Linux**)\n\n* ✓ Android\n* ✓ iOS\n* ✓ Windows\n* ✓ Linux\n* ✓ macOS\n* ✓ Web" + "summary": "### [*] 20/20 points: Supports 6 of 6 possible platforms (**iOS**, **Android**, **Web**, **Windows**, **macOS**, **Linux**)\n\n* ✓ Android\n* ✓ iOS\n* ✓ Windows\n* ✓ Linux\n* ✓ macOS\n* ✓ Web\n\n### [*] 0/0 points: WASM compatibility\n\nPackage is compatible with runtime `wasm`. See https://dart.dev/web/wasm for details." }, { "id": "analysis", diff --git a/test/goldens/end2end/url_launcher-6.1.12.json_report.md b/test/goldens/end2end/url_launcher-6.1.12.json_report.md index c9b005ec5..37a190bdd 100644 --- a/test/goldens/end2end/url_launcher-6.1.12.json_report.md +++ b/test/goldens/end2end/url_launcher-6.1.12.json_report.md @@ -42,6 +42,10 @@ Some symbols that are missing documentation: `link`, `url_launcher`, `url_launch * ✓ macOS * ✓ Web +### [*] 0/0 points: WASM compatibility + +Package is compatible with runtime `wasm`. See https://dart.dev/web/wasm for details. + ## 50/50 Pass static analysis ### [*] 50/50 points: code has no errors, warnings, lints, or formatting issues diff --git a/test/goldens/end2end/webdriver-3.0.0.json b/test/goldens/end2end/webdriver-3.0.0.json index 1587290dc..cfa72ee67 100644 --- a/test/goldens/end2end/webdriver-3.0.0.json +++ b/test/goldens/end2end/webdriver-3.0.0.json @@ -90,7 +90,7 @@ "grantedPoints": 0, "maxPoints": 20, "status": "failed", - "summary": "### [x] 0/20 points: Supports 0 of 6 possible platforms (iOS, Android, Web, Windows, macOS, Linux)\n\n\nThese platforms are not supported:\n\n
\n\nPackage not compatible with platform Android\n\n\nBecause:\n* `package:webdriver/async_html.dart` that imports:\n* `package:webdriver/src/request/async_xhr_request_client.dart` that imports:\n* `dart:html`\n
\n
\n\nPackage not compatible with platform iOS\n\n\nBecause:\n* `package:webdriver/async_html.dart` that imports:\n* `package:webdriver/src/request/async_xhr_request_client.dart` that imports:\n* `dart:html`\n
\n
\n\nPackage not compatible with platform Windows\n\n\nBecause:\n* `package:webdriver/async_html.dart` that imports:\n* `package:webdriver/src/request/async_xhr_request_client.dart` that imports:\n* `dart:html`\n
\n
\n\nPackage not compatible with platform Linux\n\n\nBecause:\n* `package:webdriver/async_html.dart` that imports:\n* `package:webdriver/src/request/async_xhr_request_client.dart` that imports:\n* `dart:html`\n
\n
\n\nPackage not compatible with platform macOS\n\n\nBecause:\n* `package:webdriver/async_html.dart` that imports:\n* `package:webdriver/src/request/async_xhr_request_client.dart` that imports:\n* `dart:html`\n
\n
\n\nPackage not compatible with platform Web\n\n\nBecause:\n* `package:webdriver/async_io.dart` that imports:\n* `package:webdriver/src/request/async_io_request_client.dart` that imports:\n* `dart:io`\n
" + "summary": "### [x] 0/20 points: Supports 0 of 6 possible platforms (iOS, Android, Web, Windows, macOS, Linux)\n\n\nThese platforms are not supported:\n\n
\n\nPackage not compatible with platform Android\n\n\nBecause:\n* `package:webdriver/async_html.dart` that imports:\n* `package:webdriver/src/request/async_xhr_request_client.dart` that imports:\n* `dart:html`\n
\n
\n\nPackage not compatible with platform iOS\n\n\nBecause:\n* `package:webdriver/async_html.dart` that imports:\n* `package:webdriver/src/request/async_xhr_request_client.dart` that imports:\n* `dart:html`\n
\n
\n\nPackage not compatible with platform Windows\n\n\nBecause:\n* `package:webdriver/async_html.dart` that imports:\n* `package:webdriver/src/request/async_xhr_request_client.dart` that imports:\n* `dart:html`\n
\n
\n\nPackage not compatible with platform Linux\n\n\nBecause:\n* `package:webdriver/async_html.dart` that imports:\n* `package:webdriver/src/request/async_xhr_request_client.dart` that imports:\n* `dart:html`\n
\n
\n\nPackage not compatible with platform macOS\n\n\nBecause:\n* `package:webdriver/async_html.dart` that imports:\n* `package:webdriver/src/request/async_xhr_request_client.dart` that imports:\n* `dart:html`\n
\n
\n\nPackage not compatible with platform Web\n\n\nBecause:\n* `package:webdriver/async_io.dart` that imports:\n* `package:webdriver/src/request/async_io_request_client.dart` that imports:\n* `dart:io`\n
\n\n### [x] 0/0 points: WASM compatibility\n\n
\n\nPackage not compatible with runtime wasm\n\n\nBecause:\n* `package:webdriver/async_html.dart` that imports:\n* `package:webdriver/src/request/async_xhr_request_client.dart` that imports:\n* `dart:html`\n
\nSee https://dart.dev/web/wasm for details." }, { "id": "analysis", diff --git a/test/goldens/end2end/webdriver-3.0.0.json_report.md b/test/goldens/end2end/webdriver-3.0.0.json_report.md index dfed7d45b..623a07775 100644 --- a/test/goldens/end2end/webdriver-3.0.0.json_report.md +++ b/test/goldens/end2end/webdriver-3.0.0.json_report.md @@ -93,6 +93,20 @@ Because: * `dart:io` +### [x] 0/0 points: WASM compatibility + +
+ +Package not compatible with runtime wasm + + +Because: +* `package:webdriver/async_html.dart` that imports: +* `package:webdriver/src/request/async_xhr_request_client.dart` that imports: +* `dart:html` +
+See https://dart.dev/web/wasm for details. + ## 30/50 Pass static analysis ### [x] 30/50 points: code has no errors, warnings, lints, or formatting issues