Hi Dirk, to be true in future i would only take care of versions that are to be expected in the wild. That should keep the list short.
Greetz Alf On 05.08.2017 06:10, Dirk Eddelbuettel wrote: > On 5 August 2017 at 00:04, Alf Gaida wrote: > | Package: libgsl23 > | Version: 2.4+dfsg-3 > | Severity: grave > | Tags: patch > | > | Dear Maintainer, > | > | like the subject says libgsl lacks some breaks and replaces, that breaks > the upgrade path: > | > | % LANG=C sudo apt -f install > :( > | Reading package lists... Done > | Building dependency tree > | Reading state information... Done > | Correcting dependencies... Done > | The following additional packages will be installed: > | libgsl23 > | Suggested packages: > | gsl-ref-psdoc | gsl-doc-pdf | gsl-doc-info | gsl-ref-html > | The following NEW packages will be installed: > | libgsl23 > | 0 upgraded, 1 newly installed, 0 to remove and 1 not upgraded. > | 28 not fully installed or removed. > | Need to get 0 B/914 kB of archives. > | After this operation, 2.887 kB of additional disk space will be used. > | Do you want to continue? [Y/n] y > | (Reading database ... 537126 files and directories currently installed.) > | Preparing to unpack .../libgsl23_2.4+dfsg-3_amd64.deb ... > | Unpacking libgsl23:amd64 (2.4+dfsg-3) ... > | dpkg: error processing archive > /var/cache/apt/archives/libgsl23_2.4+dfsg-3_amd64.deb (--unpack): > | trying to overwrite '/usr/lib/x86_64-linux-gnu/libgslcblas.so.0.0.0', > which is also in package libgsl2:amd64 2.4+dfsg-2 > | dpkg-deb: error: subprocess paste was killed by signal (Broken pipe) > | Errors were encountered while processing: > | /var/cache/apt/archives/libgsl23_2.4+dfsg-3_amd64.deb > | E: Sub-process /usr/bin/dpkg returned an error code (1) > | > | > | The following should fix that > | > | diff --git a/debian/control b/debian/control > | index 5e12819..486169d 100644 > | --- a/debian/control > | +++ b/debian/control > | @@ -12,8 +12,9 @@ Architecture: any > | Multi-Arch: same > | Pre-Depends: ${misc:Pre-Depends} > | Depends: ${shlibs:Depends}, ${misc:Depends} > | +Breaks: libgsl2 > | Conflicts: gsl, libgsl0, libgsl0ldbl > | -Replaces: gsl, libgsl0 (<= 1.9-4), libgsl0ldbl (<= 1.16+dfsg-4) > | +Replaces: gsl, libgsl0 (<= 1.9-4), libgsl0ldbl (<= 1.16+dfsg-4), libgsl2 > | Suggests: gsl-ref-psdoc | gsl-doc-pdf | gsl-doc-info | gsl-ref-html > | Description: GNU Scientific Library (GSL) -- library package > | The GNU Scientific Library (GSL) is a collection of routines for > | > > Thanks for that. > > One possibly alternative would be to put libgslcblas.so.0.0.0 into its own > libgslcblas depend on it as this library has no soname. But it is probably > easier to go with 'Breaks: ' as you suggest. > > The thing that is unpleasant is that we probably need to keep adding the old > soname libraries to debian/control as this progresses. > > Dirk > > | Cheers Alf > | > | -- System Information: > | Debian Release: buster/sid > | APT prefers buildd-unstable > | APT policy: (500, 'buildd-unstable'), (500, 'unstable'), (500, > 'testing'), (500, 'stable'), (500, 'oldstable'), (1, 'experimental') > | Architecture: amd64 (x86_64) > | Foreign Architectures: i386 > | > | Kernel: Linux 4.12.4-towo.2-siduction-amd64 (SMP w/8 CPU cores; PREEMPT) > | Locale: LANG=de_DE.utf8, LC_CTYPE=de_DE.utf8 (charmap=UTF-8), LANGUAGE= > (charmap=UTF-8) > | Shell: /bin/sh linked to /bin/dash > | Init: systemd (via /run/systemd/system) > | > | Versions of packages libgsl23 depends on: > | ii libc6 2.24-14 > | > | libgsl23 recommends no packages. > | > | Versions of packages libgsl23 suggests: > | pn gsl-ref-psdoc | gsl-doc-pdf | gsl-doc-info | gsl-ref-html <none> > | > | -- no debconf information >