Pacman

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.
Tasklist

FS#19153 - [pacman] misinterpreted version string

Attached to Project: Pacman
Opened by Arthur S. (Mvxa) - Sunday, 18 April 2010, 14:27 GMT
Last edited by Dan McGee (toofishes) - Monday, 03 May 2010, 00:18 GMT
Task Type Bug Report
Category Upstream Bugs
Status Closed
Assigned To No-one
Architecture i686
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 2
Private No

Details

Description:
Pacman misinterprets the version string 1.003-4 as being higher then 1.2-1 (spotted on the ttf-isabella package upgrade)

:: Starting full system upgrade...
warning: ttf-isabella: local (1.003-4) is newer than extra (1.2-1)

Additional info:
pacman-3.3.3-5-i686
This task depends upon

Closed by  Dan McGee (toofishes)
Monday, 03 May 2010, 00:18 GMT
Reason for closing:  Won't fix
Comment by xduugu (xduugu) - Sunday, 18 April 2010, 19:02 GMT
Apparently it strips the zeros so that 1.003 becomes to 1.3.

$ vercmp
usage: vercmp <ver1> <ver2>

return values:
< 0 : if ver1 < ver2
0 : if ver1 == ver2
> 0 : if ver1 > ver2
$ vercmp 1.003-4 1.3-4
0
Comment by Allan McRae (Allan) - Monday, 19 April 2010, 02:05 GMT
  • Field changed: Attached to Project (Community Packages → Pacman)
Moving to pacman section
Comment by Nagy Gabor (combo) - Wednesday, 28 April 2010, 15:55 GMT
Wow, this looks strange. :-)

Basically pacman interprets versions as follows:
The "31" block of 2.6.31 means 31, not 31/100, so 2.6.31 > 2.6.8 (see kernel26, for example).

In our case we have a 003 block, which is interpreted as 3 (and not 3/1000). We have an explicit comment for this case in our code (/* throw away any leading zeros - it's a number, right? */), so this is in intentional.

I am not sure what to do here...
Comment by Allan McRae (Allan) - Thursday, 29 April 2010, 22:44 GMT
I think the current code is fine. The 1.003 < 1.2 issue is because 1.2 is really 1.200 or 1.003 is 1.0.0.3, upstream just do not know it! So either those versions should be used or the force flag. Anyway, it is obviously quite a rare case.

Of course there is always the whole epoch idea.

Loading...