Re: Bug#1131311: autopkgtest: Bad versions comparison
David Kalnischkies <[email protected]> Fri, 20 Mar 2026 11:41:57 +0100
| Newsgroups | gmane.linux.debian.apt.devel |
|---|---|
| Message-ID | <[email protected]> |
Am Fri, Mar 20, 2026 at 10:27:58AM +0100, schrieb Xavier: > - resolver should take the higher version fwiw that is not possible. Yes, using version provides can produce these funny situations in which multiple seemingly conflicting statements about a version are true, but we can't just pick one of the versions and run with it. If we would always pick the highest as you suggest: node-rollup-plugin-terser build-depends on debhelper-compat = 13. Now, that is the highest available debhelper-compat ~ for now, 14 is around the corner making your package FTBFS on its release. Never mind all the packages that happen to still = 12 or lower. Now, why not for Breaks? Well, we don't know what the interface is, but it might very well be file-based, so something providing version 1 provides a file in a certain format in a certain location. If your package can't deal with that it Breaks version 1 (well, its broken by, so ideally the other package would have it, but that is not always possible without access to a time machine). That there is also a version 2 somewhere else is of no concern for the breakage caused (so a simple Depends >= 2 doesn't work). Yes, in this situation a "Depends >= 2" is satisfied, while also a "Breaks <= 1", which is one of the simpler funny situations I alluded to earlier. That we haven't yet fully descended into madness is simply a result of Provides usually being on purely virtual packages and not that common in general. The various node, rust, … ecosystems with their auto-generated packages and mega-provides violate both assumptions, so their maintainers run with some regularity into this fun that is usually just nightmare fuel for the select few reasoning about dependencies on the regular for us (like apt). Best regards David Kalnischkies
signature.asc
(application/pgp-signature, 833 B)
-----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEE5sn+Q4uCja/tn0GrMRvlz3HQeIMFAmm9JHUACgkQMRvlz3HQ eINnSg//ZtASDsH3dQit8zRbmTQeKa9ksQeBN/PPnzqOPgRmn9lUZP5r5SDI1uym +OBozZfM6D1/ffQoWXjUaVrtkSaJz6VWzpSzS8JfbkBQGvDZKnHwLAUGb1sO/A9L hRxIdxf2J3o6/PrRxxPADxp8rzF0FfwCy/0EPhiHS/mB4cBr968CiiTX0owFY9Hv mfVoGHHF0nvPnLTXEv/6vPj+g/lwm2NogW9UPAr0jZWSHjwKByhFH+UaChMwyaR7 35LgRE8iWzPknnwjKStYI4uqen4kwScaahQpwPkE1/V9PR+3xRaNXSQ++ggnui9K FIcagLb8yqNb9c+fcD1asDgBiYBxPhfrNJPAmb3zIZ78v7IbkeMTL21E7TM7qexg WKcEBfTY+dIIWMmnvJ3xdNtAC0Q97ECBXnzJfe6ZtfxoklaYUcwWhpBYEf3AIKQA PNRM9dW1Yi8KZUmDbwuAN26TV02CgWp19HFBkV2m4w2ZRAlK3AuIclwX0IH8HTEl rlaUTnglpyIqkIPB7fzfSVMLHnf39KL7w2HjX7T631vq+/4rDYkBF7FTyWwoQCF9 7gQchx0RrxtDHHhEdSh+tg5r+EFQM6j+a27OpOCU2MoEigYA716ofOTPp5T/rzAa mye2YlIGXRtxbS796cB08SAt9PedwE5Ahv28ad91Fss1TOQk7aQ= =Etl+ -----END PGP SIGNATURE-----