<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apt/apt-pkg/policy.cc, branch 1.8.0</title>
<subtitle>Debians commandline package manager</subtitle>
<id>https://git.kalnischkies.de/apt/atom?h=1.8.0</id>
<link rel='self' href='https://git.kalnischkies.de/apt/atom?h=1.8.0'/>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/'/>
<updated>2019-02-01T16:52:03Z</updated>
<entry>
<title>Add a Packages-Require-Authorization Release file field</title>
<updated>2019-02-01T16:52:03Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2019-02-01T13:43:52Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=c2b9b0489538fed4770515bd8853a960b13a2618'/>
<id>urn:sha1:c2b9b0489538fed4770515bd8853a960b13a2618</id>
<content type='text'>
This new field allows a repository to declare that access to
packages requires authorization. The current implementation will
set the pin to -32768 if no authorization has been provided in
the auth.conf(.d) files.

This implementation is suboptimal in two aspects:
(1) A repository should behave more like NotSource repositories
(2) We only have the host name for the repository, we cannot use
    paths yet.

- We can fix those after an ABI break.

The code also adds a check to acquire-item.cc to not use the
specified repository as a download source, mimicking NotSource.
</content>
</entry>
<entry>
<title>Introduce experimental 'never' pinning for sources</title>
<updated>2019-02-01T16:51:35Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2018-12-18T13:50:25Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=8bb2a91a070170d7d8e71206d1c66a26809bdbc3'/>
<id>urn:sha1:8bb2a91a070170d7d8e71206d1c66a26809bdbc3</id>
<content type='text'>
This allows disabling a repository by pinning it to 'never',
which is internally translated to a value of -32768 (or whatever
the minimum of short is).

This overrides any other pin for that repository. It can be used
to make sure certain sources are never used; for example, in
unattended-upgrades.

To prevent semantic changes to existing files, we substitute
min + 1 for every pin-priority: &lt;min&gt;. This is a temporary
solution, as we are waiting for an ABI break.

To add pins with that value, the special Pin-Priority
"never" may be used for now. It's unclear if that will
persist, or if the interface will change eventually.
</content>
</entry>
<entry>
<title>Remove obsolete RCS keywords</title>
<updated>2018-05-07T11:41:31Z</updated>
<author>
<name>Guillem Jover</name>
<email>guillem@debian.org</email>
</author>
<published>2018-05-06T20:32:41Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=164f1b78d1849a0f33df7352875f86e28f5de06a'/>
<id>urn:sha1:164f1b78d1849a0f33df7352875f86e28f5de06a</id>
<content type='text'>
Prompted-by: Jakub Wilk &lt;jwilk@debian.org&gt;
</content>
</entry>
<entry>
<title>show warnings instead of errors if files are unreadable</title>
<updated>2017-07-26T17:09:04Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2017-07-15T13:08:35Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=51751106976b1c6afa8f7991790db87b239fcc84'/>
<id>urn:sha1:51751106976b1c6afa8f7991790db87b239fcc84</id>
<content type='text'>
We used to fail on unreadable config/preferences/sources files, but at
least for sources we didn't in the past and it seems harsh to refuse to
work because of a single file, especially as the error messages are
inconsistent and end up being silly (like suggesting to run apt update
to fix the problem…).

LP: #1701852
</content>
</entry>
<entry>
<title>use FileFd to parse all apt configuration files</title>
<updated>2017-07-26T17:09:04Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2017-07-15T12:12:50Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=3317ad864c997f4897756c0a2989c4199e9cda62'/>
<id>urn:sha1:3317ad864c997f4897756c0a2989c4199e9cda62</id>
<content type='text'>
Using different ways of opening files means we have different behaviour
and error messages for them, so by the same for all we can have more
uniformity for users and apt developers alike.
</content>
</entry>
<entry>
<title>Reformat and sort all includes with clang-format</title>
<updated>2017-07-12T11:57:51Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2017-07-12T11:40:41Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=87274d0f22e1dfd99b2e5200e2fe75c1b804eac3'/>
<id>urn:sha1:87274d0f22e1dfd99b2e5200e2fe75c1b804eac3</id>
<content type='text'>
This makes it easier to see which headers includes what.

The changes were done by running

    git grep -l '#\s*include'  \
        | grep -E '.(cc|h)$' \
        | xargs sed -i -E 's/(^\s*)#(\s*)include/\1#\2 include/'

To modify all include lines by adding a space, and then running
./git-clang-format.sh.
</content>
</entry>
<entry>
<title>Drop cacheiterators.h include</title>
<updated>2017-07-12T11:56:05Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2017-07-12T11:42:18Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=c46f94aa48a9707668c46118b3eec77ff318b78c'/>
<id>urn:sha1:c46f94aa48a9707668c46118b3eec77ff318b78c</id>
<content type='text'>
Including cacheiterators.h before pkgcache.h fails because
pkgcache.h depends on cacheiterators.h.
</content>
</entry>
<entry>
<title>avoid explicit types for pkg counts by auto</title>
<updated>2017-06-26T21:31:15Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2017-06-04T16:14:13Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=fc2055e1e08e4e3b662b0c5f67a0d0a57267acd3'/>
<id>urn:sha1:fc2055e1e08e4e3b662b0c5f67a0d0a57267acd3</id>
<content type='text'>
Changes nothing on the program front and as the datatypes are
sufficently comparable fixes no bug either, but problems later on if we
ever change the types of those and prevent us using types which are too
large for the values we want to store waste (a tiny bit of) resources.

Gbp-Dch: Ignore
</content>
</entry>
<entry>
<title>don't loop on pinning pkgs from absolute debs by regex</title>
<updated>2016-08-29T07:22:25Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2016-08-28T20:56:17Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=e950b7e2f89b5e48192cd469c963a44fff9f1450'/>
<id>urn:sha1:e950b7e2f89b5e48192cd469c963a44fff9f1450</id>
<content type='text'>
An absolute filename for a *.deb file starts with a /. A package with
the name of the file is inserted in the cache which is provided by the
"real" package for internal reasons. The pinning code detects a regex
based wildcard by having the regex start with /. That is no problem
as a / can not be included in a package name… expect that our virtual
filename package can and does.

We fix this two ways actually: First, a regex is only being considered a
regex if it also ends with / (we don't support flags). That stops our
problem with the virtual filename packages already, but to be sure we
also do not enter the loop if matcher and package name are equal.

It has to be noted that the creation of pins for virtual packages like
the here effected filename packages is pointless as only versions can be
pinned, but checking that a package is really purely virtual is too
costly compared to just creating an unused pin.

Closes: 835818
</content>
</entry>
<entry>
<title>if conf unset, don't read / as conf/pref/sources dir</title>
<updated>2016-06-29T10:22:33Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2016-06-29T08:16:14Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=42610b9d5a95ec108b74ffbc6446542cf6b0176a'/>
<id>urn:sha1:42610b9d5a95ec108b74ffbc6446542cf6b0176a</id>
<content type='text'>
Usually these config options are set to sensible values, but if init
isn't run or the user interferes with configuration clearing or similar
the options could indeed carry an empty value, which will result in
FindDir returning a '/'. That feels kinda wrong, but as a public
interface there isn't much we can do about it and instead make it so
that we get the special file /dev/null back we know how to deal with in
such cases.
</content>
</entry>
</feed>
