-
nweiz@google.com authored
We were validating that the dependencies and dev_dependencies had no overlap whenever we accessed [Pubspec.dependencies], but this meant that we had to parse the dev_dependencies even if they were going unused. If that parse failed, it could stop an entire "pub get" from working. Now we only do this validation when [Pubspec.devDependencies] is accessed. This also fixes a bug in where, if a pubspec from outside the filesystem (e.g. a hosted dependency) has a relative path dependency, [PathSource.parseDescription] would crash. Although this shouldn't happen since we don't parse the dev dependencies anymore, [PathSource] will now handle it more gracefully if it does. Finally, this also works around an async_await bug that was causing stack traces to be truncated. R=rnystrom@google.com BUG=22194 Review URL: https://codereview.chromium.org//887483002 git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge@43267 260f80e4-7a28-3924-810f-c04153c831b5
6452ed68
pubspec_test.dart 15.72 KiB