<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apt/apt-pkg, branch 1.2.9</title>
<subtitle>Debians commandline package manager</subtitle>
<id>https://git.kalnischkies.de/apt/atom?h=1.2.9</id>
<link rel='self' href='https://git.kalnischkies.de/apt/atom?h=1.2.9'/>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/'/>
<updated>2016-03-27T00:09:14Z</updated>
<entry>
<title>Do not mark packages for keep that we want to remove</title>
<updated>2016-03-27T00:09:14Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2016-03-26T23:20:05Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=6df5632313e9ce77c47ee4bcf6e32a028c4534d0'/>
<id>urn:sha1:6df5632313e9ce77c47ee4bcf6e32a028c4534d0</id>
<content type='text'>
If the package is marked for removal, keep it marked for
removal and do not mark it for keep. If we mark it for keep,
we some how later get to a different stage where it is marked
for unpack instead of removal.

In the example in the bug report, we would get a:

 SmartUnPack maas-region-controller-min:amd64 (replace version 2.0.0~alpha3+bzr4810-0ubuntu1 with Segmentation fault

maas-region-controller-min:amd64 was marked for removal, but
we changed it to keep and somehow it thinks that this is to
be replaced now instead of removed (probably because the
InstallVer != CandidateVer [with InstallVer = 0]).

This fixes a regression introduced in release 1.2.7, commit:
  0390edd5452b081f8efcf412f96d535a1d959457

Reported-by: LaMont Jones on IRC
LP: #1562402
</content>
</entry>
<entry>
<title>drop confusing comma from no strong hash message</title>
<updated>2016-03-25T08:31:42Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2016-03-25T08:31:42Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=a2025a9a307bf4796e90623b002a7fa80ae814ef'/>
<id>urn:sha1:a2025a9a307bf4796e90623b002a7fa80ae814ef</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Set hidden visibility for StringView</title>
<updated>2016-03-24T14:16:00Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2016-03-24T14:11:05Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=5359675e6c7684bd4153adaf3cc0f59442cdc291'/>
<id>urn:sha1:5359675e6c7684bd4153adaf3cc0f59442cdc291</id>
<content type='text'>
This avoids templates using StringView to be exported, such as
std::vector&lt;StringView*&gt;::emplace_back().

Gbp-Dch: ignore
</content>
</entry>
<entry>
<title>refactor loading of previous release file</title>
<updated>2016-03-19T08:48:44Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2016-03-17T11:10:37Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=d32223495b4b6e077c8c4db54a0dd972c7a1548a'/>
<id>urn:sha1:d32223495b4b6e077c8c4db54a0dd972c7a1548a</id>
<content type='text'>
There is really no need to have the same code three times.

Git-Dch: Ignore
</content>
</entry>
<entry>
<title>cachefile: Only set members that were initialized successfully</title>
<updated>2016-03-19T06:19:24Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2016-03-19T00:56:38Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=f40fdaa43271edf98b80c08e20f401b5da591501'/>
<id>urn:sha1:f40fdaa43271edf98b80c08e20f401b5da591501</id>
<content type='text'>
Otherwise, things will just start failing later down the stack,
because (a) the lazy getters do not check if building was successful
and (b) any further getter call would return the invalid object
anyway.

Also initialize VS in pkgCache to nullptr by default.

Closes: #818628
</content>
</entry>
<entry>
<title>do not strip epochs from state version strings</title>
<updated>2016-03-16T22:29:45Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2016-03-16T21:32:48Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=a38cec81d349525c447004ef8fe9dc942c8bd9bb'/>
<id>urn:sha1:a38cec81d349525c447004ef8fe9dc942c8bd9bb</id>
<content type='text'>
The epoch stripping in this code is done since day one, but in other
places we show a version epochs are not stripped. If epochs are present
in packages they tend to be an important information which we can't just
drop and especially can't drop "sometimes" as that confuses users and
tools alike – so even if removing code in use for (close to) 18 years
feels wrong, it is probably the right choice for consistency.

Closes: 818162
</content>
</entry>
<entry>
<title>Use descriptive URIs in 104 Warning messages</title>
<updated>2016-03-16T17:34:47Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2016-03-16T17:31:26Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=421807e1d38c58b776be0b20faed94c5316d38eb'/>
<id>urn:sha1:421807e1d38c58b776be0b20faed94c5316d38eb</id>
<content type='text'>
This makes the new GPG related warnings much nicer to read,
for example, the second one here replaces the first one:

W: gpgv:/var/lib/apt/lists/example.com_dists_stable_InRelease: Weak ...
W: http://example.com/dists/stable/InRelease: Weak ...
</content>
</entry>
<entry>
<title>Report non-transient errors as errors, not as warnings</title>
<updated>2016-03-16T16:56:50Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2016-03-16T15:46:39Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=f695e76199a43b7f4d5816e20d18496b6448b833'/>
<id>urn:sha1:f695e76199a43b7f4d5816e20d18496b6448b833</id>
<content type='text'>
This makes it easier to understand what really is an error
and what not.
</content>
</entry>
<entry>
<title>Get accurate progress reporting in apt update again</title>
<updated>2016-03-16T16:52:40Z</updated>
<author>
<name>Michael Vogt</name>
<email>mvo@ubuntu.com</email>
</author>
<published>2016-03-15T13:50:37Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=fb193b1cd43f0e8c3b7e5f69f183b9abe7e83761'/>
<id>urn:sha1:fb193b1cd43f0e8c3b7e5f69f183b9abe7e83761</id>
<content type='text'>
For the non-pdiff case, we have can have accurate progress
reporting because after fetching the {,In}Release files we know
how many IndexFiles will be fetched and what size they have.

Therefore init the filesize early (in pkgAcqIndex::Init) and
ensure that in Acquire::Pulse() looks at already downloaded
bits when calculating the progress in Acquire::Pulse.

Also improve debug output of Debug::acquire::progress
</content>
</entry>
<entry>
<title>Fix bug where the problemresolve can put a pkg into a heisenstate</title>
<updated>2016-03-15T17:55:02Z</updated>
<author>
<name>Michael Vogt</name>
<email>mvo@ubuntu.com</email>
</author>
<published>2016-03-15T12:13:54Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=0390edd5452b081f8efcf412f96d535a1d959457'/>
<id>urn:sha1:0390edd5452b081f8efcf412f96d535a1d959457</id>
<content type='text'>
The problemresolver will set the candidate version for pkg P back
to the current version if it encounters an impossible to satisfy
critical dependency on P. However it did not set the State of
the package back as well which lead to a situation where P is
neither in Keep,Install,Upgrade,Delete state.

Note that this can not be tested via the traditional sh based
framework. I added a python-apt based test for this.

LP: #1550741

[jak@debian.org: Make the test not fail if apt_pkg cannot be
 imported]
</content>
</entry>
</feed>
