Version 0.1.11
~~~~~~~~~~~~~~
Released: 2008-04-05

* Backends:
 - conary: Added update (Ken VanDine)
 - poldek: Implement 'newest' filter (Marcin Banasiak)
 - yum: Don't mention yum so much in the detailed error text. rh#440701
 - yum: Fix YumBaseError message handling in _runYumTransaction (Luke Macken)
 - yum: Extended repo_signature_required and implemented new signature-install method (Tim Lauridsen)
 - yum: Fix one char at a line messages (Tim Lauridsen)
 - yum: Make get-requires pkg return the packages there need to removed if pkg is removed (Tim Lauridsen)
 - yum: Rewrite the yum search functions so that we filter out available packages. rh#440122 (Richard Hughes)
 - yum: Copy the basename filtering from yum2 into yum. rh#440066 (Richard Hughes)
 - yum: Replace unicode decoding errors with question marks. rh#439764 (Luke Macken)
 - yum: Fixed traceback in install_file. rhbz #439728 (Tim Lauridsen)
 - yum: Fix 'No package to instal' typo, fixes rh#439778 (Richard Hughes)
 - yum: Correct some grammar pointed out in rh#439780 (Richard Hughes)
 - yum2: Remove file extensions from the MetaDataMap (Luke Macken)
 - yum2: Set NoPercentageUpdates when doing a dep resolve (Richard Hughes)
 - zypp: Added rpm-exceptions (Stefan Haas)
 - zypp: Make more verbose if resolution failed (Stefan Haas)
 - zypp: Changes for libzypp 4.7.0 (Stefan Haas)
 - zypp: Check for valid package names before emitting. BNC#372429. (Scott Reeves)

* New features:
 - Add a hash table into PkExtra so we can see if the query is likely to succeed
   - This reduces the profile time from 340ms to 69ms on my machine (Richard Hughes)
 - Make libgbus send a signal when something is replaced on the bus (Richard Hughes)
 - The daemon will quit when the conf file is changed (Richard Hughes)
 - Add a new DBUS interface org.freedesktop.PackageKit.Notify so we can get system wide
   notifications from PackageKit, without having to bodge PkClient to do this for us. (Richard Hughes)
 - Add the NEWEST filter (Richard Hughes)
 - Change the API of GetRepoList(void) to GetRepoList(filter) (Richard Hughes)

* Bugfixes:
 - Use BUFSIZ chunks of memory in PkSpawn to use the entire page of memory (Richard Hughes)
 - Make PkRestart and PkConf use the same config file logic (Richard Hughes)
 - Correct some problems after Matthias' daemon review (Richard Hughes)
 - Constify *_get_type, it's top of the profile and could be unrolled (Richard Hughes)
 - Fix 'No package to instal' typo. rh#439778 (Richard Hughes)
 - Install pk-import-* into libexec as they are not meant to be run by users (Richard Hughes)
 - Display why the pk-import-* tools fail to open the PkExtra database. rh#439738 (Richard Hughes)
 - Resolve the path before passing it to the backend. rh#439692 (Richard Hughes)
 - When the backend has finished, manually set the allow cancel to FALSE (Richard Hughes)
 - Set the backend exit code to canceled when we cancel the transaction (Richard Hughes)
 - When asked to cancel, send ::set-allow-cancel(false) to update UI elements (Richard Hughes)
 - Warn when we are doing PkClient actions when we don't need to (Richard Hughes)
 - Update the dummy backend to be able to test the client tools (Richard Hughes)
 - Ignore some errors like 'Already finished' when we try to cancel (Richard Hughes)
 - Cancel a running client transaction if we try to reset it (Richard Hughes)
 - Be more paranoid about sqlite status (Richard Hughes)
 - Fix 'pkcon get repos' by actually waiting for the return value (Klaus Kämpf)

Version 0.1.10
~~~~~~~~~~~~~~
Released: 2008-03-28

* Backends:
 - apt2: Allow to cancel SearchName, SearchDetails and GetUpdates (Sebastian Heinlein)
 - apt2: Move the threaded decorator to the module (Sebastian Heinlein)
 - apt2: Add a decorator for functions that need to lock the cache (Sebastian Heinlein)
 - apt2: Fix the total progress bar for all actions (Sebastian Heinlein)
 - box: Implemented backend_update_packages (Grzegorz Dabrowski)
 - conary: Add stub for search-group (Ken VanDine)
 - opkg: Fix search name (Thomas Wood)
 - poldek: Add poldek backend (Marcin Banasiak)
 - poldek: Make GetRequires and GetDepends use the filter parameter (Marcin Banasiak)
 - poldek: Force unique package names and use the new PkFilter code (Marcin Banasiak)
 - poldek: Add GetUpdateDetail (Marcin Banasiak)
 - poldek: Make GetRequires use recursive for installed packages (Marcin Banasiak)
 - poldek: Improve percentage updates in UpdatePackages (Marcin Banasiak)
 - poldek: Don't try to update blocked package (Marcin Banasiak)
 - smart: Get the C file compiling again (James Bowes)
 - yum: Handle yum.Errors.GroupsError fd:#14906 (Debarshi Ray)
 - yum: Added what-provides support (Tim Lauridsen)
 - yum : Cleanup install_file and use code in current yum instead (Tim Lauridsen)
 - yum2: Use the forked decorator in more places (Sebastian Heinlein)
 - yum2: Send INFO_BLOCKED signal for packages that were not updated (Robin Norwood)
 - yum2: Add UpdatePackages method for future use (Robin Norwood)
 - yum2: Maybe implement cancel correctly (Robin Norwood)
 - yum2: Reset progress bar so percentage feedback is correct (Robin Norwood)
 - yum2: Make InstallFile bail out on a src.rpm (Tim Lauridsen)
 - yum2: Fix Cancel() action (Robin Norwood)
 - yum2: What-provides (Robin Norwood)
 - yum(2): Handle problem with getting repo data in a better way (Tim Lauridsen)
 - yum(2): Make install-file send a message if a newer file exits (Tim Lauridsen)
 - yum(2): Emit dep-resolve when doing dep resolving (James Bowes)
 - yum(2): Use status enum TEST_COMMIT and SIG_CHECK (Richard Hughes)
 - zypp: Update zypp status and fix crash (Scott Reeves)
 - zypp: GetRequires is now also usable for uninstalled packages (Stefan Haas)
 - zypp: Added GetUpdateDetail (Stefan Haas)
 - zypp: Changed opensuse to real vendor of the package (Stefan Haas)
 - zypp: Unitized commit process and added Update System (Stefan Haas)
 - zypp: Changed install-algorithm and connected KeyRing-Callback (Stefan Haas)
 - zypp: Require new libzypp 4.6 (Scott Reeves)
 - zypp: Remove the description causing markup parse errors (Scott Reeves)
 - zypp: Added update_packages (Stefan Haas)
 - zypp: Added what-provides (Stefan Haas)

* New features:
 - Don't queue StateHaschanged to fix rh:436840 (Richard Hughes)
 - Disable the cron script by default (Richard Hughes)
 - Use G_GNUC_WARN_UNUSED_RESULT to find a few bugs in the daemon (Richard Hughes)
 - Document PkClient with gtk-doc (Richard Hughes)
 - Don't queue duplicate GetUpdates in the daemon (Richard Hughes)
 - Add a filter parameter to GetRequires and GetDepends to fix fd:14838 (Richard Hughes)
 - Use the backend user in the dbus configuration files (Sebastian Heinlein)
 - Add a sensible error for installing source packages (Richard Hughes)
 - Add another status enum so we can do the 'waiting' UI elements better (Richard Hughes)
 - Increase speed of pk-import-desktop by an order of magnitude (Richard Hughes)
 - Log to a file if we have TransactionLogging specified (Richard Hughes)
 - Add PackageKitThread class which enhances the Thread class (Sebastian Heinlein)
 - Make pkcon when we have multiple possible packages (Richard Hughes)
 - Make libpackagekit force WAIT when the transaction is queued (Richard Hughes)
 - Turn UpdatePackage() into UpdatePackages() - this allows coolness (Richard Hughes)
 - Add RepoListChanged when a repo is added, removed or changed (Richard Hughes)

* Bugfixes:
 - Fix segmentation fault in pk-import-desktop fd:14920 (Debarshi Ray)
 - Changed signal PK_BACKEND_REPO_SIGNATURE_REQUIRED to avoid a segfault (Stefan Haas)
 - Don't SIGABRT when trying to run a second instance of the daemon (Richard Hughes)
 - Protect pk_strsafe against NULL text (Thomas Wood)
 - Fix many sparse warnings and small memory leaks (Richard Hughes)
 - Backend Unicode handling improvements (Luke Macken)
 - Remove the stderr path for the backends as they sometimes get unsynchronised (Richard Hughes)
 - Fix bashisms in autogen.sh (Alex Converse)
 - Fix so that authentication requirements are consistent (Robin Norwood)
 - Add --enable-developer to fix developer warnings rh:439216 (Richard Hughes)
 - Only enable time remaining calculations it if PK_IS_DEVELOPER is set (Richard Hughes)
 - Don't set the STATUS_CANCEL state in the backend, do it in the runner (Richard Hughes)
 - Manually flush the output rather than relying on python to do it for us (Richard Hughes)

Version 0.1.9
~~~~~~~~~~~~~
Released: 2008-03-04

* Backends:
 - apt2: Add a simple profiler and a test script (Sebastian Heinlein)
 - apt2: add Refresh, InstallPackage, RemovePackage, UpdateSystem (Sebastian Heinlein)
 - apt2: Implement SearchDetails using the xapian database (Sebastian Heinlein)
 - apt2: unlock the backend after reopening the cache (Sebastian Heinlein)
 - apt2: Adapt new basename filter API change (Sebastian Heinlein)
 - opkg: Call no percentage updates before the install thread starts (Thomas Wood)
 - opkg: Make description search case insensitive (Thomas Wood)
 - opkg: Implement search_group method (Thomas Wood)
 - opkg: Consolidate search threads into one function and implement description search (Thomas Wood)
 - opkg: Pass allow_deps and autoremove flags to libopkg (Thomas Wood)
 - opkg: protect against packages not found in the package hash (Thomas Wood)
 - yum2: Add an experimental InstallPublicKey method (Robin Norwood)
 - yum2: Add a timeout on the yum dbus backend (Robin Norwood)
 - yum2: Add skip_broken flag to update the system even if there are dep errors (Robin Norwood)
 - yum2: Fix error code when package is not found for install (Robin Norwood)
 - yum2: Make caching more lazy for certain calls (Robin Norwood)
 - yum2: Over DBUS, we don't need to use semicolons instead of newlines (Robin Norwood)
 - yum: Make install and update handle multiple packages (Tim Lauridsen)
 - zypp: Assign the right group to a package (Stefan Haas)
 - zypp: Changed backend to use sat::solvables (Stefan Haas)
 - zypp: fix to build with newer libzyp (4.2.9) (Scott Reeves)
 - zypp: Minor changes because of changes in the zypp api (Stefan Haas)

* New features:
 - Add another error constant: cannot-cancel (Richard Hughes)
 - Add a new configuration option --with-backend-user (Sebastian Heinlein)
 - Added a new filter 'basename' to the list of allowed filter types and use with GetUpdate (Richard Hughes)
 - Make the PackageKit actions localised, and generally enable gettext (Richard Hughes)
 - Add autoremove boolean to the PackageRemove method (Thomas Wood)
 - Change the daemonBackend to fork to perform actions (Robin Norwood)
 - Use colour on the terminal to help me debug warnings and errors (Richard Hughes)
 - Change the daemonBackend to fork to perform actions (Rob Norwood)
 - Use Python's logging instead of print statements in the daemonBackend (Sebastian Heinlein)

* Bugfixes:
 - Fix packagekitd startup failure due to NetworkManager (Richard Hughes)
 - Make the backends use a common interface and path (Richard Hughes)
 - Clean up dbus config files (Robin Norwood)
 - Run intltoolize in the autogen.sh script (Thomas Wood)
 - Make the PkClient gobjects return GError (Richard Hughes)
 - Keep PolKitContext object up to date when we authorise (Richard Hughes)
 - Add some icons and vendor_url's to the policykit actions (Richard Hughes)
 - Remove the artificial 1024 char limit on error_code messages (Richard Hughes)
 - Add more checks to ensure we can't output data after we called error-code (Richard Hughes)
 - Initial version of packagekit cron support for headless servers (Richard Hughes)
 - Don't try to set an error if we cancel an unused transaction (Richard Hughes)
 - Properly detect NoPercentageUpdates at startup (Richard Hughes)
 - Fixed possible GError segfault in the client library (Grzegorz Dabrowski)

Version 0.1.8
~~~~~~~~~~~~~
Released: 2008-02-21

* Backends:
 - apt: some random fixes to get it work again (Sebastian Heinlein)
 - apt2: initial work on a dbus based backend introduced as apt2 (Sebastian Heinlein)
 - apt2: implement GetDescription (Sebastian Heinlein)
 - apt2: fix SearchName (Sebastian Heinlein)
 - apt2: fix a typo in GetUpdates (Sebastian Heinlein)
 - yum: check for missing package in GetUpdateDetail call (Robin Norwood)
 - yum: change throttling policy: at init, change to 90%, throttle to 60% for UpdateSystem call (Robin Norwood)
 - yum: Refresh the yum cache when it is determined to be invalid (Robin Norwood)
 - yum: Make _refresh_yum_cache and RefreshCache work similarly (Robin Norwood)
 - yum2: Added test script to call most of the YumBackend methods (Tim Lauridsen)
 - yum2: Fixed unicode decode error in SearchDetails (Tim Lauridsen)
 - yum2: add call to _check_init there check if Init() has been called (Tim Lauridsen)
 - yum2: added GetPackages(filters) DBus method (Tim Lauridsen)
 - zypp: libzypp >= 4.2.3 is now needed (Stefan Haas)
 - zypp: Added SearchFiles (Stefan Haas)
 - zypp: Added SearchDetails (Stefan Haas)
 - zypp: Added GetRequires (Stefan Haas)
 - zypp: added missing stuff of GetDescription (Stefan Haas)

* New features:
 - Allow pkcon to actually remove dependancies on user prompt (Richard Hughes)
 - Add some FAQ text on user interaction during the transaction (Richard Hughes)
 - Add the ServicePack functionality - no backends support it yet (Richard Hughes)
 - Enforce that finished is sent 500ms after error_code (Richard Hughes)
 - Add some more self checks to PkBackend (Richard Hughes)
 - Add the supported filter to search for supported packages (Richard Hughes)

* Bugfixes:
 - Unload nicely on ctrl-c - including closing down the backends (Richard Hughes)
 - Fix a tricky crash (use after unref) in pk_client_finished_cb (Richard Hughes)
 - Use pk_client_set_synchronous() in pkcon to remove loads of code (Richard Hughes)
 - Use $VAR$ syntax in makefiles, not @VAR@ (Stepan Kasal)
 - Do not list check_PROGRAMS again in noinst_PROGRAMS (Stepan Kasal)
 - Remove the dbus at_console rule for the backends (Richard Hughes)
 - Try harder to get a translation when we have stored a base locale (Richard Hughes)
 - Add finalizer for libgbus to free some memory on unload (Richard Hughes)
 - Clear the hash when we reset PkClient, else we fail to show repeat search results (Richard Hughes)

Version 0.1.7
~~~~~~~~~~~~~
Released: 2008-02-14

* Backends:
 - apt: update to latest API (Tom Parker)
 - apt: add get_updates and get_update_detail (Michael Vogt)
 - apt: cleanup of Package class, by making it a subclass of apt.Package (Tom Parker)
 - apt: make sure ordering of versions is installed one first (Tom Parker)
 - apt: add initial hacky install-file support (Tom Parker)
 - apt: add recursion to get-depends (Tom Parker)
 - apt: add repo enable (Tom Parker)
 - box: ported to the new API (Grzegorz Dabrowski)
 - ipkg: remove ipkg backend as it has been superseded by opkg (Thomas Wood)
 - opkg: forward opkg messages through PackageKit (Thomas Wood)
 - opkg: compare the current and previous urls properly during cache refresh
 -      download progress callback
 - opkg: hook into download progress when updating package lists (Thomas Wood)
 - opkg: hook into download progress callback when installing packages (Thomas Wood)
 - opkg: implement get_groups function (Thomas Wood)
 - conary: implement update_detail (Ken VanDine)
 - conary: provide summary data (Ken VanDine)
 - conary: query the correct troveSource when getting the files list (Elliot Peele)
 - conary: Added get-update-detail (Ken VanDine)
 - yum: several utf-8 encoding fixes (Tim Lauridsen)
 - yum: fix search-file to be much faster (Tim Lauridsen)
 - yum: fixed ERROR_SIGNATURE_NOT_IMPORTED traceback (Tim Lauridsen)
 - yum: added get-packages and make the yum backend more resistant to UTF-8 decoding (Tim Lauridsen)
 - yum2: merge in a new backend that uses the dbus service activation.
   It does not work yet... (Tim Lauridsen, Robin Norwood, Richard Hughes)
 - zypp: move to PkBackendThread (Scott Reeves)

* New features:
 - Use a single instance backend. This allows us to keep processes open over
   transactions, and should allow us to speed things up an order of magnitude
   in the future (Richard Hughes)
 - Add PkExtra and PkExtraObj gobjects to retrieve extra metadata from a
   system store (Richard Hughes)
 - Add client side filtering support so we can trivially strip out the correct
   package when we have it installed and available in many repos (Richard Hughes)
 - Add a cancelling state, as cancelling will take some time (Richard Hughes)
 - Add a specspo import utility to get translations from specspo (Richard Hughes)
 - Add a .desktop import utility for icons and translated summaries (Richard Hughes)

* Bugfixes:
 - Rationalise the AllowCancel nomenclature and make it standard throughout -
   this should fix lots of bugs where the cancel button was the wrong state in
   client applications (Richard Hughes)
 - Rename ENUM_PROCESS_QUIT to ENUM_TRANSACTION_CANCELLED (Richard Hughes)
 - Allow building more than one backend for a system (Richard Hughes)
 - Add a new method that lets us search for items in an enumerated list
   with a priority (Richard Hughes)
 - Raise an exception if an action is attempted on an unlocked python
   daemon backend (Robin Norwood)
 - More en_UK to en_US fixes in comments (Richard Hughes)
 - The dbus interface and path should be common between backends (Richard Hughes)
 - Make the experimental dbus backend asyncronous (Richard Hughes)
 - Warn the user the security framework name is invalid (Richard Hughes)
 - Improve gtk-doc support (Thomas Wood)
 - Check (and warn) for percentages bigger than 100% (Richard Hughes)

Version 0.1.6
~~~~~~~~~~~~~
Released: 2008-01-18

* Backends:
 - ipkg: use threads for refresh cache and get description functions (Thomas Wood)
 - ipkg: Implement remove package function (Thomas Wood)
 - ipkg: Implement install package (Thomas Wood)
 - ipkg: implement initial get_updates function (Thomas Wood)
 - ipkg: move get_depends function into a thread (Thomas Wood)
 - ipkg: protect against NULL user input (Thomas Wood)
 - ipkg: do not run init and destroy functions more times than required (Thomas Wood)
 - ipkg: add backend_update_package function (Thomas Wood)
 - ipkg: improve devel filter (Thomas Wood)
 - ipkg: implement update system function (Thomas Wood)
 - ipkg: Add Installed, Development and GUI filter support (Thomas Wood)
 - yum: implemented vendor_url for urls not bugzilla or cve (Tim Lauridsen)
 - yum: Implemented bugzilla_url, cve_url, vendor_url in GetUpdateDetails (Tim Lauridsen)
 - yum: make the updates severity work and show all 3 types (Tim Lauridsen)
 - yum: fix missing package signals when downloading packages with '-' in names (Tim Lauridsen)
 - yum: fix percent not shown if the bump is < 1% (Tim Lauridsen)
 - yum: make get-update-detail work better and dont brake on missing update metadata (Tim Lauridsen)
 - yum: catch RepoError in get-updates and submit ERROR_NO_CACHE to frontend (Tim Lauridsen)
 - yum: make Yum Traceback send the right values to the frontend (Tim Lauridsen)

* New features:
 - Add initial ipkg backend (Thomas Wood)
 - Add the visible filter (Richard Hughes)
 - Add some more info and group enums (Richard Hughes)
 - Replace the UpdateDetail url parameter with vendor, bugzilla, cve (Richard Hughes)
 - Add PK_STATUS_ENUM_FINISHED when we are just watching status (Richard Hughes)
 - Add a pm-utils hook so we can drop caches and check for updates on resume (Richard Hughes)
 - First stab at daemonizing the yum backend (Robin Norwood)

* Bugfixes:
 - Only do the 100 limit count on emitted packages, not on searched packages.
   This bug becomes evident when using a couple of filters and searching a large number
   of package_ids (Richard Hughes)
 - An empty url list should be empty, not 'none' (Richard Hughes, Matthias Clasen)
 - Use $(LIBTOOL) rather than hardcoding libtool filename to prevent problems
   when cross compiling (Thomas Wood)
 - Add details about what we are winging about in the daemon messages (Richard Hughes)
 - Include pk-apt-search.h in the tarball to fix fd:13406 (Richard Hughes)
 - Capture and show the Message() in pkmon (Richard Hughes)
 - Only look for helpers and the config file in a local root if we have configured
   with --enable-local to make people less uneasy with path globbing (Richard Hughes)
 - Finish removing filelist from package description (James Bowes)

Version 0.1.5
~~~~~~~~~~~~~
Released: 2007-12-21

* Backends:
 - apt: Commit a general cleanup patch (Michael Vogt's)
 - apt: Add GetRepoList support (Tom Parker)
 - apt: Fix resolution of not installed packages (Tom Parker)
 - apt: Do recursive requires (Tom Parker)
 - apt: Add GetRequires and GetDepends (Tom Parker)
 - apt: Reduce whining about lack of status messages (Tom Parker)
 - conary: Add better exception handling (Elliot Peele)
 - conary: Add some extra sanity checks (Elliot Peele)
 - pisi: Provide status information (S.Çağlar Onur)
 - yum: Add support for the "free" filter (Robin Norwood)
 - zypp: Added initial stab at backend_get_updates() for zypp backend (Boyd Timothy)
 - zypp: Add RemovePackage (Boyd Timothy)
 - zypp: SearchName will return both installed and available packages (Boyd Timothy)
 - zypp: Query the SQL database directly and instead just query the cached
   repository information (Boyd Timothy)
 - zypp: Added some sub_progress information for general repo events (Boyd Timothy)
 - zypp: Add Refresh cache method (Boyd Timothy)

* New features:
 - Add exception handler so unhandled exceptions are sent as a error signal to
   packagekit (Tim Lauridsen)
 - Fully re-integrate sqlite search backend for apt - we've now reintegrated
   everything from apt.old, so we're dropping that at the same time (Tom Parker)
 - Add me, Tim Lauridsen, S.Çağlar Onur, Ken VanDine and Elliot Peele to the
   authors html page (All)
 - Document a whole lot more with gtk-doc and generate some HTML (Richard Hughes)
 - Add a bugreport script so we can get info about the system (Richard Hughes)
 - Add generic licence parsing and add all the enums (Robin Norwood)

* API changes:
 - Add in a 'free' filter enum to filter non-free and free packages (Richard Hughes)

* Bugfixes:
 - PackageKitExceptions now include the original DBusException (Tom Parker)
 - Use the correct bus name and object path in the yum plugin (Luke Macken)
 - Fix PackageKit to build against PolicyKit 0.7 (Matthias Clasen)
 - Change from 'licence' to 'license' throughout (Robin Norwood)
 - Check the user is root before we run packagekitd (Richard Hughes)
 - Do the threading correctly in the threaded backends (Richard Hughes)
 - waf: Fix x86_64 build, missing -fPIC (Gustavo Carneiro)

Version 0.1.4
~~~~~~~~~~~~~
Released: 2007-11-26

* Backends:
 - yum: Mark our status as QUERY when we have finished setting up the
   transaction so we get the correct icon (Richard Hughes)
 - yum: Improved yum UpdateMetadata handling for reboot-suggested (Luke Macken)
 - conary: Add GetFiles (Elliot Peele)
 - conary: Enable Cancel (Elliot Peele)
 - conary: Add Resolve support (Elliot Peele)
 - conary: Added new python files to distfiles (Ken VanDine)
 - zypp: add initial backend code (Boyd Timothy, Scott Reeves)
 - zypp: Add GetRepoList (Boyd Timothy)
 - zypp: emit the correct status from the backend (Boyd Timothy)
 - zypp: Add InstallPackage method (Boyd Timothy, Scott Reeves)
 - zypp: Query SQL database to resolve names (Scott Reeves)
 - box: set Status more often (Grzegorz Dabrowski)
 - box: Remove all the shell helpers and use C implementations (Grzegorz Dabrowski)

* New features:
 - Lots more waf build system updates - it now builds and installs 100%
   but requires waf from svn (Gustavo Carneiro, Daniel Svensson, Richard Hughes)
 - Add the requires check before remove in pkcon (Richard Hughes)
 - Monitor when the calling program exits from the system bus (Richard Hughes)
 - waf: Add unit test reporting in waf buildsystem (Daniel Svensson)
 - Convert all the active methods async. This lets us get the sender so we can
   watch to see if they fall off the bus or not (Richard Hughes)
 - Add a yum-packagekit plugin to refresh the PackageKit data when a manual
   update command is run. Code is copied from yum-updatesd in yum-utils and
   was authored by James Bowes.
 - Install the bash completion file so it works by default (Richard Hughes)
 - Add into pkcon to get the time since something was checked (Richard Hughes)
 - Log when the last command is run so we can work out how long since a command
   was run. This allows us to accuratly preseve the "session" setting of
   GetUpdates policy (Richard Hughes)

* API changes:
 - Add a status enum so we get the correct icon when getting data (Richard Hughes)
 - Add a info enum for blocked updates (Richard Hughes)
 - Add some more status constants for backend transaction progress (Richard Hughes)
 - Add messages to be shown from the transaction to the session (Richard Hughes)

* Bugfixes:
 - Use a different PolicyKit permissions for UpdateSystem and UpdatePackage
   as both were defined as the same thing in the policy (Richard Hughes)
 - Build fixes with autogen.sh (Tom Parker, Boyd Timothy)
 - Free memory in case of dbus error (Grzegorz Dabrowski)
 - Fix a crash in pk_transaction_list_get_array (JP Rosevear)
 - We should only invalidate the internal cache if the transaction succeeded.
   This stops a failed update-system from clearing the cache (Richard Hughes)
 - Fix the manpage corruption issue described in Bug #12796 (Luke Macken)

Version 0.1.3
~~~~~~~~~~~~~
Released: 2007-11-10

* Backends:
 - smart: Add installed filter (James Bowes)
 - smart: Add search-details (James Bowes)
 - smart: Add install-file (James Bowes)
 - PiSi: Add gui filter (S.Çağlar Onur)
 - yum: Add gui filter (Tim Lauridsen)
 - yum: Add repo-set-data (Tim Lauridsen)
 - yum: Add get-update-detail (Tim Lauridsen)
 - yum: Add get-requires (Tim Lauridsen)
 - box: Use C API with percent updates for cache refreshing (Grzegorz Dabrowski)

* New features:
 - Split out the KDE, GNOME and XFCE desktop groups (Richard Hughes)
 - Add power-management package group (S.Çağlar Onur)
 - Add 'make gcov' and 'make gprof' for unit testing (Richard Hughes)
 - Add a metric ton of unit tests (Richard Hughes)
 - Check backends do not send finished more than once (Richard Hughes)
 - Add enums builder for python (Tom Parker)
 - Add the start of a waf build system - untested and unsupported.
   (Richard Hughes, Alberto Ruiz, Daniel Svensson)
 - Add initial work for multiple apt searching backends (Tom Parker)

* API changes:
 - PkClient restart should be an enumerated type, not free text (Richard Hughes)

* Bugfixes:
 - Replace the g_strjoinv and use pk_strbuild_va to append a va_list to fix
   a crash on i86_64 (Richard Hughes)
 - Immediate exit has to wait a few cycles for registration (Richard Hughes)
 - Check for existance of apt_pkg python module with apt backend (Tom Parker)
 - yum: Emit no-cache in resolve if the cache is invalid (Tim Lauridsen)
 - Correct typos and thinkos, and add a few more application notes to the
   developer documentation (Richard Hughes)
 - Fix memleaks in a few places of the daemon code (Grzegorz Dabrowski)
 - Fix memleaks in PkClient and PkJobList (James Bowes)
 - Don't emit error for the transaction if cancel is not valid - cancel
   operates on an existing tid and shouldn't have control of the finished or
   error signals (Richard Hughes)
 - Parse updatedetail from stdout and discover get_update_detail (Richard Hughes)
 - Update packagekit.pc.in to require glib and gobject (Tom Parker)

~~~~~~~~~~~~~
Version 0.1.2
~~~~~~~~~~~~~
Released: 2007-11-01

* Backends:
 - Add a new python based APT backend (Ali Sabil)
 - Significant smart backend updates (James Bowes)
 - Significant PiSi backend updates (S.Çağlar Onur)
 - More yum functionality (James Bowes, Tim Lauridsen)
 - More box functionality (Grzegorz Dabrowski)

* New features:
 - Allow PkClient to be set promiscuous, i.e. to report all activity and use to
   get the errors and completions (Richard Hughes)
 - Add pk-backend-python.[c|h], for common spawning functions for python
   backends and switch the backends to use them (James Bowes)
 - Use pk_strzero, pk_strlen and pk_strcmp to increase performance and
   potentally improve security (Richard Hughes)
 - Add resolve support to pkcon get depends/requires/description/updatedetail
   (S.Çağlar Onur)
 - Try to guess the remaining time of the transaction using a super nifty
   algorithm (Richard Hughes)
 - Add Cleanup and Obsoleting as info states so we don't scare the user with
   DELETING when they are doing an upgrade (Richard Hughes, Tim Lauridsen)

* API changes:
 - Switch the discrete GetPercentage and GetSubPercentage to a GetProgress
   method that allows us to report remaining and elapsed time into the
   client UI (Richard Hughes)

* Bugfixes:
 - Sanitise more text from the backends in case the backend sends invalid or
   malicious text (Richard Hughes)
 - Defer destroying the backend for 5 seconds so we can query it in the
   finished handler in clients (Richard Hughes)
 - Add GetFiles method so we don't slow down the GUI box getting the file list
   every time we click a package (James Bowes)
 - Calculate progress bar length based on terminal columns (James Bowes)
 - Convert RefreshCache to a privileged operation but with default to allow
   when on active console. The distro can then patch this default to whatever
   depending on the security policy - and the admin can of course change the
   default. (S.Çağlar Onur)

~~~~~~~~~~~~~
Version 0.1.1
~~~~~~~~~~~~~
Released: 2007-10-23

* New backends:
 - A SMART backend (James Bowes)
 - A PiSi backend (S.Çağlar Onur)

* New features:
 - A better, easier to use website; http://www.packagekit.org (Richard Hughes)
 - Added missing install-file.py so we can do local rpm installs (Tim Lauridsen)
 - Be ultra-paranoid about validating input from the user (Richard Hughes)
 - Send SIGQUIT and then SIGKILL after a little delay, so we can clean up the
   backends nicely by unlocking when we cancel (Richard Hughes)
 - Add resolve functionality in pkcon to allow non-package_id use, for instance
   'pkcon remove gimp' now does the right thing (Richard Hughes)
 - Display a pulsing progress bar for no-progress-updates and percentage-update
   that is shown when using a console (James Bowes)
 - Remove the hard dependency on NetworkManager so other networking stacks
   can be used instead (S.Çağlar Onur, Richard Hughes)
 - Add a filter parameter for Resolve() so we can do the filtering in the
   spawned backend without duplicating code (James Bowes, Richard Hughes)
 - Substantial additions to the box backend (Grzegorz Dabrowski)
 - Add GetRepoList and RepoEnable to the yum backend (Tim Lauridsen)
 - Add bash completion script for pkcon (James Bowes)
 - Get the repo list for the aplm backend (Andreas Obergrusberger)

* API changes:
 - Store the transaction database in /var/lib rather than /var/db (James Bowes)
 - Don't expose the private list in PkTaskList, instead use verified functions
   to ensure we can't corrupt data accidentally (Richard Hughes)
 - Don't export the private data array in PkClient or PkPackageList - this
   breaks API, so the library version has been bumped (Richard Hughes)

* Bugfixes:
 - Fix the resolve method parameter passing - now pk-install-package should work
   correctly (James Bowes)
 - Fix all the copyright notices to be a standard GPL2+ boilerplate license
   text (Tom Parker, Robin Norwood)
 - Dist the local apt headers so the apt backend can be compiled from a tarball
   rather than just from git (Richard Hughes)
 - Fix a 1-in-10 random daemon startup crash when backends do libnm_glib init,
   shutdown, init, shutdown repeatedly (Richard Hughes)
 - Added locking in the yum backend to allow simultaneous use of the yum command
   line tool or yum-updatesd (Tim Lauridsen)
 - Fix NoPercentageUpdates validity checking (James Bowes)

~~~~~~~~~~~~~
Version 0.1.0
~~~~~~~~~~~~~
Released: 2007-10-16

* The first public release of PackageKit:
 - New gobject client library for session software to easily talk to PackageKit.
 - Asynchronous API that does not block.
 - Daemon that can queue and manage multiple simultaneous blocking and
   non-blocking transactions
 - Client applications (pkcon and pkmon) that interact with PackageKit on the
   command line without any GUI dependencies
 - Many compiled and scripted backends: conary, yum, apt, box, alpm
 - Comprehensive docbook documentation
 - Daemon configuration parameters in etc
 - Module level unit tests as standard
 - Python backend and frontend helper libraries
 - Transaction logging and capability exports for GUI tools
 - HAL locking supported for not-to-be interrupted phases of the transaction
 - NetworkManager integration for network state
 - PolicyKit integration for fine-grained permission control.

