Bug#966409: libjpeg-turbo: versions in debian/*.symbols files are missing the epochs

2020-07-31 Thread Paul Wise
Control: clone -1 -2
Control: reassign -2 lintian
Control: severity -2 wishlist
Control: retitle -2 lintian: detect mismatches between symbols files and 
changelog versions

On Tue, 28 Jul 2020 15:04:08 +0800 Paul Wise wrote:

> The versions in the debian/*.symbols files are missing the epochs. This
> means that packages using symbols newer than buster will not upgrade
> libjpeg62-turbo and libturbojpeg0 when being upgraded to bullseye.

It would be great if lintian could detect when a version number in the
symbols files does not match one of the upstream or Debian versions in
the Debian changelog files. Versions older than the oldest version in
the Debian changelog file can be ignored of course.

I'd suggest structuring this as two complaints with two severities:

 * At error level, probably ftp-master rejected, for when a symbols
   version is just missing the epoch. So a check that any of the
   versions in the Debian changelog file would match the symbol
   versions if the epoch were present in the symbols version.
 * At warning or info level, for when symbols version just doesn't
   match any of the versions in the Debian changelog file.

Both of these need to take into account that the versions in the
symbols file might be missing the Debian revision or they might have a
tilde appended to the Debian revision in order to allow backports.

-- 
bye,
pabs

https://wiki.debian.org/PaulWise


signature.asc
Description: This is a digitally signed message part


Bug#966409: libjpeg-turbo: versions in debian/*.symbols files are missing the epochs

2020-07-31 Thread Paul Wise
On Tue, 28 Jul 2020 11:55:02 + Mike Gabriel wrote:

> Please NMU (ideally with commits to the packaging Git).
> Also coordinate with Adrian Bunk.

FTR I won't be uploading but Adrian will be.

-- 
bye,
pabs

https://wiki.debian.org/PaulWise


signature.asc
Description: This is a digitally signed message part


Bug#966409: libjpeg-turbo: versions in debian/*.symbols files are missing the epochs

2020-07-28 Thread Mike Gabriel

Hi Pabs,

On  Di 28 Jul 2020 09:04:08 CEST, Paul Wise wrote:


Source: libjpeg-turbo
Version: 1:2.0.5-1
Severity: serious

The versions in the debian/*.symbols files are missing the epochs. This
means that packages using symbols newer than buster will not upgrade
libjpeg62-turbo and libturbojpeg0 when being upgraded to bullseye.

For example if I install bullseye libjpeg-turbo-progs on buster, the
programs will not work as libjpeg62-turbo and libturbojpeg0 will not be
upgraded so the new symbols like jpeg_write_icc_profile are missing.

$ rmadison -u debian libjpeg-turbo
libjpeg-turbo | 1:1.3.1-12| oldoldstable   | source
libjpeg-turbo | 1:1.5.1-2 | oldstable  | source
libjpeg-turbo | 1:1.5.2-2 | stable | source
libjpeg-turbo | 1:1.5.2-2 | testing| source
libjpeg-turbo | 1:1.5.2-2 | unstable   | source
libjpeg-turbo | 1:1.5.2-2 | unstable-debug | source
libjpeg-turbo | 1:2.0.5-1 | unstable   | source
libjpeg-turbo | 1:2.0.5-1 | unstable-debug | source

$ grep -v 1.3.1 debian/*.symbols | grep -v 1.2.90 | grep -v 1.4.0 |  
grep -v 1.5.0

debian/libjpeg62-turbo.symbols:libjpeg.so.62 libjpeg62-turbo #MINVER#
debian/libjpeg62-turbo.symbols:* Build-Depends-Package: libjpeg62-turbo-dev
debian/libjpeg62-turbo.symbols: jpeg_read_icc_profile@LIBJPEG_6.2 2.0.2
debian/libjpeg62-turbo.symbols: jpeg_write_icc_profile@LIBJPEG_6.2 2.0.2
debian/libturbojpeg0.symbols:libturbojpeg.so.0 libturbojpeg0 #MINVER#
debian/libturbojpeg0.symbols:* Build-Depends-Package: libturbojpeg0-dev
debian/libturbojpeg0.symbols: TURBOJPEG_2.0@TURBOJPEG_2.0 2.0.2
debian/libturbojpeg0.symbols: tjGetErrorCode@TURBOJPEG_2.0 2.0.2
debian/libturbojpeg0.symbols: tjGetErrorStr2@TURBOJPEG_2.0 2.0.2
debian/libturbojpeg0.symbols: tjLoadImage@TURBOJPEG_2.0 2.0.2
debian/libturbojpeg0.symbols: tjSaveImage@TURBOJPEG_2.0 2.0.2

# cat /etc/apt/sources.list
deb https://deb.debian.org/debian buster main

# apt -qq install libjpeg-turbo-progs
The following additional packages will be installed:
  libjpeg62-turbo libturbojpeg0
The following NEW packages will be installed:
  libjpeg-turbo-progs libjpeg62-turbo libturbojpeg0
0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
Need to get 266 kB/399 kB of archives.
After this operation, 1275 kB of additional disk space will be used.
Do you want to continue? [Y/n]
debconf: delaying package configuration, since apt-utils is not installed
Selecting previously unselected package libjpeg62-turbo:amd64.
(Reading database ... 12518 files and directories currently installed.)
Preparing to unpack .../libjpeg62-turbo_1%3a1.5.2-2+b1_amd64.deb ...
Unpacking libjpeg62-turbo:amd64 (1:1.5.2-2+b1) ...
Selecting previously unselected package libturbojpeg0:amd64.
Preparing to unpack .../libturbojpeg0_1%3a1.5.2-2+b1_amd64.deb ...
Unpacking libturbojpeg0:amd64 (1:1.5.2-2+b1) ...
Selecting previously unselected package libjpeg-turbo-progs.
Preparing to unpack .../libjpeg-turbo-progs_1%3a1.5.2-2+b1_amd64.deb ...
Unpacking libjpeg-turbo-progs (1:1.5.2-2+b1) ...
Setting up libturbojpeg0:amd64 (1:1.5.2-2+b1) ...
Setting up libjpeg62-turbo:amd64 (1:1.5.2-2+b1) ...
Setting up libjpeg-turbo-progs (1:1.5.2-2+b1) ...
Processing triggers for libc-bin (2.28-10) ...

# cat /etc/apt/sources.list | grep buster | sed s/buster/sid/ >>  
/etc/apt/sources.list


# cat /etc/apt/sources.list
deb https://deb.debian.org/debian buster main
deb https://deb.debian.org/debian sid main

# apt update
Hit:1 https://deb.debian.org/debian buster InRelease
Get:2 https://deb.debian.org/debian sid InRelease [146 kB]
Get:3 https://deb.debian.org/debian sid/main amd64 Packages [8345 kB]
Fetched 8491 kB in 6s (1365 kB/s)
Reading package lists... Done
Building dependency tree
Reading state information... Done
126 packages can be upgraded. Run 'apt list --upgradable' to see them.

# apt policy libjpeg-turbo-progs
libjpeg-turbo-progs:
  Installed: 1:1.5.2-2+b1
  Candidate: 1:2.0.5-1
  Version table:
 1:2.0.5-1 500
500 https://deb.debian.org/debian sid/main amd64 Packages
 *** 1:1.5.2-2+b1 500
500 https://deb.debian.org/debian buster/main amd64 Packages
100 /var/lib/dpkg/status

# apt install libjpeg-turbo-progs=1:2.0.5-1
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages will be upgraded:
  libjpeg-turbo-progs
1 upgraded, 0 newly installed, 0 to remove and 125 not upgraded.
Need to get 131 kB of archives.
After this operation, 51.2 kB of additional disk space will be used.
Get:1 https://deb.debian.org/debian sid/main amd64  
libjpeg-turbo-progs amd64 1:2.0.5-1 [131 kB]

Fetched 131 kB in 1s (227 kB/s)
debconf: delaying package configuration, since apt-utils is not installed
(Reading database ... 12558 files and directories currently installed.)
Preparing to unpack .../libjpeg-turbo-progs_1%3a2.0.5-1_amd64.deb ...
Unpacking libjpeg-turbo-progs (1:2.0.5-1) over (1:1.5.2-2+b1) ...
Setting up libjpeg-turbo-progs (1:2.0.5-1) 

Bug#966409: libjpeg-turbo: versions in debian/*.symbols files are missing the epochs

2020-07-28 Thread Paul Wise
Source: libjpeg-turbo
Version: 1:2.0.5-1
Severity: serious

The versions in the debian/*.symbols files are missing the epochs. This
means that packages using symbols newer than buster will not upgrade
libjpeg62-turbo and libturbojpeg0 when being upgraded to bullseye.

For example if I install bullseye libjpeg-turbo-progs on buster, the
programs will not work as libjpeg62-turbo and libturbojpeg0 will not be
upgraded so the new symbols like jpeg_write_icc_profile are missing.

$ rmadison -u debian libjpeg-turbo
libjpeg-turbo | 1:1.3.1-12| oldoldstable   | source
libjpeg-turbo | 1:1.5.1-2 | oldstable  | source
libjpeg-turbo | 1:1.5.2-2 | stable | source
libjpeg-turbo | 1:1.5.2-2 | testing| source
libjpeg-turbo | 1:1.5.2-2 | unstable   | source
libjpeg-turbo | 1:1.5.2-2 | unstable-debug | source
libjpeg-turbo | 1:2.0.5-1 | unstable   | source
libjpeg-turbo | 1:2.0.5-1 | unstable-debug | source

$ grep -v 1.3.1 debian/*.symbols | grep -v 1.2.90 | grep -v 1.4.0 | grep -v 
1.5.0
debian/libjpeg62-turbo.symbols:libjpeg.so.62 libjpeg62-turbo #MINVER#
debian/libjpeg62-turbo.symbols:* Build-Depends-Package: libjpeg62-turbo-dev
debian/libjpeg62-turbo.symbols: jpeg_read_icc_profile@LIBJPEG_6.2 2.0.2
debian/libjpeg62-turbo.symbols: jpeg_write_icc_profile@LIBJPEG_6.2 2.0.2
debian/libturbojpeg0.symbols:libturbojpeg.so.0 libturbojpeg0 #MINVER#
debian/libturbojpeg0.symbols:* Build-Depends-Package: libturbojpeg0-dev
debian/libturbojpeg0.symbols: TURBOJPEG_2.0@TURBOJPEG_2.0 2.0.2
debian/libturbojpeg0.symbols: tjGetErrorCode@TURBOJPEG_2.0 2.0.2
debian/libturbojpeg0.symbols: tjGetErrorStr2@TURBOJPEG_2.0 2.0.2
debian/libturbojpeg0.symbols: tjLoadImage@TURBOJPEG_2.0 2.0.2
debian/libturbojpeg0.symbols: tjSaveImage@TURBOJPEG_2.0 2.0.2

# cat /etc/apt/sources.list   
deb https://deb.debian.org/debian buster main

# apt -qq install libjpeg-turbo-progs
The following additional packages will be installed:
  libjpeg62-turbo libturbojpeg0
The following NEW packages will be installed:
  libjpeg-turbo-progs libjpeg62-turbo libturbojpeg0
0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
Need to get 266 kB/399 kB of archives.
After this operation, 1275 kB of additional disk space will be used.
Do you want to continue? [Y/n] 
debconf: delaying package configuration, since apt-utils is not installed
Selecting previously unselected package libjpeg62-turbo:amd64.
(Reading database ... 12518 files and directories currently installed.)
Preparing to unpack .../libjpeg62-turbo_1%3a1.5.2-2+b1_amd64.deb ...
Unpacking libjpeg62-turbo:amd64 (1:1.5.2-2+b1) ...
Selecting previously unselected package libturbojpeg0:amd64.
Preparing to unpack .../libturbojpeg0_1%3a1.5.2-2+b1_amd64.deb ...
Unpacking libturbojpeg0:amd64 (1:1.5.2-2+b1) ...
Selecting previously unselected package libjpeg-turbo-progs.
Preparing to unpack .../libjpeg-turbo-progs_1%3a1.5.2-2+b1_amd64.deb ...
Unpacking libjpeg-turbo-progs (1:1.5.2-2+b1) ...
Setting up libturbojpeg0:amd64 (1:1.5.2-2+b1) ...
Setting up libjpeg62-turbo:amd64 (1:1.5.2-2+b1) ...
Setting up libjpeg-turbo-progs (1:1.5.2-2+b1) ...
Processing triggers for libc-bin (2.28-10) ...

# cat /etc/apt/sources.list | grep buster | sed s/buster/sid/ >> 
/etc/apt/sources.list

# cat /etc/apt/sources.list
deb https://deb.debian.org/debian buster main
deb https://deb.debian.org/debian sid main

# apt update
Hit:1 https://deb.debian.org/debian buster InRelease
Get:2 https://deb.debian.org/debian sid InRelease [146 kB]
Get:3 https://deb.debian.org/debian sid/main amd64 Packages [8345 kB]
Fetched 8491 kB in 6s (1365 kB/s)   


Reading package lists... Done
Building dependency tree   
Reading state information... Done
126 packages can be upgraded. Run 'apt list --upgradable' to see them.

# apt policy libjpeg-turbo-progs
libjpeg-turbo-progs:
  Installed: 1:1.5.2-2+b1
  Candidate: 1:2.0.5-1
  Version table:
 1:2.0.5-1 500
500 https://deb.debian.org/debian sid/main amd64 Packages
 *** 1:1.5.2-2+b1 500
500 https://deb.debian.org/debian buster/main amd64 Packages
100 /var/lib/dpkg/status

# apt install libjpeg-turbo-progs=1:2.0.5-1
Reading package lists... Done
Building dependency tree   
Reading state information... Done
The following packages will be upgraded:
  libjpeg-turbo-progs
1 upgraded, 0 newly installed, 0 to remove and 125 not upgraded.
Need to get 131 kB of archives.
After this operation, 51.2 kB of additional disk space will be used.
Get:1 https://deb.debian.org/debian sid/main amd64 libjpeg-turbo-progs amd64 
1:2.0.5-1 [131 kB]
Fetched 131 kB in 1s (227 kB/s)
debconf: delaying package configuration, since apt-utils is not installed
(Reading database ... 12558 files and directories currently installed.)
Preparing to unpack .../libjpeg-turbo-progs_1%3a2.0.5-1_amd64.deb