<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apt/apt-pkg, branch 2.9.12</title>
<subtitle>Debians commandline package manager</subtitle>
<id>https://git.kalnischkies.de/apt/atom?h=2.9.12</id>
<link rel='self' href='https://git.kalnischkies.de/apt/atom?h=2.9.12'/>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/'/>
<updated>2024-11-18T13:54:19Z</updated>
<entry>
<title>Handle Retry-After by default</title>
<updated>2024-11-18T13:54:19Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2024-11-18T13:54:19Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=f4b57be67c34e9d771859b6851254e64c2a1dc8c'/>
<id>urn:sha1:f4b57be67c34e9d771859b6851254e64c2a1dc8c</id>
<content type='text'>
Let's get some feedback here. This is capped to 30s per retry, so
a maximum of 90s per item that we delay the failure case. In the
worst case, we hence have 90n seconds delay for n items.

In a more realistic worse case however, the server likely does
not collapse per-item, and we end up trying all items in a short
burst so it seems more realistic we hit a 90s total delay.

The bursty behavior may be suboptimal; we don't quite know, but
it seems the specification of Retry-After is per-entity rather than
per-host, so technically speaking it seems correct.
</content>
</entry>
<entry>
<title>http: use Retry-After HTTP header to optimize retries</title>
<updated>2024-11-18T12:44:49Z</updated>
<author>
<name>Felix Moessbauer</name>
<email>felix.moessbauer@siemens.com</email>
</author>
<published>2024-11-08T14:04:17Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=7b9dea5a7c43fd91bcd23d1585d39a726d098285'/>
<id>urn:sha1:7b9dea5a7c43fd91bcd23d1585d39a726d098285</id>
<content type='text'>
Some mirrors like snapshot.debian.org apply strict http rate limits.
While apt already has an exponential backoff mechanism implemented, this
is not sufficient due to the following reasons:

1. all retries happen roughly at the same time
2. the retry-after information from the server is not used

We fix this by improving the algorithm: First, if present, the timestamp
or duration of the Retry-After header is added to the exponential
backoff, optimizing for success-on-second-try. Second, a random delay is
added (delay += [0, delay]) to distribute the retries to not immediately
run into the limit again. To avoid super-long delays, this is capped by
the configured maximum delay. This logic only becomes active if the
option Acquire::Retries::HandleRetryAfter is enabled.

Signed-off-by: Felix Moessbauer &lt;felix.moessbauer@siemens.com&gt;
</content>
</entry>
<entry>
<title>string_view: Include missing headers</title>
<updated>2024-11-17T15:41:33Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2024-11-17T15:39:15Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=db57773a96d1108bdad78ff3d1359a88d9689912'/>
<id>urn:sha1:db57773a96d1108bdad78ff3d1359a88d9689912</id>
<content type='text'>
Specifically the lack of the `string_view` include is causing
compilation failures for rust-rust-apt.

Running iwyu also adds `algorithm` for our use of `std::min`,
and `iosfwd` for our use of `std::ostream` none of which seem
to be causing build failures so far.
</content>
</entry>
<entry>
<title>Merge branch 'reefer' into 'main'</title>
<updated>2024-11-14T19:17:16Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2024-11-14T19:17:16Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=4f85954cb77b295d7853c420e918933293affed4'/>
<id>urn:sha1:4f85954cb77b295d7853c420e918933293affed4</id>
<content type='text'>
DEFER

See merge request apt-team/apt!392</content>
</entry>
<entry>
<title>Merge branch 'noref' into 'main'</title>
<updated>2024-11-14T19:02:57Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2024-11-14T19:02:57Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=4f0f7d2ba3ec25068e5cfe72bf403b1966a21dbf'/>
<id>urn:sha1:4f0f7d2ba3ec25068e5cfe72bf403b1966a21dbf</id>
<content type='text'>
std::string_view const &amp; -&gt; std::string_view

See merge request apt-team/apt!397</content>
</entry>
<entry>
<title>Merge branch 'append' into 'main'</title>
<updated>2024-11-14T19:02:34Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2024-11-14T19:02:34Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=6ee247f4e5130a348c46ed385a0f405f32cc92d4'/>
<id>urn:sha1:6ee247f4e5130a348c46ed385a0f405f32cc92d4</id>
<content type='text'>
(+=)+= -&gt; append().append()

See merge request apt-team/apt!398</content>
</entry>
<entry>
<title>fdopen() failing does not close the fd</title>
<updated>2024-11-14T18:23:26Z</updated>
<author>
<name>наб</name>
<email>nabijaczleweli@nabijaczleweli.xyz</email>
</author>
<published>2024-11-14T18:23:26Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=2db807afb1cbb02cce1fd8ff883de8ea1d23fa30'/>
<id>urn:sha1:2db807afb1cbb02cce1fd8ff883de8ea1d23fa30</id>
<content type='text'>
</content>
</entry>
<entry>
<title>DEFER() more</title>
<updated>2024-11-14T18:22:39Z</updated>
<author>
<name>наб</name>
<email>nabijaczleweli@nabijaczleweli.xyz</email>
</author>
<published>2024-11-14T17:55:49Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=6e80412fad93ef685559953719b82a28c1dcea13'/>
<id>urn:sha1:6e80412fad93ef685559953719b82a28c1dcea13</id>
<content type='text'>
</content>
</entry>
<entry>
<title>(+=)+= -&gt; append().append()</title>
<updated>2024-11-14T18:08:42Z</updated>
<author>
<name>наб</name>
<email>nabijaczleweli@nabijaczleweli.xyz</email>
</author>
<published>2024-11-14T18:08:42Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=fdd846cd67def08f04cc616530adc144fc5435d7'/>
<id>urn:sha1:fdd846cd67def08f04cc616530adc144fc5435d7</id>
<content type='text'>
</content>
</entry>
<entry>
<title>DEFER</title>
<updated>2024-11-14T17:45:16Z</updated>
<author>
<name>наб</name>
<email>nabijaczleweli@nabijaczleweli.xyz</email>
</author>
<published>2024-11-12T13:44:32Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=47d490e78107a5209c1f4f5e4afca7379d42c152'/>
<id>urn:sha1:47d490e78107a5209c1f4f5e4afca7379d42c152</id>
<content type='text'>
</content>
</entry>
</feed>
