How about this case:

- I make a hypothetical package that depends on libxxhash < 0.8 because
I want the "broken/old" xxh128 support;

- I have libxxhash 0.7.3 (that came with Focal);

- I have rsync 3.1.x (that came with Focal);

- Now I release-upgrade my system from Focal to Groovy;

- I get all kinds of new packages, including rsync 3.2.3;

- Dependency resolution fixes that I _don't_ get libxxhash 0.8 _because_
I have:

- (a) my hypothetical package pinned and it depends on libxxhash<0.8;

- (b) rsync that depends on libxxhash>=0.7.1.

- The dependencies are all still satisfied and I get to keep
libxxhash=0.7.3.

In this new situation I have completed the upgrade to Groovy. As long as
my hypothetical package that depends on libxxhash <0.8 exists, Ubuntu
will not upgrade libxxhash.

And then I'm in the same situation as I am now:


root@groovy-rsync:~# apt-mark hold hypothetical-pkg
hypothetical-pkg set on hold.

root@groovy-rsync:~# apt-cache show hypothetical-pkg | grep ^Depe
Depends: libxxhash0 (<= 0.8)

root@groovy-rsync:~# apt-get install rsync
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Suggested packages:
  openssh-server
The following NEW packages will be installed:
  rsync

root@groovy-rsync:~# dpkg -l | grep -E 'rsync|libxxhash'
hi  hypothetical-pkg                 1.0
ii  libxxhash0:amd64                 0.7.3-1
ii  rsync                            3.2.3-2ubuntu1

root@groovy-rsync:~# apt-get dist-upgrade
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Calculating upgrade... Done
The following packages have been kept back:
  libxxhash0
0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.


This may not be the commonest of cases. But this would be an impossible 
situation if rsync_3.2.3 simply depended on 0.8+ instead of on 0.7.1+. (An 
impossible situation is good in this case, because you have to choose between 
either hypothetical-pkg or rsync.)

So, I still feel that this is a bug in the rsync control file in Groovy.
Not a bug in the rsync source.

(Ok, in fact, I think it's ultimately a bug in soname-version/symbol
handling of libxxhash. But that's not where the problem manifests
itself.)

I'll leave it as is if you still feel it should be closed. But at least
it has some visibility/presence on the internet so others are helped if
they also run into this issue.

Cheers :)
Walter

** Changed in: rsync (Ubuntu)
       Status: Incomplete => New

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1934992

Title:
  rsync 3.2.x in Groovy depends on broken libxxhash 0.7.x

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/rsync/+bug/1934992/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to