<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apt/apt-pkg/depcache.cc, branch 1.1.2</title>
<subtitle>Debians commandline package manager</subtitle>
<id>https://git.kalnischkies.de/apt/atom?h=1.1.2</id>
<link rel='self' href='https://git.kalnischkies.de/apt/atom?h=1.1.2'/>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/'/>
<updated>2015-11-25T14:20:10Z</updated>
<entry>
<title>typo: run s#frontend#front-end# on all of src:apt</title>
<updated>2015-11-25T14:20:10Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2015-11-22T14:09:50Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=add81166f8ecb194ab5cf881200ab9d890abea6c'/>
<id>urn:sha1:add81166f8ecb194ab5cf881200ab9d890abea6c</id>
<content type='text'>
The manpages were fixed by Justin B Rye, lets deal with the rest now.

Git-Dch: Ignore
</content>
</entry>
<entry>
<title>sanify API to get 'the' candidate version</title>
<updated>2015-11-04T17:04:05Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2015-10-30T15:34:25Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=294a80209a0c6ea617a14fb2ae650d4fd329eab5'/>
<id>urn:sha1:294a80209a0c6ea617a14fb2ae650d4fd329eab5</id>
<content type='text'>
This was discussed a while ago on #debian-apt and now that I see myself
making this mistake lets bite the bullet and fix it in the easy way out
version: Using a new name which fits with a similar named setter and
deprecate the old method instead of 'hostily' changing API.

Closes: #803471
</content>
</entry>
<entry>
<title>Cleanup includes after running iwyu</title>
<updated>2015-08-17T10:01:45Z</updated>
<author>
<name>Michael Vogt</name>
<email>mvo@debian.org</email>
</author>
<published>2015-08-17T10:01:45Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=88a8975f156e452d9f3ebe76822b236e8962ebba'/>
<id>urn:sha1:88a8975f156e452d9f3ebe76822b236e8962ebba</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add GetPriority(VerIterator) to pkgDepCache::Policy</title>
<updated>2015-08-15T09:54:08Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2015-08-15T09:52:50Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=a0a6695515f8d8d7db3f52751d4d14f8266c286c'/>
<id>urn:sha1:a0a6695515f8d8d7db3f52751d4d14f8266c286c</id>
<content type='text'>
Also unify the case of considerFiles and ConsiderFiles to be
ConsiderFiles in all cases.

Gbp-Dch: ignore
</content>
</entry>
<entry>
<title>Deprecate SPtrArray&lt;T&gt; and convert everyone to unique_ptr&lt;T[]&gt;</title>
<updated>2015-08-13T09:31:00Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2015-08-13T09:28:32Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=98cc7fd2c1d397623960baf69ae3cec04a87a23e'/>
<id>urn:sha1:98cc7fd2c1d397623960baf69ae3cec04a87a23e</id>
<content type='text'>
More standardization
</content>
</entry>
<entry>
<title>C++11: Switch from auto_ptr to unique_ptr</title>
<updated>2015-08-13T09:30:59Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2015-08-13T08:43:49Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=47c37a1bfc2f2f372bf057bf68bde0b3b6f0ec8f'/>
<id>urn:sha1:47c37a1bfc2f2f372bf057bf68bde0b3b6f0ec8f</id>
<content type='text'>
This is nicer
</content>
</entry>
<entry>
<title>move manual-bit from 'oldlibs' pkg to its dependencies</title>
<updated>2015-08-10T15:27:59Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2015-08-10T14:08:21Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=5f4495e342e94a75b17ceed2fa05d689f050df7b'/>
<id>urn:sha1:5f4495e342e94a75b17ceed2fa05d689f050df7b</id>
<content type='text'>
oldlibs used to be in APT::Never-MarkAuto-Sections so that old
transition packages can be removed without causing the then
(autoinstalled) renamed package to be autoremoved. It isn't ideal
through as ideally you want the oldlibs package to be removed after
nothing depends on it anymore regardless of if you have once installed
it by hand or not – and if you had the package talking over (the
dependencies) should carry the manual bit now as they are the real deal
now.

As an added bonus if the package has no dependencies because it is an
oldlibs without a direct replacement you should move away from (like
lib1 and lib2 are currently in the archive, but there will hopefully
only be lib2 in the release) you get a lib1 marked as auto.

If the user still needs the oldlibs package for some reason all he has
to do is mark it as manual once as this move is only performed if a
installed package changes its section from a not-Move-Autobit-Sections
to a Move-Autobit-Sections.
</content>
</entry>
<entry>
<title>move APT::Never-MarkAuto-Sections handling to MarkDelete</title>
<updated>2015-08-10T15:27:59Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2015-08-10T12:44:14Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=7c2cc4a7bc999c8e07fba607354bfaa3b09118f9'/>
<id>urn:sha1:7c2cc4a7bc999c8e07fba607354bfaa3b09118f9</id>
<content type='text'>
Having the handling in MarkInstall means that it just effects
installation of the metapackage, but if the dependencies change the new
dependencies aren't protected (and the old dependencies are still
protected for no 'reason'). Having it in MarkDelete means that if a
metapackage is sheduled for removal all its currently installed
dependencies are marked as manual, which helps against both as in this
case there is no new/old and additionally if a user decides the
installation of a metapackage was wrong he can just remove it
explicitely avoid the manual marking entirely.
</content>
</entry>
<entry>
<title>mark again deps of pkgs in APT::Never-MarkAuto-Sections as manual</title>
<updated>2015-08-10T15:27:59Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2015-08-03T05:00:33Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=3cbeed985254de7e8d186ebebb69a659727eaeb0'/>
<id>urn:sha1:3cbeed985254de7e8d186ebebb69a659727eaeb0</id>
<content type='text'>
In 50ef3344c3afaaf9943142906b2f976a0337d264 (and similar for other
branches), while 'fixing' the edgecase of a package being in multiple
sections (e.g. moved from libs to oldlibs in newer releases) I
accidently broke the feature itself completely by operating on the
package itself and no longer on its dependencies…

The behaviour isn't ideal in multiple ways, which we are hopefully able
to fix with new ideas as mentioned in the buglog, but until then the
functionality of this "hack" should be restored.

Reported-By: Raphaël Hertzog &lt;hertzog@debian.org&gt;
Tested-By: Adam Conrad &lt;adconrad@ubuntu.com&gt;
Closes: 793360
LP: 1479207
Thanks: Raphaël Hertzog and Adam Conrad for detailed reports and initial patches
</content>
</entry>
<entry>
<title>split-up Dependency struct</title>
<updated>2015-08-10T15:27:18Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2015-07-13T14:28:21Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=71c9e95b223517b5f51c4627f6ad4cce8af0d901'/>
<id>urn:sha1:71c9e95b223517b5f51c4627f6ad4cce8af0d901</id>
<content type='text'>
Having dependency data separated from the link between version/package
and the dependency allows use to work on sharing the depdency data a bit
as it turns out that many dependencies are in fact duplicates. How many
are duplicates various heavily with the sources configured, but for a
single Debian release the ballpark is 2 duplicates for each dependency
already (e.g. libc6 counts 18410 dependencies, but only 45 unique). Add
more releases and the duplicates count only rises to get ~6 for 3
releases. For each architecture a user has configured which given the
shear number of dependencies amounts to MBs of duplication.

We can cut down on this number, but pay a heavy price for it: In my
many releases(3) + architectures(3) test we have a 10% (~ 0.5 sec)
increase in cache creationtime, but also 10% less cachesize (~ 10 MB).

Further work is needed to rip the whole benefits from this through, so
this is just the start.

Git-Dch: Ignore
</content>
</entry>
</feed>
