Changes to libqapt mostly done, soliciting feedback and review.

Michael Stemle themanchicken at
Wed Dec 18 18:22:43 UTC 2013

Aleix, much thanks! I appreciate the feedback.

That's where the test lives (soon to be plural once I'm done with this
push). It's a Perl convention (I started doing TDD years ago with Perl and
kinda just got stuck on the conventions), and I'd be happy to adapt to a
different convention if it would be more appropriate.

If you `make test` you'll see that my test runs (it'll prompt for a
password for polkit, but it won't modify your /etc files, only files in

On Wed, Dec 18, 2013 at 12:06 PM, Aleix Pol <aleixpol at> wrote:

> On Sat, Dec 14, 2013 at 8:00 AM, Michael Stemle <themanchicken at>wrote:
>> Hey all, I have mostly finished my changes to libqapt. Below is the
>> changelog for this change as well as JonT's as-of-yet un-released changes
>> upon which my changes are based.
>> Please give me any feedback you may have. I'm going to continue to go
>> through it with the KDE standards in mind, but if you have any tools which
>> automatically validate code and you notice I'm failing, please link me to a
>> document showing me how to run the validation myself so that I can make
>> sure that I can get the problems resolved.
>> Also, there are warnings along the lines of:
>> /home/manchicken/Documents/Devel/kubuntu/libqapt/src/package.cpp: In
>> member function ‘void QApt::Package::setPurge()’:
>> /home/manchicken/Documents/Devel/kubuntu/libqapt/src/package.cpp:1270:24:
>> warning: ‘void pkgProblemResolver::InstallProtect()’ is deprecated
>> (declared at /usr/include/apt-pkg/algorithms.h:137)
>> [-Wdeprecated-declarations]
>>      Fix.InstallProtect();
>>                         ^
>> but I don't know libapt-pkg very well. If you know what the correct way
>> to resolve these errors is, please shoot me a message.
>> Much thanks.
>> Here's the git branch:
>> Changes:
>> 2.1.1:
>> ======
>> - Features:
>>   * Handles multiple sources.list-formatted files
>>   * Supports arbitrary sources.list loading, parsing, and writing
>>     (meaning you can load any source file directly, or use the default
>> set.)
>>   * Added the ability to query a list of all loaded sources.list files.
>>   * You can now fetch only the files for a specific repository.
>> - Bugfixes:
>>   * There was a bug in the unreleased alpha where removing all entries
>> from
>>     any file could potentially result in overwriting the defaulatet
>> /etc/apt/sources.list.
>> 2.1: (as of 2.1 alpha, unreleased)
>> ======
>> - Features:
>>   * Added a new SourcesList class for manipulating APT source list files.
>>   * Added a new SourceEntry class for manipulating individual APT sources
>> within source list
>>     files.
>>   * Added a "frontend capabilities" API which frontends use to advertise
>> which forms of user
>>     interaction they support during the commit process. (Config file
>> conflict, untrusted packages
>>     prompt, debconf, etc) This will prevent frontends that don't
>> explicitly support these
>>     interactions from hanging the commit process indefinitely.
>>   * Add support for the new Synaptic marking file syntax (BKO: #314549)
>> - Bugfixes:
>>   * Stop leaking a file descriptor when reading APT pin files.
>>   * Stop taking the address of a temporary variable in the package search
>> function.
>> --
>> ~ Michael D. Stemle, Jr.
>> --
>> kubuntu-devel mailing list
>> kubuntu-devel at
>> Modify settings or unsubscribe at:
> Hi Michael,
> I'm happy to see that you're being so thorough in the development of those
> features libqapt (especially with the addition of unit tests, really
> appreciated). I'm not the most adequate person to approve the patch, but as
> a muon developer I'd really like to see these changes in.
> By the way, why does it have a directory called "t"?
> Aleix
> --
> kubuntu-devel mailing list
> kubuntu-devel at
> Modify settings or unsubscribe at:

~ Michael D. Stemle, Jr.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the kubuntu-devel mailing list