Description
It is currently possible to publish packages to pub.dartlang.org
which have
dependencies that are fetched from git
or a third party hosted pub repository.
Rationale: This is undesirable as the contents of these dependencies can change, moreover, they might be unavailable at some point in the future. This could happen as a
result of someone deleting or changing their github repo- or username.
Impact: As of April 8th there was around 52 packages whose latest version
had a dependency on a git repository or third-party package repository. About
half of these were last published more than a year ago (before Dart 2.0).
Currently, published packages will remain, we merely forbid publishing of
new packages with git or third party pub repository dependencies. We may
remove these at a later date.
Mitigation: Git dependencies have largely been used to fork an existing
package, and then depend on the git repository until upstream merges the patch.
Going forward we recommend that forked packages be published under a new name
(for example, <github username>_<packageName>
).