<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apt/test/integration/test-pdiff-usage, branch master</title>
<subtitle>[no description]</subtitle>
<id>https://git.osdyson.ru/apt/atom?h=master</id>
<link rel='self' href='https://git.osdyson.ru/apt/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.osdyson.ru/apt/'/>
<updated>2018-12-03T16:21:39Z</updated>
<entry>
<title>test-pdiff-usage: make transaction failure test case more robust</title>
<updated>2018-12-03T16:21:39Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2018-12-03T08:16:20Z</published>
<link rel='alternate' type='text/html' href='https://git.osdyson.ru/apt/commit/?id=f35601e5d2b9fe8b99c6178cb9b160f1a42f432f'/>
<id>urn:sha1:f35601e5d2b9fe8b99c6178cb9b160f1a42f432f</id>
<content type='text'>
Try 10 times in a row
</content>
</entry>
<entry>
<title>Handle by-hash URI construction more centrally</title>
<updated>2018-05-11T16:28:29Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2018-01-15T11:04:45Z</published>
<link rel='alternate' type='text/html' href='https://git.osdyson.ru/apt/commit/?id=ed0e9eadeb3003f4f150da3c463b28cfa5e54b6f'/>
<id>urn:sha1:ed0e9eadeb3003f4f150da3c463b28cfa5e54b6f</id>
<content type='text'>
Individual items shouldn't concern themselves with these alternative
locations, we can deal with this more efficiently within the
infrastructure created for other alternative URIs now avoiding the need
to implement this in each item.
</content>
</entry>
<entry>
<title>Drop alternative URIs we got a hash-based fail from</title>
<updated>2018-05-11T16:28:19Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2018-01-13T23:07:20Z</published>
<link rel='alternate' type='text/html' href='https://git.osdyson.ru/apt/commit/?id=2d6c6c8809c7b4c1a009df48387ba15066fda7e2'/>
<id>urn:sha1:2d6c6c8809c7b4c1a009df48387ba15066fda7e2</id>
<content type='text'>
If we got a file but it produced a hash error, mismatched size or
similar we shouldn't fallback to alternative URIs as they likely result
in the same error. If we can we should instead use another mirror.

We used to be a lot stricter by stopping all trys for this file if we
got a non-404 (or a hash-based) failure, but that is too hard as we
really want to try other mirrors (if we have them) in the hope that they
have the expected and correct files.
</content>
</entry>
<entry>
<title>refactor message generation for methods</title>
<updated>2018-01-03T17:55:41Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2017-08-09T21:26:19Z</published>
<link rel='alternate' type='text/html' href='https://git.osdyson.ru/apt/commit/?id=02567e3084d2faec92e8bf248e89fda6452e634b'/>
<id>urn:sha1:02567e3084d2faec92e8bf248e89fda6452e634b</id>
<content type='text'>
The format isn't too hard to get right, but it gets funny with multiline
fields (which we don't really have yet) and its just easier to deal with
it once and for all which can be reused for more messages later.
</content>
</entry>
<entry>
<title>fail early in http if server answer is too small as well</title>
<updated>2017-07-26T17:07:56Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2017-07-26T16:35:42Z</published>
<link rel='alternate' type='text/html' href='https://git.osdyson.ru/apt/commit/?id=f2f8e89f08cdf01c83a0b8ab053c65329d85ca90'/>
<id>urn:sha1:f2f8e89f08cdf01c83a0b8ab053c65329d85ca90</id>
<content type='text'>
Failing on too much data is good, but we can do better by checking for
exact filesizes as we know with hashsums how large a file should be, so
if we get a file which has a size we do not expect we can drop it
directly, regardless of if the file is larger or smaller than what we
expect which should catch most cases which would end up as hashsum
errors later now a lot sooner.
</content>
</entry>
<entry>
<title>don't move failed pdiff indexes out of partial</title>
<updated>2017-07-26T17:07:55Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2017-07-23T23:15:55Z</published>
<link rel='alternate' type='text/html' href='https://git.osdyson.ru/apt/commit/?id=8df85a4fb91bed6c79a3cb9c2000881cc5b42ea7'/>
<id>urn:sha1:8df85a4fb91bed6c79a3cb9c2000881cc5b42ea7</id>
<content type='text'>
The comment says this is intended, but looking at the history reveals
that the comment comes from a different era. Nowadays we don't really
need it anymore (and even back then it was disputeable) as we haven't
used that file for our update in the end and nothing really needs this
file after the update.

Triggered is this by 188f297a2af4c15cb1d502360d1e478644b5b810 which
moves various error conditions forward including this code expecting the
file to exist – but it doesn't need to as download could have failed.
We could fix that by simple checking if the file exists and only stage
it if it does, but instead we don't stage it and instead even rename it
out of the way with our conventional FAILED name (if it exists).

That restores support for partial mirrors (= in this case mirrors which
don't ship pdiff files). Note that apt heals itself even if only such a
mirror is used as the update is successful even if that error is shown.

Closes: 869425
</content>
</entry>
<entry>
<title>show .diff/Index properly as ignored if we fallback</title>
<updated>2017-06-26T21:31:15Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2017-05-28T20:26:17Z</published>
<link rel='alternate' type='text/html' href='https://git.osdyson.ru/apt/commit/?id=188f297a2af4c15cb1d502360d1e478644b5b810'/>
<id>urn:sha1:188f297a2af4c15cb1d502360d1e478644b5b810</id>
<content type='text'>
Moving the code responsible for parsing the Index file from ::Done into
the slightly earlier ::VerifyDone allows us to still "fail" the download
if we can't make use of the Index for whatever reason, so that the
progress log correctly displays "Ign" instead of "Get" for the file.

This also makes quiet a few debug messages proper error messages (but
those are still hidden by default for Ign lines).
</content>
</entry>
<entry>
<title>fix various typos reported by spellintian</title>
<updated>2017-01-19T14:59:38Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2017-01-19T14:14:19Z</published>
<link rel='alternate' type='text/html' href='https://git.osdyson.ru/apt/commit/?id=93cff633a830e222693fc0f3d78e6e534d1126ee'/>
<id>urn:sha1:93cff633a830e222693fc0f3d78e6e534d1126ee</id>
<content type='text'>
Most of them in (old) code comments. The two instances of user visible
string changes the po files of the manpages are fixed up as well.

Gbp-Dch: Ignore
Reported-By: spellintian
</content>
</entry>
<entry>
<title>support compression and by-hash for .diff/Index files</title>
<updated>2016-08-17T05:55:46Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2016-08-16T05:47:44Z</published>
<link rel='alternate' type='text/html' href='https://git.osdyson.ru/apt/commit/?id=77e274f5ad23d79294f28ecc9868fc6f534214a4'/>
<id>urn:sha1:77e274f5ad23d79294f28ecc9868fc6f534214a4</id>
<content type='text'>
In af81ab9030229b4ce6cbe28f0f0831d4896fda01 by-hash got implemented as a
special compression type for our usual index files like Packages.
Missing in this scheme was the special .diff/Index index file containing
the info about individual patches for this index file. Deriving from the
index file class directly we inherent the compression handling
infrastructure and in this way also by-hash nearly for free.

Closes: #824926
</content>
</entry>
<entry>
<title>implement generic config fallback for methods</title>
<updated>2016-08-10T21:19:44Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2016-07-31T16:05:56Z</published>
<link rel='alternate' type='text/html' href='https://git.osdyson.ru/apt/commit/?id=30060442025824c491f58887ca7369f3c572fa57'/>
<id>urn:sha1:30060442025824c491f58887ca7369f3c572fa57</id>
<content type='text'>
The https method implemented for a long while now a hardcoded fallback
to the same options in http, which, while it works, is rather inflexible
if we want to allow the methods to use another name to change their
behavior slightly, like apt-transport-tor does to https – most of the
diff being s#https#tor#g which then fails to do the full circle
fallthrough tor -&gt; https -&gt; http for https sources. With this config
infrastructure this could be implemented now.
</content>
</entry>
</feed>
