<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apt/apt-pkg, branch 2.1.7</title>
<subtitle>Debians commandline package manager</subtitle>
<id>https://git.kalnischkies.de/apt/atom?h=2.1.7</id>
<link rel='self' href='https://git.kalnischkies.de/apt/atom?h=2.1.7'/>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/'/>
<updated>2020-07-02T16:57:11Z</updated>
<entry>
<title>Reorder config check before result looping for SRV parsing debug</title>
<updated>2020-07-02T16:57:11Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2020-06-30T08:11:09Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=1bfc0907c987758529bcdc4ebfb34364702a2d8b'/>
<id>urn:sha1:1bfc0907c987758529bcdc4ebfb34364702a2d8b</id>
<content type='text'>
It isn't needed to iterate over all results if we will be doing nothing
anyhow as it isn't that common to have that debug option enabled.
</content>
</entry>
<entry>
<title>Add dependency points in the resolver also to providers</title>
<updated>2020-07-02T16:57:11Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2020-06-19T16:49:11Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=1f910d94add8f20ebfa5999a7795e678a4af0826'/>
<id>urn:sha1:1f910d94add8f20ebfa5999a7795e678a4af0826</id>
<content type='text'>
We were traditionally adding points for some dependency types to the
real package, but we should also do it for providers of that package to
help the resolver especially if the real package is for some reason not
tagged for removal yet/anymore.

While at it we ensure that the points are only attributed once for each
package as especially with versioned provides a package can nowadays
provide another many times and would hence acquire a lot of points.
</content>
</entry>
<entry>
<title>Filter out impossible solutions for protected propagation</title>
<updated>2020-07-02T16:57:11Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2020-06-19T11:58:35Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=cfd0172fb0eeb15b2e2427c0e11b2ec65f501839'/>
<id>urn:sha1:cfd0172fb0eeb15b2e2427c0e11b2ec65f501839</id>
<content type='text'>
If the package providing the given solution is tagged already for
removal (or at least for "not installing") we can ignore this solution
as a possibility as it is not one, which means we can avoid exploring
the option and potentially forward the protected flag further if that
helps in reducing the possibilities to a single one.
</content>
</entry>
<entry>
<title>Delay removals due to Conflicts until Depends are resolved</title>
<updated>2020-07-02T16:57:11Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2020-06-19T11:14:33Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=3e39efa31da463ca05016513835d9a5388f80f90'/>
<id>urn:sha1:3e39efa31da463ca05016513835d9a5388f80f90</id>
<content type='text'>
Marking a package for removal is fine if we know that we have to remove
that package, but if we are in an alternative branch we might not go
this route in the end and hence have a package pointlessly marked for
removal which isn't questioned later on.

We check if we are allowed to remove that package to avoid working on
the positive dependencies if not, but we mark them for removal only
after all the other dependencies are successfully resolved.

In an ideal world we would let the problemResolver do its job on them,
but the resolver might decide against doing the removal exploring
another option like the next alternative, which might be a good idea,
but is not the behaviour we had before, so that is the best we can do
for now without changing the resolver drastically.
</content>
</entry>
<entry>
<title>Add basic support for the Protected field</title>
<updated>2020-06-29T15:32:17Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2020-06-29T15:31:06Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=ddd8fc3d28cd8e668868158049ced7fa3c8c71b8'/>
<id>urn:sha1:ddd8fc3d28cd8e668868158049ced7fa3c8c71b8</id>
<content type='text'>
This will be mapped to Important for the time being.
</content>
</entry>
<entry>
<title>Deduplicate EDSP Provides line of M-A:foreign packages</title>
<updated>2020-06-14T08:19:39Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2020-06-14T07:48:29Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=a1464cb4025cd737ac57ea7392402d5efd2af027'/>
<id>urn:sha1:a1464cb4025cd737ac57ea7392402d5efd2af027</id>
<content type='text'>
M-A:foreign causes Provides to apply to all architectures and as we
wanted to avoid resolver changes for M-A those are done by explicitly
creating these provides instead of forcing the resolvers to learn about
this. The EDSP is a different beast though &amp; we don't need this trick
here especially as it leads to needless (but harmless) duplication.

No sort+unique is done to avoid changing order (not that it should
matter, but just to be sure), but the sets should be small enough to not
make a huge difference either way.
</content>
</entry>
<entry>
<title>Tell EDSP solvers about all installed pkgs ignoring arch</title>
<updated>2020-06-14T08:19:39Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2020-06-13T09:45:38Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=419190f6c17aaf750887ec7471599681377fb01b'/>
<id>urn:sha1:419190f6c17aaf750887ec7471599681377fb01b</id>
<content type='text'>
We usually tell EDSP solvers only about architectures we are configured
to treat as native/foreign, but the system could have packages from
other architectures installed (even if very unlikely) which could
influence the solution (e.g. requiring a removal) so we make sure to
tell them.
</content>
</entry>
<entry>
<title>Do not sent our filename-provides trick to EDSP solvers</title>
<updated>2020-06-14T08:19:39Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2020-06-13T09:36:41Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=71d753b5e450a99f7f6677fe4899515aaec7e585'/>
<id>urn:sha1:71d753b5e450a99f7f6677fe4899515aaec7e585</id>
<content type='text'>
If package is installed via an explicitly given deb file we store the
filename as a provides, so that the frontend can request the filename
and get the usual "Selected foo instead of foo.deb" message.

We do not need to trouble the EDSP solvers with that though as these
provides are not valid in various ways and we have already solved the
link between commandline and package (and version) for them.

Closes: #962741
</content>
</entry>
<entry>
<title>Do not hardcode (wrong) group and mode in setup warning</title>
<updated>2020-06-06T09:26:52Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2020-06-06T09:17:30Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=83b239c7285ac7450e305643b29596396abc0b3f'/>
<id>urn:sha1:83b239c7285ac7450e305643b29596396abc0b3f</id>
<content type='text'>
Partial directories are created with 0700, but the parent is 0755, while
the error message would report 0700 for both… that isn't right and can
be pretty confusing.

Turns out that the messages aren't marked for translation, so no
unfuzzing is required &amp; we just leave it as untranslated for now.
Especially as the more detailed error strings derived from errno
are translated.

Reported-By: Wakko Warner &lt;wakko@animx.eu.org&gt;
Closes: #962310
</content>
</entry>
<entry>
<title>Deal with duplicates in the solution space of a dep</title>
<updated>2020-06-03T11:41:14Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2020-06-03T11:03:37Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=96359a576f59eb8bc461bdd4c5eadeb17fe8f0ca'/>
<id>urn:sha1:96359a576f59eb8bc461bdd4c5eadeb17fe8f0ca</id>
<content type='text'>
While we process the possible solutions we might modify other solutions
like discarding their candidates and such, so that then we reach them
they might no longer be proper candidates. We also try to drop
duplicates early on to avoid the simple cases of these which
test-explore-or-groups-in-markinstall triggers via its explicit
duplication but could also come via multiple provides.

It only worked previously as were ignoring current versions which
usually is okay expect if they are marked for removal and we want to
reinstate them so the ProblemResolver can decide which one later on.
</content>
</entry>
</feed>
