<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apt/apt-pkg/edsp.cc, branch 3.1.12</title>
<subtitle>Debians commandline package manager</subtitle>
<id>https://git.kalnischkies.de/apt/atom?h=3.1.12</id>
<link rel='self' href='https://git.kalnischkies.de/apt/atom?h=3.1.12'/>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/'/>
<updated>2025-08-26T11:52:57Z</updated>
<entry>
<title>edsp: Do not skip lines (fixes Architecture reading)</title>
<updated>2025-08-26T11:52:57Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2025-05-25T12:46:45Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=171c469927b1b7c5a4f81f113081985e7dc84597'/>
<id>urn:sha1:171c469927b1b7c5a4f81f113081985e7dc84597</id>
<content type='text'>
We skipped the Architecture: line because when the outer
loop got to it, the inner loop started and read the next
line after it.

Get rid of the nested loop instead, and first run a loop
to find the request line, and then a second loop to parse
the request flags.

An alternative would be to use a combined loop that
supports non-compliant protocol implementations, but
that's harder to read and we don't expect there to be
any especially on the request side.
</content>
</entry>
<entry>
<title>edsp: Clear architecture cache</title>
<updated>2025-08-26T11:52:57Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2025-05-25T12:16:53Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=82cc584ee916df6bc558559b62863b34b069a710'/>
<id>urn:sha1:82cc584ee916df6bc558559b62863b34b069a710</id>
<content type='text'>
We need to actually use the architecture values we set
</content>
</entry>
<entry>
<title>edsp: Dump minimized Dir::Log::Solver logs</title>
<updated>2025-03-20T09:26:51Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2025-03-13T14:55:50Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=8ed6bea2083e055b50dfbd8bebf1355cce502f3f'/>
<id>urn:sha1:8ed6bea2083e055b50dfbd8bebf1355cce502f3f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>edsp: Add functionality to only write relevant packages</title>
<updated>2025-03-20T09:26:51Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2025-03-13T14:15:58Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=11917fa559c6c9bc5b0993b435f295de06bd161c'/>
<id>urn:sha1:11917fa559c6c9bc5b0993b435f295de06bd161c</id>
<content type='text'>
Add a variant of WriteLimitedScenario that does not take a pkgset,
but creates one on the fly based on the transitive closure of installed
packages, to be installed packages, and their dependencies and provides.

This includes more packages than strictly necessary, i.e. we do not
really need to include foo just because a package we want to install
Conflicts with it, but oh well, this is easy to read.

Trying to extend the filtering is hard as the dependencies being written
are also filtered...
</content>
</entry>
<entry>
<title>edsp: Set Forbid-New-Install/Forbid-Remove: no if other is set</title>
<updated>2025-03-10T21:33:05Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2025-03-10T17:37:55Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=1fc8e9eee4d6a81f907b399034f6f82da2e98140'/>
<id>urn:sha1:1fc8e9eee4d6a81f907b399034f6f82da2e98140</id>
<content type='text'>
The upgrade code may also set Upgrade: yes, and this sets both to
yes, so `apt upgrade` dumps behave like `apt-get upgrade` ones,
which of course is not intentional.

moo
</content>
</entry>
<entry>
<title>edsp: Write 'Size' to the EDSP files</title>
<updated>2025-03-03T10:21:55Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2025-03-03T10:20:52Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=45b04762e1990a761a7c308f9e73a286a92f908a'/>
<id>urn:sha1:45b04762e1990a761a7c308f9e73a286a92f908a</id>
<content type='text'>
This allows solvers to optimize by download size; and gives us
a better means of interpreting "downloadable" debs (they must have
a size &gt; 0 after all).
</content>
</entry>
<entry>
<title>edsp: Use buffered writes for EDSP dumps</title>
<updated>2025-02-17T15:23:05Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2025-02-17T15:23:05Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=591f178bce5713571d1874b863e9291a795cf5da'/>
<id>urn:sha1:591f178bce5713571d1874b863e9291a795cf5da</id>
<content type='text'>
This makes the dump almost instant rather than take forever.
</content>
</entry>
<entry>
<title>solver3: Pass EDSP flags directly rather than via config</title>
<updated>2025-02-14T18:08:45Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2025-02-11T21:03:03Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=3ae41a76c19e5ad05600188de43b46c3e2800676'/>
<id>urn:sha1:3ae41a76c19e5ad05600188de43b46c3e2800676</id>
<content type='text'>
This was a rather silly way to communicate state, and it was
in the wrong place. Notably also, multiple calls to the solver
had the options sticky, that is, if you run upgrade and then
it calls ResolveByKeep(), for example.
</content>
</entry>
<entry>
<title>solver3: Defer 3.0 'deep' autoremoval to 3.1, fix autoremove</title>
<updated>2025-02-14T18:08:45Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2025-02-11T11:11:20Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=4c48b5618ba15d4e33625cec81843891910e81a2'/>
<id>urn:sha1:4c48b5618ba15d4e33625cec81843891910e81a2</id>
<content type='text'>
Restore the depcache's MarkRequired logic for 3.0 solver; and
change the MarkInstall() call to pass a more correct value for
FromUser, to not override an existing automatic status.
</content>
</entry>
<entry>
<title>Add pkgCache::{Priority,DepType}_NoL10n to avoid duplication</title>
<updated>2025-01-05T22:16:08Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2024-12-26T20:43:34Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=6828ae2c2f9268c8187f0fa91b3c464ed84a8476'/>
<id>urn:sha1:6828ae2c2f9268c8187f0fa91b3c464ed84a8476</id>
<content type='text'>
We don't have many places, but lets reduce the amount of duplicating
these short strings, so that we may find all the places we have to
change if that ever happens.
</content>
</entry>
</feed>
