FS#12536 - pacman should report package versions when conflicts are detected
Attached to Project:
Pacman
Opened by shapeshifter (shapeshifter) - Monday, 22 December 2008, 14:16 GMT
Last edited by Allan McRae (Allan) - Tuesday, 29 December 2020, 13:24 GMT
Opened by shapeshifter (shapeshifter) - Monday, 22 December 2008, 14:16 GMT
Last edited by Allan McRae (Allan) - Tuesday, 29 December 2020, 13:24 GMT
|
Details
Description:
When a repository package conflicts with a local one, it would be very helpful if pacman would report both the versions instead of just reporting the conflict. For example I have libdrm-git installed and today another package requested libdrm to be installed from the repository upon -Syu (Which is a bit odd just like that anyways as libdrm-git is supposed to provide libdrm) [root@Tachychineta | 14:25:48] # pacman -Syu :: Synchronising package databases... (...) :: Starting full system upgrade... resolving dependencies... looking for inter-conflicts... :: libdrm conflicts with libdrm-git. Remove libdrm-git? [Y/n] n error: unresolvable package conflicts detected error: failed to prepare transaction (conflicting dependencies) :: libdrm: conflicts with libdrm-git [root@Tachychineta | 14:25:56] # Problems with this output: 1.) I don't get to know WHY libdrm should be installed (pacman should report why it's a dependency all of a sudden) 2.) I don't get to know which VERSION of libdrm will be installed in contrary to which version my local package is providing (of course I can pacman -Ss libdrm to find this one out) In my case, "something" needs libdrm to be installed for some unknown reason (as my libdrm-git package provides libdrm libdrm-git libdrm>=2.3.0 libdrm>=2.3.1 libdrm>=2.3 while the libdrm package is 2.3.1-2 and my git package would be perfectly fine.) Knowing which version of the original libdrm pacman wants and to install and which local package is already providing a (maybe) lower version would speed up the problem solving process. |
This task depends upon
"my libdrm-git package provides libdrm libdrm-git libdrm>=2.3.0 libdrm>=2.3.1 libdrm>=2.3 ..."
libdrm>=2.3.0 etc. provisions are NOT allowed, only explicit version specifications (e.g. libdrm=2.3.0).
In any case, I still think it would be nice if pacman would report the version of the conflicting packages.
FS#12540?However, this needs more careful programming (to be sure that those pointers don't become invalid), so I am a bit unsure. (Alternatively, we can also push version info into pmconflict_t as strings as well)
Attaching here as well for convenience.