Historical bug tracker for the Pacman package manager.
The pacman bug tracker has moved to gitlab:
https://gitlab.archlinux.org/pacman/pacman/-/issues
This tracker remains open for interaction with historical bugs during the transition period. Any new bugs reports will be closed without further action.
The pacman bug tracker has moved to gitlab:
https://gitlab.archlinux.org/pacman/pacman/-/issues
This tracker remains open for interaction with historical bugs during the transition period. Any new bugs reports will be closed without further action.
FS#64641 - [pacman] makepkg: Version restrictions not properly evaluated
Attached to Project:
Pacman
Opened by Matthias Lisin (matthias.lisin) - Monday, 25 November 2019, 12:14 GMT
Last edited by Allan McRae (Allan) - Monday, 25 November 2019, 12:55 GMT
Opened by Matthias Lisin (matthias.lisin) - Monday, 25 November 2019, 12:14 GMT
Last edited by Allan McRae (Allan) - Monday, 25 November 2019, 12:55 GMT
|
DetailsDescription:
You can see the problem here: https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=rocketchat-desktop When restricting a version of a (make) dependency and the first version requirement is evaluated with multiple matches (e.g. `nodejs<13` yields `nodejs-lts-carbon`, `nodejs-lts-dubnium` and `nodejs-lts-erbium`) makepkg suggests all three providers and defaults to the one with the lowest version, in this case `nodejs-lts-carbon` with the version 8.x.x. ``` ==> Installing missing dependencies... :: There are 3 providers available for nodejs<13: :: Repository community 1) nodejs-lts-carbon 2) nodejs-lts-dubnium 3) nodejs-lts-erbium Enter a number (default=1): ``` After installing one of the nodejs providers, the next version restriction is evaluated: `nodejs>=12`. Now, if you chose either carbon (8) or dubnium (10), the build fails with the message: ``` ==> Missing dependencies: -> nodejs>=12 ==> ERROR: Could not resolve all dependencies. ``` make dependencies seem to be enforced for each element in the array not accounting the other version restrictions on the same package. Also the order seems to be sorted? `nodejs<13` is always evaluated before `nodejs>=12`. A quick solution for my case would be to put `nodejs-lts-erbium` in makedepends since I want version 12 and nothing else. But then this would still be a problem if the version restrictions were `nodejs>=10` and `nodejs<13`. I couldn't find any related tasks after a quick search, please excuse me if I missed something. Would appreciate links to existing discussions around this issue. Additional info: * core/pacman 5.2.1-1 Steps to reproduce: 1. Install nodejs (13) 2. Get rocketchat-desktop from AUR 3. Run makepkg -s |
This task depends upon
Closed by Allan McRae (Allan)
Monday, 25 November 2019, 12:55 GMT
Reason for closing: Duplicate
Additional comments about closing: FS#63086
Monday, 25 November 2019, 12:55 GMT
Reason for closing: Duplicate
Additional comments about closing: FS#63086