# ChangeLog for profile directory
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
# $Header: /var/cvsroot/gentoo-x86/profiles/ChangeLog-2009,v 1.1 2012/01/02 19:14:02 dilfridge Exp $
#
# This ChangeLog should include records for all changes in profiles directory.
# Only typo fixes which don't affect portage/repoman behaviour could be avoided
# here. If in doubt put a record here!

  31 Dec 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask KOffice 1.6.3 for removal.

  30 Dec 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask games-emulation/mupen64 for removal.

  29 Dec 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask metasploit and fe3d since they use SCMs to fetch sources.

  29 Dec 2009; Jonathan Callen <abcd@gentoo.org> package.mask:
  Mask sys-apps/dchroot

  29 Dec 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking sys-apps/count for QA removal.

  28 Dec 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask app-mobilephone/moto4lin and net-p2p/dc-qt for removal.

  28 Dec 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking sys-apps/sdd for QA removal.

  27 Dec 2009; Ulrich Mueller <ulm@gentoo.org> updates/4Q-2009,
  package.mask:
  Move app-editors/emacs-cvs to app-editors/emacs-vcs.

  27 Dec 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask x11-themes/gtk-engines-qt for removal.

  27 Dec 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask x11-libs/kylixlibs3-borqt for removal.

  27 Dec 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask media-sound/k3guitune and media-libs/akode for removal.

  27 Dec 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask app-i18n/kurso-de-esperanto for removal.

  27 Dec 2009; Torsten Veller <tove@gentoo.org> package.mask:
  Mask dev-perl/jcode_pl for removal (#298215)

  26 Dec 2009; Jeroen Roovers <jer@gentoo.org> default/linux/hppa/use.mask,
  package.mask:
  Remove media-gfx/viewer mask (bug #247737).

  26 Dec 2009; Alex Alexander <wired@gentoo.org> package.mask:
  removed zen-sources live ebuild mask, it is keywordless

  26 Dec 2009; <hwoarang@gentoo.org> package.mask:
  Mask zen-sources 2.6.32_rc releases

  25 Dec 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask dev-util/valkyrie for removal.

  25 Dec 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask x11-misc/bbconf for removal.

  25 Dec 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Add mingw64-runtime to the crossdev mask.

  24 Dec 2009; Andrey Grozin <grozin@gentoo.org> base/package.use.mask,
  arch/amd64/package.use.mask, arch/x86/package.use.mask:
  sci-mathematics/maxima USE flag openmcl is for amd64 and x86 only

  24 Dec 2009; Peter Volkov <pva@gentoo.org> package.mask:
  Masking x11-plugins/msn-pecan release candidate. Upstream supposes that we
  keep such packages away from users. bug #292321

  23 Dec 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking media-gfx/viewer for QA removal.

  23 Dec 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask =sys-process/psmisc-22.8 wrt bug #297423.

  23 Dec 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Prepare preventive mask for drizzle.

  23 Dec 2009; Víctor Ostorga <vostorga@gentoo.org> package.mask:
  Masking net-dns/ldapdns for removal, bug #247956

  23 Dec 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask x11-misc/xplore for removal.

  22 Dec 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask libnemesi (unfetchable).

  22 Dec 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking dev-libs/libredblack for QA removal.

  22 Dec 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking net-libs/libwhisker for QA removal.

  21 Dec 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask media-gfx/grender and media-gfx/maya for removal.

  21 Dec 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask app-dicts/vdict* for removal.

  20 Dec 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask dev-ruby/test-unit since it's only needed for 1.9.

  20 Dec 2009; Peter Volkov <pva@gentoo.org> package.mask:
  Drop net-analyzer/cacti-cactid mask since package was removed from the
  tree.

  18 Dec 2009; Markus Meier <maekke@gentoo.org> package.mask:
  remove enblend-4.0 rc masking as final version is in tree

  17 Dec 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking media-video/cinepaint for QA removal.

  17 Dec 2009; Jeremy Olexa <darkside@gentoo.org> arch.list,
  +prefix/linux/arm/make.defaults, +prefix/linux/arm/parent, profiles.desc:
  Add experimental arm-linux profiles for Gentoo Prefix

  16 Dec 2009; Markus Meier <maekke@gentoo.org> package.mask:
  remove hugin from mask as final version is out, change mask to libpano13

  16 Dec 2009; Samuli Suominen <ssuominen@gentoo.org>
  targets/desktop/make.defaults, targets/desktop/package.use:
  Enable USE mng in make.defaults for desktop profile as required by
  x11-libs/qt-gui:4. Do previous in make.defaults because it's a small
  library but set mysql, sql and webkit in package.use separately for
  kde-base/kde-meta wrt #291996.

  16 Dec 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking sys-apps/compare for QA removal.

  16 Dec 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking dev-ruby/ruby-xlib for QA removal.

  14 Dec 2009; Markos Chandras <hwoarang@gentoo.org> package.mask:
  sys-fs/dazuko has been dropped wrt bug #278414

  14 Dec 2009; Jonathan Callen <abcd@gentoo.org> package.mask:
  Mask qca:1, qca-tls

  14 Dec 2009; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Remove mask for app-emacs/ngnus after removal of the package, bug 293302.
  Add mask for app-editors/emacs-vcs, preparing for package move.

  14 Dec 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking media-gfx/giram for QA removal.

  13 Dec 2009; Rémi Cardona <remi@gentoo.org> base/use.mask,
  desc/video_cards.desc:
  drop "vermilion" from VIDEO_CARDS in all profiles

  13 Dec 2009; Rémi Cardona <remi@gentoo.org> desc/video_cards.desc,
  hardened/amd64/use.mask, hardened/ppc64/use.mask:
  drop "imstt" from VIDEO_CARDS in all profiles

  13 Dec 2009; Rémi Cardona <remi@gentoo.org> desc/video_cards.desc,
  hardened/amd64/make.defaults, hardened/ia64/make.defaults,
  hardened/linux/powerpc/ppc64/use.mask, hardened/linux/x86/make.defaults,
  hardened/ppc64/use.mask, hardened/x86/make.defaults:
  drop "vga" from VIDEO_CARDS in all profiles

  13 Dec 2009; Rémi Cardona <remi@gentoo.org> hardened/ia64/make.defaults,
  hardened/linux/x86/make.defaults, hardened/x86/make.defaults:
  drop "imstt" from VIDEO_CARDS in hardened profiles

  13 Dec 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking x11-wm/ion for QA removal.

  13 Dec 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking net-irc/ptlink-services for QA removal.

  13 Dec 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking x11-misc/xse for QA removal.

  13 Dec 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  add x11-apps/ttmkfdir, x11-apps/xfs and x11-apps/xfsinfo to p.mask

  13 Dec 2009; Torsten Veller <tove@gentoo.org> package.mask:
  Mask dev-perl/PDL-2.4.5

  12 Dec 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking sys-auth/nsvs for QA removal.

  10 Dec 2009; Víctor Ostorga <vostorga@gentoo.org> package.mask:
  Removing entry for net-misc/mmsclient, since it was removed from tree

  09 Dec 2009; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Restrict mask for emacs-cvs to live version.

  09 Dec 2009; Robin H. Johnson <robbat2@gentoo.org> thirdpartymirrors:
  Upstream MySQL culled a lot of old mirrors. Update the list from
  http://dev.mysql.com/downloads/mirrors.html again.

  09 Dec 2009; Christian Faulhammer <fauli@gentoo.org> package.mask:
  mask app-portage/g-ctan as upstream web content has been gone

  08 Dec 2009; Mark Loeser <halcy0n@gentoo.org> package.mask:
  xpvm should have been masked along with pvm

  08 Dec 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask sudo's new beta.

  08 Dec 2009; Jeroen Roovers <jer@gentoo.org> thirdpartymirrors:
  Redo entire list of reachable sourceforge mirrors (bug #296179).

  08 Dec 2009; Jeroen Roovers <jer@gentoo.org> thirdpartymirrors:
  Add ignum to sourceforge mirrors (bug #296179).

  08 Dec 2009; MATSUU Takuto <matsuu@gentoo.org> package.mask:
  Masking app-i18n/jless for removal, bug #294759.

  07 Dec 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Unmask HAL 0.5.14 wrt #295600.

  07 Dec 2009; Andrey Kislyuk <weaver@gentoo.org> package.mask:
  Remove app-admin/rackview from p.mask, blocker bug fixed

  07 Dec 2009; Luca Barbato <lu_zero@gentoo.org> package.mask:
  Mask media-libs/netpbm-10.48.00 see bug #287725

  06 Dec 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Add cppvm to the pvm mask.

  06 Dec 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking dev-libs/libip_vs_user_sync for QA removal.

  06 Dec 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking x11-apps/xmh for QA removal.

  06 Dec 2009; Diego E. Pettenò <flameeyes@gentoo.org> base/use.mask,
  package.mask:
  Masking sys-cluster/pvm for QA removal.

  05 Dec 2009; Ben de Groot <yngwin@gentoo.org> package.mask:
  Temporarily mask =hal-0.5.14, which breaks KDE, bug 295600

  05 Dec 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking dev-lang/sunstudioexpress for QA removal.

  05 Dec 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking app-admin/rackview for QA removal.

  05 Dec 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking mail-filter/simscan for QA removal.

  05 Dec 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking dev-util/cook for QA removal.

  05 Dec 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask kde-base/kdelibs:3.5 reverse dependencies.

  04 Dec 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking dev-db/hk_classes for QA removal.

  04 Dec 2009; Víctor Ostorga <vostorga@gentoo.org> package.mask:
  Removing app-i18n/man-pages-es mask, because it breaks sys-apps/man-pages

  04 Dec 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking net-analyzer/ttt for QA removal.

  04 Dec 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking dev-java/aspectj for QA removal.

  04 Dec 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking net-misc/nstx for QA removal.

  04 Dec 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking dev-dotnet/mono-fuse for QA removal.

  04 Dec 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking dev-libs/qsa for QA removal.

  04 Dec 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking x11-libs/gtk-canvas for QA removal.

  04 Dec 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking x11-misc/seyon for QA removal.

  04 Dec 2009; Víctor Ostorga <vostorga@gentoo.org> package.mask:
  Masking app-i18n/man-pages-es for removal, bug #295188

  04 Dec 2009; Tomáš Chvátal <scarabeus@gentoo.org> package.mask:
  Mask coreutils 8.1 because of broken rm that can cause major issues. For
  more info see bug #295654.

  04 Dec 2009; Peter Volkov <pva@gentoo.org> package.mask:
  Unmask net-im/psi-0.14 as it's finally released

  02 Dec 2009; Joerg Bornkessel <hd_brummy@gentoo.org> package.mask:
  cvs ebuild vdr-xineliboutput-9999 masked for lifetime

  01 Dec 2009; Dror Levin <spatz@gentoo.org> package.mask:
  Remove mask for qt-*-4.6.0_rc

  01 Dec 2009; Víctor Ostorga <vostorga@gentoo.org> package.mask:
  Cleaning out entries for removed packages: app-cdr/mdf2iso net-misc/rdist
  net-im/curphoo net-im/magnesium media-libs/SoGtk dev-libs/skalibs
  sys-apps/minutils net-ftp/easyftp app-office/kmymoney2 app-cdr/kcdlabel
  app-crypt/calcchecksum sys-power/kpowersave sci-electronics/ktechlab

  01 Dec 2009; Theo Chatzimichos <tampakrap@gentoo.org> package.mask:
  Unmask KDE 4.3.4

  01 Dec 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask sci-visualization/labplot wrt #209757.

  01 Dec 2009; Theo Chatzimichos <tampakrap@gentoo.org> package.mask:
  Unmask Qt 4.6.0

  01 Dec 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask patch-2.6 and later until bug #293570 is solved.

  01 Dec 2009; Alex Alexander <wired@gentoo.org> package.mask:
  masked KDE 4.3.4 before commit run

  01 Dec 2009; Alex Alexander <wired@gentoo.org> package.mask:
  removed old qt-4.6.0_beta mask

  30 Nov 2009; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Remove mask for app-emacs/wanderlust snapshot.

  30 Nov 2009; Alex Legler <a3li@gentoo.org> thirdpartymirrors:
  add bytemark mirror to mirror://rubygems, thanks to Rubyforge's Tom
  Copeland

  30 Nov 2009; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Remove mask for dev-scheme/kawa after version bump.

  30 Nov 2009; Alex Legler <a3li@gentoo.org> package.mask:
  Mask dev-ruby/{nitro,og,glue,gen} for removal

  30 Nov 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking dev-scheme/kawa for QA removal.

  29 Nov 2009; Markus Meier <maekke@gentoo.org> package.mask:
  mask rc versions of enblend for testing

  29 Nov 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  mask xorg-server 1.7.2

  29 Nov 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking sys-apps/hwinfo for QA removal.

  29 Nov 2009; Ryan Hill <dirtyepic@gentoo.org> arch/amd64/use.mask:
  Remove emf from use.mask now that stable libemf is keyworded on amd64.
  Also remove the related mask for plugin as no ebuild in the tree uses
  it anymore.

  28 Nov 2009; Raúl Porcel <armin76@gentoo.org> package.mask:
  sh-sources were punted

  27 Nov 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask app-pda/synce-kio-rapip wrt #256350.

  26 Nov 2009; Torsten Veller <tove@gentoo.org> package.mask:
  Mask dev-perl/DateManip-6* for testing

  26 Nov 2009; Jeroen Roovers <jer@gentoo.org> package.mask:
  Tweak www-client/opera mask for 10.20_pre4744.

  25 Nov 2009; Mounir Lamouri <volkmar@gentoo.org> updates/4Q-2009:
  Move www-plugins/mozilla-weave to www-plugins/weave.

  25 Nov 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking sci-visualization/gfsview for QA removal.

  25 Nov 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking www-client/rabbitticker for QA removal.

  25 Nov 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking www-apps/Embperl for QA removal.

  25 Nov 2009; Markus Meier <maekke@gentoo.org> package.mask:
  drop media-gfx/inkscape-0.47 mask as the final version is in tree

  25 Nov 2009; Steve Dibb <beandog@gentoo.org> package.mask:
  Mask media-libs/x264-0.0.20091124 for testing

  25 Nov 2009; Ben de Groot <yngwin@gentoo.org> package.mask:
  Temporary mask of latest mplayer and ffmpeg bumps wrt bug 294469

  24 Nov 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking app-forensics/airt for QA removal.

  23 Nov 2009; Krzysiek Pawlik <nelchael@gentoo.org> package.mask:
  Mask =sys-apps/rng-tools-2-r2.

  23 Nov 2009; Alex Legler <a3li@gentoo.org> package.mask:
  Moved xoops mask, scheduling for removal

  23 Nov 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking sys-apps/inputd for QA removal.

  22 Nov 2009; Fabian Groffen <grobian@gentoo.org> profiles.desc:
  Added Mac OS X Snow Leopard (10.6) Prefix profiles

  22 Nov 2009; MATSUU Takuto <matsuu@gentoo.org> use.local.desc:
  Added libevent local USE flag for net-dns/unbound.

  22 Nov 2009; Fabian Groffen <grobian@gentoo.org> profiles.desc:
  Drop all Prefix profiles to experimental state for the time being. This
  makes repoman ignore all Prefix keywords in ebuilds which is good for the
  time being as we can't provide the full dependencies in gx86. The Prefix
  rsync image will have the Prefix profiles reenabled as 'dev' again such
  that we can keep on checking deps in the full Prefix environment.

  22 Nov 2009; Theo Chatzimichos <tampakrap@gentoo.org> package.mask:
  Mask koffice-2.1.0 until official release

  22 Nov 2009; Torsten Veller <tove@gentoo.org> package.mask:
  Mask net-mail/vimap for removal

  22 Nov 2009; Tobias Scherbaum <dertobi123@gentoo.org> package.mask:
  Mask app-admin/eselect-oracle for removal in 30 days.

  20 Nov 2009; Justin Bronder <jsbronder@gentoo.org> package.mask:
  Masking sys-cluster/mpiexec for removal in 30 days.
  sys-cluster/osc-mpiexec is a fully functional replacement.
  Bug #293861

  20 Nov 2009; Jonathan Callen <abcd@gentoo.org> package.mask:
  Remove mask for koffice

  20 Nov 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Remove KDE 3.5.10 mask.

  19 Nov 2009; Gordon Malm <gengor@gentoo.org> package.mask:
  Remove sci-calculators/qalculate-kde from package.mask, already removed
  from tree.

  19 Nov 2009; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Add mask for live ebuild of app-emacs/gnus.

  19 Nov 2009; Sébastien Fabbro <bicatali@gentoo.org> package.mask:
  Removed masking of sci-physics/root

  18 Nov 2009; Alex Alexander <wired@gentoo.org> package.mask:
  masked Qt 4.6.0 rc before adding for testing

  17 Nov 2009; Peter Volkov <pva@gentoo.org> package.mask:
  Masked app-text/ghostscript-gnu, bug 264614.

  17 Nov 2009; Vlastimil Babka <caster@gentoo.org> package.mask:
  Mask also java-virtuals/jdk-with-com-sun:1.4

  17 Nov 2009; Vlastimil Babka <caster@gentoo.org> package.mask:
  Mask sun-based 1.4 jdk and jre.

  17 Nov 2009; Olivier Crête <tester@gentoo.org> package.mask:
  Unmask gst-plugins-x264, new version is coming and stable still works fine

  16 Nov 2009; Jeremy Olexa <darkside@gentoo.org> updates/4Q-2009:
  move app-misc/git app-misc/gnuit, part of bug 287863

  16 Nov 2009; Matthias Schwarzott <zzam@gentoo.org> package.mask:
  Unmask udev-146-r2 and udev-147.

  15 Nov 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  mask dead X drivers

  15 Nov 2009; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Mask app-emacs/ngnus for removal, bug 293302.
  Package mask pre-alpha snapshot of app-emacs/gnus.

  15 Nov 2009; Peter Volkov <pva@gentoo.org> package.mask:
  Mask net-analyzer/cacti-cactid for removal. net-analyzer/cacti-spine is a
  newer version of the same package.

  15 Nov 2009; Peter Volkov <pva@gentoo.org> updates/4Q-2009:
  Move slot for app-text/kchmviewer back to 0. This is not kde-3.5
  application any more.

  14 Nov 2009; Víctor Ostorga <vostorga@gentoo.org> package.mask:
  Masking app-cdr/kcdlabel for removal, kde-base/kdelibs-3* removal, bug
  #292794

  14 Nov 2009; Víctor Ostorga <vostorga@gentoo.org> package.mask:
  Masking app-crypt/calcchecksum for removal, kde-base/kdelibs-3* removal,
  bug #292798

  14 Nov 2009; Víctor Ostorga <vostorga@gentoo.org> package.mask:
  Masking app-text/kbarcode for removal, kde-base/kdelibs-3* removal, bug
  #292734

  14 Nov 2009; Víctor Ostorga <vostorga@gentoo.org> package.mask:
  Masking mail-client/kbiff for removal, bug #292730

  14 Nov 2009; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Update mask for app-emacs/wanderlust.

  14 Nov 2009; Alexis Ballier <aballier@gentoo.org> package.mask:
  mask ocamlnet beta

  14 Nov 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask games-board/ggz-kde-client and games-board/ggz-kde-games.

  13 Nov 2009; Timo Gurr <tgurr@gentoo.org> package.mask:
  Remove mask for mumble and murmur.

  13 Nov 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask media-sound/amarokfs.

  13 Nov 2009; Jeroen Roovers <jer@gentoo.org> package.mask:
  Tweak www-client/opera mask.

  13 Nov 2009; Peter Volkov <pva@gentoo.org> package.mask:
  Mask net-im/psi prerelease.

  12 Nov 2009; Markos Chandras <hwoarang@gentoo.org> package.mask:
  sys-fs/dazuko. Pending removal in 30 days ( bug 278414 )

  12 Nov 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask media-sound/kstreamripper.

  12 Nov 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask games-puzzle/easysok and sci-misc/kboincspy for kde-base/kdelibs:3.5.

  12 Nov 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask dev-perl/{DCOP,PerlQt} and reverse dependencies for
  kde-base/kdelibs:3.5.

  12 Nov 2009; Daniel Pielmeier <billie@gentoo.org> desc/dvb_cards.desc:
  Update dvb_cards.desc.

  12 Nov 2009; Ben de Groot <yngwin@gentoo.org> package.mask:
  Remove mask for qvfb, now it is bumped and bug 292834 solved.

  12 Nov 2009; Ben de Groot <yngwin@gentoo.org> arch/sparc/package.use.mask:
  Also mask doc useflag for media-libs/libxspf on sparc, pending qt-webkit
  and qt-assistant keywording (bug 292838)

  12 Nov 2009; Alexis Ballier <aballier@gentoo.org> profiles.desc:
  remove deprecated fbsd profiles from profiles.desc

  11 Nov 2009; Ben de Groot <yngwin@gentoo.org> arch/sparc/package.use.mask:
  Mask doc useflag on dev-libs/uriparser on sparc, as it depends on
  qt-assistant, which needs rekeywording (bug 292838).

  11 Nov 2009; Ben de Groot <yngwin@gentoo.org> package.mask:
  Masking dev-embedded/qvfb

  11 Nov 2009; Víctor Ostorga <vostorga@gentoo.org> package.mask:
  Masking sys-power/kpowersave for removal, bug #292799

  11 Nov 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask app-laptop/khdapsmon, app-laptop/khdapsmonitor, and
  app-laptop/kthinkbat.

  11 Nov 2009; Ben de Groot <yngwin@gentoo.org> package.mask:
  Unmask libdvdread/-nav

  11 Nov 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask kde-base/arts, kde-misc/kfish and <kde-misc/krename-4.

  11 Nov 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask x11-misc/lineak-kdeplugins and mail-client/mailody.

  11 Nov 2009; Matthias Schwarzott <zzam@gentoo.org> package.mask:
  Mask udev-146-r2 and udev-147 for testing their new init-scripts.

  11 Nov 2009; Benedikt Böhm <hollow@gentoo.org> package.mask:
  unmask >=sys-kernel/vserver-sources-2.3

  10 Nov 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask x11-themes/tiblit and <media-gfx/kflickr-0.9.1_p1.

  10 Nov 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Removed media-plugins/{hayes,jefferson} from tree.

  10 Nov 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask <app-text/kding-0.5.

  10 Nov 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask x11-plugins/khexclock.

  10 Nov 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask games-puzzle/quintalign, games-sports/kbilliards,
  games-strategy/kpictorial and games-util/krconlinux.

  10 Nov 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Removed games-board/{knights,kwappen,schafkopf} from tree.

  10 Nov 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Removed gsynaptics, ksynaptics and libsynaptics from tree. Replaced by
  kcm_touchpad, synaptiks, touchfreeze, and gpointing-device-settings.

  09 Nov 2009; Vlastimil Babka <caster@gentoo.org> license_groups:
  Add jrockit license to @EULA.

  09 Nov 2009; Víctor Ostorga <vostorga@gentoo.org> package.mask:
  Masking net-misc/mmsclient for removal, bug #211133

  09 Nov 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask <media-video/kaffeine-1.0_pre1.

  09 Nov 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Removed kde-misc/systemloadviewer from tree which was moved to
  kdeplasma-addons.

  09 Nov 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask <x11-themes/gtk-engines-qt-1.1.

  09 Nov 2009; Jonathan Callen <abcd@gentoo.org> package.mask:
  KDE 3.5.9 and 4.3.2 are gone, remove masks

  08 Nov 2009; Vlastimil Babka <caster@gentoo.org> license_groups:
  Add sun-bcla-java-vm to @EULA as well.

  08 Nov 2009; Vlastimil Babka <caster@gentoo.org> license_groups:
  Add IBM JDK licenses to @EULA.

  08 Nov 2009; Alexey Shvetsov <alexxy@gentoo.org> package.mask:
  Mask kde 4.3.2 since we gonna drop it from tree and drop mask for 4.2.4
  since its dropped from tree

  08 Nov 2009; Alexey Shvetsov <alexxy@gentoo.org> package.mask:
  Mask kde 4.2.4 since we gonna drop it from tree

  08 Nov 2009; Nirbheek Chauhan <nirbheek@gentoo.org> package.mask:
  Fix libsoup p.mask version

  07 Nov 2009; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Mask net-libs/libsoup-2.2, bug #280906.

  07 Nov 2009; Mounir Lamouri <volkmar@gentoo.org>
  arch/amd64/package.use.mask, arch/x86/package.use.mask,
  base/package.use.mask:
  Mask cuda USE flag for media-gfx/k3d for non amd64/x86 arch, bug 267264

  07 Nov 2009; <vostorga@gentoo.org> package.mask:
  Masking net-ftp/easyftp for removal, bug #292143

  07 Nov 2009; <vostorga@gentoo.org> package.mask:
  Masking net-misc/tkusr for removal, bug #247985

  07 Nov 2009; <vostorga@gentoo.org> package.mask:
  Masking app-text/doclifter for removal, bug #292289

  07 Nov 2009; Ben de Groot <yngwin@gentoo.org> package.mask:
  Adding x11-themes/qtcurve to kde3 mask

  07 Nov 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask KDE 3.5.10.

  07 Nov 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask <dev-util/kdevelop-3.9.

  06 Nov 2009; Andrey Kislyuk <weaver@gentoo.org> updates/4Q-2009:
  Package move: sci-biology/dialign-t -> sci-biology/dialign-tx

  06 Nov 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask pkgs with KDE3 dependencies.

  06 Nov 2009; Mounir Lamouri <volkmar@gentoo.org>
  arch/powerpc/package.use.mask:
  Remove p.use.mask for 'media-gfx/f-spot flickr' on powerpc, bug 284473

  06 Nov 2009; Vlastimil Babka <caster@gentoo.org> package.mask:
  Mask 1.4 JRE's, bug #287615.

  05 Nov 2009; Mounir Lamouri <volkmar@gentoo.org>
  arch/powerpc/package.use.mask:
  p.use.mask media-gfx/f-spot flickr on powerpc, bug 284473

  05 Nov 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  add xdm 1.1.9 to p.mask

  05 Nov 2009; Tristan Heaven <nyhm@gentoo.org> package.mask:
  media-libs/freeimage was removed, bug #251112

  05 Nov 2009; Tristan Heaven <nyhm@gentoo.org> package.mask:
  Mask games-fps/quake3-urbanterror

  04 Nov 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask <net-misc/knemo-0.5.2 and media-video/mplayerthumbs.

  04 Nov 2009; Alex Alexander <wired@gentoo.org> package.mask:
  keeping zen-sources rc and live ebuilds masked

  03 Nov 2009; Vlastimil Babka <caster@gentoo.org> package.mask:
  Last rites for dev-java/jessie

  03 Nov 2009; Alex Alexander <wired@gentoo.org> package.mask:
  KDE 4.3.3 tarballs available, unmasking :)

  02 Nov 2009; Víctor Ostorga <vostorga@gentoo.org> package.mask:
  Cleaning entries for removed packages net-irc/quirc bug #249468 and
  sys-apps/sreadahead bug ##257207

  02 Nov 2009; Alex Alexander <wired@gentoo.org> package.mask:
  masking KDE 4.3.3 before we begin our commit run

  02 Nov 2009; Víctor Ostorga <vostorga@gentoo.org> package.mask:
  Masking stable net-firewall/ipsec-tools because it does not build with
  stable linux-headers

  02 Nov 2009; Mounir Lamouri <volkmar@gentoo.org> package.mask:
  net-misc/asterisk-chan_unicall media-libs/libsupertone net-libs/libmfcr2
  net-libs/libunicall net-misc/asterisk-app_rtxfax have been removed.
  bug 180318, bug 273995 and bug 277783

  01 Nov 2009; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Mask app-misc/tracker, bug #291501.

  01 Nov 2009; Vlastimil Babka <caster@gentoo.org> package.mask:
  Remove java last rites that were removed.

  01 Nov 2009; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Remove app-accessibility/at-poke mask, it's gone.

  01 Nov 2009; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Mask gnome-extra/gnome-keyring-manager, see bug #291456.

  01 Nov 2009; Markus Meier <maekke@gentoo.org> package.mask:
  fix hugin mask, pointed out by leio

  31 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask net-firewall/knetfilter wrt #251992.

  31 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask mail-client/kcheckgmail wrt #260166.

  31 Oct 2009; <kolmodin@gentoo.org> package.mask:
  Remove masking on dev-lang/ghc-6.10.4 and related packages.

  31 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask sci-calculators/qalculate-kde (replaced by
  kde-misc/qalculate-applet).

  31 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask kde-misc/systemloadviewer because it's moved into
  kde-base/kdeplasma-addons.

  30 Oct 2009; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Remove mask for net-im/telepathy-mission-control since it was just waiting
  for empathy-2.28

  30 Oct 2009; Nirbheek Chauhan <nirbheek@gentoo.org> package.mask:
  Remove net-wireless/bluez-hciemu -- fix bug 257826

  29 Oct 2009; Jonathan Callen <abcd@gentoo.org> package.mask:
  Add comment about security bug #290470 to app-office/koffice mask

  29 Oct 2009; Jeroen Roovers <jer@gentoo.org> package.mask:
  Tweak www-client/opera-10.10 mask.

  28 Oct 2009; Ben de Groot <yngwin@gentoo.org> package.mask:
  Removing the unwarranted mask of avidemux snapshots, bug 290233.

  28 Oct 2009; <chainsaw@gentoo.org> package.mask:
  Remove older >1.4 Asterisk mask that I overlooked.

  28 Oct 2009; <chainsaw@gentoo.org> package.mask:
  Remove Asterisk 1.6 mask as requested by Mounir "volkmar" Lamouri in bug
  #285435.

  28 Oct 2009; Jeroen Roovers <jer@gentoo.org> package.mask:
  Tweak www-client/opera mask.

  28 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask KDE3-only apps.

  28 Oct 2009; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Removed net-p2p/nicotine. Bug #286607.

  27 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask kde-misc/{katalog,kbeam,kblogger}.

  27 Oct 2009; Peter Volkov <pva@gentoo.org> package.mask:
  net-im/sim unmasked. It should work now... (#275316)

  26 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Remove entry for net-wireless/kdebluetooth.

  26 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Unmask ffmpeg and x264 snapshot.

  26 Oct 2009; Bryan Stine <battousai@gentoo.org> package.mask:
  x11-base/x11-drm removed from tree

  26 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask media-video/xfmedia wrt #289867.

  26 Oct 2009; Alexis Ballier <aballier@gentoo.org> package.mask:
  mask new ffmpeg snapshot with x264

  26 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> profiles.desc:
  Change selinux profiles from stable to dev because of missing stable
  toolchain (gcc-4, bug 290485), and parent files with wrong ordering (see
  repoman -d full in e.g. media-video/h264enc).

  26 Oct 2009; Jonathan Callen <abcd@gentoo.org> package.mask:
  Mask app-office/koffice for removal

  25 Oct 2009; Olivier Crête <tester@gentoo.org> package.mask:
  dev-python/pymsn has been replaced by dev-python/papyon

  25 Oct 2009; Bernard Cafarelli <voyageur@gentoo.org> package.mask:
  Remove llvm* 2.6_pre mask, as they are not in tree anymore

  25 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask kde-base/kpdf wrt security #290470.

  25 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask <kde-misc/kshutdown-1.9999.

  25 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Remove entries for gspca, spca5xx and gspcav1 wrt #159176.

  25 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask <kde-misc/kdiff3-0.9.95.

  25 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask app-cdr/kiso, replaced by app-cdr/acetoneiso.

  25 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask app-office/taskjuggler wrt #280808.

  25 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask <media-video/kmplayer-0.11.1a

  25 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask kde-misc/kbfx wrt #287593.

  25 Oct 2009; Mike Frysinger <vapier@gentoo.org>
  hardened/linux/package.use.mask, selinux/package.use.mask:
  Mask USE=win64 for app-emulation/wine as it requires gcc-4.4.

  24 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask old libkexiv2, libkipi, gwenview, digikam, kipi-plugins, libkdcraw
  and kphotoalbum.

  24 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask media-video/codeine.

  24 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask =kde-misc/filelight-1.0* and kde-misc/filelight-i18n.

  24 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask noatun and plugins wrt #270575.

  24 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask KDE3 pkgs with QA issues.

  24 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask =media-video/kplayer-0.6* wrt #208786.

  24 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask kde-misc/kio-locate wrt #262318.

  24 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask >=xfce-base/exo-0.5 for testing.

  23 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Unmask x11-libs/compizconfig-backend-kconfig wrt #289511.

  23 Oct 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Add pre-commit mask for lxc.

  23 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask kde-misc/krecipes wrt #224503.

  23 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask app-mobilephone/kmobiletools wrt #221115.

  23 Oct 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  QA mask for media-video/avidemux-2.5.1_p*

  23 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask =net-irc/kvirc-3* wrt #282891.

  23 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask x11-libs/compizconfig-backend-kconfig wrt #290170.

  23 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask games-board/knights wrt #237966.

  22 Oct 2009; Markus Meier <maekke@gentoo.org> package.mask:
  unmask media-gfx/autopano-sift-C as final version has been released

  22 Oct 2009; Raúl Porcel <armin76@gentoo.org> package.mask:
  Add sh-sources to p.mask for removal in 30 days

  22 Oct 2009; Alex Legler <a3li@gentoo.org> package.mask:
  Removing rails-{1,2.0,2.1} mask, packages are gone

  22 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask new media-libs/x264 snapshot for testing.

  21 Oct 2009; Jeroen Roovers <jer@gentoo.org> package.mask:
  Remove old gnash mask.

  21 Oct 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask paman.

  21 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask kde-misc/tork wrt #210034.

  21 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask net-dialup/trayimonc wrt #276290.

  21 Oct 2009; Peter Alfredsen <loki_val@gentoo.org> package.mask:
  Mask version of debugedit that needs a portage patch to be applied to not
  do Bad Things.

  20 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask kde-misc/knetworkmanager wrt #253788.

  20 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask media-gfx/showimg wrt #274206.

  20 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Removed sci-chemistry/kemistry from tree.

  20 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask dev-embedded/pikdev wrt #244882.

  20 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask kde-misc/kdmtheme wrt #237320.

  20 Oct 2009; Peter Volkov <pva@gentoo.org> package.mask:
  Masked development versions of bzr/bzrtools.

  20 Oct 2009; Peter Volkov <pva@gentoo.org> package.mask:
  openvz-sources-2.6.24 were dropped from the tree, unmask
  sys-kernel/openvz-sources-2.6.27.2.1-r3 as I think it's fine,
  net-libs/libssh-0.11 do not exist in the tree too.

  20 Oct 2009; Alexis Ballier <aballier@gentoo.org> package.mask:
  mlt++ is gone

  20 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask net-im/sim wrt #275316.

  20 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask games-board/kwappen wrt #279297.

  20 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask kde-misc/ksystemlog wrt #279659.

  20 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask media-tv/mtvg wrt #279486.

  19 Oct 2009; Vlastimil Babka <caster@gentoo.org> license_groups:
  Put SUN's pre-release licenses in the EULA group, since it doesn't seem to
  work properly in overlay.

  19 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask kde-misc/kdissert wrt #246783.

  19 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Removed gst-plugins-amrnb and gst-plugins-amrwb from tree.

  19 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Unmask x264 and mask gst-plugins-x264.

  18 Oct 2009; Christian Faulhammer <fauli@gentoo.org> package.mask:
  Claws Mail has been bumped, so remove mask for plugins

  18 Oct 2009; Christian Faulhammer <fauli@gentoo.org> package.mask:
  mask Claws Mail 3.7.3 and plugins until bump is finished

  18 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask kde-misc/metamonitor wrt #279485.

  18 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask kde-misc/ksplash-engine-moodin wrt #279716.

  18 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask games-board/schafkopf wrt #277665.

  18 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask kde-misc/kkeyled wrt #277575.

  17 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask media-libs/libmpcdec. Replaced by media-sound/musepack-tools.

  17 Oct 2009; Peter Alfredsen <loki_val@gentoo.org> package.mask:
  tomboy-0.15* removed from tree, removing mask also

  17 Oct 2009; Markus Meier <maekke@gentoo.org> use.desc:
  make static-libs and dbi global USE-flags, as announced on -dev

  16 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask net-news/eventwatcher wrt #277427.

  16 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask kde-misc/kisdnwatch wrt #277417.

  16 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask net-ftp/kasablanca wrt #277415.

  16 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask net-misc/ktraynetworker wrt #277172.

  16 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask x11-themes/activeheart-kwin wrt #276891.

  16 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask app-office/kbudget wrt #276876.

  16 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask app-backup/konserve wrt #276851.

  16 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask x11-themes/comix wrt #276205.

  16 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask kde-misc/kdirstat wrt #248883.

  16 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask media-sound/krecord wrt #278628.

  16 Oct 2009; Alex Alexander <wired@gentoo.org> package.mask:
  masked Qt 4.6.0 beta before adding for testing

  16 Oct 2009; Jeroen Roovers <jer@gentoo.org> package.mask:
  Mask Opera Widgets (labs preview).

  16 Oct 2009; Gordon Malm <gengor@gentoo.org> package.mask:
  Remove lm_sensors-3 and dependers from package.mask, bug #279423.

  15 Oct 2009; Dominik Kapusta <ayoy@gentoo.org> package.mask:
  Masking experimental ebuild for scratchbox2

  15 Oct 2009; Peter Volkov <pva@gentoo.org> package.mask:
  Masked new revision of openvz-sources for testing...

  15 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask gsynaptics, ksynaptics and libsynaptics wrt #289170.

  14 Oct 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  add xinput 1.5 to xorg-server 1.7 package.mask entry

  14 Oct 2009; Tristan Heaven <nyhm@gentoo.org>
  arch/amd64/no-multilib/package.mask, arch/amd64/no-multilib/use.mask,
  features/64bit-native/package.mask, features/64bit-native/use.mask:
  Unmask games-fps/quake3-teamarena, bug #256588

  14 Oct 2009; Jeroen Roovers <jer@gentoo.org> package.mask:
  Tweak www-client/opera mask to exclude 10.10b1.

  13 Oct 2009; Ulrich Mueller <ulm@gentoo.org> updates/4Q-2009:
  Move realpath from app-admin to app-misc category, bug 273968.

  13 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask kdebluetooth for removal wrt #276455.

  13 Oct 2009; Alexis Ballier <aballier@gentoo.org> package.mask:
  unmask lwt, ocsigen 1.2.1 is fine

  13 Oct 2009; Alexis Ballier <aballier@gentoo.org> package.mask:
  mask lwt 2.0 rcs

  12 Oct 2009; Jonathan Callen <abcd@gentoo.org> package.mask:
  Drop temporary KDE 3.5.9 mask

  12 Oct 2009; Jonathan Callen <abcd@gentoo.org> package.mask:
  Temporarily mask the rest of KDE 3.5.9 so it can be removed

  12 Oct 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  remove xf86-input-synpatics 1.2.0 from package.mask

  12 Oct 2009; Torsten Veller <tove@gentoo.org> package.mask:
  Mask dev-perl/Net-FTPServer for removal (#280497)

  11 Oct 2009; Jonathan Callen <abcd@gentoo.org> package.mask:
  Mask old monolithic kde ebuilds for removal

  11 Oct 2009; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Mask app-admin/eselect-news for removal.

  11 Oct 2009; Markus Meier <maekke@gentoo.org> package.mask:
  mask media-gfx/autopano-sift for removal in 30 days. use
  media-gfx/autopano-sift-C instead

  11 Oct 2009; Markus Meier <maekke@gentoo.org> package.mask:
  mask hugin and deps beta/rc versions for testing

  11 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask gst-plugins-amrnb and gst-plugins-amrwb wrt #252140.

  10 Oct 2009; Peter Volkov <pva@gentoo.org> package.mask:
  freetype-2.3.10 fixed. Unmasking...

  10 Oct 2009; Mounir Lamouri <volkmar@gentoo.org> license_groups:
  Add PUEL license (VirtualBox) to EULA license group.

  10 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Unmask app-cdr/k3b version for KDE4.

  09 Oct 2009; Peter Volkov <pva@gentoo.org> package.mask:
  =media-libs/freetype-2.3.10 masked until bug #288256 resolved

  09 Oct 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask pam_keystore.

  09 Oct 2009; Alexey Shvetsov <alexxy@gentoo.org> package.mask:
  Remove masks for kde 4.3.2

  08 Oct 2009; Alexey Shvetsov <alexxy@gentoo.org> package.mask:
  Mask KDE 4.3.0 for removing

  08 Oct 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Remove mask on packages deleted.

  07 Oct 2009; Gilles Dartiguelongue <eva@gentoo.org package.mask:
  masked media-video/qc-usb per bug #286818

  07 Oct 2009; Tristan Heaven <nyhm@gentoo.org> thirdpartymirrors:
  Add quakeunity mirrors

  06 Oct 2009; Alexey Shvetsov <alexxy@gentoo.org> package.mask:
  Mask KDE 4.3.2

  05 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask release candidate of libffi for testing.

  05 Oct 2009; Víctor Ostorga <vostorga@gentoo.org> package.mask:
  Removing entries net-im/silky www-servers/shttpd and gnome-extra/gnome-art
  since they are not in the tree

  05 Oct 2009; Bernard Cafarelli <voyageur@gentoo.org> package.mask:
  Mask LLVM pre-releases, added in tree for testing before final 2.6

  05 Oct 2009; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Remove griffith masking

  05 Oct 2009; Jeremy Olexa <darkside@gentoo.org> package.mask:
  Mask multiple packages for QA/treecleaners

  04 Oct 2009; Mark Loeser <halcy0n@gentoo.org> package.mask:
  Adding mask back for >=app-crypt/gnupg-2.0.12; bug #275291

  04 Oct 2009; Vlastimil Babka <caster@gentoo.org> package.mask:
  Last rites for dev-db/xindice

  04 Oct 2009; Samuli Suominen <ssuominen@gentoo.org> profiles.desc:
  Remove 2008.0 profiles from .desc.

  04 Oct 2009; Christian Faulhammer <fauli@gentoo.org>
  desc/lirc_devices.desc:
  correct entry of iguanaIR and add ene0100 device

  04 Oct 2009; Christian Faulhammer <fauli@gentoo.org> package.mask:
  remove mask for app-misc/iguanaIR

  04 Oct 2009; Mike Doty <kingtaco@gentoo.org> package.mask:
  More emul refresh

  04 Oct 2009; Alex Alexander <wired@gentoo.org> package.mask:
  removed Qt 4.5.3 p.mask

  04 Oct 2009; Alex Alexander <wired@gentoo.org> package.mask:
  p.masking Qt 4.5.3 before adding it to the tree

  04 Oct 2009; Samuli Suominen <ssuominen@gentoo.org>
  targets/developer/make.defaults:
  Enable LD_AS_NEEDED="1" and FEATURES="test" by default wrt discussion in
  -dev ML.

  04 Oct 2009; Mike Doty <kingtaco@gentoo.org> package.mask:
  p.mask emul-linux-x86-baselibs-20091003_rc1

  03 Oct 2009; Vlastimil Babka <caster@gentoo.org> package.mask:
  Last rites for dev-java/tagunit.

  03 Oct 2009; Vlastimil Babka <caster@gentoo.org> package.mask:
  Last rites for dev-java/crimson and dev-java/xmojo-bin

  03 Oct 2009; Vlastimil Babka <caster@gentoo.org> package.mask:
  Mask dev-java/axion for removal.

  03 Oct 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask stuff that forces Python-3 down the throat of users. Don't remove the
  mask without discussion if you don't want to have QA on your track. Feel
  free to add more stuff as needed though.

  03 Oct 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  fix xorg-server 1.7 package.mask entry, stab scarabeus

  02 Oct 2009; Markus Meier <maekke@gentoo.org> package.mask:
  mask >=media-gfx/autopano-sift-C-2.5.1_rc1 for testing

  02 Oct 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  unmask xorg-server 1.6.4

  02 Oct 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  update xorg-server package.mask entry, add 1.6.4.901

  01 Oct 2009; Marcus D. Hanwell <cryos@gentoo.org> package.mask:
  Added >=dev-util/cmake-2.8.0_rc1 to package.mask before final release.

  01 Oct 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  update xorg-server package.mask entry

  01 Oct 2009; Torsten Veller <tove@gentoo.org> package.mask:
  Mask dev-perl/Gtk2-PodViewer, dev-perl/aww, dev-perl/perlsieve,
  dev-perl/perlrapi, dev-perl/Gtk2-Html2 for removal

  30 Sep 2009; Joseph Jezak <josejx@gentoo.org> package.mask:
  Removed xac mask, bug was fixed.

  30 Sep 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Remove ktvschedule masked, gone.

  30 Sep 2009; Markus Meier <maekke@gentoo.org> package.mask:
  unmask media-gfx/hugin as we have the final release in the tree

  29 Sep 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask media-plugins/flexplaylist for removal wrt #286813.

  29 Sep 2009; Samuli Suominen <ssuominen@gentoo.org>
  targets/desktop/make.defaults:
  Enable consolekit in make.defaults for bluez support (acked by mraudsepp).

  29 Sep 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Remove mask for removed mmsv2.

  29 Sep 2009; Diego E. Pettenò <flameeyes@gentoo.org> base/packages,
  prefix/windows/winnt/packages, uclibc/packages:
  Remove groff from the explicit system set; groff is *still* part of the
  system set because both the man providers depend (both at build and
  run-time) on it.

  28 Sep 2009; Robin H. Johnson <robbat2@gentoo.org> package.mask:
  sgb and gt-itm are fixed.

  28 Sep 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask spca drivers for removal wrt #159176 because they are supported by
  in-kernel drivers.

  28 Sep 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  add xorg-server-1.6.4 to p.mask

  28 Sep 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask media-video/qc-usb-messenger since it's supported by in-kernel
  drivers.

  28 Sep 2009; Diego E. Pettenò <flameeyes@gentoo.org>
  arch/amd64/package.use.mask, default-linux/amd64/package.use.mask,
  hardened/amd64/package.use.mask, hardened/linux/amd64/package.use.mask:
  Mask gphoto2 USE flag for wine on 64-bit systems (it's not in the emul
  packages).

  27 Sep 2009; Mart Raudsepp <leio@gentoo.org> package.mask:
  Remove mask on now deleted webkit-gtk snapshot

  27 Sep 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Unmask xfdesktop-4.6.1-r1 since it's working again.

  27 Sep 2009; Nirbheek Chauhan <nirbheek@gentoo.org> package.mask:
  Mask net-wireless/bluez-hciemu since it's provided by
  net-wireless/bluez[test-programs] and by
  net-wireless/bluez-utils[test-programs], and hence has a file collision --
  bug 257826

  27 Sep 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Unmask media-plugins/gmpc-lyricwiki because >= 0.19.0 is working.

  27 Sep 2009; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Mask net-p2p/nicotine for removal on 20091026. (bug #286607)
  Superseded by net-p2p/nicotine+, no activity since 2005.

  27 Sep 2009; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Remove app-misc/tipptrainer mask - removed from tree.

  26 Sep 2009; Alex Legler <a3li@gentoo.org> package.mask:
  Adding Rails 1 to graaff's mask from Aug 22

  26 Sep 2009; Hans de Graaff <graaff@gentoo.org> package.mask:
  Remove entries for dev-ruby/ruby-amazon and dev-ruby/devel-logger, both
  are removed from the tree.

  25 Sep 2009; Raúl Porcel <armin76@gentoo.org> profiles.desc:
  Mark arm profiles stable

  25 Sep 2009; Jory A. Pratt <anarchy@gentoo.org> package.mask:
  mask >=seamonkey-2.0_beta2

  24 Sep 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask xfdesktop-4.6.1-r1 temporarily because there's issues with icon
  positioning.

  24 Sep 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  add dev-python/pyxf86config and dev-python/rhpxl to p.mask

  24 Sep 2009; Sébastien Fabbro <bicatali@gentoo.org> package.mask:
  Removed masking on basemap-data, now out from the tree

  24 Sep 2009; Sébastien Fabbro <bicatali@gentoo.org> package.mask:
  Masked =sci-physics/root-5.24.00 for more testing

  23 Sep 2009; Alexis Ballier <aballier@gentoo.org> package.mask:
  mask new x264 snapshots

  23 Sep 2009; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Remove mask for app-emacs/cc-mode; package removed from tree, bug 282662.

  23 Sep 2009; Christian Faulhammer <fauli@gentoo.org> package.mask:
  remove spurious mask of RC of dev-util/bzr

  23 Sep 2009; Christian Faulhammer <fauli@gentoo.org> package.mask:
  remove spurious mask for app-portage/g-ctan live ebuild

  23 Sep 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Removed gemhun, kyra, and licq-osd from tree.

  23 Sep 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Unmask net-im/naim because it builds again and removed net-im/naim-modules
  from tree since it's obsolete.

  22 Sep 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Unmask dev-lang/realbasic because Viacheslav Kaloshin is now maintaining
  it and I'm the proxy.

  22 Sep 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Removed multiple masked packages.

  21 Sep 2009; Mounir Lamouri <volkmar@gentoo.org> package.mask:
  net-misc/asterisk-app_rtxfax masked for removal, bug 180318

  21 Sep 2009; Nirbheek Chauhan <nirbheek@gentoo.org> package.mask:
  Mask app-pda/multisync for removal in 30 days, bug 279384

  21 Sep 2009; Joe Peterson <lavajoe@gentoo.org> package.mask:
  Remove btrfs-9999 (ebuild has been removed)

  21 Sep 2009; Robin H. Johnson <robbat2@gentoo.org> package.mask:
  tpm-emulator is fixed.

  20 Sep 2009; Mounir Lamouri <volkmar@gentoo.org> package.mask:
  Masking for removal net-misc/asterisk-chan_unicall,
  media-libs/libsupertone, net-libs/libunicall and net-libs/libmfcr2.
  Bug 277783 and bug 273995

  20 Sep 2009; Torsten Veller <tove@gentoo.org> package.mask:
  Add masks for perl-5.10 (#280724)

  19 Sep 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  start a new package.mask entry for old X packages

  19 Sep 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  add x11-proto/evieext to p.mask for xorg-server 1.7

  19 Sep 2009; Tomáš Chvátal <scarabeus@gentoo.org> package.mask:
  [xorg] Remove no longer needed mask.

  19 Sep 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  add x11-proto/xf86driproto to p.mask for xorg-server 1.7

  19 Sep 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  add x11-proto/xf86dgaproto to p.mask for xorg-server 1.7

  19 Sep 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  add x11-proto/xf86bigfontproto to p.mask for xorg-server 1.7

  19 Sep 2009; Markus Meier <maekke@gentoo.org>
  hardened/linux/amd64/package.use.mask,
  hardened/linux/x86/package.use.mask:
  mask media-gfx/blender[openmp] on hardened 10.0 profiles as it requires
  sys-devel/gcc[openmp] which isn't available in these profiles

  19 Sep 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  fix wrong date

  19 Sep 2009; Alexis Ballier <aballier@gentoo.org> package.mask:
  mask mlt++ for removal

  19 Sep 2009; Alexis Ballier <aballier@gentoo.org> package.mask:
  unleash ocaml 3.11 to ~arch

  19 Sep 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  move xorg-server 1.7 package mask from the x11 overlay

  18 Sep 2009; Alexis Ballier <aballier@gentoo.org> package.mask:
  mask lablgtk version without the site-packages symlink with ocaml 3.11 too

  18 Sep 2009; Alexis Ballier <aballier@gentoo.org> package.mask:
  also mask new findlib revision with ocaml 3.11

  18 Sep 2009; <keri@gentoo.org> package.mask:
  Remove mask for dev-lang/swi-prolog-5.7

  18 Sep 2009; Bryan Stine <battousai@gentoo.org> package.mask:
  Mask x11-base/x11-drm for removal in 30 days (unmaintained).

  18 Sep 2009; Alex Legler <a3li@gentoo.org> package.mask:
  Removing diaria from p.mask, package is gone.

  17 Sep 2009; MATSUU Takuto <matsuu@gentoo.org> use.local.desc:
  Drop ucs4 local USE flag for app-i18n/anthy.

  16 Sep 2009; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Mask app-accessibility/at-poke per bug #279304.

  16 Sep 2009; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Remove mask for removed intltool-0.40.6.

  16 Sep 2009; Ulrich Mueller <ulm@gentoo.org> arch/sparc-fbsd/use.mask,
  default-bsd/fbsd/6.2/sparc/use.mask:
  Mask dbus USE flag on sparc-fbsd.

  16 Sep 2009; Ulrich Mueller <ulm@gentoo.org>
  arch/amd64/no-multilib/package.mask, features/64bit-native/package.mask:
  Package mask =app-editors/emacs-18* in no-multilib profiles.

  16 Sep 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Remove =vanilla-sources-2.6.31_rc* mask because they've been removed from
  tree.

  15 Sep 2009; <chainsaw@gentoo.org> package.mask:
  Mask 2.2 alpha releases of Audacious core & plugins.

  15 Sep 2009; Hanno Boeck <hanno@gentoo.org> package.mask:
  Remove mask of sdricoh_cs, package has been removed.

  15 Sep 2009; Patrick Lauer <patrick@gentoo.org> package.mask:
  eselect-opengl fixed by Scarabeus. Dropping mask.

  15 Sep 2009; Patrick Lauer <patrick@gentoo.org> package.mask:
  Forgot to mask ati-drivers too. Sorry :)

  15 Sep 2009; Patrick Lauer <patrick@gentoo.org> package.mask:
  Masking xorg-server bump too as it depends on masked eselect-opengl

  15 Sep 2009; Patrick Lauer <patrick@gentoo.org> package.mask:
  Masking broken eselect-opengl version

  15 Sep 2009; Ulrich Mueller <ulm@gentoo.org> license_groups:
  Add as-is to @GPL-COMPATIBLE licence group.

  15 Sep 2009; Jeroen Roovers <jer@gentoo.org> package.mask:
  Remove net-ftp/lftp mask now 4.0.0 is out.

  14 Sep 2009; Hans de Graaff <graaff@gentoo.org> package.mask:
  Remove mask for dev-ruby/misen and dev-ruby/dpklib, no longer in tree.

  14 Sep 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking app-forensics/pyflag for QA removal.

  14 Sep 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking <app-i18n/dbskkd-cdb-2 for QA removal.

  13 Sep 2009; Nirbheek Chauhan <nirbheek@gentoo.org> package.mask:
  Remove policykit-0.92 mask, package has been removed from tree

  13 Sep 2009; Markus Meier <maekke@gentoo.org> package.mask:
  mask hugin for testing

  13 Sep 2009; Rémi Cardona <remi@gentoo.org>
  -releases/2008.0/package.mask:
  unmask libxcb-1.4 in 2008.0 profiles, drop now useless package.mask

  12 Sep 2009; Víctor Ostorga <vostorga@gentoo.org> package.mask:
  Removing x11-misc/e-fancylauncher since it's gone from tree

  11 Sep 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask app-mobilephone/x70talk for removal.

  11 Sep 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask net-wireless/bluez-bluefw for removal.

  10 Sep 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Remove mask for pulseaudio 0.9.16.

  10 Sep 2009; Pielmeier Daniel <billie@gentoo.org> desc/dvb_cards.desc:
  Clean dvb_cards.desc.

  10 Sep 2009; Pielmeier Daniel <billie@gentoo.org> package.mask:
  Remove mask for media-tv/linuxtv-dvb-firmware. Affected versions are now
  gone.

  10 Sep 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Unmask app-portage/eix because of app-arch/libarchive's app-arch/xz-utils
  dep.

  10 Sep 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask =kde-misc/tellico-1* for removal wrt #283993 and #281065.

  10 Sep 2009; Tomáš Chvátal <scarabeus@gentoo.org>
  arch/x86/package.use.mask, base/package.use.mask, base/use.mask:
  Mask quakeforge useflag video_cards_voodoo everywhere expect x86.

  09 Sep 2009; Peter Alfredsen <loki_val@gentoo.org> package.mask:
  Remove poppler-0.11* mask. 0.12.0 is in-tree.

  09 Sep 2009; Peter Alfredsen <loki_val@gentoo.org> package.mask:
  Package.mask nemerle per bug 259700.

  09 Sep 2009; Zac Medico <zmedico@gentoo.org> license_groups:
  Bug #283862 - Add MIT to the GPL-COMPATIBLE group. Thanks to Arne
  Babenhauserheide <arne_bab@web.de>.

  09 Sep 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Cleanup removed packages — did I last rite monouml twice?

  09 Sep 2009; Torsten Veller <tove@gentoo.org> package.mask:
  Mask dev-perl/Convert-UUlib-1.30 (#283797)

  08 Sep 2009; Samuli Suominen <ssuominen@gentoo.org> profiles.desc:
  Fix hardened PowerPC profiles.desc to use 32bit-userland and
  64bit-userland.

  08 Sep 2009; Gordon Malm <gengor@gentoo.org> profiles.desc:
  Mark hardened/linux/amd64/10.0/no-multilib dev, not stable.

  08 Sep 2009; Gordon Malm <gengor@gentoo.org> profiles.desc:
  Update multi-inheritance hardened profile paths.

  08 Sep 2009; Jeremy Olexa <darkside@gentoo.org> package.mask:
  Mask =app-portage/eix-0.17.1 because it needs xz-utils and that conflicts
  with many other packages

  07 Sep 2009; Víctor Ostorga <vostorga@gentoo.org> package.mask:
  Unmasking net-misc/cgterm. All bugs have been fixed

  07 Sep 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Remove masks from packages gone from portage.

  07 Sep 2009; Christian Faulhammer <fauli@gentoo.org> package.mask:
  correct mask for dev-util/bzr and add bzrtools 2.0.0 to masking

  07 Sep 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Unmask FFmpeg snapshot.

  06 Sep 2009; Víctor Ostorga <vostorga@gentoo.org> package.mask:
  Unmasking dev-libs/libredblack . ~arch ebuild fixed

  06 Sep 2009; Víctor Ostorga <vostorga@gentoo.org> package.mask:
  Unmasking app-admin/killproc. All bugs have been fixed,n fixed, updated to
  latest version, CFLAGS and LDFLAGS respected

  06 Sep 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask dev-games/kyra and games-puzzle/gemhun for removal.

  06 Sep 2009; Alexis Ballier <aballier@gentoo.org> package.mask:
  mask new ffmpeg snapshot

  06 Sep 2009; Samuli Suominen <ssuominen@gentoo.org>
  releases/2008.0/package.mask:
  Mask xfce-extra/xfce4-notifyd next to required >=x11-libs/xcb-util-0.3.5.

  05 Sep 2009; Alin Năstac <mrness@gentoo.org> desc/linguas.desc:
  Add Swahili locale, needed by app-mobilephone/gammu.

  04 Sep 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  add www-plugins/gnash to p.mask

  04 Sep 2009; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Remove mask for app-emacs/mule-ucs since it is gone from the tree.

  04 Sep 2009; Tomáš Chvátal <scarabeus@gentoo.org>
  arch/amd64/no-multilib/package.mask:
  ati-drivers-9.8 works on no-multilib profile. So unmask them.

  04 Sep 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Removed ksubtitleripper, ufo, fex and lurker from tree.

  04 Sep 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask x11-plugins/licq-osd for removal wrt #248609.

  04 Sep 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Unmask latest version of x11-themes/baghira since it's fixed. Removed
  stripclub, xnc, ochusha and aacgain from tree.

  04 Sep 2009; Jeremy Olexa <darkside@gentoo.org> package.mask:
  clean up for non-existant packages

  03 Sep 2009; Jeremy Olexa <darkside@gentoo.org> thirdpartymirrors:
  Remove www.cs-us.xfce.org because it only mirrors the main xfce release,
  not plugins. Remove p0llux.be because it doesn't have any xfce on it.
  Rename mocha.xfce.org to archive.xfce.org

  03 Sep 2009; Alexey Shvetsov <alexxy@gentoo.org> package.mask:
  UnMask KDE 4.2.4

  03 Sep 2009; Alexey Shvetsov <alexxy@gentoo.org> package.mask:
  Mask KDE 4.2.4 to drop it

  02 Sep 2009; Pielmeier Daniel <billie@gentoo.org> desc/dvb_cards.desc:
  Add back old entries for dvb_cards_desc until the old ebuilds are removed.

  02 Sep 2009; Pielmeier Daniel <billie@gentoo.org> desc/dvb_cards.desc:
  Update dvb_cards.desc.

  02 Sep 2009; Pielmeier Daniel <billie@gentoo.org> package.mask:
  Adjust package.mask for media-tv/linuxtv-dvb-firmware.

  02 Sep 2009; Andreas Proschofsky <suka@gentoo.org> desc/linguas.desc:
  Add Burmese locale

  02 Sep 2009; Andreas Proschofsky <suka@gentoo.org> package.mask:
  Remove mask for OpenOffice.org 3.1.1, released

  02 Sep 2009; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org>
  package.mask:
  Dropped the global KDE-4.3 package.mask now that the affected arches have
  been
  masked on their respective profiles (bug 280312).

  02 Sep 2009; Christian Faulhammer <fauli@gentoo.org> package.mask:
  mask live ebuild for app-portage/g-ctan

  02 Sep 2009; Víctor Ostorga <vostorga@gentoo.org> package.mask:
  Removing net-dns/dns2go from package.mask, it's gone from portage

  02 Sep 2009; Víctor Ostorga <vostorga@gentoo.org> package.mask:
  Removing sys-apps/lkcp from package.mask, it's gone from portage

  02 Sep 2009; Víctor Ostorga <vostorga@gentoo.org> package.mask:
  Removing net-ftp/glftpd , it's gone from portage

  01 Sep 2009; Alex Legler <a3li@gentoo.org> package.mask:
  Masking TinyERP for security bug 283434.

  01 Sep 2009; Theo Chatzimichos <tampakrap@gentoo.org> package.mask:
  Mask KDE 4.3.1, mask will be removed as soon as its release is announced
  in kde.org

  01 Sep 2009; Jeroen Roovers <jer@gentoo.org> package.mask:
  Remove opera-9.27 after more than a year.

  01 Sep 2009; Jeroen Roovers <jer@gentoo.org> package.mask:
  Tweak www-client/opera mask now 10.00 is final.

  01 Sep 2009; Patrick Lauer <patrick@gentoo.org> package.mask:
  Removing samba 3.3 mask

  31 Aug 2009; Víctor Ostorga <vostorga@gentoo.org> package.mask:
  Unmasking dev-util/cccc since all bugs are fixed

  30 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking <app-pda/synce-0.10 for QA removal.

  30 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking dev-cpp/libmxmlplus for QA removal.

  30 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking net-misc/rarpd for QA removal.

  29 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking dev-util/qtunit for QA removal.

  29 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking sys-process/acctail for QA removal.

  29 Aug 2009; Alex Legler <a3li@gentoo.org> thirdpartymirrors:
  Adding http://de.mirror.rubyforge.org/ to mirror://rubyforge.
  Thanks to Tom Copeland of RubyForge for providing us with an API to their
  mirror list.

  28 Aug 2009; Mounir Lamouri <volkmar@gentoo.org> package.mask:
  Removing mask for mozilla-weave

  28 Aug 2009; William Hubbs <williamh@gentoo.org> use.desc:
  New global use flag "zsh-completion".

  28 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask media-libs/rte for removal as it's orphaned library and ships a
  modified copy of FFmpeg.

  28 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask media-libs/mpeg-lib for removal as it's orphaned library.

  28 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask media-libs/loadpng for removal as it's orphaned library.

  27 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Removed gnusound from tree.

  27 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking app-emulation/parallels-workstation for QA removal.

  27 Aug 2009; Christian Faulhammer <fauli@gentoo.org> package.mask:
  mask RC1 of dev-util/bzr-2.0 for testing

  26 Aug 2009; Alex Legler <a3li@gentoo.org> thirdpartymirrors:
  Removing roedu from mirror://rubyforge, dead.

  26 Aug 2009; Mounir Lamouri <volkmar@gentoo.org> package.mask:
  Fix mask of mozilla-weave

  26 Aug 2009; Thomas Anderson <gentoofan23@gentoo.org> package.mask:
  Remove mask for mythzoneminder, security flaws in zoneminder have been
  resolved.

  25 Aug 2009; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Mask app-emacs/cc-mode for removal.

  25 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking media-tv/linuxtv-dvb-firmware for QA removal.

  25 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> updates/3Q-2009:
  Rename xfce-extra/ packages.

  25 Aug 2009; Alexis Ballier <aballier@gentoo.org> package.mask:
  unmask latest libass now that vlc 1.0.1 builds fine against it

  24 Aug 2009; Christian Faulhammer <fauli@gentoo.org> package.mask:
  Security-vulnerable bundled expat version:
  Masking sys-apps/einit for removal
  Simple mask for dev-tex/mpm

  24 Aug 2009; Mounir Lamouri <volkmar@gentoo.org> package.mask:
  Masking mozilla-weave testing versions

  24 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> updates/3Q-2009:
  Rename xfce-extra/ packages.

  24 Aug 2009; Peter Alfredsen <loki_val@gentoo.org> package.mask:
  Add xpdf-3.02-r3 to poppler mask, since it will only work with
  >=poppler-0.11.3

  24 Aug 2009; Ulrich Mueller <ulm@gentoo.org> package.mask,
  prefix/package.mask:
  Unmask app-admin/eselect-1.2_rc*.

  23 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask more live scm ebuilds.

  23 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> updates/3Q-2009:
  Rename xfce-extra/ packages.

  23 Aug 2009; Samuli Suominen <ssuominen@gentoo.org>
  targets/desktop/make.defaults:
  Enable USE thunar in desktop profiles so xfce based apps get it enabled by
  default.

  23 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> updates/3Q-2009:
  Rename xfce-base/ and xfce-extra/ packages.

  23 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Removed xfce-base/xfce4-extras meta from tree.

  23 Aug 2009; Víctor Ostorga <vostorga@gentoo.org> package.mask:
  Unmasking dev-util/hxd. It has now fixes to many QA issues

  23 Aug 2009; Hans de Graaff <graaff@gentoo.org> package.mask:
  Revert package mask for cgi_multipart_eof_fix due to mogrel depending on
  it, #282405

  23 Aug 2009; Alin Năstac <mrness@gentoo.org> package.mask:
  Remove net-dialup/speedtouch from the tree (#273316)

  23 Aug 2009; Jeremy Olexa <darkside@gentoo.org> updates/3Q-2009:
  move xfce-extra/thunar-shares xfce-extra/thunar-shares-plugin

  23 Aug 2009; Jeremy Olexa <darkside@gentoo.org> updates/3Q-2009:
  move xfce-extra/thunar-svn xfce-extra/thunar-svn-plugin

  22 Aug 2009; Hans de Graaff <graaff@gentoo.org> package.mask:
  Mask dev-ruby/devel-logger.

  22 Aug 2009; Hans de Graaff <graaff@gentoo.org> package.mask:
  Mask dev-ruby/cgi_multipart_eof_fix since it is no longer needed.

  22 Aug 2009; Hans de Graaff <graaff@gentoo.org> package.mask:
  Use proper name for activeresource.

  22 Aug 2009; Hans de Graaff <graaff@gentoo.org> package.mask:
  Mask dev-ruby/ruby-amazon

  22 Aug 2009; Hans de Graaff <graaff@gentoo.org> package.mask:
  Mask dev-ruby/rails 2.0 and 2.1 slots for removal.

  21 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask orphaned media-libs/clibpdf for removal.

  21 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Removed dev-libs/tdb and media-libs/libpixman from tree.

  21 Aug 2009; Thomas Sachau (Tommy[D]) <tommy@gentoo.org> package.mask:
  Mask alpha version of k3b

  21 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> use.desc:
  New global USE flag "mp4".

  21 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Remove masking for removed packages. package.mask

  20 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org>
  default/linux/package.use.mask:
  Mask oss USE flag for newer PulseAudio.

  20 Aug 2009; Jeroen Roovers <jer@gentoo.org> package.mask:
  Tweak opera-10 masking again.

  20 Aug 2009; Jeremy Olexa <darkside@gentoo.org>
  hardened/linux/package.mask, hardened/package.mask:
  p.mask dev-python/skype4py and net-im/skysentials on hardened because they
  depend on masked skype

  19 Aug 2009; Ulrich Mueller <ulm@gentoo.org> arch/alpha/use.mask,
  arch/sparc-fbsd/use.mask, arch/sparc/package.use.mask,
  arch/sparc/use.mask, arch/x86-fbsd/package.use.mask,
  arch/x86-fbsd/use.mask, default-bsd/fbsd/6.2/sparc/use.mask,
  default-bsd/fbsd/6.2/x86/package.use.mask,
  default-bsd/fbsd/6.2/x86/use.mask, default-linux/alpha/use.mask,
  default-linux/sparc/package.use.mask, default-linux/sparc/use.mask:
  Add valgrind to use.mask, and remove from package.use.mask where
  appropriate. Bug 281922.

  19 Aug 2009; Ulrich Mueller <ulm@gentoo.org> package.mask,
  prefix/package.mask:
  Mask app-admin/eselect-1.2_rc* for testing, and unmask it in prefix.

  19 Aug 2009; MATSUU Takuto <matsuu@gentoo.org> package.mask,
  releases/2008.0/package.mask:
  move >=x11-libs/xcb-util-0.3.4 and >=x11-wm/awesome-3.3 to the 2008.0
  profiles.

  18 Aug 2009; Sébastien Fabbro <bicatali@gentoo.org> package.mask:
  Masked dev-python/basemap-data for removal

  18 Aug 2009; Rémi Cardona <remi@gentoo.org> package.mask,
  +releases/2008.0/package.mask:
  move the libxcb 1.2 mask entries to the 2008.0 profiles, all other
  profiles will get the new xcb and libX11

  18 Aug 2009; Alex Legler <a3li@gentoo.org> package.mask:
  Masing www-apps/diaria for last rites. Bug 281897.

  17 Aug 2009; Jeremy Olexa <darkside@gentoo.org>
  +default/linux/alpha/10.0/eapi, +default/linux/amd64/10.0/eapi,
  +default/linux/arm/10.0/eapi, +default/linux/hppa/10.0/eapi,
  +default/linux/ia64/10.0/eapi, +default/linux/m68k/10.0/eapi,
  +default/linux/mips/10.0/eapi, +default/linux/powerpc/ppc32/10.0/eapi,
  +default/linux/powerpc/ppc64/10.0/eapi, +default/linux/s390/10.0/eapi,
  +default/linux/sh/10.0/eapi, +default/linux/sparc/10.0/eapi,
  +default/linux/x86/10.0/eapi, +releases/10.0/eapi, releases/10.0/packages:
  Make 10.0 profiles EAPI-2 compliant (based on community feedback).
  Initial commit: may need some tweaking later.

  17 Aug 2009; Samuli Suominen <ssuominen@gentoo.org>
  targets/server/make.defaults:
  Remove deprecated mailwrapper from default USE flags.

  16 Aug 2009; Rémi Cardona <remi@gentoo.org> arch/sh/use.mask,
  default-linux/sh/use.mask, desc/video_cards.desc,
  hardened/amd64/make.defaults, hardened/ia64/make.defaults,
  hardened/linux/powerpc/ppc64/use.mask, hardened/linux/x86/make.defaults,
  hardened/ppc/use.mask, hardened/ppc64/use.mask,
  hardened/x86/make.defaults:
  drop last traces of i810

  16 Aug 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  clean out big x11-drivers/ package.mask entry, packages are gone from
  portage

  15 Aug 2009; Víctor Ostorga <vostorga@gentoo.org> package.mask:
  Unmasking dev-libs/libowfat and www-servers/gatling

  15 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Removed pyxfce from tree.

  14 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Removed Musepack SV7 utilities from tree.

  14 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask sys-libs/uclibc++ for removal.

  14 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> -obsolete/README,
  -obsolete/alpha/deprecated, -obsolete/alpha/make.defaults,
  -obsolete/amd64/deprecated, -obsolete/amd64/make.defaults,
  -obsolete/hppa/deprecated, -obsolete/hppa/make.defaults,
  -obsolete/ia64/deprecated, -obsolete/ia64/make.defaults,
  -obsolete/mips/deprecated, -obsolete/mips/make.defaults,
  -obsolete/ppc/deprecated, -obsolete/ppc/make.defaults,
  -obsolete/ppc64/deprecated, -obsolete/ppc64/make.defaults,
  -obsolete/sparc/deprecated, -obsolete/sparc/make.defaults,
  -obsolete/x86/deprecated, -obsolete/x86/make.defaults:
  Remove obsolete directory.

  14 Aug 2009; Hans de Graaff <graaff@gentoo.org> package.mask:
  Remove dev-util/freeride mask, it is gone.

  12 Aug 2009; Mark Loeser <halcy0n@gentoo.org> package.mask:
  Removing mask for gcc-4.4. It is still masked in all the hardened profiles

  13 Aug 2009; Steve Dibb <beandog@gentoo.org> desc/alsa_cards.desc:
  Update ALSA cards, bug 269167

  13 Aug 2009; Jeroen Roovers <jer@gentoo.org> package.mask:
  Adjust www-client/opera non-beta mask.

  13 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> -base/use.defaults:
  Remove use.defaults since it's not used anymore.

  13 Aug 2009; Alexis Ballier <aballier@gentoo.org> base/package.use.mask,
  features/64bit-native/package.use.mask:
  unmask lmms[vst] now that it works fine; mask it on no-multilib profiles

  13 Aug 2009; Timo Gurr <tgurr@gentoo.org> package.mask:
  Mask Mumble 1.2.0 snapshots for testing.

  12 Aug 2009; Alex Alexander <wired@gentoo.org> package.mask:
  masked ktorrent beta versions

  12 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Unmask cgal-python since it's fixed.

  12 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> base/virtuals,
  default-bsd/virtuals, default/bsd/virtuals, embedded/virtuals:
  Move old-style eject virtual to new-style.

  12 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Unmask redland 1.0.9 wrt #281226.

  12 Aug 2009; Steve Dibb <beandog@gentoo.org>
  targets/desktop/make.defaults:
  Add dts to default desktop profile, also a default codec for DVDs

  12 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Unmask vis5d+ because it has been fixed.

  12 Aug 2009; Alex Legler <a3li@gentoo.org> package.mask:
  Taking phpgroupware out of p.mask as there is a fixed version now. Bug
  278864.

  11 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask gst-plugins-fluendo-mpegdemux for removal.

  11 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask beast and beast-data for removal.

  11 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask cgal-python and vis5d+ for removal.

  11 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking app-i18n/canuum for QA removal.

  10 Aug 2009; Torsten Veller <tove@gentoo.org> package.mask:
  New core modules wrt perl-5.10.1: parent and Parse-CPAN-Meta
  Move them from dev-perl to perl-core

  10 Aug 2009; Federico Ferri <mescalinum@gentoo.org> package.mask:
  mask quirc wrt bug #249468

  10 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask gmpc-lyricwiki for removal.

  10 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask lurker for removal.

  10 Aug 2009; Víctor Ostorga <vostorga@gentoo.org> package.mask:
  Removing =dev-libs/dietlibc-0.32 since it is no longer in the tree

  10 Aug 2009; Matthias Schwarzott <zzam@gentoo.org> package.mask:
  Unmask udev-145, as util-linux is in tree, bug #279491.

  10 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask =dev-libs/dietlibc-0.32 (acked by hollow).

  10 Aug 2009; Alexis Ballier <aballier@gentoo.org> package.mask:
  mask latest libass that has api changes

  10 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Removed d4x from tree.

  10 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask ufo for removal.

  10 Aug 2009; Stephanie Lockwood-Childs <wormo@gentoo.org> package.mask:
  Unmasked ulogd, since security patch has now been applied (bug #225363)

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking net-dialup/penggy for QA removal.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Also mask raccess4vbox3.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking net-fs/sfs for QA removal.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking dev-lang/smarteiffel for QA removal.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking sci-mathematics/Macaulay2 for QA removal.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking dev-php/phpdbg-client for QA removal.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking sci-chemistry/kemistry for QA removal.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking app-backup/afbackup-client for QA removal.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking app-dicts/ebview for QA removal.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking net-dialup/isdn4k-utils for QA removal.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking dev-util/pilrc for QA removal.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking dev-tinyos/ncc for QA removal.

  09 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask realbasic for removal.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking app-admin/killproc for QA removal.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking dev-dotnet/pnet for QA removal.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking app-i18n/minichinput for QA removal.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking <net-misc/tsclient-2 for QA removal.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking dev-libs/libowfat for QA removal.

  09 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Removed jscalltree from tree.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking dev-dotnet/monouml for QA removal.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking app-text/omegat for QA removal.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking net-fs/fex for QA removal.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking net-firewall/tuxfrw for QA removal.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking dev-util/cweb for QA removal.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking dev-java/rjava for QA removal.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking sci-chemistry/maid for QA removal.

  09 Aug 2009; Chris PeBenito <pebenito@gentoo.org> profiles.desc:
  Update profiles.desc for selinux profiles.

  09 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask ochusha for removal.

  09 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask aacgain for removal.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking net-misc/bo2k_console for QA removal.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking app-crypt/tpm-emulator for QA removal.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking sys-process/minit for QA removal.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking dev-util/sgb for QA removal.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Remove cisco-aironet-client-utils from mask (gone).

  09 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Removed hdump from tree. Unmask hsc since it builds again.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking net-misc/ndtpd for QA removal.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking net-misc/bo2k_plugins for QA removal.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking net-irc/mistbot for QA removal.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking net-analyzer/trafd for QA removal.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking media-libs/libmovtar for QA removal.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking dev-libs/libredblack for QA removal.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking x11-misc/xac for QA removal.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking sys-fs/ocfs2-tools for QA removal.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking net-fs/am-utils for QA removal.

  09 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask pyxfce for removal.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking dev-libs/libexploit for QA removal.

  09 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking dev-db/sqsh for QA removal.

  09 Aug 2009; Samuli Suominen <ssuominen@gentoo.org>
  targets/desktop/make.defaults:
  Enable flac by default (acked by likewhoa).

  09 Aug 2009; Samuli Suominen <ssuominen@gentoo.org>
  targets/desktop/make.defaults:
  Enable USE a52 aac mp4 x264 and xvid by default (acked by beandog).

  09 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask xfce-base/xfce4-extras for removal.

  09 Aug 2009; Michał Januszewski <spock@gentoo.org> package.mask:
  Add a mask for live git versions of pycuda and pytools.

  08 Aug 2009; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org>
  package.mask:
  Moved KDE-4.3.0 mask from profiles/package.mask to
  profiles/base/package.mask - fixes bug 280734.

  08 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Removed notification-daemon-xfce, xfkc and gsynaptics-mcs-plugin from
  tree.

  08 Aug 2009; Ulrich Mueller <ulm@gentoo.org> package.mask:
  app-text/remem is gone.

  08 Aug 2009; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Emacs 24 is still far away, don't mask its virtual.

  08 Aug 2009; Federico Ferri <mescalinum@gentoo.org> package.mask:
  mask unmaintained mmucl

  08 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask libzzub for removal, with its deps.

  08 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Also add irssi-svn to the list of live ebuilds.

  08 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Use a single mass-amsking for live ebuilds masked by QA team; add
  dosbox-cvs to the list.

  08 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask naim, naim-modules, hsc, ksubtitleripper, cccc and wlassistant for
  removal.

  08 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask diasce and motor for removal.

  08 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Removed geresh, medit and qe from tree.

  08 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Removed mindi, mindi-busybox, mondo-rescue, xchat-systray and lastfmproxy
  from tree.

  08 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask x11-misc/glsof for removal.

  08 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask dev-util/hxd for removal.

  08 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask net-misc/cgterm for removal.

  08 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask app-misc/nomadii-utils for removal.

  08 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask x11-themes/baghira for removal.

  08 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask x11-misc/stripclub for removal.

  08 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Removed kaspaliste, gtk-server, efence, ofbis and smjpeg from tree.

  08 Aug 2009; Federico Ferri <mescalinum@gentoo.org> package.mask:
  mask tcl-debug - not working with tcl85 - bugs open

  07 Aug 2009; Alistair Bush <ali_bush@gentoo.org> package.mask:
  Remove dev-java/jruby package.mask.

  07 Aug 2009; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org>
  ChangeLog:
  Added missing entries in ChangeLog.

  07 Aug 2009; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org>
  package.mask:
  Updated masks for printer-applet and system-config-printer-kde.

  07 Aug 2009; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org>
  package.mask:
  Dropped old mask on printing deps for KDE4.

  06 Aug 2009; Christian Faulhammer <fauli@gentoo.org> package.mask:
  remove mask entry for net-misc/tor release candidates, final 0.2.1 version
  now in the tree

  06 Aug 2009; Tomáš Chvátal <scarabeus@gentoo.org> package.mask:
  Adjust remi's mask for <xorg-server-1.5

  06 Aug 2009; Benedikt Böhm <hollow@gentoo.org> package.mask:
  remove mod_auth_pam from p.mask, it no longer exists

  06 Aug 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  add x11-drivers/synaptics to package.mask

  06 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Remove mask on removed iiimf packages.

  05 Aug 2009; Federico Ferri <mescalinum@gentoo.org> package.mask:
  removed old and broken versions of synce

  05 Aug 2009; Peter Volkov <pva@gentoo.org> package.mask:
  Unmasked pyxfce. It was easy to fix :)

  05 Aug 2009; Alexis Ballier <aballier@gentoo.org> package.mask:
  remove old g-brief mask, the masked versions are gone

  04 Aug 2009; Alex Legler <a3li@gentoo.org> package.mask:
  Mask www-apps/phpgroupware, security bug 278864.

  04 Aug 2009; Andreas Proschofsky <suka@gentoo.org> package.mask:
  Mask beta release for OpenOffice.org 3.1.1, needs testing

  04 Aug 2009; Alex Alexander <wired@gentoo.org> package.mask:
  masked one more kde 4.3 dep

  04 Aug 2009; Alex Alexander <wired@gentoo.org> package.mask:
  masking kde 4.3 dependencies before adding them to tree

  03 Aug 2009; Chris PeBenito <pebenito@gentoo.org>
  selinux/2007.0/amd64/parent, selinux/2007.0/x86/parent:
  Fix SELinux profile inheritance to not inherit deprecated profiles.

  03 Aug 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask the lisp live darcs ebuilds.

  03 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask mplayer-skins for removal since gmplayer is deprecated and these are
  causing problems wrt #224563.

  03 Aug 2009; Thomas Anderson <gentoofan23@gentoo.org> package.mask:
  All of www-misc/zoneminder's security flaws have been resolved, unmask
  zoneminder.

  03 Aug 2009; Chris PeBenito <pebenito@gentoo.org> package.mask:
  Mask selinux-lvm and selinux-mdadm for removal.

  02 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask x11-misc/notification-daemon-xfce because it needs xfce-mcs-manager
  from Xfce 4.4.

  02 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  media-video/mpeg4ip has been removed.

  01 Aug 2009; Jeremy Olexa <darkside@gentoo.org> thirdpartymirrors:
  add back mocha.xfce.org to mirror://xfce - it uses symlinks on the server
  side to match naming conventions used by other mirrors

  01 Aug 2009; Jeremy Olexa <darkside@gentoo.org> thirdpartymirrors:
  Modify mirror://xfce - remove mocha.xfce.org because it's naming doesn't
  comply with the rest of the mirrors. Remove de.xfce.org because it is
  outdated. Add tx-us.xfce.org

  01 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask gsynaptics-mcs-plugin because it needs xfce-mcs-manager which isn't
  used with Xfce 4.6.

  01 Aug 2009; MATSUU Takuto <matsuu@gentoo.org> package.mask:
  Unmask =net-wireless/broadcom-sta-5.10.91.9-r2.

  01 Aug 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Unmask ALSA without USE midi.

  01 Aug 2009; Steve Dibb <beandog@gentoo.org> package.mask:
  Remove media-video/realplayer from package.mask, as it was removed from
  the tree

  01 Aug 2009; Steve Dibb <beandog@gentoo.org> package.mask:
  p.mask app-text/gnomesword, renamed/bumped to app-text/xiphos

  01 Aug 2009; Jeremy Olexa <darkside@gentoo.org> package.mask:
  p.mask dev-python/pyxfce for removal, bug 277163

  31 Jul 2009; Jeremy Olexa <darkside@gentoo.org> package.mask:
  Remove non-existant dev-lisp/cl-blog, bug 208658

  31 Jul 2009; Steve Dibb <beandog@gentoo.org> package.mask:
  Package.mask media-sound/alsa-driver for lack of support

  31 Jul 2009; Michał Januszewski <spock@gentoo.org> package.mask:
  Mask the latest nvidia-settings so that it is in sync with the drivers.

  31 Jul 2009; Federico Ferri <mescalinum@gentoo.org> package.mask:
  removed old -incorrect- mask of app-pda/libopensync-plugin-synce-0.22

  31 Jul 2009; Federico Ferri <mescalinum@gentoo.org> package.mask:
  Removed invalid entries

  31 Jul 2009; Christian Faulhammer <fauli@gentoo.org> package.mask:
  unmask virtual/emacs-23 and emacs-daemon, update mask for the forthcoming
  Emacs 24

  30 Jul 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask gnbd and gnbd-kernel since they require cman.

  30 Jul 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask net-misc/d4x for removal wrt #271645.

  30 Jul 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask ktvschedule for removal.

  30 Jul 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask app-editors/qe for removal wrt #275915.

  30 Jul 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask mplayerplug-in for removal wrt #273121.

  30 Jul 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask media-sound/noteedit wrt #276758.

  30 Jul 2009; Mounir Lamouri <volkmar@gentoo.org> package.mask:
  Mask net-misc/asterisk-chan_bluetooth for removal, bug 279383

  29 Jul 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask v4l-dvb-hg since it's a live ebuild.

  29 Jul 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask mmsv2.

  29 Jul 2009; Víctor Ostorga <vostorga@gentoo.org> package.mask:
  Mask gnome-extra/gnome-art for removal, bug #245145

  29 Jul 2009; <chainsaw@gentoo.org> package.mask:
  Remove atheme.org alpha/beta mask section, Conspire was found to have no
  show-stopping bugs. A newer Audacious is now stable.

  29 Jul 2009; Peter Volkov <pva@gentoo.org> package.mask:
  unmask net-im/psi{,meida}: it's now released.

  29 Jul 2009; Jeremy Olexa <darkside@gentoo.org> package.mask:
  add bug number to mysql mask

  29 Jul 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask xnc for removal.

  29 Jul 2009; Michał Januszewski <spock@gentoo.org> package.mask:
  Add masks for CUDA 2.3.

  29 Jul 2009; Jeremy Olexa <darkside@gentoo.org> package.mask:
  p.mask net-im/silky for removal, bug 279547

  29 Jul 2009; Jeremy Olexa <darkside@gentoo.org> package.mask:
  Add virtual/mysql-{4.0,4.1} to p.mask listing for <dev-db/mysql-5.0.60-r1

  28 Jul 2009; Tomáš Chvátal <scarabeus@gentoo.org> package.mask:
  Adjust mask for ati-drivers to mask also ati-drivers-extra

  28 Jul 2009; Tomáš Chvátal <scarabeus@gentoo.org> package.mask:
  Mask old ati-drivers. 8.XXX.

  28 Jul 2009; Jeremy Olexa <darkside@gentoo.org> package.mask:
  p.mask vulnerable versions of dev-db/mysql, bug 271686

  28 Jul 2009; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Mask app-misc/tipptrainer for removal. (bug #279431)

  28 Jul 2009; Robin H. Johnson <robbat2@gentoo.org> package.mask:
  Bug #257867: Unmask openldap-2.4 series.

  27 Jul 2009; Zac Medico <zmedico@gentoo.org> license_groups:
  Bug #152593 - Add @EULA license group.

  27 Jul 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask media-sound/gnusound for removal.

  27 Jul 2009; Michał Januszewski <spock@gentoo.org> package.mask:
  Mask beta versions of the NVIDIA drivers.

  26 Jul 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Unmask Musepack SV8 libraries and utilities and mask Musepack SV7
  utilities.

  26 Jul 2009; Markus Meier <maekke@gentoo.org> package.mask:
  remove media-gfx/hugin-0.8.0 mask

  25 Jul 2009; Jeroen Roovers <jer@gentoo.org> package.mask:
  Mask new betas of net-ftp/lftp with bittorrent support.

  25 Jul 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask musepack-tools SV8 for testing.

  25 Jul 2009; Torsten Veller <tove@gentoo.org> package.mask:
  Mask dev-perl/POE-Test-Loops-1.020

  24 Jul 2009; Marcus D. Hanwell <cryos@gentoo.org> use.local.desc:
  Added local swig use flag for openbabel.

  24 Jul 2009; Markus Dittrich <markusle@gentoo.org>
  default/linux/package.use.mask:
  Removed masking of qt4 use flag for sci-visualization/paraview
  since the latest version works fine with >=qt4.4.

  24 Jul 2009; Jim Ramsay <lack@gentoo.org> package.mask:
  Mask net-misc/amazonmp3 due to annoying binary package dependencies on old
  boost libraries (bug #net-misc/amazonmp3)

  24 Jul 2009; Mounir Lamouri <volkmar@gentoo.org> package.mask:
  Unmask spandsp newest version as it looks to work for packages working with
  previous one

  24 Jul 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  ladcca was removed; since nothing was using it and lash replaced it.

  23 Jul 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Unmask sidplay since it builds again.

  23 Jul 2009; Alistair Bush <ali_bush@gentoo.org> package.mask:
  Remove jython:2.5 mask

  22 Jul 2009; Ben de Groot <yngwin@gentoo.org> desc/linguas.desc:
  Add Asturian locale, needed for www-client/arora

  22 Jul 2009; Christian Faulhammer <fauli@gentoo.org> package.mask:
  remove spurious mask for ltsp

  22 Jul 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask dev-libs/tdb for removal.

  22 Jul 2009; Samuli Suominen <ssuominen@gentoo.org> use.desc:
  New flag USE cdda to replace local flags cdda and cdaudio.

  22 Jul 2009; Raúl Porcel <armin76@gentoo.org> thirdpartymirrors:
  Punt non-working mirror

  22 Jul 2009; Michael Haubenwallner <haubi@gentoo.org> arch.list,
  profiles.desc:
  add new Gentoo Prefix arch 'hppa-hpux' with profile for hppa2.0-hpux11.31.

  22 Jul 2009; Chris PeBenito <pebenito@gentoo.org> profiles.desc,
  -selinux/2007.0/alpha/parent, -selinux/2007.0/mips/parent,
  -selinux/2007.0/sparc64/parent:
  Drop alpha, mips, sparc selinux support.

  22 Jul 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask latest HAL since it renders all input devices unusable.

  22 Jul 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  add p.mask entry for media-libs/libpixman

  22 Jul 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  remove x11-libs/liboldX entry, package is gone from portage

  22 Jul 2009; Zac Medico <zmedico@gentoo.org> uclibc/virtuals:
  Bug #270496 - Eliminate the base profile's sys-libs/glibc from the
  virtual/libc choices.

  22 Jul 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  remove xf86-video-intel entry from p.mask

  22 Jul 2009; Lennart Kolmodin <kolmodin@gentoo.org> package.mask:
  Mask dev-lang/ghc-6.10.4 for testing.

  22 Jul 2009; Nirbheek Chauhan <nirbheek@gentoo.org> package.mask:
  Unmask 3.5.1 and stuff depending on it, rejoice! (and prepare for bugs)

  21 Jul 2009; Markus Ullmann <jokey@gentoo.org> package.mask:
  Mask WebKit nightly until we have a decent libsoap in-tree

  21 Jul 2009; Raúl Porcel <armin76@gentoo.org> package.mask:
  Unmask >net-misc/dhcpcd-4.99 by request of author

  21 Jul 2009; Nirbheek Chauhan <nirbheek@gentoo.org> package.mask:
  Mask www-client/galeon-2.0.7-r1 which needs xulrunner-1.9.1 which is
  masked

  21 Jul 2009; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Mask griffith-0.10_rc releases. Remove masking for beta packages

  21 Jul 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask teamspeak2-server-bin and teamspeak2-client-bin for security wrt
  #251492.

  21 Jul 2009; Christian Faulhammer <fauli@gentoo.org> updates/3Q-2009:
  move sci-misc/gri to sci-visualization/gri

  20 Jul 2009; Christian Faulhammer <fauli@gentoo.org> package.mask:
  unmask emul packages for amd64, as requested by Pacho Ramos <pacho AT
  condmat1 DOT ciencias DOT uniovi DOT es> on bug 254577

  20 Jul 2009; Patrick McLean <chutzpah@gentoo.org> use.local.desc:
  Add "dhcp" USE flag for net-dns/dnsmasq

  20 Jul 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask x11-misc/xfkc for removal since it doesn't compile wrt #278466 and
  because it's codebase has been merged into xfwm4 and xfce4-xkb.

  19 Jul 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask media-sound/bmpx for removal wrt #277421.

  19 Jul 2009; Torsten Veller <tove@gentoo.org> package.mask:
  Mask Compress-Zlib, IO-Compress-Zlib, IO-Compress-Bzip2, IO-Compress-Base.
  IO-Compress replaces them

  19 Jul 2009; Lennart Kolmodin <kolmodin@gentoo.org> package.mask:
  Remove hard mask on dev-lang/ghc-bin as the package finally has been
  removed.

  19 Jul 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask orphaned libraries ofbis and smjpeg wrt #247961.

  19 Jul 2009; Lennart Kolmodin <kolmodin@gentoo.org> package.mask:
  Remove hard mask on dev-lang/ghc-6.8.2-r1.
  This ebuild is attempting to solve the trouble in bug #259867.

  19 Jul 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask sidplay and streamixer for removal wrt #98769, #272602 and #273342.

  19 Jul 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  media-sound/glame is no more wrt #274956.

  18 Jul 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Unmask net-print/pnm2ppa by multiple user requests at bug 248171.

  18 Jul 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask x11-libs/gtk-server for removal (again) since it doesn't compile and
  maintainers don't care wrt #222235.

  17 Jul 2009; Jeroen Roovers <jer@gentoo.org> package.mask:
  Tweak www-client/opera-10.00* mask to exclude 4492 (beta2).

  17 Jul 2009; Fabian Groffen <grobian@gentoo.org> desc/elibc.desc:
  Fix description, thanks mraudsepp

  16 Jul 2009; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  Remove mask on dev-java/cacao as we have a working version in tree.

  16 Jul 2009; Rémi Cardona <remi@gentoo.org> desc/video_cards.desc:
  remove double "nouveau" entry, sort list

  16 Jul 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask leif, eimil and csconv too.

  16 Jul 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask, use.desc:
  Mask media-libs/ladcca for removal as it's replaced by media-sound/lash.
  Remove USE ladcca since it's replaced by USE lash.

  15 Jul 2009; Ben de Groot <yngwin@gentoo.org>
  arch/powerpc/ppc64/package.use.mask:
  Mask dillo useflag on claws-mail as current dillo version is unkeyworded on
  ppc64 (bug 253083)

  14 Jul 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask jscalltree.

  14 Jul 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask live sdcc-svn.

  13 Jul 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  add 14 X input drivers to p.mask

  13 Jul 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  remove xorg-server p.mask, offending version is gone from portage

  13 Jul 2009; Hans de Graaff <graaff@gentoo.org> package.mask:
  Mask dev-ruby/misen and dev-ruby/dpklib due to bug 276980

  13 Jul 2009; Nirbheek Chauhan <nirbheek@gentoo.org> package.mask:
  Mask 0.4.0, needs mozilla-firefox-3.5

  13 Jul 2009; <nirbheek@gentoo.org> package.mask:
  Unmask weave, xulrunner 1.9.1 is in-tree

  13 Jul 2009; Hans de Graaff <graaff@gentoo.org> package.mask:
  Freeride is in dev-util, not dev-ruby. Fixed and will wait another 30 days
  just to be sure.

  13 Jul 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask bobs for removal.

  13 Jul 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Remove rubinius mask.

  11 Jul 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Unmask libmp4v2 1.9.0 since everything in ~arch builds now and I can play
  different MP4 files from mplayers sample site fine.

  11 Jul 2009; Jeremy Olexa <darkside@gentoo.org> package.mask:
  p.mask rt2400,rt2500,rt2570,glame,shttpd,lkcp,pnm2ppa,dgs for bugs
  277232,274956,248484,248391,248171,246960

  10 Jul 2009; <vostorga@gentoo.org> package.mask:
  media-video/mpeg4ip doesn't build wrt #274284

  10 Jul 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  dev-util/efence doesn't work wrt #128814 or build wrt #262528, masked for
  treecleaners.

  10 Jul 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  New libmp4v2 release. New upstream. Masked for testing.

  09 Jul 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask monouml (and fix dates for previous masks).

  09 Jul 2009; Victor Ostorga <vostorga@gentoo.org> package.mask:
  Mask x11-misc/e-fancylauncher

  09 Jul 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Removed treecleaners and media-sound queue of obsolete pkgs.

  09 Jul 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask ViewKlass.

  09 Jul 2009; Alexis Ballier <aballier@gentoo.org> base/package.use.mask:
  usemask vlc[pda] useflag for 1.0.0, it doesn't build, bug #277037

  09 Jul 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask entropy_rsa.

  09 Jul 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask sambasentinel.

  09 Jul 2009; Christian Faulhammer <fauli@gentoo.org> package.mask:
  extend mask entry for sys-kernel/vanilla-sources

  08 Jul 2009; MATSUU Takuto <matsuu@gentoo.org> package.mask:
  net-wireless/broadcom-sta: Masked broken ebuild, bug #276543.

  08 Jul 2009; Ben de Groot <yngwin@gentoo.org> hardened/linux/package.mask:
  Add same mask to hardened/linux to work around this design fail of not
  having hardened as parent, while being its subdirectory

  08 Jul 2009; Ben de Groot <yngwin@gentoo.org> hardened/package.mask:
  Mask fltk revisions on hardened that need glibc-2.10

  07 Jul 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masks ome cisco utils.

  07 Jul 2009; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Unmask app-emacs/emacs-w3m.

  07 Jul 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask netgo.

  07 Jul 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask qmatplot.

  07 Jul 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Unmask SoundTouch 1.4.0 since SoundTouch upstream replied it's allowed to
  symlink the pkgconfig file for backwards compability.

  07 Jul 2009; Alexis Ballier <aballier@gentoo.org> package.mask:
  unmask vlc 1.0.0 now that its out of rcs

  06 Jul 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask hdump.

  06 Jul 2009; Christian Faulhammer <fauli@gentoo.org> package.mask:
  remove mask for mail-client/claws-mail 3.7.2 and all its plugins, all in
  tree

  06 Jul 2009; Christian Faulhammer <fauli@gentoo.org> package.mask:
  mask Claws Mail 3.7.2 and its plugins until all of them are in the tree

  06 Jul 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Fix masking for iii stuff.

  06 Jul 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  add xf86-video-intel-2.7.99.901 to package.mask

  06 Jul 2009; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Package mask app-emacs/mule-ucs for removal.

  06 Jul 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask dev-java/cacao.

  05 Jul 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Remove sudo masking (rc1 works fine).

  05 Jul 2009; Diego E. Pettenò <flameeyes@gentoo.org> base/use.mask,
  package.mask:
  Mask openais and deps, and cman USE flag.

  05 Jul 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask libiimcf and dependnecies.

  05 Jul 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Remove libedit masking (pointless, version replaced).

  05 Jul 2009; Ben de Groot <yngwin@gentoo.org>
  arch/powerpc/package.use.mask, arch/x86-fbsd/package.use.mask:
  Add media-libs/mlt[frei0r] to package.use.mask on powerpc and x86-fbsd

  05 Jul 2009; Benedikt Böhm <hollow@gentoo.org> package.mask:
  mask www-apache/mod_auth_pam

  05 Jul 2009; Ben de Groot <yngwin@gentoo.org> package.mask:
  Mask <=www-client/dillo-2.1, see bug 276432

  05 Jul 2009; Robin H. Johnson <robbat2@gentoo.org> package.mask:
  Bug #275291 - gnupg upgrade broke seahorse/enigmail/mutt. Masking for now.

  04 Jul 2009; Raúl Porcel <armin76@gentoo.org> package.mask:
  Punt mozilla-firefox-bin p.mask

  03 Jul 2009; Jeremy Olexa <darkside@gentoo.org> package.mask:
  p.mask for treeclener queue

  03 Jul 2009; Jeremy Olexa <darkside@gentoo.org> package.mask:
  p.mask net-wireless/{zd1211,rtl8187,ralink-rt61,rt61}, bugs
  177920,180008,183085,190718

  03 Jul 2009; Jeremy Olexa <darkside@gentoo.org> package.mask:
  remove entries for removed packages (treecleaner queue)

  03 Jul 2009; Matthias Schwarzott <zzam@gentoo.org> package.mask:
  Mask sys-fs/udev-142 and greater as it needs libblkid provided by not yet
  released util-linux-2.16

  02 Jul 2009; Ben de Groot <yngwin@gentoo.org> package.mask:
  Remove no longer needed mask for >=net-lib/rb_libtorrent-0.13.1 and
  >=net-p2p/qbittorrent-1.2

  02 Jul 2009; Fabian Groffen <grobian@gentoo.org> package.mask:
  Drop mask for no longer existing package (it had been superseeded by -r2
  for a long time anyway...)

  02 Jul 2009; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Masking griffith beta releases

  02 Jul 2009; <nirbheek@gentoo.org> package.mask:
  Update fx3.5 mask message with bug 268394

  02 Jul 2009; Christian Faulhammer <fauli@gentoo.org> package.mask:
  unmask dev-util/bzr as the final 1.16 release is in the tree now

  02 Jul 2009; Mounir Lamouri <volkmar@gentoo.org> desc/linguas.desc:
  Add crh, en_CA and sr@latin locales. Note that sr@latin should now be used
  instead of sr@Latn.

  02 Jul 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Fix pulseaudio masking.

  02 Jul 2009; Christian Faulhammer <fauli@gentoo.org> package.mask:
  mask sys-kernel/vanilla-sources release candidates on behalf of armin76

  01 Jul 2009; Theo Chatzimichos <tampakrap@gentoo.org> package.mask:
  masking koffice monolithic for removal

  30 Jun 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask alsa-patch-bay.

  30 Jun 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  add the latest xorg-server to p.mask

  29 Jun 2009; Christian Faulhammer <fauli@gentoo.org> package.mask:
  mask net-misc/tor-0.2.1.16_rc

  28 Jun 2009; Ben de Groot <yngwin@gentoo.org> package.mask:
  Adjust rb_libtorrent mask to >=0.13.1, pending further fixes

  27 Jun 2009; Ben de Groot <yngwin@gentoo.org> package.mask:
  Remove temporary Qt 4.5.2 mask

  27 Jun 2009; Ben de Groot <yngwin@gentoo.org> updates/2Q-2009:
  Please don't forget to add the category

  27 Jun 2009; Ben de Groot <yngwin@gentoo.org> package.mask:
  Temporary Qt 4.5.2 mask, until all ebuilds are committed

  27 Jun 2009; Christian Faulhammer <fauli@gentoo.org> package.mask:
  Give a reason for net-misc/tor masking

  26 Jun 2009; Patrick Lauer <patrick@gentoo.org> package.mask:
  Masking samba 3.3 until it is better tested

  26 Jun 2009; Jeroen Roovers <jer@gentoo.org> package.mask:
  Edit www-client/opera-10* mask yet again.

  26 Jun 2009; Christian Faulhammer <fauli@gentoo.org> package.mask:
  correct mask for net-misc/tor

  25 Jun 2009; Patrick Lauer <patrick@gentoo.org> package.mask:
  Removing samba 3.2 mask.

  25 Jun 2009; Tomáš Chvátal <scarabeus@gentoo.org> package.mask:
  Remove no longer needed mask for mesa.

  25 Jun 2009; Ben de Groot <yngwin@gentoo.org> package.mask:
  Mask the Qt4 meta ebuild, to prevent devs from being silly and depend on
  the meta ebuild instead of on the specific split Qt ebuilds needed. See
  bug 217161 comment 11.

  24 Jun 2009; Jeroen Roovers <jer@gentoo.org> package.mask:
  Adjust www-client/opera mask to include build 4449.

  24 Jun 2009; <nirbheek@gentoo.org> package.mask:
  Mask firefox release candidates and nspr-4.8 (soname bump)

  24 Jun 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask test versions of PulseAudio.

  23 Jun 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask beta versions of sudo.

  23 Jun 2009; Tomáš Chvátal <scarabeus@gentoo.org> package.mask:
  Mask mesa 7.4.3 because it is broken on intel.

  23 Jun 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  add latest media-libs/tiff revbump to p.mask

  23 Jun 2009; Torsten Veller <tove@gentoo.org> updates/2Q-2009:
  Move dev-perl/Module-CoreList to perl-core/Module-CoreList

  22 Jun 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask realtime-lsm for removal.

  21 Jun 2009; Christian Hoffmann <hoffie@gentoo.org> package.mask:
  cleaning up package.mask, pecl-zip has been removed from the tree (bug
  253486)

  21 Jun 2009; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Mask live ebuilds for Emacs 23 trunk and release branch.

  21 Jun 2009; Jeroen Roovers <jer@gentoo.org> desc/kernel.desc:
  Fix word wrapped .desc line.

  21 Jun 2009; Alexis Ballier <aballier@gentoo.org> package.mask:
  add latest postgresql-ocaml to ocaml 3.11 mask and update reason for
  masking

  21 Jun 2009; Alexis Ballier <aballier@gentoo.org> package.mask:
  update ocaml 3.11 mask and mask packages requiring it too

  21 Jun 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Remove old superseded masking.

  21 Jun 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Update masking for ltsp.

  20 Jun 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask mp1e

  20 Jun 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask whoischk.

  20 Jun 2009; <mrpouet@gentoo.org> package.mask:
  Masked =sys-auth/policykit-0.92 due to a lot of changed into sources code,
  it may break some packages

  20 Jun 2009; Fabian Groffen <grobian@gentoo.org> desc/elibc.desc,
  desc/kernel.desc:
  add missing descriptions for kernels and elibcs that are defined in the
  profiles

  20 Jun 2009; Fabian Groffen <grobian@gentoo.org> arch.list, profiles.desc:
  Add Gentoo Prefix keywords, such that the Prefix profiles can be enabled.

  20 Jun 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Removed ctmkit, ivcall and temperature-app since they have been masked for
  60 days by treecleaners.

  20 Jun 2009; Alin Năstac <mrness@gentoo.org> package.mask:
  Unmask net-proxy/squirm (homepage is available again). Remove
  net-dialup/qlcr p. mask (package was removed, see #264785).

  19 Jun 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Masked media-sound/bossogg for removal because it installs __init__.py
  directly into root of site-packages and because it's not worth fixing
  since it's still using SQLite2.

  19 Jun 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  remove renderproto p.mask entry, ebuild is gone from portage

  18 Jun 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask plugins autoplaylist and serverstats because they are no longer
  valid with gmpc 0.18.0. Mask net-im/ekg2 because it doesn't build with
  stable glibc wrt #247994.

  18 Jun 2009; <chainsaw@gentoo.org> package.mask:
  Undo removal mask for media-sound/ogg2mp3, new maintainer stepped up.

  18 Jun 2009; Alistair Bush <ali_bush@gentoo.org> package.mask:
  Add jython-2.5.0 to package.mask as it will break other packages until
  they are updated.

  18 Jun 2009; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Remove gnome-base/libghttp per bug #244128

  17 Jun 2009; Christian Faulhammer <fauli@gentoo.org> package.mask:
  Mask release candidate of net-misc/tor

  17 Jun 2009; <chainsaw@gentoo.org> package.mask:
  Masking upstream-abandoned media-sound/ogg2mp3 software for removal in 1
  month.

  17 Jun 2009; Peter Volkov <pva@gentoo.org> package.mask:
  Masked bzr-1.16_rc1 pre-release and dependent bzrtools packages.

  17 Jun 2009; Peter Volkov <pva@gentoo.org> package.mask:
  net-misc/l7-filter masked for removal, bug 274341 and bug 254086.

  17 Jun 2009; Peter Volkov <pva@gentoo.org> package.mask:
  Unmasking wireshark - it's finally released.

  17 Jun 2009; Alexis Ballier <aballier@gentoo.org> package.mask:
  remove tl-langmanju mask, its gone

  16 Jun 2009; <chainsaw@gentoo.org> package.mask:
  Add Conspire to the atheme alpha/beta mask, move it up to the start where
  it belongs.

  16 Jun 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask kaspaliste for removal.

  16 Jun 2009; <chainsaw@gentoo.org> package.mask:
  Mask 2.1 alpha pre-releases of Audacious.

  16 Jun 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask ddcxinfo-knoppix for removal.

  16 Jun 2009; Jeroen Roovers <jer@gentoo.org> package.mask:
  Include new post beta 1 =www-client/opera-10.00_pre4440 in mask.

  16 Jun 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  drop x11-libs/vte package.mask entry, broken ebuild has been axed

  16 Jun 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  add x11-libs/liboldX to package.mask

  16 Jun 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  allow xorg-server 1.6 to roam free in ~arch, remove package.mask entry

  16 Jun 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  drop treecleaned X packages from package.mask

  15 Jun 2009; MATSUU Takuto <matsuu@gentoo.org> use.local.desc:
  add ipafont USE flag for media-fonts/mplus-outline-fonts

  15 Jun 2009; Alex Legler <a3li@gentoo.org> package.mask:
  Removing ruby-config mask, the packages are gone. Bugs 251833 and 274108.

  15 Jun 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask yaffs-utils since it's currently not building and it's a live ebuild.

  15 Jun 2009; Peter Volkov <pva@gentoo.org> updates/2Q-2009:
  Moved slot for media-gfx/gwenview: 0 -> 3.5

  14 Jun 2009; Robert Piasek <dagger@gentoo.org> package.mask:
  Removed package.mask from networkmanager-0.7.1-r4 as I can't reproduce the
  error.

  14 Jun 2009; Alexey Shvetsov <alexxy@gentoo.org> package.mask:
  KDE 4.2.3 was removed so no need to mask it anymore

  14 Jun 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask net-fs/shfs for removal.

  14 Jun 2009; Alexey Shvetsov <alexxy@gentoo.org> package.mask:
  Mask KDE 4.2.3

  14 Jun 2009; Fabian Groffen <grobian@gentoo.org> use.desc:
  aqua and coreaudio USE-flags are masked in base, but were missing from
  use.desc, causing repoman warnings for e.g. QT/KDE testers

  14 Jun 2009; Fabian Groffen <grobian@gentoo.org> base/use.mask,
  prefix/use.mask:
  Move kernels and elibcs from the Prefix profiles to base

  13 Jun 2009; Theo Chatzimichos <tampakrap@gentoo.org> package.mask:
  Masked for removal in 30 days. Old and dead by upstream.

  13 Jun 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Update mask for rubinius to point out removal pending.

  13 Jun 2009; Justin Bronder <jsbronder@gentoo.org> package.mask:
  Removing entry from package.mask as sys-cluster/mpich (and paraview-2.6.2)
  have been removed.

  13 Jun 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask framerd per bug #274018, and remember to add the removal pending
  dates for the previous masks too.

  13 Jun 2009; Torsten Veller <tove@gentoo.org> package.mask:
  Mask dev-perl/X10 (#245631 and #264664)

  13 Jun 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask wso2-wsf-c as per bug #241008.

  13 Jun 2009; Hans de Graaff <graaff@gentoo.org> package.mask:
  Mask dev-ruby/freeride for bug 251935

  13 Jun 2009; Markus Meier <maekke@gentoo.org> package.mask:
  mask pre releases of media-gfx/inkscape-0.47

  13 Jun 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  xf86-video-intel-2.7.0 is no longer in portage, add xkeyboard-config-1.6
  to the xorg-server 1.6 mask entry

  13 Jun 2009; Fabian Groffen <grobian@gentoo.org> profiles.desc:
  Add Prefix profiles to profiles.desc. They are commented out and only
  enabled in the Prefix rsync tree.

  12 Jun 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask ed2k_recovermet.

  12 Jun 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask toshiba-utils per bug #273872.

  12 Jun 2009; Tristan Heaven <nyhm@gentoo.org> base/package.use.mask,
  package.mask:
  Mask media-libs/freeimage, bug #269516

  10 Jun 2009; Peter Volkov <pva@gentoo.org> package.mask:
  Unmasking bzr-1.15* and dependent bzrtools.

  10 Jun 2009; Torsten Veller <tove@gentoo.org> package.mask:
  Unmask IO-Compress and friends for bug 273141

  10 Jun 2009; Nirbheek Chauhan <nirbheek@gentoo.org> ChangeLog:
  Mask gnome-base/gdm-2.26 for addition to tree

  10 Jun 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  add x11-libs/vte-0.20.4 to package.mask

  10 Jun 2009; Torsten Veller <tove@gentoo.org> package.mask:
  Add mask for gnucash-2.3*

  09 Jun 2009; Peter Alfredsen <loki_val@gentoo.org> package.mask:
  Dropped keywords for all mono *9999 ebuilds instead of maintaining a huge
  package.mask

  09 Jun 2009; Christian Faulhammer <fauli@gentoo.org> package.mask:
  dev-libs/qof slotting seems to work, so unmask dev-libs/qof-0.8.0

  09 Jun 2009; Christian Faulhammer <fauli@gentoo.org> package.mask:
  mask dev-libs/qof-0.8.0 as it is not API stable and needs some testing for
  the SLOT

  09 Jun 2009; Peter Volkov <pva@gentoo.org> package.mask:
  Masked bzr-1.15 and dependent bzrtools, bug #273328, thank Andrew Cowie
  for report.

  09 Jun 2009; Theo Chatzimichos <tampakrap@gentoo.org> package.mask:
  ksudoku-0.4 removed from tree

  09 Jun 2009; Theo Chatzimichos <tampakrap@gentoo.org> package.mask:
  app-arch/karchiver masked for removal

  09 Jun 2009; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Mask app-text/remem for removal, bug 272593.

  08 Jun 2009; Tobias Scherbaum <dertobi123@gentoo.org> package.mask:
  Remove =postfix-2.6.1 mask

  08 Jun 2009; Robert Buchholz <rbu@gentoo.org> desc/lcd_devices.desc:
  Add several LCD_DEVICES for lcdproc 0.5.3

  08 Jun 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  x11-misc/xkbdata is gone from portage, remove p.mask entry

  08 Jun 2009; Rémi Cardona <remi@gentoo.org> updates/2Q-2009:
  pkgmove xinput from x11-misc/ to x11-apps

  07 Jun 2009; Donnie Berkholz <dberkholz@gentoo.org>; package.mask:
  Unmask burrow-owl 1.4 because new guile-gnome is now unmasked.

  06 Jun 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask kamix and sonik as part of arts deprecation wrt #270575.

  06 Jun 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Remove creox, knob and yammi as part of arts deprecation wrt ##270575.
  Remove kguitar as it doesn't compile.

  05 Jun 2009; Tobias Scherbaum <dertobi123@gentoo.org> package.mask:
  Unmask =dev-libs/cyrus-sasl-2.1.23

  05 Jun 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask zapping as per bug #210820.

  05 Jun 2009; Ulrich Mueller <ulm@gentoo.org> updates/2Q-2009,
  updates/3Q-2009:
  We are still in the second quarter, as pointed out by fauli.

  04 Jun 2009; Theo Chatzimichos <tampakrap@gentoo.org> package.mask:
  Unmask beta kdevelop:4, i find it quite usuable

  04 Jun 2009; Steve Dibb <beandog@gentoo.org> package.mask:
  Add media-sound/alsa-tools-1.0.20-r1 to the list, bug 272659

  04 Jun 2009; Alexey Shvetsov <alexxy@gentoo.org> package.mask:
  Mask kde4 printing stuff

  04 Jun 2009; Steve Dibb <beandog@gentoo.org> package.mask:
  Mask newer versions of ALSA that drops support for optional MIDI, which
  will break lots of deps. bug 272659

  04 Jun 2009; Alexey Shvetsov <alexxy@gentoo.org> package.mask:
  Drop KDE 4.2.* mask

  04 Jun 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Unmask everything that deps on virtual/libffi since it's now keyworded.

  04 Jun 2009; Tomas Chvatal <scarabeus@gentoo.org> use.desc:
  Rename htmlhandbook to handbook, as we discussed on kde meeting. Old one
  is nowhere used now.

  04 Jun 2009; Samuli Suominen <ssuominen@gentoo.org> use.desc:
  New global USE flag mtp -- Enable support for Media Transfer Protocol.

  04 Jun 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Put jamvm-1.5.0-r3 to libffi mask waiting PowerPC keywording.

  03 Jun 2009; Jeroen Roovers <jer@gentoo.org> package.mask:
  Tweak www-client/opera mask to exclude the latest build, which is an
  official beta release.

  03 Jun 2009; Andrey Kislyuk <weaver@gentoo.org> updates/2Q-2009:
  Move: app-misc/screen-profiles -> app-misc/byobu

  03 Jun 2009; Alexey Shvetsov <alexxy@gentoo.org> package.mask:
  Add p.mask for KDE 4.2.2

  03 Jun 2009; Alexey Shvetsov <alexxy@gentoo.org> package.mask:
  Add p.mask for KDE 4.2.4

  03 Jun 2009; Christian Faulhammer <fauli@gentoo.org> base/virtuals,
  embedded/virtuals:
  remove old-style virtual/sylpheed, not used anymore in the tree

  03 Jun 2009; Christian Faulhammer <fauli@gentoo.org> updates/2Q-2009:
  move x11-themes/sylpheed-claws to x11-themes/claws-mail-themes

  02 Jun 2009; Steve Dibb <beandog@gentoo.org> package.mask:
  Remove mplayer, alsa-driver, alsa-headers live ebuilds from package.mask,
  already removed keywords

  02 Jun 2009; Bernard Cafarelli <voyageur@gentoo.org> package.mask:
  Add new gnustep-base revision to virtual/libffi mask

  01 Jun 2009; Peter Alfredsen <loki_val@gentoo.org> package.mask:
  Add banshee-1.5* to WIP mask.

  01 Jun 2009; Serkan Kaba <serkan@gentoo.org> package.mask:
  Last-rited dev-java/adaptx

  01 Jun 2009; Jeremy Olexa <darkside@gentoo.org> package.mask:
  Add rdeps of sys-libs/libuser to masking notice.

  01 Jun 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask creox, knob and yammi because they force arts wrt #270575.

  01 Jun 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Unmask libffi and virtual wrt #163724

  31 May 2009; Torsten Veller <tove@gentoo.org> package.mask:
  Mask dev-perl/IniConf for removal

  31 May 2009; Markus Meier <maekke@gentoo.org>
  hardened/amd64/package.use.mask, hardened/linux/amd64/package.use.mask,
  hardened/linux/x86/package.use.mask, hardened/x86/package.use.mask:
  mask media-gfx/imagemagick[openmp] on hardened amd64/x86 profiles as it
  requires >=sys-devel/gcc-4.3

  31 May 2009; Mike Frysinger <vapier@gentoo.org> package.mask:
  Automake-1.11 does not belong in p.mask.

  30 May 2009; Steve Dibb <beandog@gentoo.org>
  default-linux/amd64/package.use.mask, default-linux/x86/package.use.mask:
  mask mplayer + libnut dep on all but x86/amd64

  30 May 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask media-sound/kguitar for removal wrt #258919.

  30 May 2009; Ben de Groot <yngwin@gentoo.org> package.mask:
  Mask =sys-apps/hal-0.5.12_rc1-r5 as it breaks X with hal, bug 217837

  30 May 2009; Jeremy Olexa <darkside@gentoo.org> package.mask:
  Add entries for treecleaner queue

  30 May 2009; Jeremy Olexa <darkside@gentoo.org> package.mask:
  Remove entries for non-existent packages

  29 May 2009; Samuli Suominen <ssuominen@gentoo.org>
  arch/amd64/no-multilib/package.mask, arch/amd64/no-multilib/use.mask,
  arch/amd64/use.mask, base/use.mask,
  default-linux/amd64/2007.0/no-multilib/package.mask,
  default-linux/amd64/2007.0/no-multilib/use.mask,
  default-linux/amd64/use.mask, features/64bit-native/package.mask,
  features/64bit-native/use.mask:
  Remove mplayer-bin from rest of the profiles wrt 233394.

  29 May 2009; Steve Dibb <beandog@gentoo.org> package.mask:
  Remove mplayer-bin from tree, bug 233394

  29 May 2009; Peter Volkov <pva@gentoo.org> package.mask:
  Updated wireshark mask to mask first prerelease candidate too.

  29 May 2009; Tomáš Chvátal <scarabeus@gentoo.org>
  base/package.use.mask:
  Bluez no longer masked. Removing solid usemask for it.

  29 May 2009; Peter Volkov <pva@gentoo.org> package.mask:
  mask psimedia as it was tested with net-im/psi-0.13 only

  29 May 2009; Peter Volkov <pva@gentoo.org> package.mask:
  Masked development version (psi-0.13*) of net-im/psi

  28 May 2009; Ben de Groot <yngwin@gentoo.org> package.mask:
  Mask app-text/nopaste pending removal, bug 271295

  28 May 2009; Doug Goldstein <cardoe@gentoo.org> package.mask:
  unmask virt-manager

  28 May 2009; Steve Dibb <beandog@gentoo.org> desc/lirc_devices.desc:
  Add more LIRC devices for 0.8.5, bug 271482

  28 May 2009; Samuli Suominen <ssuominen@gentoo.org> arch/alpha/virtuals,
  arch/arm/virtuals, arch/hppa/virtuals, arch/mips/virtuals,
  arch/s390/virtuals, arch/sh/virtuals, base/virtuals,
  default-linux/alpha/virtuals, default-linux/arm/virtuals,
  default-linux/ia64/2007.0/desktop/virtuals, default-linux/mips/virtuals,
  default-linux/s390/virtuals, default-linux/sh/virtuals,
  default-linux/sparc/virtuals, default-linux/x86/2007.0/desktop/virtuals:
  Remove old style virtual for cdrtools.

  28 May 2009; Tomáš Chvátal <scarabeus@gentoo.org> package.mask:
  Unmask koffice-2.0.0. Released

  28 May 2009; Tomáš Chvátal <scarabeus@gentoo.org> package.mask:
  Update koffice-2 package mask.

  28 May 2009; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Remove mask for app-admin/eselect-9999; live ebuild has been removed.

  27 May 2009; Alistair Bush <ali_bush@gentoo.org> package.mask:
  Add jruby release candidate to pmask.

  27 May 2009; Doug Goldstein <cardoe@gentoo.org> package.mask:
  unmask libvirt-0.6.2 and virtinst-0.400.3

  27 May 2009; Bernard Cafarelli <voyageur@gentoo.org> package.mask:
  Masking live ebuild for www-client/chromium-bin

  27 May 2009; Torsten Veller <tove@gentoo.org> package.mask:
  Mask dev-lang/perl-5.8.8-r7 and modules: CPAN, Encode, ExtUtils-MakeMaker

  26 May 2009; Theo Chatzimichos <tampakrap@gentoo.org> package.mask:
  kde-base/pykde:3.5 removed

  26 May 2009; Federico Ferri <mescalinum@gentoo.org> package.mask:
  mask nam, ns, otcl, tclcl for removal

  26 May 2009; Peter Volkov <pva@gentoo.org> package.mask:
  app-text/ghostscript-esp was removed from the tree, removing mask.

  26 May 2009; MATSUU Takuto <matsuu@gentoo.org> package.mask:
  add =x11-wm/awesome-3.3* into p.mask.

  25 May 2009; Peter Alfredsen <loki_val@gentoo.org> package.mask:
  Mask new Tomboy WIP version.

  25 May 2009; Peter Volkov <pva@gentoo.org> package.mask:
  Masked net-libs/libssh-0.11 sinde we want people to downgrade.

  25 May 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  add x11-proto/xproto back into p.mask (see bug #271066)

  24 May 2009; Vlastimil Babka <caster@gentoo.org>
  arch/x86/package.use.mask, default-linux/x86/package.use.mask,
  hardened/ia64/package.use.mask, hardened/x86/package.use.mask,
  uclibc/x86/package.use.mask:
  Mask nsplugin of 1.4 JVM's. Bug #263810.

  24 May 2009; MATSUU Takuto <matsuu@gentoo.org> package.mask:
  remove x11-libs/xcb-util from p.mask

  23 May 2009; Nirbheek Chauhan <nirbheek@gentoo.org> package.mask:
  GNOME + libsoup 2.26 are in-tree, so is latest webkit-gtk

  23 May 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  remove x11-proto/xproto from p.mask

  22 May 2009; Alexis Ballier <aballier@gentoo.org> profiles.desc:
  add freebsd-7.2 profiles to profiles.desc

  22 May 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Removed unfunctional ebuilds lastfm-ripper, rat (security issue),
  wavesurfer, eq-audacious.

  20 May 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Unmask media-sound/mpd-0.15_beta2.

  20 May 2009; Tobias Scherbaum <dertobi123@gentoo.org> package.mask:
  Adjust postfix-2.6 mask

  20 May 2009; Denis Dupeyron <calchan@gentoo.org> package.mask:
  Removed mask on gEDA split ebuilds since everything seems to work.

  20 May 2009; Denis Dupeyron <calchan@gentoo.org> package.mask:
  Masked gEDA split ebuilds until they're all committed and tested.

  19 May 2009; Tobias Scherbaum <dertobi123@gentoo.org> package.mask:
  p.mask postfix-2.6 for now

  19 May 2009; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Mask eselect-1.1_rc1. Remove mask again, since the bad version was removed
  from the tree.

  19 May 2009; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Remove entry about rednotebook

  18 May 2009; Tobias Scherbaum <dertobi123@gentoo.org> package.mask:
  Mask =dev-libs/cyrus-sasl-2.1.23 for testing. ABI change without soname
  change (security bug #270261)

  18 May 2009; Peter Volkov <pva@gentoo.org> package.mask:
  Updated hardmask for openvz sources, e.g. unmasked 2.6.27 kernels.

  18 May 2009; Robin H. Johnson <robbat2@gentoo.org> package.mask:
  OpenSSH HPN patch breakage has been resolved by upstream now.

  17 May 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask the upcoming automake 1.11 beta.

  17 May 2009; Andreas Proschofsky <suka@gentoo.org> package.mask:
  Remove mask for app-office/openoffice-3.1.0, finally released now

  17 May 2009; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Remove masks for app-text/xetex and dev-tex/xkeyval; packages have been
  removed from tree.

  16 May 2009; Serkan Kaba <serkan@gentoo.org> package.mask:
  Mask media-sound/jtagger-2008* to allow smoother upgrade.

  16 May 2009; Mounir Lamouri <volkmar@gentoo.org> use.desc:
  New global USE flag: gsm

  16 May 2009; Thomas Sachau (Tommy[D]) <tommy@gentoo.org> package.mask:
  Remove mask on sys-fs/aufs2

  15 May 2009; Vlastimil Babka <caster@gentoo.org> package.mask:
  Removing the treecleaned ant-1.7.0 from package mask.

  15 May 2009; Alexis Ballier <aballier@gentoo.org> package.mask:
  mask tl-langmanju for removal

  15 May 2009; Alex Legler <a3li@gentoo.org> package.mask:
  Masing ruby-config and ruby-1.8.6_p114 (last version with oniguruma
  patches) wrt #251833.

  15 May 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Remove GStreamer mask which was invalid. Moved the GStreamer porting to
  monolithic with new eclass moved to my overlay.

  14 May 2009; Ben de Groot <yngwin@gentoo.org> package.mask:
  Remove qt masks since these ebuilds are no longer in the tree

  14 May 2009; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Masking gnome-base/libghttp for removal

  14 May 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask lastrm-ripper for removal wrt #263804 because it doesn't work with
  current LastFM API.

  13 May 2009; Jeremy Olexa <darkside@gentoo.org> package.mask:
  clean up p.mask for recent removals from tree

  13 May 2009; <chainsaw@gentoo.org> package.mask:
  Drop the Audacious mask. 2.0.0 final is out.

  12 May 2009; <chainsaw@gentoo.org> package.mask:
  Expand 2.0_alpha mask to include 2.0_beta as well. Lets not unleash it on
  unsuspecting users until its a final release.

  12 May 2009; Peter Alfredsen <loki_val@gentoo.org> package.mask:
  Bug 265912 fixed. Removing mask.

  12 May 2009; Federico Ferri <mescalinum@gentoo.org> updates/2Q-2009:
  move tkdiff from cat. dev-tcltk to cat. dev-util

  12 May 2009; Thomas Sachau (Tommy[D]) <tommy@gentoo.org> package.mask:
  Add mask for sys-fs/aufs2 for testing

  12 May 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  forgot to add x11-apps/xprehashprinterlist to XPrint package.mask

  12 May 2009; Ulrich Mueller <ulm@gentoo.org> categories, package.mask:
  Remove mask for net-www/adobesvg; package has been removed, bug 265066.
  Remove empty net-www category, its packages are now in www-* categories.

  12 May 2009; Peter Alfredsen <loki_val@gentoo.org> package.mask:
  Add mask for poppler-0.11* in preparation for it entering the tree.

  12 May 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask media-sound/rat for removal wrt security #208464, CVE-2008-0553.

  12 May 2009; Jeremy Olexa <darkside@gentoo.org> base/use.mask, use.desc:
  Define prefix USE flag in use.desc. Mask prefix USE flag in base/use.mask so
  it cannot be used on non-prefix profiles

  11 May 2009; Doug Goldstein <cardoe@gentoo.org>
  arch/amd64/no-multilib/use.mask, features/64bit-native/use.mask:
  Mask 32bit USE flag on no-multilib arches since it always requires
  multilib. Patch from bug #265313

  11 May 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask media-sound/wavesurfer for removal because it's broken with new tcl
  wrt #267622.

  11 May 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask =media-libs/libsoundtouch-1.4.0 because pkgconfig filename changed
  and rdeps must be checked.

  11 May 2009; Peter Alfredsen <loki_val@gentoo.org> package.mask:
  Remove gnome-desktop-sharp-2.26.0 mask. Gnome 2.26 is entering the tree.

  11 May 2009; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  pretend to unmask gnome-desktop since I failed at writing proper atom and
  nobody noticed.

  11 May 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask eq-audacious for removal wrt #209500, #183928, #238620 and #247781.

  11 May 2009; Tiziano Müller <dev-zero@gentoo.org> package.mask:
  Unmasking slotted boost

  10 May 2009; Lennart Kolmodin <kolmodin@gentoo.org> package.mask:
  Mask the haskell platform for testing.

  10 May 2009; Thomas Sachau (Tommy[D]) <tommy@gentoo.org> package.mask:
  Remove mask on net-libs/fec (dropped)

  10 May 2009; Lennart Kolmodin <kolmodin@gentoo.org> package.mask:
  Mask dev-lang/ghc-6.10.3 for testing.

  10 May 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Remove libspiff mask because the package is now libxspf in tree.

  10 May 2009; Joerg Bornkessel <hd_brummy@gentoo.org> package.mask:
  unmask media-tv/w_scan-20090502

  10 May 2009; Samuli Suominen <ssuominen@gentoo.org>
  base/package.use.force:
  USE flag X needs to be always enabled in media-sound/rubyripper for Xeconf
  wrt #268980.

  10 May 2009; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Unmasking packages that were waiting for bluez4. Also doing it on behalf
  of flameeyes.

  10 May 2009; Tiziano Müller <dev-zero@gentoo.org> package.mask:
  Unmasking bluez-4 and deps. Good luck.

  10 May 2009; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Fixing invalid atom for media-gfx/eog mask.

  10 May 2009; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Mask packages that depend on the API breaking gnome-base/gnome-desktop

  09 May 2009; MATSUU Takuto <matsuu@gentoo.org> thirdpartymirrors:
  Added JAIST to sourceforge.jp.

  09 May 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  add a bunch of Low-Bandwidth X and X Proxy Management apps, libs and proto
  to p.mask

  08 May 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  add xplsprinters, libXprintAppUtil and libXprintUtil to p.mask

  08 May 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  pre-2.0 intel drivers are out from portage, drop p.mask entry

  08 May 2009; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Pending removal in 15 days

  08 May 2009; Peter Alfredsen <loki_val@gentoo.org> package.mask:
  Temporarily mask mono-2.4-r1 for bug 265912.

  08 May 2009; Andreas Proschofsky <suka@gentoo.org> package.mask:
  Unmask openoffice-bin 3.1.0

  08 May 2009; Andreas Proschofsky <suka@gentoo.org> desc/linguas.desc:
  Add a bunch of new locales, used in OOo 3.1.0

  07 May 2009; Tomas Chvatal <scarabeus@gentoo.org> package.mask:
  Remove kde 4.2.3 mask

  07 May 2009; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Remove mask for x11-misc/hotkeys; package has been removed, bug 242462.

  07 May 2009; Mark Loeser <halcy0n@gentoo.org> package.mask:
  Adding mask for gcc-4.4

  06 May 2009; Alexey Shvetsov <alexxy@gentoo.org> package.mask:
  Mask KDE 4.2.3

  05 May 2009; Robin H. Johnson <robbat2@gentoo.org> package.mask:
  The git-1.6.2.* issue is solved now, patches in the ebuild.

  05 May 2009; Robin H. Johnson <robbat2@gentoo.org> package.mask:
  dev-util/git-1.6.2.5 seems to suck, testsuite failures.

  05 May 2009; Robin H. Johnson <robbat2@gentoo.org> package.mask:
  dev-util/git-1.6.3 release candidates do have user-visible behavior change
  from upstream wrt pushing.

  05 May 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  add x11-misc/xkbdata to p.mask (see bug #196650)

  05 May 2009; Peter Alfredsen <loki_val@gentoo.org> package.mask:
  Add package.mask for -9999 ebuilds of mono.

  05 May 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  add xf86-video-intel 2.7.0 to p.mask

  04 May 2009; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Add mask for app-mobilephone/gnome-phone-manager-0.65 which needs bluez4

  04 May 2009; Nirbheek Chauhan <nirbheek@gentoo.org> ChangeLog:
  Mask =net-wireless/gnome-bluetooth-2.27* -- requires bluez-4, KEYWORDS on
  libunique, bug 268487 (forgot to add ChangeLog while editing package.mask)

  04 May 2009; Theo Chatzimichos <tampakrap@gentoo.org> package.mask:
  Masking kde-base/ksudoku-0.4 for removal

  03 May 2009; Mart Raudsepp <leio@gentoo.org> package.mask:
  Mask app-crypt/qca-2.0.2 on behalf of scarabeus

  03 May 2009; Rémi Cardona <remi@gentoo.org> desc/video_cards.desc:
  add VIDEO_CARDS="nouveau" to profiles

  03 May 2009; Peter Alfredsen <loki_val@gentoo.org> package.mask:
  Remove mono-2.4 mask, since openoffice deps have been updated and unstable
  openoffice has had its mono-useflag masked.

  03 May 2009; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Mask app-doc/afsdoc for removal.

  02 May 2009; Joerg Bornkessel <hd_brummy@gentoo.org> package.mask:
  media-tv/w_scan-20090502; need >=sys-kernel/linux-headers-2.6.29 with
  s2api header changes

  02 May 2009; Alin Năstac <mrness@gentoo.org> package.mask:
  Update openswan-2.6 p.mask explanation.

  01 May 2009; Peter Volkov <pva@gentoo.org> package.mask:
  Unmasking bzr{,tools}-1.14* since final release is here.

  01 May 2009; Tomas Chvatal <scarabeus@gentoo.org> package.mask:
  Mask redland-1.0.9 because it breaks soprano/nepomuk. Remove some no
  longer needed masks.

  01 May 2009; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Remove xphelloworld since xprint is obsolete.

  30 Apr 2009; Jeremy Olexa <darkside@gentoo.org> package.mask:
  Remove guarddog from p.mask, bug 182373

  30 Apr 2009; Vlastimil Babka <caster@gentoo.org> package.mask:
  Masking dev-java/ant-1.7.0* packages and whole dev-java/ant-tasks, bug
  #261563.

  30 Apr 2009; Ryan Hill <dirtyepic@gentoo.org> use.desc:
  Add new global wxwidgets USE flag and deprecate wxwindows.

  29 Apr 2009; Tomas Chvatal <scarabeus@gentoo.org> package.mask:
  Introduce koffice2 mask. Adding by popular vote

  29 Apr 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  add latest mesa to p.mask

  29 Apr 2009; Jeroen Roovers <jer@gentoo.org> package.mask:
  Improve masking message for net-misc/socat.

  29 Apr 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  unmask libXfont 1.4.0

  29 Apr 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  unmask xrandr (proto, lib and utility)

  29 Apr 2009; Tomas Chvatal <scarabeus@gentoo.org> package.mask:
  Remove kickpim from p.mask since it is removed from tree.

  29 Apr 2009; Tomas Chvatal <scarabeus@gentoo.org> package.mask:
  Remove kde 4.2.1 mask.

  29 Apr 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  mask the latest rhythmbox until totem 2.26 is added to portage

  29 Apr 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  add p.mask for x11 overlay ebuild imports

  28 Apr 2009; Mounir Lamouri <volkmar@gentoo.org> updates/2Q-2009:
  Move ekiga from net-im to net-voip.

  28 Apr 2009; Mounir Lamouri <volkmar@gentoo.org> updates/2Q-2009:
  Moving kphone from net-misc to net-voip. Bug 194364.

  28 Apr 2009; Mounir Lamouri <volkmar@gentoo.org> package.mask:
  Unmasking mediastreamer plugins as mediastreamer is now unmasked.

  28 Apr 2009; Mounir Lamouri <volkmar@gentoo.org> package.mask:
  Unmasking ortp for real. Last commit unmasked linphone-3.1*.

  28 Apr 2009; Mounir Lamouri <volkmar@gentoo.org> package.mask:
  Unmasking mediastreamer as ortp-0.15.0 is now unmasked.

  28 Apr 2009; Mounir Lamouri <volkmar@gentoo.org> package.mask:
  Unmasking ortp-0.15.0. It should work for every packages in the tree.

  28 Apr 2009; Mounir Lamouri <volkmar@gentoo.org> package.mask:
  Masking mediastreamer plugins because mediastreamer is masked.

  27 Apr 2009; Tomas Chvatal <scarabeus@gentoo.org> package.mask:
  Mask libcompizconfig-0.8.2-r1

  27 Apr 2009; Tomas Chvatal <scarabeus@gentoo.org>
  arch/alpha/package.use.mask, arch/ia64/package.use.mask:
  Mask musicbrainz useflag for juk on ia64 and alpha. Thanks mr_bones_ for
  spotting.

  27 Apr 2009; Jeroen Roovers <jer@gentoo.org> package.mask:
  Update information for =app-portage/gentoolkit-dev-0.2.6.9 mask.

  27 Apr 2009; Jeroen Roovers <jer@gentoo.org> package.mask:
  Mask =app-portage/gentoolkit-dev-0.2.6.9 because of ChangeLog entries
  missing ".ebuild".

  27 Apr 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask libopensync-0.38.

  27 Apr 2009; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Remove mask for dev-tex/breqn; package has been removed, bug 262934.

  27 Apr 2009; Federico Ferri <mescalinum@gentoo.org> package.mask:
  masking dev-tcltk/tls-1.6 because of sandbox violations and qa issues, bug
  #267576

  26 Apr 2009; Federico Ferri <mescalinum@gentoo.org> package.mask:
  unmask >=dev-libs/newt-0.52.10
  as tcltk 8.5 got unmasked too

  26 Apr 2009; Alin Năstac <mrness@gentoo.org> package.mask:
  P.mask beta versions of net-proxy/squid.

  26 Apr 2009; Mounir Lamouri <volkmar@gentoo.org> package.mask:
	Masking >=linphone-3.1.0 because depending on masked ortp-0.15.0_p1

  25 Apr 2009; MATSUU Takuto <matsuu@gentoo.org> package.mask:
  Added >=x11-libs/xcb-util-0.3.4 to p.mask.

  25 Apr 2009; MATSUU Takuto <matsuu@gentoo.org> package.mask:
  Removed net-wireless/broadcom-sta from p.mask.

  25 Apr 2009; Mounir Lamouri <volkmar@gentoo.org> package.mask:
  Masking mediastreamer because depending on masked ortp-0.15.0

  24 Apr 2009; Federico Ferri <mescalinum@gentoo.org> package.mask:
  unmasking tcl/tk 8.5

  24 Apr 2009; Mounir Lamouri <volkmar@gentoo.org> updates/2Q-2009:
  Slotmove for linphone from 1 to 0

  23 Apr 2009; Torsten Veller <tove@gentoo.org> package.mask:
  Remove mask of dev-lang/pugs, dev-perl/Inline-Java and dev-perl/OpenCA-*

  22 Apr 2009; Christian Faulhammer <fauli@gentoo.org> package.mask:
  remove mask for dev-lang/erlang 13A (ebuild removed from tree)

  22 Apr 2009; Mounir Lamouri <volkmar@gentoo.org> package.mask:
  Unmaks libjingle-0.3.12 as tapioca-xmpp is now masked for removal, bug 248008.

  22 Apr 2009; Mounir Lamouri <volkmar@gentoo.org> package.mask:
  Mask for removal tapiocad, tapiocad and tapioca-xmpp. See bug 180757.

  21 Apr 2009; Jeroen Roovers <jer@gentoo.org> package.mask:
  Mask =dev-libs/libevent-2* until out of beta.

  20 Apr 2009; Markus Meier <maekke@gentoo.org> package.mask:
  remove media-libs/libpano12 mask, as it has been removed from the tree

  19 Apr 2009; Doug Goldstein <cardoe@gentoo.org> package.mask:
  mask developmental ebuild for phoronix-test-suite

  19 Apr 2009; Doug Goldstein <cardoe@gentoo.org> package.mask:
  clean up my old masks

  19 Apr 2009; Benedikt Böhm <hollow@gentoo.org> package.mask:
  mask net-analyzer/centreon-1.4.2.7 for testing

  19 Apr 2009; Lennart Kolmodin <kolmodin@gentoo.org> package.mask:
  Mask dev-lang/ghc-6.10.2 and related packages for testing.

  19 Apr 2009; Lennart Kolmodin <kolmodin@gentoo.org> package.mask:
  Remove the hard mask on dev-haskell/regex-*-0.9*, the packages has been
  removed from portage.

  19 Apr 2009; Torsten Veller <tove@gentoo.org> package.mask:
  Mask =dev-perl/math-pari-2.010801-r1 for testing

  18 Apr 2009; Tomas Chvatal <scarabeus@gentoo.org> base/package.use.mask,
  package.mask:
  Unmask NetworkManager (and its kde parts). Since pkit is unmasked :]

  18 Apr 2009; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Mask live ebuild for app-admin/eselect.

  17 Apr 2009; Torsten Veller <tove@gentoo.org> package.mask:
  Move dev-perl/IO-Compress-Bzip2 -> perl-core/IO-Compress-Bzip2 and
  dev-perl/Compress-Raw-Bzip2 perl-core/Compress-Raw-Bzip2. Temporary mask
  IO-Compress which replaces Compress-Zlib, IO-Compress-Zlib,
  IO-Compress-Bzip2 and IO-Compress-Base

  17 Apr 2009; Justin Bronder <jsbronder@gentoo.org> package.mask:
  pmask sys-cluster/mpich for removal (#266565)

  17 Apr 2009; Lennart Kolmodin <kolmodin@gentoo.org> package.mask:
  Mask dev-haskell/ghc-6.8.2-r1 for testing. It includes a precompiled
  readline version, fixing bug #259867.

  17 Apr 2009; <chainsaw@gentoo.org> package.mask:
  Mask Audacious 2.0 alpha developer previews.

  17 Apr 2009; Jeremy Olexa <darkside@gentoo.org> package.mask:
  General treecleaner maintenance / removals

  16 Apr 2009; Paul Varner <fuzzyray@gentoo.org> package.mask:
  Removed mask for gentoolkit-dev-0.2.6.9

  16 Apr 2009; Tomas Chvatal <scarabeus@gentoo.org> package.mask:
  Fix the 4.2.1 mask, will be wiped out soon. Slot deps are not allowed, thx
  mr_bones for remind.

  15 Apr 2009; Jeff Gardner <je_fro@gentoo.org> package.mask:
  p.mask ati-drivers-extra-8.27.10 as it is no longer installable

  15 Apr 2009; Mounir Lamouri <volkmar@gentoo.org> package.mask:
  Mask >mozilla-weaver-0.2.104 because it needs a masked Firefox (3.1_beta)

  15 Apr 2009; Torsten Veller <tove@gentoo.org> package.mask:
  Mask net-mail/gotmail for removal (#266204)

  15 Apr 2009; Mounir Lamouri <volkmar@gentoo.org> package.mask:
  Mask ortp-0.15.0 because it breaks compatibility with older releases

  14 Apr 2009; Alexis Ballier <aballier@gentoo.org> package.mask:
  unmask slv2 0.6 now that traverso builds and needs it

  14 Apr 2009; Christoph Mende <angelos@gentoo.org> package.mask:
  Masked media-sound/mpd pre-releases

  14 Apr 2009; Jeff Gardner <je_fro@gentoo.org> package.mask:
  Unmask ati-drivers-8.32.5 so that ati-drivers-extra can live again.

  14 Apr 2009; Jeremy Olexa <darkside@gentoo.org> package.mask:
  remove non-existant p.masked version of dev-db/mysql

  14 Apr 2009; Jeremy Olexa <darkside@gentoo.org> package.mask:
  remove entries for non-existant packages

  14 Apr 2009; Jeremy Olexa <darkside@gentoo.org> package.mask:
  removed openpbs-common from tree

  14 Apr 2009; Jeremy Olexa <darkside@gentoo.org> package.mask:
  p.mask guarddog, temperature-app, ivcall, arno-iptables-firewall, ctmkit from
  the treecleaner queue.

  13 Apr 2009; Christian Faulhammer <fauli@gentoo.org> package.mask:
  mask live version of app-doc/pms

  13 Apr 2009; Jeff Gardner <je_fro@gentoo.org> package.mask:
  p.mask several ati-drivers versions before cleanup

  13 Apr 2009; Jeff Gardner <je_fro@gentoo.org> ChangeLog:
  Removed ati-drivers versions from p.mask that are no longer in the tree.

  12 Apr 2009; Tomas Chvatal <scarabeus@gentoo.org> package.mask:
  Update mask for kde4. Block for change older than 4.2.2 due to eclass
  update that is comming next.

  12 Apr 2009; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Mask net-www/adobesvg for removal, bug 265066.

  11 Apr 2009; Alexey Shvetsov <alexxy@gentoo.org> package.mask:
  mask kde 4.2.2

  11 Apr 2009; Peter Volkov <pva@gentoo.org> package.mask:
  Mask bzr prerelease candidate and dependent bzrtools

  10 Apr 2009; Alin Năstac <mrness@gentoo.org> package.mask:
  P.mask net-dialup/qlcr (#264785).

  10 Apr 2009; Ulrich Mueller <ulm@gentoo.org> updates/2Q-2009,
  base/package.use.mask, default-linux/package.use.mask,
  hardened/package.use.mask:
  Package move gecko-mediaplayer, mplayerplug-in, and gnash to www-plugins,
  bug 265569. Update package.use.mask files accordingly.

  10 Apr 2009; Thomas Anderson <gentoofan23@gentoo.org> package.mask:
  p.mask lvm2-2.02.45 to avoid issues with internal device-mapper

  10 Apr 2009; Jeremy Olexa <darkside@gentoo.org> package.mask:
  p.mask >=bash-completion-20000000 to force a downgrade to the proper naming
  scheme

  10 Apr 2009; Ulrich Mueller <ulm@gentoo.org>
  arch/amd64/no-multilib/package.mask,
  default-linux/amd64/2007.0/no-multilib/package.mask,
  features/64bit-native/package.mask, updates/2Q-2009:
  Package move libflashsupport, netscape-flash, and swfdec-mozilla
  to www-plugins, bug 265569. Update masks accordingly.

  09 Apr 2009; Ulrich Mueller <ulm@gentoo.org>
  arch/amd64/no-multilib/package.mask,
  default-linux/amd64/2007.0/no-multilib/package.mask,
  features/64bit-native/package.mask, updates/2Q-2009:
  Package move mozplugger and nspluginwrapper to www-plugins, bug 265569.
  Update masks accordingly.

  09 Apr 2009; Ulrich Mueller <ulm@gentoo.org> categories, updates/1Q-2009,
  +updates/2Q-2009:
  Add www-plugins category. Move entry from April from 1Q-2009 to 2Q-2009.
  Package move awstats to www-misc. Package move kaffeine-mozilla-plugin to
  www-plugins.

  08 Apr 2009; Mounir Lamouri <volkmar@gentoo.org> package.mask:
  Add net-libs/zapata for removal

  08 Apr 2009; Patrick Lauer <patrick@gentoo.org> package.mask:
  Removing python 2.6 mask

  08 Apr 2009; MATSUU Takuto <matsuu@gentoo.org> package.mask:
  Mask for testing, bug #265385

  08 Apr 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Remove sudo 1.7.1 beta masking, moved on to RCs.

  08 Apr 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Remove ruby-gdchart masking (it has been removed).

  08 Apr 2009; Andreas Proschofsky <suka@gentoo.org> package.mask:
  Mask pre-releases of OpenOffice.org 3.1 for testing

  07 Apr 2009; Benedikt Böhm <hollow@gentoo.org> use.local.desc:
  add s3 USE flag for app-backup/duplicity

  07 Apr 2009; Sébastien Fabbro <bicatali@gentoo.org> package.mask:
  Removed =dev-python/visual-4* for testing, now gone from the tree

  07 Apr 2009; Christian Faulhammer <fauli@gentoo.org> package.mask:
  mask dev-lang/erlang 13A beta version to give some users a test
  possibility

  07 Apr 2009; Jeremy Olexa <darkside@gentoo.org> package.mask:
  p.mask app-shells/bash-completion-config for removal - bug 253878

  06 Apr 2009; Paul Varner <fuzzyray@gentoo.org> package.mask:
  Updated comments for app-portage/udept.

  06 Apr 2009; Benedikt Böhm <hollow@gentoo.org> package.mask:
  remove qmail.eclass based ebuilds from p.mask

  06 Apr 2009; Peter Volkov <pva@gentoo.org> package.mask:
  All patches accepted upstream and all problems with openrc resolved long
  time ago... unmask vzctl.

  06 Apr 2009; Zac Medico <zmedico@gentoo.org> arch/base/use.mask:
  Mask the amd64-fbsd flag where appropriate. It's already unmasked in
  arch/amd64-fbsd/use.mask.

  06 Apr 2009; Joerg Bornkessel <hd_brummy@gentoo.org> package.mask:
  removed hardmask for xxv, xxv-skins

  05 Apr 2009; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  Remove mask for jdbc2-postgresql as it has been removed from the main
  tree.

  05 Apr 2009; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Unmask sci-visualization/gnuplot-4.2.5.

  05 Apr 2009; Tomas Chvatal <scarabeus@gentoo.org> package.mask:
  Remove pycups from mask.

  05 Apr 2009; Markus Ullmann <jokey@gentoo.org> package.mask:
  Mask newer webkit-gtk for soup dependency

  04 Apr 2009; Alexis Ballier <aballier@gentoo.org> package.mask:
  adjust vlc mask now that 0.9.9 is released

  03 Apr 2009; MATSUU Takuto <matsuu@gentoo.org> use.local.desc:
  Added augeas and shadow local use flags for app-admin/puppet.

  03 Apr 2009; Hanno Boeck <hanno@gentoo.org> use.local.desc:
  Add local use-flags for merkaartor.

  02 Apr 2009; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Mask app-text/tetex for removal.

  01 Apr 2009; Jeroen Roovers <jer@gentoo.org> package.mask:
  Remove beta app-admin/sysstat mask.

  01 Apr 2009; Mike Auty <ikelos@gentoo.org> package.mask:
  Remove the mask for app-emulation/vmware-esx-console since it's now been removed.

  01 Apr 2009; Christian Faulhammer <fauli@gentoo.org> use.desc:
  Change description of global nsplugin USE flag

  31 Mar 2009; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Mask sci-visualization/gnuplot-4.2.5 for testing.

  30 Mar 2009; Peter Alfredsen <loki_val@gentoo.org> package.mask:
  Add package.mask entry for mono-2.4 and friends w.r.t. bug 257313.

  30 Mar 2009; <chainsaw@gentoo.org> package.mask:
  Widen net-misc/dhcp mask for v4, clarify reason. 4.0.1 is going in and
  4.0.0 is being deleted.

  28 Mar 2009; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Mask dev-util/intltool-0.40.6, bug #264114.

  28 Mar 2009; Jeremy Olexa <darkside@gentoo.org> package.mask:
  p.mask sys-apps/sreadahead due to possible bad patches

  27 Mar 2009; Ben de Groot <yngwin@gentoo.org> package.mask:
  Masking media-sound/ermixer pending removal in 30 days. Bug 207324.

  27 Mar 2009; Ben de Groot <yngwin@gentoo.org> package.mask:
  Masking qt{,-embedded,-unixODBC}-3.3.8 pending removal

  27 Mar 2009; Zac Medico <zmedico@gentoo.org> arch/m68k/packages,
  +default/linux/m68k/2008.0/packages:
  Move ->=sys-libs/glibc-2.4-r4 unmask atom from arch/m68k/packages to
  default/linux/m68k/2008.0/packages, for correct inheritance order. Thanks
  to Raúl Porcel <armin76@gentoo.org> for reporting.

  27 Mar 2009; Peter Alfredsen <loki_val@gentoo.org> package.mask:
  Mask xrenderproto-0.9.3-r1 w.r.t. bug 263823, breaks compilation of KDE1
  stuff.

  26 Mar 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  unmask mesa 7.4_rc1, 7.3-r2 is no longer in portage

  25 Mar 2009; Sébastien Fabbro <bicatali@gentoo.org> package.mask:
  tilp and dependencies were removed, updating package.mask

  25 Mar 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  add mesa 7.4_rc1 to p.mask as well

  24 Mar 2009; Gordon Malm <gengor@gentoo.org> profiles.desc:
  hardened/x86/2.6 -> hardened/x86

  24 Mar 2009; Steve Dibb <beandog@gentoo.org> package.mask:
  Add p.mask for media-video/mplayer live ebuild

  23 Mar 2009; Hanno Boeck <hanno@gentoo.org> package.mask:
  Remove masks of old broken versions, corresponding ebuilds removed.

  23 Mar 2009; Peter Alfredsen <loki_val@gentoo.org> package.mask:
  Gephex has been removed. Removing package.mask entry.

  23 Mar 2009; Olivier Crête <tester@gentoo.org> package.mask:
  Removed cogito and gitweb

  23 Mar 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  add mesa-7.3-r2 to package.mask

  23 Mar 2009; Torsten Veller <tove@gentoo.org> package.mask:
  Masked dev-lang/pugs for removal (#151986,#171649,#239222)

  23 Mar 2009; Olivier Crête <tester@gentoo.org> use.desc, use.local.desc:
  Make policykit into a global use flag

  22 Mar 2009; Jeremy Olexa <darkside@gentoo.org> package.mask:
  p.mask x11-misc/lavaps, bug 227743

  22 Mar 2009; MATSUU Takuto <matsuu@gentoo.org> package.mask:
  Removed app-i18n/uim-svn from portage tree.

  22 Mar 2009; Nirbheek Chauhan <nirbheek@gentoo.org> package.mask:
  CPUFreq regression has been fixed, no need for p.mask: bug 247614

  21 Mar 2009; Jeremy Olexa <darkside@gentoo.org> package.mask:
  p.mask sci-astronomy/maestro, x11-libs/xclass, net-p2p/knapster2,
  dev-embedded/gezel, sys-devel/subterfugue, media-sound/cdmp3,
  x11-misc/jaffm, kde-misc/kgraphspace - see file for bug numbers.

  21 Mar 2009; Jeremy Olexa <darkside@gentoo.org> package.mask:
  cleanup p.mask file after removing packages from tree

  21 Mar 2009; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Update gnome-base/gvfs mask for bluez4.

  21 Mar 2009; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org>
  package.mask:
  Masked dev-util/qgit-2.0-r1 waiting for Jokey feedback about the dep on
  =x11-libs/qt-4.3*:4.

  21 Mar 2009; Torsten Veller <tove@gentoo.org> package.mask:
  Mask dev-perl/Java-Inline for removal (#206177,#220491)

  21 Mar 2009; Peter Alfredsen <loki_val@gentoo.org> package.mask:
  Mask gnome-desktop-sharp-2.26 till gnome-2.26 is released. Bug 262863.

  20 Mar 2009; Zac Medico <zmedico@gentoo.org> license_groups:
  Add more licenses to GPL-COMPATIBLE and create new FSF-APPROVED and
  OSI-APPROVED license groups. Thanks to Marek Aaron Sapota
  <projects.gg.aaron@gmail.com> for submitting these changes (bug #152593).

  20 Mar 2009; Alex Legler <a3li@gentoo.org> package.mask:
  Masking Ruby 1.9.1 and a special Rubygems version for testing

  20 Mar 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask libsyncml 0.5.2

  19 Mar 2009; Markus Meier <maekke@gentoo.org> package.mask:
  mask media-libs/libpano12 for removal in 30 days

  19 Mar 2009; MATSUU Takuto <matsuu@gentoo.org> package.mask:
  Remove package.mask for =x11-wm/awesome-3.2*

  19 Mar 2009; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Mask dev-tex/breqn for removal.

  18 Mar 2009; <chainsaw@gentoo.org> package.mask:
  Mask media-libs/spandsp-0.0.6_pre7 prior to committing, it breaks API. See
  http://tinderbox.dev.gentoo.org/misc/rindex/media-libs/spandsp.

  18 Mar 2009; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Mask app-text/xetex and dev-tex/xkeyval for removal.

  17 Mar 2009; Peter Volkov <pva@gentoo.org> package.mask:
  Remove mask on bzr prerelease and dependand bzrtools package.

  17 Mar 2009; Nirbheek Chauhan <nirbheek@gentoo.org> package.mask:
  Mask =gnome-session-2.24* and stuff that directly or indirectly needs it
  Reason: The very well known (hey, it was /.ed!) session-saving GNOME bug
  552387

  16 Mar 2009; Torsten Veller <tove@gentoo.org> package.mask:
  Remove mask for net-mail/ezmlm, net-mail/ezmlm-idx-mysql and
  net-mail/ezmlm-idx-pgsql (#251383)

  16 Mar 2009; Torsten Veller <tove@gentoo.org> package.mask:
  Remove masks for >=mail-client/squirrelmail-1.5 and
  =mail-filter/procmail-3.22-r9

  16 Mar 2009; Torsten Veller <tove@gentoo.org> package.mask:
  Mask dev-perl/OpenCA-* for removal (#247409)

  15 Mar 2009; Peter Volkov <pva@gentoo.org> package.mask:
  Masked dev-util/bzr-1.13 prerelease candidate and dependant
  dev-util/bzrtools-1.13

  14 Mar 2009; Matthias Schwarzott <zzam@gentoo.org> package.mask:
  Finally unmask newer udev versions.

  13 Mar 2009; Torsten Veller <tove@gentoo.org> package.mask:
  Remove dual life modules for perl-5.10

  13 Mar 2009; Christoph Mende <angelos@gentoo.org> updates/1Q-2009:
  Moved media-plugins/gmpc-lastfm to media-plugins/gmpc-last-fm

  13 Mar 2009; Raúl Porcel <armin76@gentoo.org> profiles.desc:
  Sort profiles by arch

  12 Mar 2009; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Removed punted linuxfromscratch-* ebuilds.

  12 Mar 2009; Ulrich Mueller <ulm@gentoo.org> updates/1Q-2009:
  Move x11-misc/emacs-desktop to app-emacs/emacs-common-gentoo.

  11 Mar 2009; Robin H. Johnson <robbat2@gentoo.org> package.mask:
  Some breakage with the latest OpenSSH HPN patch. p.mask while discussing
  with upstream.

  11 Mar 2009; Nirbheek Chauhan <nirbheek@gentoo.org> package.mask:
  Mask gnome-base/gnome-power-manager-2.24* due to CPUFreq regression (bug
  #247614)

  11 Mar 2009; Nirbheek Chauhan <nirbheek@gentoo.org> package.mask:
  Mask nautilus-sendto-1.1.2 (needs bluez-4)

  11 Mar 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Add a mask for sudo new betas.

  11 Mar 2009; Markus Ullmann <jokey@gentoo.org> arch/amd64/use.mask,
  arch/x86/use.mask, base/use.mask:
  Adjust mask/unmask of virtualbox use_expand

  11 Mar 2009; Markus Ullmann <jokey@gentoo.org> desc/input_devices.desc:
  Add description for input_devices virtualbox

  11 Mar 2009; Markus Ullmann <jokey@gentoo.org> desc/video_cards.desc:
  Add description for video_cards virtualbox

  10 Mar 2009; <chainsaw@gentoo.org> package.mask:
  Mask Asterisk 1.6 as the migration from 1.2 is long, tedious and not yet
  documented fully.

  09 Mar 2009; Fabian Groffen <grobian@gentoo.org> package.mask:
  Unmask mutt-1.5.19, since the sidebar patch was updated

  09 Mar 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  remove mesa-7.3-r1 from p.mask

  09 Mar 2009; Tiziano Müller <dev-zero@gentoo.org> package.mask:
  Changed mask for ctdb to match only vcs version

  08 Mar 2009; Alexey Shvetsov <alexxy@gentoo.org> package.mask:
  Drop mask for kde 4.2.0

  08 Mar 2009; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Remove gnome-base/gnome-vfs-monikers mask, removed from the tree per bug
  #253826. Adjust media-video/totem mask for bluez-4 compatibility.

  08 Mar 2009; Alexey Shvetsov <alexxy@gentoo.org> package.mask:
  Mask KDE 4.2.0

  07 Mar 2009; Peter Volkov <pva@gentoo.org> package.mask:
  Masked app-text/ghostscript-esp for removal, bug #261434

  07 Mar 2009; Dawid Węgliński <cla@gentoo.org>
  default-linux/ppc/package.use.mask, +default/linux/amd64/package.use.mask,
  +default/linux/powerpc/package.use.mask, hardened/amd64/package.use.mask,
  hardened/linux/amd64/package.use.mask:
  Mask amarok2 for net-im/kadu. See bug #238487 for references

  07 Mar 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  add mesa 7.3-r1 to p.mask

  07 Mar 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  remove xf86-video-intel-2.6.2 from p.mask as it's gone from portage

  07 Mar 2009; Torsten Veller <tove@gentoo.org> updates/1Q-2009:
  Move dev-perl/Text-Tabs+Wrap to perl-core/Text-Tabs+Wrap

  06 Mar 2009; Tomas Chvatal <scarabeus@gentoo.org> package.mask:
  Mask net-misc/kickpim for removal

  05 Mar 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask dev-ruby/ruby-gdchart.

  04 Mar 2009; Alexey Shvetsov <alexxy@gentoo.org> package.mask:
  KDE 4.2.1 was added

  04 Mar 2009; Alexey Shvetsov <alexxy@gentoo.org> package.mask:
  Add entry for kde 4.2.1

  03 Mar 2009; Doug Goldstein <cardoe@gentoo.org> package.mask:
  fix up nvidia-drivers masks. mask 180.35 after discussions with nvidia

  02 Mar 2009; Jeroen Roovers <jer@gentoo.org> package.mask:
  Correct app-admin/sysstat mask.

  02 Mar 2009; Jeroen Roovers <jer@gentoo.org> package.mask:
  Limit app-admin/sysstat mask to the 8.1 versions.

  02 Mar 2009; Thomas Sachau (Tommy[D]) <tommy@gentoo.org> package.mask:
  Mask net-libs/fec for removal

  01 Mar 2009; Olivier Crête <tester@gentoo.org> package.mask,
  use.local.desc:
  Removed net-im/tmsnc from the tree

  01 Mar 2009; Tiziano Müller <dev-zero@gentoo.org> package.mask:
  kmobiletools-0.5.0_beta3 left the tree

  01 Mar 2009; Theo Chatzimichos <tampakrap@gentoo.org> package.mask:
  Mask Beta versions of KDevelop4 and KDevplatform

  01 Mar 2009; Tiziano Müller <dev-zero@gentoo.org> package.mask:
  Added blueman to p.mask since it needs p.masked packages.

  28 Feb 2009; Peter Alfredsen <loki_val@gentoo.org> package.mask:
  Removing monopod package.mask entry since it's been removed from tree per
  last-rite announcement.

  28 Feb 2009; <solar@gentoo.org> categories, info_vars:
  Added gpe-base category and PORTAGE_CONFIGROOT to info_vars

  28 Feb 2009; Peter Alfredsen <loki_val@gentoo.org> package.mask:
  Removing dopi package.mask entry since it's been removed from tree per
  last-rite announcement.

  28 Feb 2009; Peter Alfredsen <loki_val@gentoo.org> package.mask:
  Removing gtkgl-sharp package.mask entry since it's been removed from tree
  per last-rite announcement.

  28 Feb 2009; Peter Alfredsen <loki_val@gentoo.org> package.mask:
  Removing mcatalog package.mask, since it's been removed

  28 Feb 2009; Markus Meier <maekke@gentoo.org> use.desc:
  new global USE-flags: custom-cflags and semantic-desktop

  28 Feb 2009; Alin Năstac <mrness@gentoo.org> package.mask:
  Unmask mail-filter/sid-milter (#208685).

  28 Feb 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  remove entries for treecleaned packages (kdrive, omni and fluxbg)

  28 Feb 2009; Jeff Gardner <je_fro@gentoo.org> package.mask:
  Mask sci-chemistry/gchempaint as it is now provided by gchemutils.

  28 Feb 2009; Tiziano Müller <dev-zero@gentoo.org> package.mask:
  Added new version for obexftp to p.mask since tested with p.masked
  bluez-4.31.

  27 Feb 2009; Steve Dibb <beandog@gentoo.org> package.mask:
  Remove p.mask for media-video/mplayer-20090226.28734

  27 Feb 2009; Alexis Ballier <aballier@gentoo.org> package.mask:
  mask vlc 0.9.9 rc

  27 Feb 2009; Markus Meier <maekke@gentoo.org> package.mask:
  add beta of media-libs/libpano13 to the hugin mask

  26 Feb 2009; Matthias Schwarzott <zzam@gentoo.org> package.mask:
  Also add sys-fs/udev-139 to masked versions until 135-r4 is stable.

  26 Feb 2009; Timothy Redaelli <drizzt@gentoo.org package.mask:
  Mask ~dev-libs/libedit-20090111.3.0 for testing

  26 Feb 2009; Steve Dibb <beandog@gentoo.org> package.mask:
  Mask >=media-video/mplayer-20090226.28734 for dvdnav, real cleanup, use
  flag cleanup, vdpau support

  26 Feb 2009; Konstantin V. Arkhipov <voxus@gentoo.org> use.local.desc:
  random-index flag added for www-servers/nginx.

  26 Feb 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  add xf86-video-intel-2.6.2 to p.mask

  25 Feb 2009; Markus Meier <maekke@gentoo.org> package.mask:
  fix hugin-0.8.0 beta mask

  25 Feb 2009; MATSUU Takuto <matsuu@gentoo.org> package.mask:
  remove ibus* from package.mask

  25 Feb 2009; Matthias Schwarzott <zzam@gentoo.org> package.mask:
  Mask media-plugins/vdr-streamdev-{client,server} for removal. They are
  replaced by media-plugins/vdr-streamdev.

  25 Feb 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Remove mikachan-font mask now that it's gone.

  25 Feb 2009; Markus Meier <maekke@gentoo.org> package.mask:
  mask beta releases of media-gfx/hugin-0.8.0

  25 Feb 2009; Ben de Groot <yngwin@gentoo.org> package.mask:
  Remove mask for qtcurve-qt4-0.61.2, now that compilation issue has been
  solved

  24 Feb 2009; Ben de Groot <yngwin@gentoo.org> package.mask:
  Mask x11-themes/qtcurve-qt4-0.61.2 for compilation failure

  23 Feb 2009; Tomas Chvatal <scarabeus@gentoo.org> package.mask:
  Remove krusader from mask (their release cycle is pretty slow and the app
  is stable).

  22 Feb 2009; Mike Auty <ikelos@gentoo.org> package.mask:
  Remove masks for cleaned out insecure vmware products.

  22 Feb 2009; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Remove gucharmap-2.24 mask since bug #243160 is solved.

  22 Feb 2009; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  Remove mask for kdbus as it was removed from tree.

  21 Feb 2009; Jeremy Olexa <darkside@gentoo.org> package.mask:
  remove mask entries for non-existant packages after they were removed

  20 Feb 2009; Ben de Groot <yngwin@gentoo.org> arch/alpha/package.use.mask,
  arch/sparc/package.use.mask, default-linux/alpha/package.use.mask,
  arch/hppa/package.use.mask, default-linux/sparc/package.use.mask:
  Add p.use.mask entries on alpha, hppa and sparc due to unkeyworded kde4
  for x11-themes/qtcurve-qt4

  20 Feb 2009; Theo Chatzimichos <tampakrap@gentoo.org> package.mask:
  remove ktorrent from profiles/package.mask

  19 Feb 2009; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Add net-wireless/libbtctl-0.11.0 to bluez-4 mask.

  19 Feb 2009; Alexey Shvetsov <alexxy@gentoo.org> package.mask:
  Drop p.mask for kde 4.1.4 since it was removed and for compiz-0.7.8-r1,2
  since kde-4.2.0 already in tree

  19 Feb 2009; Petteri Räty <betelgeuse@gentoo.org> package.mask:
  package.mask dev-java/jdbc2-postgresql. See bug #259559.

  19 Feb 2009; Matthias Schwarzott <zzam@gentoo.org> package.mask:
  Add sys-fs/udev-138 to masked ebuilds.

  18 Feb 2009; Gilles Dartiguelongue <eva@gentoo.org> base/package.use.mask:
  Add policykit use.mask for consolekit.

  18 Feb 2009; Sébastien Fabbro <bicatali@gentoo.org> package.mask:
  Removed masking for sci-libs/scipy

  18 Feb 2009; Sébastien Fabbro <bicatali@gentoo.org> package.mask:
  Masking sci-calculators/tilp and dependencies for removal in 30 days

  18 Feb 2009; Sébastien Fabbro <bicatali@gentoo.org> package.mask:
  Removed dev-python/f2py from masking package now longer in the tree

  17 Feb 2009; Alexey Shvetsov <alexxy@gentoo.org> package.mask:
  mask kde 4.1.4 for removing

  15 Feb 2009; Peter Alfredsen <loki_val@gentoo.org> package.mask:
  Katoob has been removed. bug 251566.

  15 Feb 2009; Torsten Veller <tove@gentoo.org> package.mask:
  Remove mask of mail-client/xfmail, mail-client/elm

  15 Feb 2009; Peter Alfredsen <loki_val@gentoo.org> package.mask:
  Masking media-video/gephex for removal

  14 Feb 2009; Christian Faulhammer <fauli@gentoo.org> package.mask:
  remove mask for dev-util/bzr and bzrtools, stable versions of 1.12
  released

  14 Feb 2009; Ben de Groot <yngwin@gentoo.org> package.mask:
  Masking =x11-libs/qt-script-4.5.0_rc1-r1 because of build failures, bug
  258961

  14 Feb 2009; Ben de Groot <yngwin@gentoo.org> arch/alpha/package.use.mask,
  arch/ia64/package.use.mask, arch/mips/package.use.mask,
  arch/x86-fbsd/package.use.mask, default-bsd/fbsd/package.use.mask,
  default-linux/alpha/package.use.mask, default-linux/ia64/package.use.mask,
  default-linux/mips/package.use.mask:
  Reverting most of my previous changes, am gonna do this another way

  13 Feb 2009; Ben de Groot <yngwin@gentoo.org> arch/alpha/package.use.mask,
  arch/ia64/package.use.mask, arch/mips/package.use.mask,
  arch/x86-fbsd/package.use.mask, default-bsd/fbsd/package.use.mask,
  default-linux/alpha/package.use.mask, default-linux/ia64/package.use.mask,
  default-linux/mips/package.use.mask:
  Mask phonon and webkit useflags of qt meta ebuild, for arches on which
  those deps are not keyworded

  13 Feb 2009; MATSUU Takuto <matsuu@gentoo.org> use.local.desc:
  Added libsexy local use flag for app-dicts/gwaei

  13 Feb 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask dev-lang/rubinius per bug #237887.

  11 Feb 2009; Gordon Malm <gengor@gentoo.org> package.mask:
  Remove sys-apps/rsbac-admin and sys-kernel/rsbac-sources. Packages are no
  longer in the tree.

  11 Feb 2009; Ben de Groot <yngwin@gentoo.org> arch/alpha/use.mask,
  arch/ia64/use.mask, arch/sparc/use.mask:
  Mask phonon useflag on arches where x11-libs/qt-phonon and
  media-sound/phonon are unkeyworded

  11 Feb 2009; Ben de Groot <yngwin@gentoo.org> use.desc:
  Add custom-cxxflags global useflag, used in all qt-* libs

  11 Feb 2009; Peter Volkov <pva@gentoo.org> package.mask:
  Add dev-util/bzrtools-1.12.0 to mask as it depends on bzr-1.12

  10 Feb 2009; Alexis Ballier <aballier@gentoo.org> package.mask:
  unmask xvid 1.2 as everything seems fine

  10 Feb 2009; Peter Volkov <pva@gentoo.org> package.mask:
  Masking release candidate of dev-util/bzr

  09 Feb 2009; Christoph Mende <angelos@gentoo.org> updates/1Q-2009:
  Moved xfce-extra/verve to xfce-extra/xfce4-verve

  08 Feb 2009; Andreas Proschofsky <suka@gentoo.org> package.mask:
  Remove mask on OpenOffice.org 3.0.1, officially released now

  08 Feb 2009; Mike Frysinger <vapier@gentoo.org> package.mask:
  Remove wrong sandbox mask.

  07 Feb 2009; Serkan Kaba <serkan@gentoo.org> package.mask:
  Update sandbox mask.

  07 Feb 2009; MATSUU Takuto <matsuu@gentoo.org> package.mask:
  added =x11-wm/awesome-3.2* and =x11-libs/xcb-util-0.3.3* to p.mask.

  06 Feb 2009; Vlastimil Babka <caster@gentoo.org> updates/1Q-2009:
  Package move net-p2p/azureus to net-p2p/vuze

  06 Feb 2009; Jeroen Roovers <jer@gentoo.org> package.mask:
  Remove hppa-sources from package.mask (bug #202391).

  06 Feb 2009; Jeroen Roovers <jer@gentoo.org> profiles.desc:
  Define new hppa default profiles (bug #253572).

  06 Feb 2009; Jeroen Roovers <jer@gentoo.org>
  -default-linux/hppa/2007.0/deprecated,
  -default-linux/hppa/2007.0/desktop/deprecated,
  -default-linux/hppa/2007.0/desktop/make.defaults,
  -default-linux/hppa/2007.0/desktop/parent,
  -default-linux/hppa/2007.0/desktop/virtuals,
  -default-linux/hppa/2007.0/make.defaults,
  -default-linux/hppa/2007.0/package.use.force,
  -default-linux/hppa/2007.0/packages, -default-linux/hppa/2007.0/parent,
  -default-linux/hppa/2007.0/server/deprecated,
  -default-linux/hppa/2007.0/server/make.defaults,
  -default-linux/hppa/2007.0/server/parent,
  -default-linux/hppa/2007.0/use.mask, -default-linux/hppa/make.defaults,
  -default-linux/hppa/package.mask, -default-linux/hppa/package.use.mask,
  -default-linux/hppa/packages, -default-linux/hppa/parent,
  -default-linux/hppa/use.mask, -default-linux/hppa/virtuals:
  Remove default-linux/hppa (bug #253572).

  05 Feb 2009; MATSUU Takuto <matsuu@gentoo.org> package.mask:
  p.mask >=app-i18n/ibus*-1.1

  05 Feb 2009; Hanno Boeck <hanno@gentoo.org> package.mask:
  Mask pam_mount 1.17, broken with crypto.

  05 Feb 2009; Jeremy Olexa <darkside@gentoo.org> package.mask:
  libjingle-0.3.12 is not backwards compatible, p.mask for now. bug 256953

  04 Feb 2009; Ben de Groot <yngwin@gentoo.org> arch/ia64/package.use.mask,
  arch/sparc/package.use.mask, arch/x86-fbsd/package.use.mask:
  Add proper webkit useflag masks for affected arches

  04 Feb 2009; Serkan Kaba <serkan@gentoo.org> package.mask:
  Mask sys-apps/sandbox-1.3.3 until bug #256953 is resolved.

  04 Feb 2009; Raúl Porcel <armin76@gentoo.org> package.mask:
  Add >=seamonkey-bin-2.0_alpha1 mask

  04 Feb 2009; Jeremy Olexa <darkside@gentoo.org> package.mask:
  p.mask sdsc-syslog (bug 239863) and openpbs-common (bug 255425) for removal

  03 Feb 2009; Santiago M. Mola <coldwind@gentoo.org> package.mask:
  Pando masked for removal in 30 days.

  02 Feb 2009; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Add gnome-base/gvfs-1.0.3-r11 to bluez-4 mask.

  02 Feb 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  unleash xf86-video-intel 2.6.1 and mesa 7.3

  02 Feb 2009; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Package mask Emacs 23 live ebuild.

  02 Feb 2009; Ben de Groot <yngwin@gentoo.org> package.mask:
  Mask dev-ruby/qt4-qtruby for being broken. See tracker bug 224951.

  01 Feb 2009; Ben de Groot <yngwin@gentoo.org> package.mask:
  Removing qt-4.4.0 mask, as this version is no longer in tree

  01 Feb 2009; Mike Auty <ikelos@gentoo.org> package.mask:
  Last-rites for vmware-esx-emulation.

  01 Feb 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  unmask dri2proto that was already in portage

  01 Feb 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  add newer versions of xf86-video-intel and mesa to p.mask

  01 Feb 2009; Markus Ullmann <jokey@gentoo.org> updates/1Q-2009:
  Package move from games-puzzle/ksudoku

  01 Feb 2009; Tobias Klausmann <klausman@gentoo.org>
  arch/alpha/package.use.mask:
  ups needs nut, nagios-game needs qstat. Neither is keyworded on alpha,
  hence mask them.

  01 Feb 2009; Markus Ullmann <jokey@gentoo.org> package.mask:
  Drop package mask for bug #257162

  02 Feb 2009; Jim Ramsay <lack@gentoo.org> package.mask:
  Masking net-misc/amazonmp3-libcompat until it is actually used

  01 Feb 2009; Peter Alfredsen <loki_val@gentoo.org> package.mask:
  Mask monopod for removal.

  01 Feb 2009; Tomas Chvatal <scarabeus@gentoo.org> package.mask:
  Mask sci-astronomy/setiathome for removal.

  31 Jan 2009; <jokey@gentoo.org> package.mask:
  Mask games-puzzle/ksudoku for removal

  30 Jan 2009; Daniel Black <dragonheart@gentoo.org> package.mask:
  app-crypt/tpm-module removed from portage. removed from package.mask also

  30 Jan 2009; Thomas Anderson <gentoofan23@gentoo.org> package.mask:
  Mask mythzoneminder as it depends on security-vulnerable zoneminder.

  30 Jan 2009; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org>
  package.mask:
  Removed the global KDE-4.2.0 mask and left the experimental printer
  packages until the deps are added to the tree.

  30 Jan 2009; Peter Alfredsen <loki_val@gentoo.org> package.mask:
  P.mask gtkgl-sharp

  30 Jan 2009; Peter Alfredsen <loki_val@gentoo.org> package.mask:
  Mask mcatalog for removal

  30 Jan 2009; Peter Alfredsen <loki_val@gentoo.org> package.mask:
  jscall-sharp is gone from tree

  29 Jan 2009; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  remove x11-misc/goats mask since it is now gone from the tree, #248564.

  29 Jan 2009; Alexey Shvetsov <alexxy@gentoo.org> package.mask:
  Add kde-base/konq-plugins-4.2.0 to mask

  29 Jan 2009; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org>
  package.mask:
  Added media-sound/phonon-4.3.0 to the KDE-4.2.0 p. mask.

  28 Jan 2009; Torsten Veller <tove@gentoo.org> package.mask:
  Masked for testing (#249629 and 79685#c14)

  28 Jan 2009; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org>
  package.mask:
  Added meta ebuilds to the KDE-4.2.0 mask.

  27 Jan 2009; Peter Volkov <pva@gentoo.org> package.mask:
  Removed mask for iwlwifi which was removed from the tree, bug #207698.

  27 Jan 2009; Wolfram Schlich <wschlich@gentoo.org> package.mask:
  remove hpacucli mask as the license file is now in portage

  27 Jan 2009; Federico Ferri <mescalinum@gentoo.org> package.mask:
  unmask synce-0.13 as the issues are now solved

  26 Jan 2009; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Add gvfs-1.0.3-r10 to bluez-4 mask.

  26 Jan 2009; Peter Volkov <pva@gentoo.org> package.mask:
  Masked www-misc/zoneminder due to security vulnerabilities.

  26 Jan 2009; Peter Volkov <pva@gentoo.org> package.mask:
  Unmasked www-apps/dotproject as security issue is resolved, bug #236518.

  26 Jan 2009; Mike Frysinger <vapier@gentoo.org> arch/hppa/make.defaults,
  default-linux/hppa/make.defaults, use.desc:
  Remove USE=pic as a global flag so people (hopefully) stop screwing up its
  usage.

  25 Jan 2009; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Mask x11-misc/hotkeys for removal.

  25 Jan 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  add x11-apps/xphelloworld to p.mask

  25 Jan 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  add x11-base/kdrive to p.mask, pending removal

  25 Jan 2009; Peter Alfredsen <loki_val@gentoo.org> package.mask:
  Change reason for mask. Dopi doesn't fail with mono-2.x. It's more a
  general thing.

  24 Jan 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask mikachan-font for removal.

  24 Jan 2009; Matthias Schwarzott <zzam@gentoo.org> package.mask:
  Also add sys-fs/udev-137 to package.mask

  24 Jan 2009; Javier Villavicencio <the_paya@gentoo.org> profiles.desc:
  Uncomment the Gentoo/FreeBSD-7.1 profile.

  22 Jan 2009; Peter Volkov <pva@gentoo.org> package.mask:
  Unmasking ~net-wireless/iwl3945-ucode-15.28.2.8 since it's good idea to
  use it with 2.6.28 kernels.

  22 Jan 2009; Peter Volkov <pva@gentoo.org> package.mask:
  Masked net-wireless/iwl3945-ucode for tests. Please, report success and
  failures in bug #246045

  22 Jan 2009; Hanno Boeck <hanno@gentoo.org> package.mask:
  Mask sdricoh_cs, included in kernel 2.6.27.

  20 Jan 2009; Torsten Veller <tove@gentoo.org> updates/1Q-2009,
  package.mask:
  Remove temporary mask of new perl virtuals. Add move entries to updates

  20 Jan 2009; Matthias Schwarzott <zzam@gentoo.org> package.mask:
  Package mask ~sys-fs/udev-136 until 135-r3 is tested good enough and the
  upstream rule-changes have been reviewed

  20 Jan 2009; Torsten Veller <tove@gentoo.org> package.mask:
  Temporary mask of new perl virtuals

  20 Jan 2009; Torsten Veller <tove@gentoo.org> package.mask:
  Remove dev-perl/SOAP mask

  19 Jan 2009; Alexis Ballier <aballier@gentoo.org>
  arch/x86-fbsd/package.use.mask, default-bsd/fbsd/package.use.mask,
  default/bsd/fbsd/package.use.mask:
  no need to mask and then unmask avahi[python] for x86-fbsd since its not
  keyworded for sparc-fbsd

  19 Jan 2009; Alexis Ballier <aballier@gentoo.org> profiles.desc:
  Add a (commented out for now) entry for FreeBSD 7.1 profiles

  19 Jan 2009; Ben de Groot <yngwin@gentoo.org>
  default-bsd/package.use.mask, default-linux/package.use.mask,
  default/linux/package.use.mask, hardened/package.use.mask, package.mask:
  Masks needed for Qt 4.4 split ebuilds stabilization, bug 248038

  19 Jan 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  unmask libdrm-2.4.4

  19 Jan 2009; Christoph Mende <angelos@gentoo.org> package.mask:
  Removed x11-libs/xfc

  19 Jan 2009; Jeremy Olexa <darkside@gentoo.org> package.mask:
  process treecleaner queue, multiple packages added, 2 removed from tree

  18 Jan 2009; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  provide a bluez-4 compatible totem, bug #249257.

  18 Jan 2009; Andreas Proschofsky <suka@gentoo.org> package.mask:
  Mask release candidates for OpenOffice.org 3.0.1

  18 Jan 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Remove dev-ruby/test-unit mask, tests now fixed.

  16 Jan 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Add mask for dev-ruby/test-unit.

  16 Jan 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  add x11-libs/libdrm-2.4.4 to p.mask

  16 Jan 2009; Mike Auty <ikelos@gentoo.org> package.mask:
  Mask out further vulnerable vmware software versions.

  15 Jan 2009; Sébastien Fabbro <bicatali@gentoo.org> package.mask:
  Masked dev-python/f2py for removal in 30 days

  15 Jan 2009; Torsten Veller <tove@gentoo.org> package.mask:
  Unmask dev-perl/Net-Amazon-S3-0.49

  15 Jan 2009; Alexis Ballier <aballier@gentoo.org> package.mask:
  unmask vamp sdk 2.0 now that audacity is fixed

  14 Jan 2009; Alexey Shvetsov <alexxy@gentoo.org> package.mask:
  Unmask kde 4.1.4

  14 Jan 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  unleash xorg-server-1.5.3-r1

  14 Jan 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  virtual/xft is gone from portage, updating p.mask

  14 Jan 2009; Zac Medico <zmedico@gentoo.org> package.mask:
  Remove mask for sys-apps/portage-2.1.6.5 since it's no longer
  in the tree.

  13 Jan 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  add x11-base/xorg-server-1.5.3-r1 to p.mask

  13 Jan 2009; Torsten Veller <tove@gentoo.org> package.mask:
  Mask ~dev-perl/Net-Amazon-S3-0.49 too

  13 Jan 2009; Zac Medico <zmedico@gentoo.org> package.mask:
  Mask =sys-apps/portage-2.1.6.5 due to bug 254860.

  13 Jan 2009; Petteri Räty <betelgeuse@gentoo.org> thirdpartymirrors:
  Add internap to sourceforge mirrors.

  13 Jan 2009; Donnie Berkholz <dberkholz@gentoo.org>; package.mask:
  Mask >=sci-chemistry/burrow-owl-1.4 pending unmasking of
  guile-gnome-platform 2.16. The whole mess is blocking on the separate
  libffi package.

  11 Jan 2009; Peter Volkov <pva@gentoo.org> package.mask:
  EC fonts are tex fonts, this package was used by lilypond at some point of
  time, but now nothing uses them, no maintainer so it looks like time to
  remove them from the tree has come. Objections? Report to bug 183730.

  11 Jan 2009; Andreas Proschofsky <suka@gentoo.org> package.mask:
  Remove mask on oooqs and ooqstart-gnome, both are now gone from the tree

  11 Jan 2009; Mike Auty <ikelos@gentoo.org> package.mask:
  Adding x.5.0 series mask for vmware, since they're also vulnerable (bug
  245941).

  11 Jan 2009; Fabian Groffen <grobian@gentoo.org> package.mask:
  Mask mutt-1.5.19 as it won't have a working sidebar patch for now.

  11 Jan 2009; Tobias Scherbaum <dertobi123@gentoo.org> package.mask:
  net-analyzer/rtg bundles *very* outdated versions of gd, zlib and
  libpng libraries, static links, upstream seems dead, removal in 30
  days. bug #247958 and bug #251425

  10 Jan 2009; Daniel Black <dragonheart@gentoo.org> package.mask:
  package mask >=net-libs/gnutls-2.7.0 to allow dependant packages to resolve
  bug #253709

  10 Jan 2009; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Remove mask for app-emacs/navi2ch, since the masked version is no longer
  in the tree.

  09 Jan 2009; Rémi Cardona <remi@gentoo.org> package.mask:
  add virtual/xft to p.mask

  09 Jan 2009; Peter Alfredsen <loki_val@gentoo.org> package.mask:
  r10 is in tree, -r2 is not, finishing gstreamer mask update.

  09 Jan 2009; Peter Alfredsen <loki_val@gentoo.org> package.mask:
  Add -r10 of gstreamer to mask in preparation for bump.

  09 Jan 2009; Michael Marineau <marineam@gentoo.org> use.local.desc:
  Add lxc and uml use flags for libvirt

  09 Jan 2009; Bryan Stine <battousai@gentoo.org> package.mask:
  Unmask app-admin/bastille for newly-updated 3.0.9 bump.

  08 Jan 2009; Peter Alfredsen <loki_val@gentoo.org> package.mask:
  I fixed monopod and it seems gnutu works for Jer (no segfault?), so
  removing from mono-2 package.mask

  08 Jan 2009; Jeremy Olexa <darkside@gentoo.org> package.mask:
  clean for package removals

  07 Jan 2009; Christoph Mende <angelos@gentoo.org> package.mask:
  Masked media-plugins/gmpc-stopbutton for removal

  07 Jan 2009; Tomas Chvatal <scarabeus@gentoo.org> package.mask:
  Mask kde-base/pykde-3.5*, because it is broken. Replacement can be
  dev-python/pykde. No deps found on this one :]

  07 Jan 2009; Bernard Cafarelli <voyageur@gentoo.org> package.mask:
  Removing net-misc/nxclient-2xterminalserver and
  net-misc/nxserver-2xterminalserver mask after removal from portage

  06 Jan 2009; Zac Medico <zmedico@gentoo.org> package.mask:
  Bug #253802 - Update comment to note that Portage 2.2 is masked due
  to known bugs in the package sets and preserve-libs features.

  05 Jan 2009; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Remove net-misc/logjam and net-news/straw mask per bug #181236 and
  bug #187285.

  05 Jan 2009; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Add gnome-extra/gnome-user-share-0.41 to bluez-4 mask

  05 Jan 2009; Markus Meier <maekke@gentoo.org> use.desc:
  add global icu and xft USE-flags

  05 Jan 2009; Joerg Bornkessel <hd_brummy@gentoo.org> package.mask:
  =net-www/xxv-1.2.1383 , =x11-themes/xxv-skins-1.2.1383 masked for utf8
  handle testing

  04 Jan 2009; Christian Faulhammer <fauli@gentoo.org> package.mask:
  mail-client/claws-mail-smime has been removed, see bug 253707

  03 Jan 2009; Mike Auty <ikelos@gentoo.org> package.mask:
  Mask off insecure versions of vmware-workstation and vmware-player.

  03 Jan 2009; Daniel Black <dragonheart@gentoo.org> thirdpartymirrors:
  remove ftp://ftp.digitaltrust.it due to lack of response

  03 Jan 2009; Daniel Black <dragonheart@gentoo.org> package.mask:
  app-crypt/tpm-module mask pending removal as per gentoo-dev-announce list

  02 Jan 2009; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask packages that should only be used by crossdev.

  02 Jan 2009; MATSUU Takuto <matsuu@gentoo.org> use.local.desc:
  Adding local use flags for app-i18n/ibus-table-{erbi,wubi,zhengma}.

  01 Jan 2009; Peter Alfredsen <loki_val@gentoo.org> package.mask:
  Removing gtksourceview-sharp mask

  01 Jan 2009; Raúl Porcel <armin76@gentoo.org> package.mask:
  Fix my mask

  For previous entries, please see ChangeLog-2008.
