Skip to content
This repository was archived by the owner on Feb 22, 2018. It is now read-only.

Tighter version constraints on exported packages #1613

Closed
nex3 opened this issue Dec 9, 2014 · 3 comments
Closed

Tighter version constraints on exported packages #1613

nex3 opened this issue Dec 9, 2014 · 3 comments

Comments

@nex3
Copy link

nex3 commented Dec 9, 2014

Per the new exported dependency guidelines, the dependency constraints for di should be narrowed to >=3.3.2 <3.3.3 and route_hierarchical to >=0.6.1 <0.6.2.

@naomiblack naomiblack modified the milestone: 1.1 Dec 9, 2014
@naomiblack
Copy link
Contributor

This seems nice to have, but we also need to add some automation to the CI tests to check against new versions.

@rkirov
Copy link
Contributor

rkirov commented Dec 19, 2014

Closing this issue, because Chirayu and I had a chat about this issue and we are not 100% convinced in the need of tight constraints on exported packages. If a client wants to enforce a specific version of 'di' to be used they can add their own constraint on di.

@rkirov rkirov removed the triage label Dec 19, 2014
@nex3
Copy link
Author

nex3 commented Dec 20, 2014

I urge you to reconsider. By exporting a package, you're exposing that package's API as your own. To follow semantic versioning, you must have changes in your API—which now include changes in di's and route_hierarchical's APIs as well—reflected in your version number, and you can't do so without tightening your constraints.

Users expect these constraints. In practice they don't constrain the versions of exported dependencies, which means that as soon as they use an API from those dependencies they're at risk for breakage. For example, of the fifteen packages I surveyed on pub.dartlang.org that use angular, only one of them also has a constraint on di, and none have a constraint on route_hierarchical.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Development

No branches or pull requests

4 participants