[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#770017: Pinning by glob and version yields unexpected effects



Control: retitle -1 Pinning by regex and version yields unexpected effects

On Tue, Nov 18, 2014 at 11:06:12AM +0100, Joachim Breitner wrote:
> Package: apt
> Version: 1.0.9.3
> Severity: normal
> 
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> Hi,
> 
> I’m trying to avoid a bug in evolution-data-server version 3.12.7.1-2.
> That package is actually split in many, so I tried to avoid listing all
> of them and specified

I don't think you can do this currently, it won't work with the
current implementation.

> 
> Package: /.*/
> Pin: version 3.12.7.1-2
> Pin-Priority: -1
> 
> in my apt-preferences, hoping that this version number is unique, and
> under that assumption expecting this to apply to e-d-s packages only.

Yes, but it's not a glob, it's a regex. So it probably means I messed
this up. The pinning implementation is a bit ... special - it has one
pin per package, and then chooses the candidate by this, instead of
assigning the pin (priorities) to individual versions and then picking
the highest (sans some exceptions, like downgrades). It's something I
always wanted to replace, but I have not found the time to fix a bug
in my new algorithm and port it to APT yet :(

The same applies for more complex glob patterns than *, * simply only
supports release pins. It fails for **, though. I think this was
probably me too...

As a workaround in APT, I think it might be a good idea to only apply
a regex pin to a package if a version with the specified Pin constraint
exists. That should be closer to what I intended to do.

I don't know if it is feasible to implement this, though (as I said,
it's a bit weird sometimes). Not sure if we could get a fix into
jessie either.

Now that we have source package information in the cache, we should
probably consider adding pinning by source package (we might have
this already, but I'm not sure, I'm not up-to-date).

-- 
Julian Andres Klode  - Debian Developer, Ubuntu Member

See http://wiki.debian.org/JulianAndresKlode and http://jak-linux.org/.

Be friendly, do not top-post, and follow RFC 1855 "Netiquette".
    - If you don't I might ignore you.


Reply to: