downstream package constraints do not cause version conflict
If a downstream package specifies a maximum version while elm-package.json specifies a version above that, the maximum downstream version will be selected rather than the explicitly set one.
The SSCCE below shows this with the interaction between elm-css and datetimepicker. This version of datetimepicker has a range for elm-css including < 9.0.0.
This doesn't seem to have been reported in this repo. If this is the wrong place for it, I can move the issue somewhere more relevant. :)
To Reproduce
{
"version": "1.0.0",
"summary": "helpful summary of your project, less than 80 characters",
"repository": "https://github.com/user/project.git",
"license": "BSD3",
"source-directories": [
"."
],
"exposed-modules": [],
"dependencies": {
"abadi199/datetimepicker": "5.0.0 <= v <= 5.0.0",
"elm-lang/core": "5.1.1 <= v < 6.0.0",
"rtfeldman/elm-css": "9.1.0 <= v <= 9.1.0"
},
"elm-version": "0.18.0 <= v < 0.19.0"
}
- put the
elm-package.jsonabove in a directory - run
elm package install --yes - check
elm-stuff/exact-dependencies.json
expected: elm-css to be at version 9.1.0
actual: elm-css at version 8.2.0
Thanks for the issue! Make sure it satisfies this checklist. My human colleagues will appreciate it!
Here is what to expect next, and if anyone wants to comment, keep these things in mind.
Do you see the same behavior if you change
"rtfeldman/elm-css": "9.1.0 <= v <= 9.1.0"
to
"rtfeldman/elm-css": "9.1.0 <= v < 9.2.0"
(or to < 10.0.0)
?
Both < 9.2.0 and < 10.0.0 give the same behavior.
Edit: … which is to install 8.2.0
also experiencing this issue due to downstream package dependency in
Install: abadi199/elm-input-extra 5.2.0 Upgrade: elm-community/list-extra (6.1.0 => 4.0.0)
It forces me down the 4.0.0 instead of allowing me to keep my installed 6.1.0