<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apt/apt-pkg/edsp.cc, branch 2.2.1</title>
<subtitle>Debians commandline package manager</subtitle>
<id>https://git.kalnischkies.de/apt/atom?h=2.2.1</id>
<link rel='self' href='https://git.kalnischkies.de/apt/atom?h=2.2.1'/>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/'/>
<updated>2020-06-14T08:19:39Z</updated>
<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>Ensure EDSP doesn't use a dangling architecture string</title>
<updated>2020-05-25T10:05:00Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2020-05-24T14:27:15Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=90a7a5e32643a67f4245460e7659d9dee230e9e7'/>
<id>urn:sha1:90a7a5e32643a67f4245460e7659d9dee230e9e7</id>
<content type='text'>
../apt-pkg/edsp.cc:861:23: error: object backing the pointer will be destroyed at the end of the full-expression [-Wdangling-gsl]
   const char *arch = _config-&gt;Find("APT::Architecture").c_str();

Compilers are probably optimizing it the way the patch does by hand now. Small
string optimisation helps likely as well. Othwise that should have failed left
and right as EDSP is used by experimental and such builders to talk to aspcud.

Reported-By: clang
</content>
</entry>
<entry>
<title>Rename _count() macro to APT_ARRAY_SIZE()</title>
<updated>2020-01-07T21:51:41Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2020-01-07T21:37:36Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=df4b92bd1df204e7fb0d22e73e143d205d74aea6'/>
<id>urn:sha1:df4b92bd1df204e7fb0d22e73e143d205d74aea6</id>
<content type='text'>
</content>
</entry>
<entry>
<title>edsp: Remove deprecated functions</title>
<updated>2019-02-26T15:31:20Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2019-02-26T12:26:14Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=e9ac86f11b23310924058a045e0352b499c66d43'/>
<id>urn:sha1:e9ac86f11b23310924058a045e0352b499c66d43</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Reformat and sort all includes with clang-format</title>
<updated>2017-07-12T11:57:51Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2017-07-12T11:40:41Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=87274d0f22e1dfd99b2e5200e2fe75c1b804eac3'/>
<id>urn:sha1:87274d0f22e1dfd99b2e5200e2fe75c1b804eac3</id>
<content type='text'>
This makes it easier to see which headers includes what.

The changes were done by running

    git grep -l '#\s*include'  \
        | grep -E '.(cc|h)$' \
        | xargs sed -i -E 's/(^\s*)#(\s*)include/\1#\2 include/'

To modify all include lines by adding a space, and then running
./git-clang-format.sh.
</content>
</entry>
<entry>
<title>Drop cacheiterators.h include</title>
<updated>2017-07-12T11:56:05Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2017-07-12T11:42:18Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=c46f94aa48a9707668c46118b3eec77ff318b78c'/>
<id>urn:sha1:c46f94aa48a9707668c46118b3eec77ff318b78c</id>
<content type='text'>
Including cacheiterators.h before pkgcache.h fails because
pkgcache.h depends on cacheiterators.h.
</content>
</entry>
<entry>
<title>avoid explicit types for pkg counts by auto</title>
<updated>2017-06-26T21:31:15Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2017-06-04T16:14:13Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=fc2055e1e08e4e3b662b0c5f67a0d0a57267acd3'/>
<id>urn:sha1:fc2055e1e08e4e3b662b0c5f67a0d0a57267acd3</id>
<content type='text'>
Changes nothing on the program front and as the datatypes are
sufficently comparable fixes no bug either, but problems later on if we
ever change the types of those and prevent us using types which are too
large for the values we want to store waste (a tiny bit of) resources.

Gbp-Dch: Ignore
</content>
</entry>
<entry>
<title>ensure generation of valid EDSP error stanzas</title>
<updated>2016-12-31T01:29:20Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2016-12-29T10:20:18Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=0161280405fe5aa256dc9df6a56106dd3a1a6f38'/>
<id>urn:sha1:0161280405fe5aa256dc9df6a56106dd3a1a6f38</id>
<content type='text'>
The crude way of preparing a message to be a multiline value failed at
generation valid deb822 in case the error message ended with a new line
like the resolving errors from apt do. apt itself can parse these, but
other tools like grep-dctrl choke on it, so be nice and print valid.

Reported-By: Johannes 'josch' Schauer on IRC
</content>
</entry>
<entry>
<title>edsp: try 2 to read responses even if writing failed</title>
<updated>2016-09-07T08:21:01Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2016-09-07T08:21:01Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=12b201da7c1d5e2beceae796151e4ebedc5bae97'/>
<id>urn:sha1:12b201da7c1d5e2beceae796151e4ebedc5bae97</id>
<content type='text'>
Commit b60c8a89c281f2bb945d426d2215cbf8f5760738 improved the situation,
but due to inconsistency mostly for planners, not for solvers. As the
idea of hiding errors if we show another error is a bit scary (as the
extern error might be a followup of our intern error, rather than the
reason for our intern error as it is at the moment) we don't discard the
errors, but if we got an extern error we show them directly removing
them from the error list at the end of the run – that list will contain
the extern error which hopefully gives us the best of both worlds.

The problem itself is the same as before: The externals exiting before
apt is done talking to them.

Reported-By: Johannes 'josch' Schauer on IRC
</content>
</entry>
</feed>
