invertase / melos

🌋 A tool for managing Dart projects with multiple packages. With IntelliJ and Vscode IDE support. Supports automated versioning, changelogs & publishing via Conventional Commits.
https://melos.invertase.dev/~melos-latest
Apache License 2.0
1.11k stars 198 forks source link

fix: Print file path when PubSpec.load(pubspecFile.parent) crash. #740

Closed JDongKhan closed 1 month ago

JDongKhan commented 1 month ago

Is there an existing issue for this?

Version

6.1.0

Description

type 'Null' is not a subtype of type 'String'
#0      new ExternalHostedReference.fromJson (package:pubspec/src/dependency.dart:138:41)
#1      new DependencyReference.fromJson (package:pubspec/src/dependency.dart:25:42)
#2      new PubSpec.fromJson.<anonymous closure> (package:pubspec/src/pubspec.dart:107:68)
#3      JsonParser.mapValues.<anonymous closure> (package:pubspec/src/json_utils.dart:113:45)
#4      MapBase.forEach (dart:collection/maps.dart:35:13)
#5      JsonParser.mapValues (package:pubspec/src/json_utils.dart:112:7)
#6      new PubSpec.fromJson (package:pubspec/src/pubspec.dart:107:15)
#7      PubSpec.loadFile (package:pubspec/src/pubspec.dart:128:15)
<asynchronous suspension>
#8      PackageMap.resolvePackages.<anonymous closure> (package:melos/src/package.dart:537:25)
<asynchronous suspension>
#9      Future.wait.<anonymous closure> (dart:async/future.dart:518:21)
<asynchronous suspension>
#10     PackageMap.resolvePackages (package:melos/src/package.dart:534:5)
<asynchronous suspension>
#11     MelosWorkspace.fromConfig (package:melos/src/workspace.dart:48:25)
<asynchronous suspension>
#12     _Melos.createWorkspace (package:melos/src/commands/runner.dart:113:13)
<asynchronous suspension>
#13     _BootstrapMixin.bootstrap (package:melos/src/commands/bootstrap.dart:12:9)
<asynchronous suspension>
#14     CommandRunner.runCommand (package:args/command_runner.dart:212:13)
<asynchronous suspension>
#15     MelosCommandRunner.runCommand (package:melos/src/command_runner.dart:77:5)
<asynchronous suspension>
#16     melosEntryPoint (package:melos/src/command_runner.dart:130:5)
<asynchronous suspension>

Steps to reproduce

1、pubspec.yaml add

  networking_permissions:
    hosted:
      url: https://pub.flutter-io.cn
      version: ^1.0.0

Expected behavior

Print the path of error file.

Screenshots

No response

Additional context and comments

No response

spydon commented 1 month ago

This information needs to come from the pubspec package, not from Melos, so you can open an issue there (at some point we'll probably move to pubspec_manager) though.