# ChangeLog for profile directory
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
# $Header: /var/cvsroot/gentoo-x86/profiles/ChangeLog-2011,v 1.2 2012/05/23 23:13:36 ssuominen 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!

  30 Dec 2011; Hans de Graaff <graaff@gentoo.org> arch/arm/use.mask:
  Mask ruby19 until bug 332593 is fully fixed.

  30 Dec 2011; Hans de Graaff <graaff@gentoo.org> package.mask:
  Include old redmine version in rack mask.

  29 Dec 2011; Sébastien Fabbro <bicatali@gentoo.org> package.mask:
  Mask sci-astronomy/orsa for removal in 30 days

  29 Dec 2011; Sébastien Fabbro <bicatali@gentoo.org> package.mask:
  Mask sci-astronomy/ast and sci-astronomy/ds9 for removal in 30 days

  29 Dec 2011; William Hubbs <williamh@gentoo.org> package.mask:
  remove mask for deleted version of openrc

  29 Dec 2011; Torsten Veller <tove@gentoo.org> package.mask:
  Unmask dev-perl/DBD-SQLite

  29 Dec 2011; Hans de Graaff <graaff@gentoo.org> package.mask:
  Mask old obsolete slot of rack for removal.

  28 Dec 2011; Alex Legler <a3li@gentoo.org> package.mask:
  Mask www-apps/tikiwiki for security

  28 Dec 2011; Hans de Graaff <graaff@gentoo.org> arch/alpha/use.mask:
  Mask ruby_targets_ruby19 USE flag for now on alpha until bug 332593 is fixed.

  28 Dec 2011; Hans de Graaff <graaff@gentoo.org> base/use.mask, package.mask:
  Unmask ruby 1.9 and associated use flag.

  26 Dec 2011; Christian Faulhammer <fauli@gentoo.org> package.mask:
  Lift temporary mask of Claws Mail

  26 Dec 2011; Fabian Groffen <grobian@gentoo.org> profiles.desc:
  Add Prefix profiles for FreeBSD 9.0, bug #395913

  26 Dec 2011; Christian Faulhammer <fauli@gentoo.org> package.mask:
  Temporary mask for Claws Mail 3.8.0 until bump is finished

  23 Dec 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  qt-creator-2.4.0_rc is no more

  23 Dec 2011; Eray Aslan <eras@gentoo.org> package.mask:
  Punt mask for mail-filter/libdomainkeys. No longer in the tree.

  23 Dec 2011; Jeroen Roovers <jer@gentoo.org> package.mask:
  Actually, let's just have one mask entry for both opera and opera-next.

  23 Dec 2011; Jeroen Roovers <jer@gentoo.org> package.mask:
  Mask www-client/opera-11.61* snapshots.

  22 Dec 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite media-radio/fldigi.

  22 Dec 2011; Andreas K. Huettel <dilfridge@gentoo.org> package.mask:
  Calligra-2.3.85 has been released.

  22 Dec 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask games-strategy/savage-bin for security wrt #294253

  22 Dec 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Remove entries for some treecleaned pkgs.

  22 Dec 2011; Alexis Ballier <aballier@gentoo.org>
  arch/amd64/package.use.mask, arch/amd64/use.mask, arch/x86/package.use.mask,
  arch/x86/use.mask, base/package.use.mask, base/use.mask:
  mask vdpau globally and unmask on x86/amd64 as requested in bug #392269

  21 Dec 2011; Anthony G. Basile <blueness@gentoo.org>
  +default/linux/arm/10.0/package.use.mask,
  +default/linux/sparc/10.0/package.use.mask:
  Use mask vde flag for net-misc/tinc on arm and sparc

  20 Dec 2011; Davide Pesavento <pesa@gentoo.org> package.mask:
  x11-libs/qt is no longer in the tree, remove mask.

  20 Dec 2011; Michael Pagano <mpagano@gentoo.org> package.mask:
  Remove portpeek masks

  19 Dec 2011; Hans de Graaff <graaff@gentoo.org> package.mask:
  Remove dev-ruby/rake mask, it seems to work fine.

  19 Dec 2011; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
  package.mask:
  Mask prerelease x11 packages

  18 Dec 2011; Fabian Groffen <grobian@gentoo.org>
  -prefix/irix/6.5/mips/make.defaults, -prefix/irix/6.5/mips/parent,
  -prefix/irix/6.5/package.provided, -prefix/irix/6.5/parent,
  -prefix/irix/make.defaults, -prefix/irix/package.mask,
  -prefix/irix/package.use.force, -prefix/irix/package.use.mask,
  -prefix/irix/packages, -prefix/irix/parent, -prefix/irix/profile.bashrc,
  -prefix/irix/use.force, -prefix/irix/use.mask, arch.list, base/use.mask,
  desc/elibc.desc, desc/kernel.desc, profiles.desc:
  Drop mips-irix, it never reached a state where keywords could be added to the
  tree, it is unlikely it ever will.

  18 Dec 2011; Fabian Groffen <grobian@gentoo.org> profiles.desc:
  Add OSX Lion profiles, bug #395119

  17 Dec 2011; Alexey Shvetsov <alexxy@gentoo.org> arch/alpha/package.use.mask,
  arch/ia64/package.use.mask, arch/sparc/package.use.mask:
  Mask numa use flag for openmpi on some arches

  16 Dec 2011; Michael Pagano <mpagano@gentoo.org> package.mask:
  Add addition portpeek version to mask for testing

  16 Dec 2011; Ulrich Mueller <ulm@gentoo.org> license_groups:
  Add qwt to GPL-COMPATIBLE license group, bug 394663.
  Add freemarker to MISC-FREE license group, bug 394667.
  Add wxWinFDL-3 to FREE-DOCUMENTS license group, bug 394669.

  16 Dec 2011; Johannes Huber <johu@gentoo.org> package.mask:
  kde-misc/kcheckgmail masked for removal

  15 Dec 2011; Michael Pagano <mpagano@gentoo.org> package.mask:
  Bump masked portpeek version

  15 Dec 2011; Michael Pagano <mpagano@gentoo.org> package.mask:
  Mask new version of portpeek for testing

  15 Dec 2011; Hanno Boeck <hanno@gentoo.org> package.mask:
  Mask libhx 3.12, breaks pam_mount.

  14 Dec 2011; Matti Bickel <mabi@gentoo.org> updates/4Q-2011, categories,
  package.mask:
  Merge category dev-php5 into dev-php (bug #324665)

  14 Dec 2011; Ulrich Mueller <ulm@gentoo.org> license_groups:
  Add Texinfo-manual to FREE-DOCUMENTS license group.

  14 Dec 2011; Peter Volkov <pva@gentoo.org> package.mask:
  mask net-libs/wt: broken, unmaintained, see #378617, pending removal on
  2012-01-14

  13 Dec 2011; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Mask app-editors/emacs:21 and :22 for removal.

  13 Dec 2011; Tim Harder <radhermit@gentoo.org> package.mask:
  Unmask wordpress-3.3.

  12 Dec 2011; Andreas K. Huettel <dilfridge@gentoo.org> thirdpartymirrors:
  ibiblio KDE mirror is broken atm

  12 Dec 2011; Jeroen Roovers <jer@gentoo.org> package.mask:
  Spelling.

  12 Dec 2011; Ole Markus With <olemarkus@gentoo.org> package.mask:
  Removing mask of PEAR-Net_LDAP for now

  12 Dec 2011; Ole Markus With <olemarkus@gentoo.org> package.mask:
  Masked due to dead upstream or being superseded.
  Bugs 394067, 393979, 393893, 392853

  12 Dec 2011; Ole Markus With <olemarkus@gentoo.org> package.mask:
  Removed mask of roadsend-php. Package removed from tree

  12 Dec 2011; Peter Volkov <pva@gentoo.org> updates/4Q-2011:
  move app-text/djview4 app-text/djview

  11 Dec 2011; Maxim Koltsov <maksbotan@gentoo.org> package.mask:
  Mask app-emulation/libguestfs until proper testing is done

  11 Dec 2011; Sergei Trofimovich <slyfox@gentoo.org> package.mask:
  Removed mask for dev-haskell/hsshellscript. Removed due to bugs #282909 and
  #285204. Cabal unfriendly.

  11 Dec 2011; Raúl Porcel <armin76@gentoo.org> package.mask:
  Unmask =sys-devel/crossdev-20111118 now that its not missing from the mirrors
  anymore

  11 Dec 2011; Johannes Huber <johu@gentoo.org> package.mask:
  Remove mask for x11-themes/polyester, package is gone from tree.

  11 Dec 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite media-sound/gamix.

  10 Dec 2011; Maxim Koltsov <maksbotan@gentoo.org> package.mask:
  Mask dev-util/febootstrap before testing ends

  10 Dec 2011; Andreas K. Huettel <dilfridge@gentoo.org> package.mask:
  Mask not-yet-released calligra

  10 Dec 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite x11-wm/flwm

  09 Dec 2011; Mike Frysinger <vapier@gentoo.org> package.mask:
  Drop pciutils mask now that udev depends on things sanely #360849.

  09 Dec 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Remove mask entry for wxGTK/wxpython 2.6 and remaining reverse dependencies
  wrt #330683 since they are no longer in tree.

  09 Dec 2011; Anthony G. Basile <blueness@gentoo.org>
  +default/linux/amd64/10.0/selinux/eapi,
  +default/linux/amd64/10.0/selinux/parent,
  +default/linux/x86/10.0/selinux/eapi, +default/linux/x86/10.0/selinux/parent,
  profiles.desc:
  Stack features/selinux on default/linux/{amd64,x86}/10.0 profiles

  09 Dec 2011; Daniel Pielmeier <billie@gentoo.org> package.mask:
  Mask net-print/cupsddk for removal.

  08 Dec 2011; Alexandre Rostovtsev <tetromino@gentoo.org>
  targets/desktop/gnome/package.use:
  Enable gtk3 USE flag in ibus and uim for gnome-3; thanks to Wilfred van
  Rooijen for reporting.

  08 Dec 2011; Davide Pesavento <pesa@gentoo.org> package.mask:
  Update x11-libs/qt mask.

  07 Dec 2011; Maxim Koltsov <maksbotan@gentoo.org> package.mask:
  Unmask app-admin/stow, it now has maintainer, fixed bugs and new version.

  07 Dec 2011; Alexandre Rostovtsev <tetromino@gentoo.org> package.mask:
  spidermonkey-1.9.2.x was renamed to 1.8.2.x; mask 1.9.2.x for bug #393473.

  07 Dec 2011; Ulrich Mueller <ulm@gentoo.org> license_groups:
  Rename EPL to ErlPL-1.1, in order to avoid confusion with the Eclipse Public
  License, bug 389705.

  06 Dec 2011; Andreas K. Huettel <dilfridge@gentoo.org> package.mask:
  Unmask calligra-2.3.84

  06 Dec 2011; Ulrich Mueller <ulm@gentoo.org> license_groups:
  Add UbuntuFontLicense-1.0 to MISC-FREE license group.

  06 Dec 2011; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Unmask netpbm-10.56.00, the distfile has made it to mirrors now. Bug 393231.

  06 Dec 2011; Ulrich Mueller <ulm@gentoo.org> license_groups:
  Add Emacs-23-CEDET-grammars to FSF-APPROVED license group. Add mplus-fonts
  and vlgothic to MISC-FREE, bugs 393303 and 393305.

  06 Dec 2011; Alexis Ballier <aballier@gentoo.org> package.mask:
  mask for removal lyx2html, bug #388987

  06 Dec 2011; Hans de Graaff <graaff@gentoo.org> package.mask:
  Remove ruby-activeldap mask since the problematic version has been removed.

  06 Dec 2011; Samuli Suominen <ssuominen@gentoo.org> thirdpartymirrors:
  Remove unused mirror://transcode with only listing 404's.

  05 Dec 2011; Tomáš Chvátal <scarabeus@gentoo.org> updates/4Q-2011:
  Move app-misc/{dsgui,datovka}

  05 Dec 2011; Eray Aslan <eras@gentoo.org> package.mask:
  Mask dovecot-2.1_rc1 for real

  05 Dec 2011; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  QA: mask unfetchable package.

  04 Dec 2011; Eray Aslan <eras@gentoo.org> package.mask:
  Mask net-mail/dovecot-2.1_rc releases

  03 Dec 2011; Markos Chandras <hwoarang@gentoo.org> license_groups:
  Add matplotlib license to MISC-FREE group. Patch by Arfrever.

  03 Dec 2011; Samuli Suominen <ssuominen@gentoo.org> updates/1Q-2008,
  updates/4Q-2011:
  Move bubblemon from x11-misc to x11-plugins. Remove deprecated slotmove too.

  02 Dec 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite app-arch/squeeze.

  02 Dec 2011; Bernard Cafarelli <voyageur@gentoo.org> package.mask:
  Last rites for sys-devel/llvm-gcc

  02 Dec 2011; Steve Dibb <beandog@gentoo.org> license_groups:
  Add MakeMKV-EULA license for media-video/makemkv

  02 Dec 2011; Torsten Veller <tove@gentoo.org> package.mask:
  Mask dev-perl/DBD-SQLite-1.350.0 for testing

  02 Dec 2011; Bernard Cafarelli <voyageur@gentoo.org> package.mask:
  Drop mask for llvm 3.0 rc packages

  01 Dec 2011; Andreas K. Huettel <dilfridge@gentoo.org> base/package.use.mask:
  Slightly broader xine use-mask

  01 Dec 2011; Andreas K. Huettel <dilfridge@gentoo.org> base/package.use.mask,
  package.mask:
  The phonon xine backend is unmaintained and makes trouble

  01 Dec 2011; Torsten Veller <tove@gentoo.org> package.mask:
  Mask dev-perl/Test-SimpleUnit for removal

  01 Dec 2011; Jeroen Roovers <jer@gentoo.org> package.mask:
  Remove www-client/opera-11.60 mask.

  30 Nov 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite <dev-lang/vala-0.10.

  29 Nov 2011; Tim Harder <radhermit@gentoo.org> package.mask:
  Mask >=media-video/mkvtoolnix-5.1.0 until gcc-4.6 is unmasked.

  29 Nov 2011; Jeremy Olexa <darkside@gentoo.org> package.mask:
  mask cdebootstrap, libdebian-installer for removal in 30 days, bug 387565

  28 Nov 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite indicator-applet.

  28 Nov 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite dev-perl/Gtk2-Sexy and net-misc/twitux wrt #380193

  28 Nov 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  dev-scheme/plt-scheme was removed from gentoo-x86 in favour of
  dev-scheme/racket.

  28 Nov 2011; Alexis Ballier <aballier@gentoo.org> package.mask:
  unmask ffmpeg 0.8, bug #389037

  26 Nov 2011; Andreas K. Huettel <dilfridge@gentoo.org> package.mask:
  Remove obsolete networkmanagement / knetworkmanager mask, bug 391955

  26 Nov 2011; Richard Freeman <rich0@gentoo.org> package.mask:
  Unmask android-sdk-update-manager - can no longer reproduce issue and it may
  be machine-specific.

  26 Nov 2011; Alexandre Rostovtsev <tetromino@gentoo.org>
  targets/desktop/gnome/package.use:
  Enable libsocialweb[vala] (needed for folks[libsocialweb]).

  25 Nov 2011; Alexandre Rostovtsev <tetromino@gentoo.org> package.mask:
  GNOME 3.2 is unmasked!

  25 Nov 2011; Alexandre Rostovtsev <tetromino@gentoo.org>
  targets/desktop/gnome/make.defaults, targets/desktop/gnome/package.use:
  Enable USE="gnome-online-accounts pulseaudio socialweb" and gtk-vnc[gtk3] for
  gnome-3.2, and farsight2[python] and libproxy[python] for msn support in
  empathy.

  24 Nov 2011; Alexandre Rostovtsev <tetromino@gentoo.org> package.mask:
  Unmask gnome-3.2 versions of gjs, gobject-introspection, libpeas, seed, and
  pygobject. Also, unmask gnome-dvb-daemon (since pygobject:3 is unmasked).

  24 Nov 2011; Ian Stakenvicius <axs@gentoo.org> package.mask:
  Unmasked dev-lang/spidermonkey-1.8.5 and non-gnome3 package versions that
  depend on it

  24 Nov 2011; Jeroen Roovers <jer@gentoo.org> package.mask:
  Tweak www-client/opera mask for new snapshots.

  24 Nov 2011; Naohiro Aota <naota@gentoo.org> package.mask:
  Mask app-text/chasen and its reverse dependencies. Bug #390769

  23 Nov 2011; Pacho Ramos <pacho@gentoo.org> package.mask:
  Mask dev-util/monodevelop-boo and dev-util/monodevelop-debugger-mdb for
  removal.

  23 Nov 2011; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Remove mask for removed package app-emacs/rst, bug 384561.

  22 Nov 2011; Torsten Veller <tove@gentoo.org> updates/4Q-2011:
  Move remind from x11-misc to app-misc (#391221)

  22 Nov 2011; Jeroen Roovers <jer@gentoo.org> package.mask:
  Remove old www-client/opera snapshot masks.

  22 Nov 2011; Jeroen Roovers <jer@gentoo.org> package.mask:
  Mask www-client/opera snapshot.

  22 Nov 2011; Pacho Ramos <pacho@gentoo.org> updates/4Q-2011:
  Move net-voip/telepathy-connection-managers to net-im

  22 Nov 2011; Pacho Ramos <pacho@gentoo.org> package.mask:
  Mask dev-python/gtkmozembed-python for removal

  21 Nov 2011; Pacho Ramos <pacho@gentoo.org> package.mask:
  Mask gnome-cups-manager for removal.

  21 Nov 2011; Pacho Ramos <pacho@gentoo.org> package.mask:
  Mask gnome-python metas for removal

  20 Nov 2011; Jonathan Callen <abcd@gentoo.org> updates/4Q-2011:
  Move net-misc/get-flash-videos to media-video/get_flash_videos

  20 Nov 2011; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Add app-accessibility/accerciser-3 to Gnome 3.2 mask.

  20 Nov 2011; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Drop gtetrinet and monster-masher esound related mask.

  20 Nov 2011; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Drop old json-glib mask.

  20 Nov 2011; Andreas K. Huettel <dilfridge@gentoo.org> package.mask:
  remove obsolete pmask of old fwbuilder

  20 Nov 2011; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Add net-libs/gupnp-vala-0.10 to gupnp-0.18 mask.

  20 Nov 2011; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Add >=app-mobilephone/gnome-phone-manager-0.67 to Gnome 3.2 mask.

  20 Nov 2011; Andreas K. Huettel <dilfridge@gentoo.org> package.mask:
  Mask not-yet-released calligra

  20 Nov 2011; Eray Aslan <eras@gentoo.org> package.mask:
  mask mail-filter/libdomainkeys for removal

  20 Nov 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  cowloop is gone

  19 Nov 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Unmask emesene:2 since emesene:1 is broken and abandoned

  19 Nov 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Masking qt-creator-2.4.0_rc

  19 Nov 2011; Jeroen Roovers <jer@gentoo.org> package.mask:
  Removed (bug #377695).

  19 Nov 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite savage2-bin wrt #390919 (incompatible with current media-libs/fmod)

  19 Nov 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite emphetamine, gcursor, gtodo and serpentine for still using gnome-vfs.

  19 Nov 2011; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask unfetchable crossdev.

  18 Nov 2011; Ulrich Mueller <ulm@gentoo.org> license_groups:
  Move all GPL*with*exception* type licenses to the GPL-COMPATIBLE group.
  Remove GPL-2-with-Linden-Lab-FLOSS-exception, it was removed from the tree.

  18 Nov 2011; Anthony G. Basile <blueness@gentoo.org> +hardened/README:
  Added README explaining the deprecation of old hardened/arches profiles

  18 Nov 2011; Anthony G. Basile <blueness@gentoo.org>
  -hardened/amd64/deprecated, -hardened/amd64/make.defaults,
  -hardened/amd64/multilib/deprecated, -hardened/amd64/multilib/make.defaults,
  -hardened/amd64/multilib/package.mask, -hardened/amd64/multilib/parent,
  -hardened/amd64/multilib/use.mask, -hardened/amd64/package.mask,
  -hardened/amd64/package.use.mask, -hardened/amd64/packages,
  -hardened/amd64/parent, -hardened/amd64/profile.bashrc,
  -hardened/amd64/use.mask, -hardened/ia64/deprecated,
  -hardened/ia64/make.defaults, -hardened/ia64/package.mask,
  -hardened/ia64/package.use.mask, -hardened/ia64/packages,
  -hardened/ia64/parent, -hardened/ia64/use.mask, -hardened/make.defaults,
  -hardened/package.mask, -hardened/package.use, -hardened/package.use.mask,
  -hardened/packages, -hardened/packages.build, -hardened/parent,
  -hardened/ppc/README, -hardened/ppc/deprecated, -hardened/ppc/make.defaults,
  -hardened/ppc/package.mask, -hardened/ppc/package.use.mask,
  -hardened/ppc/packages, -hardened/ppc/parent, -hardened/ppc/use.mask,
  -hardened/ppc64/README, -hardened/ppc64/deprecated,
  -hardened/ppc64/make.defaults, -hardened/ppc64/package.mask,
  -hardened/ppc64/package.use.mask, -hardened/ppc64/packages,
  -hardened/ppc64/parent, -hardened/ppc64/use.mask, -hardened/use.mask,
  -hardened/x86/2.6/deprecated, -hardened/x86/2.6/profile.bashrc,
  -hardened/x86/deprecated, -hardened/x86/make.defaults,
  -hardened/x86/minimal/deprecated, -hardened/x86/minimal/make.defaults,
  -hardened/x86/minimal/parent, -hardened/x86/minimal/use.mask,
  -hardened/x86/package.mask, -hardened/x86/package.use,
  -hardened/x86/package.use.mask, -hardened/x86/packages, -hardened/x86/parent,
  -hardened/x86/use.mask:
  Removed deprecated hardened/arches profiles in favor of hardened/linux/arches

  18 Nov 2011; Tony Vroon <chainsaw@gentoo.org> package.mask:
  Module load failure was due to a rapid wrapper restart followed by a layer 9
  problem in troubleshooting. No mask required.

  18 Nov 2011; Mike Frysinger <vapier@gentoo.org> package.mask:
  Move grub2 masking to the ebuild.

  17 Nov 2011; Anthony G. Basile <blueness@gentoo.org> profiles.desc:
  Removed old selinux profiles from profiles description

  17 Nov 2011; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
  package.mask:
  Drop mask for xf86-video-intel development releases.

  17 Nov 2011; Jeroen Roovers <jer@gentoo.org> package.mask:
  Mask www-client/opera snapshot.

  17 Nov 2011; <atlantis@gentoo.org> arch/mips/make.defaults,
  arch/sh/make.defaults, base/make.defaults,
  features/32bit-native/make.defaults, features/32bit-userland/make.defaults,
  features/64bit-native/make.defaults, features/multilib/make.defaults,
  hardened/linux/amd64/make.defaults,
  hardened/linux/amd64/no-multilib/make.defaults,
  hardened/linux/ia64/make.defaults, hardened/linux/make.defaults,
  hardened/linux/powerpc/ppc32/make.defaults,
  hardened/linux/powerpc/ppc64/make.defaults,
  hardened/linux/x86/10.0/make.defaults, hardened/linux/x86/make.defaults,
  hardened/make.defaults, uclibc/make.defaults,
  uclibc/mips/hardened/make.defaults,
  uclibc/mips/mipsel/hardened/make.defaults, uclibc/ppc/hardened/make.defaults,
  uclibc/x86/hardened/make.defaults:
  Rename STAGE1_USE to BOOTSTRAP_USE, add "cxx unicode" to the base value on
  base/make.defaults
  and make it stack from derived profiles. This should allow gcc to build on
  stage 2 - bug 390701.

  16 Nov 2011; Tony Vroon <chainsaw@gentoo.org> package.mask:
  Mask 10 branch of Asterisk due to module loading issues on hardened.

  16 Nov 2011; Christoph Junghans <ottxor@gentoo.org> package.mask:
  Added =www-plugins/google-talkplugin-9999 to package.mask

  15 Nov 2011; Lars Wendler <polynomial-c@gentoo.org> package.mask:
  Removed seamonkey-bin from p.mask. It has a new maintainer.

  15 Nov 2011; Ian Stakenvicius <axs@gentoo.org> package.mask:
  added mask for app-accessibility/edbrowse-3.4.8 (needs currently-masked
  spidermonkey-1.8.5)

  14 Nov 2011; Mike Frysinger <vapier@gentoo.org> use.desc:
  Mark USE=nocxx as "do not use anymore".

  14 Nov 2011; Markos Chandras <hwoarang@gentoo.org> license_groups:
  Add BSD-1 to MISC-FREE group

  14 Nov 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  fix bug number for kmuddy

  14 Nov 2011; Lars Wendler <polynomial-c@gentoo.org> package.mask:
  www-client/seamonkey-bin: Masked for removal in 30 days due to lack of active
  maintainer (bug #390541).

  14 Nov 2011; Nirbheek Chauhan <nirbheek@gentoo.org> package.mask:
  Remove weave from package.mask, it has been removed from the tree

  13 Nov 2011; Alexandre Rostovtsev <tetromino@gentoo.org> package.mask:
  Masking app-accessibility/gnome-mousetrap for removal (bug #389979)

  13 Nov 2011; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Add gupnp-igd to the gupnp mask.

  13 Nov 2011; Sebastian Pipping <sping@gentoo.org> package.mask:
  Unmask ~media-gfx/blender-2.60a

  13 Nov 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  masking games-mud/kmuddy for removal. Bug #371451

  13 Nov 2011; Sebastian Pipping <sping@gentoo.org> package.mask:
  Mask ~media-gfx/blender-2.60a for bug #390427

  13 Nov 2011; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
  package.mask:
  Update mask for xf86-video-intel development releases.

  13 Nov 2011; Alin Năstac <mrness@gentoo.org> package.mask:
  Lastrite net-mail/vmailmgr

  13 Nov 2011; Ulrich Mueller <ulm@gentoo.org> license_groups:
  Add Apache-1.1 and MPL-1.0 to OSI-APPROVED license group.

  12 Nov 2011; Ulrich Mueller <ulm@gentoo.org> license_groups:
  Remove nauty from EULA group. This has previously been discussed in
  <http://archives.gentoo.org/gentoo-dev/
  msg_8da5109782ab2cbd717c1ea6c7a622e1.xml>.

  12 Nov 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite wxGTK and wxpython 2.6 wrt #330683

  12 Nov 2011; Aaron W. Swenson <titanofold@gentoo.org> package.mask:
  dev-db/pgadmin3: Now stable upstream. Removed beta mask.

  12 Nov 2011; Ulrich Mueller <ulm@gentoo.org> license_groups:
  Remove gmtp from MISC-FREE as it's gone from the tree, bug 390229.

  12 Nov 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite net-p2p/bittornado.

  11 Nov 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite dev-util/boa-constructor and dev-python/pythoncard.

  11 Nov 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Remove entries for fixed xfce4-weather-plugin and removed xpilot-ng,
  londonlaw, conspire.

  11 Nov 2011; Jeroen Roovers <jer@gentoo.org> package.mask:
  Mask new opera 11.60 snapshot.

  11 Nov 2011: Patrick Kursawe <phosphan@gentoo.org> desc/sane_backends.desc:
  Added pnm backend description.

  10 Nov 2011; Bernard Cafarelli <voyageur@gentoo.org> package.mask:
  Add dragonegg to llvm release candidate mask

  09 Nov 2011; Tomáš Chvátal <scarabeus@gentoo.org> package.mask:
  Remove libo mask.

  09 Nov 2011; Bernard Cafarelli <voyageur@gentoo.org> package.mask:
  Mask release candidates for llvm 3.0

  09 Nov 2011; Andreas K. Huettel <dilfridge@gentoo.org> package.mask:
  Mask x11-themes/polyester for removal

  09 Nov 2011; Patrick McLean <chutzpah@gentoo.org>
  arch/alpha/package.use.mask, arch/arm/package.use.mask,
  arch/powerpc/ppc64/64ul/package.use.mask:
  Add net-dns/dnsmasq conntrack to package.use.mask on ppc64/64ul, arm and
  alpha as net-libs/libnetfilter_conntrack is not available.

  08 Nov 2011; William Hubbs <williamh@gentoo.org> package.mask:
  remove udev 174 from the mask since it is now gone from the tree.

  08 Nov 2011; William Hubbs <williamh@gentoo.org> package.mask:
  add udev-175 to the udev mask.

  08 Nov 2011; Nathan Phillip Brink <binki@gentoo.org> package.mask:
  Drop the indefinite mask on net-irc/atheme-services requested by upstream
  which has changed its policy. Mask the development releases of
  net-irc/atheme-services.

  07 Nov 2011; Ulrich Mueller <ulm@gentoo.org> license_groups:
  Add AGPL-3, APSL-2, as-is, CPAL-1.0, DB, EUPL-1.1, LPPL-1.3c, NOSA, OFL-1.1,
  OracleDB, PHP-3, PHP-3.01, POSTGRESQL, and W3C to OSI-APPROVED. Remove
  LPPL-1.3c, PHP-3, and POSTGRESQL from MISC-FREE. Remove PSF-2.2, PSF-2.3,
  PSF-2.4, and PYTHON from OSI-APPROVED.

  07 Nov 2011; Alexis Ballier <aballier@gentoo.org> package.mask:
  remove mask for texlive packages that are now gone

  07 Nov 2011; William Hubbs <williamh@gentoo.org> package.mask:
  adjust udev mask to cover all revisions of udev-174.

  06 Nov 2011; Peter Volkov <pva@gentoo.org> package.mask:
  net-wireless/madwifi-old{,-tools} removed from the tree, see #362827 for
  reference.

  06 Nov 2011; Michał Górny <mgorny@gentoo.org> package.mask:
  Add systemd to the new udev mask.

  06 Nov 2011; Ulrich Mueller <ulm@gentoo.org> license_groups:
  Remove PHP from OSI-APPROVED and kilgard, MaxMind, and No-Problem-Bugroff
  from MISC-FREE, as they are all gone from the tree. Move EPL (Erlang license)
  to MISC-FREE, as it is not OSI-APPROVED.

  06 Nov 2011; William Hubbs <williamh@gentoo.org> package.mask:
  mask udev-174

  05 Nov 2011; Ulrich Mueller <ulm@gentoo.org> license_groups:
  Move zpaq from GPL-COMPATIBLE to MISC-FREE license group, as it is not
  approved by the FSF.

  05 Nov 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Unmask openbox and obconf snapshots

  05 Nov 2011; Vadim Kuznetsov <vadimk@gentoo.org> package.mask:
  Masked <app-emulation/vmware-{player-3.1.5,workstation-7.1.5}

  04 Nov 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Remove entries for removed pkgs like xfce4-xfapplet-plugin and some
  GTK+-1.2.x reverse dependencies.

  04 Nov 2011; Vlastimil Babka <caster@gentoo.org> package.mask:
  Unmask jdk-7 and jre-7 now that icedtea-7 is in tree.

  04 Nov 2011; Robin H. Johnson <robbat2@gentoo.org> license_groups:
  Document why arj/freedist/lha cannot be in MISC-FREE.

  04 Nov 2011; Ulrich Mueller <ulm@gentoo.org> license_groups:
  Remove arj, freedist, and lha from MISC_FREE license group, as these are not
  free software licenses.

  04 Nov 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask xfce4-weather-plugin because the datafeed is no longer available.

  04 Nov 2011; Jeroen Roovers <jer@gentoo.org> package.mask:
  Masked www-client/opera snapshots.
  http://my.opera.com/desktopteam/blog/2011/11/04/opera-11-60

  04 Nov 2011; Alexis Ballier <aballier@gentoo.org> package.mask:
  mask prerelease of vlc 1.2

  03 Nov 2011; Mike Gilbert <floppym@gentoo.org> package.mask:
  Update dev channel mask for www-client/google-chrome-17.

  03 Nov 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org> package.mask:
  Unmask www-client/chromium-16 (now in beta) and corresponding v8 version and
  dev-lang/nacl-toolchain-newlib, and mask chromium-17 and corresponding v8
  version.

  03 Nov 2011; Hans de Graaff <graaff@gentoo.org> package.mask:
  Mask new version of dev-ruby/rake for testing.

  02 Nov 2011; Alexandre Rostovtsev <tetromino@gentoo.org> license_groups:
  Add CCPL-Attribution-2.5 to FREE-DOCUMENTS license group, acked by robbat2.

  02 Nov 2011; Tomáš Chvátal <scarabeus@gentoo.org> package.mask:
  Bump the lo rc version.

  02 Nov 2011; Lars Wendler <polynomial-c@gentoo.org> package.mask:
  Removed mask for libcap-2.22 again.

  02 Nov 2011; Amadeusz Żołnowski <aidecoe@gentoo.org> updates/4Q-2011:
  Move app-text/notmuch to net-mail/notmuch.

  02 Nov 2011; Lars Wendler <polynomial-c@gentoo.org> package.mask:
  Masked libcap-2.22 until source tarball is available (bug #389291).

  01 Nov 2011; Samuli Suominen <ssuominen@gentoo.org> use.desc:
  Remove description for unused USE="v4l2"

  31 Oct 2011; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
  package.mask:
  Unmask qutecom, mask xf86-video-intel rc

  31 Oct 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Mask qt-4.8 packages

  30 Oct 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite dev-scheme/plt-scheme wrt #389041.

  30 Oct 2011; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask new (experimental) luajit ebuild.

  30 Oct 2011; Vlastimil Babka <caster@gentoo.org> updates/4Q-2011:
  Package move icedtea6-bin to icedtea-bin.

  30 Oct 2011; Andreas K. Huettel <dilfridge@gentoo.org> updates/4Q-2011:
  Package move kde-misc/knetworkmanager > kde-misc/networkmanagement, following
  upstream

  30 Oct 2011; Andreas K. Huettel <dilfridge@gentoo.org> package.mask:
  Add new name of knetworkmanager before move

  30 Oct 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask candycrisis, stoned-bin, racer-bin, and dark-oberon with
  =media-libs/fmod-3* for security #294253.

  30 Oct 2011; Alexandre Rostovtsev <tetromino@gentoo.org> package.mask:
  Final (hopefully) update for the gnome-3.2 mask. Also, unmask yelp-xsl: it
  doesn't depend on anything masked and shouldn't collide with gnome-2.

  30 Oct 2011; Alexandre Rostovtsev <tetromino@gentoo.org> package.mask:
  Add >=libgdata-0.9 to the gnome-3.2 mask (significant API changes).

  30 Oct 2011; Alexandre Rostovtsev <tetromino@gentoo.org> package.mask:
  Add tracker-0.12, gnome-contacts, gnome-documents, nautilus-tracker-tags, and
  sushi to the gnome-3.2 mask.

  29 Oct 2011; Alexandre Rostovtsev <tetromino@gentoo.org> package.mask:
  Mask gnome-online-accounts for gnome-3.2.

  28 Oct 2011; Alexandre Rostovtsev <tetromino@gentoo.org> package.mask:
  Add gnome-3.2 versions of libpeas, clutter, and cogl to p.mask.

  28 Oct 2011; Alexandre Rostovtsev <tetromino@gentoo.org> package.mask:
  Unmasking gtk+-3.2 and friends (including atk-2); acked by Nirbheek.

  28 Oct 2011; Alexandre Rostovtsev <tetromino@gentoo.org>
  targets/desktop/gnome/make.defaults:
  Add colord to gnome default USE for desktop-wide color management.

  27 Oct 2011; Thomas Kahle <tomka@gentoo.org> package.mask:
  Remove x11-misc/ktsuss entry, package removed (security bug 381115)

  27 Oct 2011; Jeroen Roovers <jer@gentoo.org> updates/4Q-2011:
  Move dev-libs/libnl to new SLOTs.

  27 Oct 2011; MATSUU Takuto <matsuu@gentoo.org> package.mask:
  Mask >=sys-devel/distcc-3.2_rc1

  27 Oct 2011; Nirbheek Chauhan <nirbheek@gentoo.org> +eapi:
  Allow usage of EAPI 1 in profiles as per council decision on 20111011

  27 Oct 2011; Alexandre Rostovtsev <tetromino@gentoo.org> updates/4Q-2011:
  Slotmove gkt2-based gtkspell to 2 in preparation for gtkspell-3.

  26 Oct 2011; Pacho Ramos <pacho@gentoo.org> package.mask:
  Unmask gthumb-2.14

  26 Oct 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org>
  base/packages, prefix/windows/winnt/packages:
  [profiles] Drop app-arch/cpio from system set - fixes bug 382633.

  26 Oct 2011; Jeroen Roovers <jer@gentoo.org> package.mask:
  Unmask dev-libs/libnl now that it is SLOTted (bug #342461).

  25 Oct 2011; Tomáš Chvátal <scarabeus@gentoo.org> package.mask:
  Fix the version for lo, it is 3.4.4.1

  25 Oct 2011; Tomáš Chvátal <scarabeus@gentoo.org> package.mask:
  Mask libreoffice 3.4.4.0

  24 Oct 2011; Pacho Ramos <pacho@gentoo.org> arch/alpha/package.use.mask,
  arch/ia64/package.use.mask:
  Mask map empathy USE flag on some arches due missing keywords, bug 388367

  24 Oct 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org> package.mask:
  Unmask v8-3.5.x, mask v8-3.6.x.

  23 Oct 2011; Alexandre Rostovtsev <tetromino@gentoo.org> package.mask:
  Mask office-runner (requires gnome-settings-daemon-3).

  23 Oct 2011; Robin H. Johnson <robbat2@gentoo.org> license_groups:
  Intel-SDP should be in @EULA license group.

  23 Oct 2011; Robin H. Johnson <robbat2@gentoo.org> package.mask:
  Remove dnetc mask, verbump and works here.

  23 Oct 2011; Christian Faulhammer <fauli@gentoo.org> package.mask:
  Lift mask for app-misc/gramps, well tested now

  23 Oct 2011; Fabian Groffen <grobian@gentoo.org> updates/4Q-2011:
  Drop move dev-php5/dev-php5/pecl-ssh2 dev-php/dev-php5/pecl-ssh2 from
  Q4-2011, because it is an invalid atom that breaks Portage

  22 Oct 2011; Hans de Graaff <graaff@gentoo.org> package.mask:
  Remove dev-ruby/rubygems mask now that all needed targets are supported.

  22 Oct 2011; Hans de Graaff <graaff@gentoo.org> desc/ruby_targets.desc:
  Add description for the Rubinius target.

  22 Oct 2011; Matt Turner <mattst88@gentoo.org> use.desc:
  Add ARM's iwmmxt USE flag to use.desc.

  22 Oct 2011; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask qemu-kvm/seabios: they should not use egit for an ~arch ebuild.

  21 Oct 2011; Alexandre Rostovtsev (tetromino) <tetromino@gmail.com>
  package.mask:
  Mask >=vte-0.30 (requires gtk+-3.2).

  21 Oct 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Change =pciutils-3.1.7-r1 mask to >=pciutils-3.1.7-r1 wrt #388027.

  21 Oct 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask notify-osd >= 0.9.32 next to required gtk+ >= 3.2.

  21 Oct 2011; Alexandre Rostovtsev <tetromino@gentoo.org>
  targets/desktop/gnome/package.use:
  Default to USE="-gnutls nss" for curl (needed for liboauth with default
  flags, which in turn is needed for gnome-3.2).

  20 Oct 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  unmask boost-1.47.0

  20 Oct 2011; Hans de Graaff <graaff@gentoo.org> base/package.use.force:
  Force correct USE flags for virtual/rubygems versions.

  20 Oct 2011; Hans de Graaff <graaff@gentoo.org> package.mask:
  Add new virtual/rubygems to the ruby 1.9 mask.

  20 Oct 2011; Stefan Briesenick <sbriesen@gentoo.org> package.mask:
  masked net-misc/x25_utils for removal

  20 Oct 2011; Vadim Kuznetsov <vadimk@gentoo.org> package.mask:
  removed vmware-server lines

  20 Oct 2011; Matt Turner <mattst88@gentoo.org> package.mask:
  Mask >=gnome-dvb-daemon-0.2.3 until pygobject:3 is unmasked.

  19 Oct 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  unmask app-laptop/prey www-apps/tt-rss app-misc/recoll

  19 Oct 2011; Alexandre Rostovtsev <tetromino@gentoo.org> package.mask:
  Mask >=nautilus-python-1.0 (will not run without nautilus[introspection],
  which is package.use.masked).

  19 Oct 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Remove now unnecessary entries.

  19 Oct 2011; Richard Freeman <rich0@gentoo.org> package.mask:
  mask latest android sdk until bugs worked out

  19 Oct 2011; Miroslav Šulc <fordfrog@gentoo.org> package.mask:
  Masking app-misc/openjnlp, dev-java/jnlp-bin and dev-java/netx for removal

  19 Oct 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Unmask x11-misc/notification-daemon using x11-libs/gtk+:3.

  19 Oct 2011; Alexandre Rostovtsev <tetromino@gentoo.org> package.mask:
  Mask gtk+-3.2 with dependencies, and pygobject:3 and compatible
  pygobject-2.28.6-r50, in preparation for move from gnome overlay.

  18 Oct 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Masking new snapshots for openbox and obconf

  18 Oct 2011; Jeroen Roovers <jer@gentoo.org> package.mask:
  Fix removal date.

  18 Oct 2011; Jeroen Roovers <jer@gentoo.org> package.mask:
  Mask sys-apps/lsparisc (bug #377695).

  17 Oct 2011; Andreas K. Huettel <dilfridge@gentoo.org> package.mask:
  Remove obsolete pmask of kde-misc/kcm_gtk, see bug 369361

  16 Oct 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Masking sys-fs/cowloop for removal

  16 Oct 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  masking app-misc/dnetc for removal

  16 Oct 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Masking app-admin/stow for removal

  16 Oct 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Masking app-admin/mon for removal. Bug #375071

  15 Oct 2011; Matt Turner <mattst88@gentoo.org> package.mask:
  sys-boot/arcboot is gone from the tree.

  14 Oct 2011; Samuli Suominen <ssuominen@gentoo.org>
  targets/desktop/package.use:
  Remove now unnecessary package.use entry for sys-block/parted and
  USE="device-mapper"

  14 Oct 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  drop mask for lightdm. Time to broader testing

  14 Oct 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Unmask media-gfx/pngcrush since it's using system libpng in >= 1.7.18.

  14 Oct 2011; Tomáš Chvátal <scarabeus@gentoo.org> package.mask:
  Update knetworkmanager mask with proper version.

  13 Oct 2011; Jeroen Roovers <jer@gentoo.org> desc/linguas.desc:
  Add ur and nan linguas.

  13 Oct 2011; Mike Gilbert <floppym@gentoo.org> package.mask:
  Clean up the mask description for net-zope.

  12 Oct 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org> base/package.use.mask:
  Mask pulseaudio USE flag for www-client/chromium. Upstream support is not yet
  ready.

  11 Oct 2011; Jeroen Roovers <jer@gentoo.org> package.mask:
  Remove x11-misc/treeline development mask.

  11 Oct 2011; Tim Harder <radhermit@gentoo.org> package.mask:
  Mask development releases of wordpress.

  10 Oct 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask media-libs/tiff-compat for while.

  10 Oct 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  openocd snapshots are no more

  10 Oct 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Update boost masking

  10 Oct 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Unmask libdvdnav, libdvdread and dvdbackup.

  10 Oct 2011; Fabian Groffen <grobian@gentoo.org> package.mask:
  Drop Exim Release Candidate testing mask

  09 Oct 2011; Joerg Bornkessel <hd_brummy@gentoo.org> thirdpartymirrors:
  added thirtpartymirror vdr-developerorg

  08 Oct 2011; Anthony G. Basile <blueness@gentoo.org> package.mask:
  Mask dev-python/pypax while testing experimental utility

  08 Oct 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Masking pngcrush for using the bundled libpng14 and zlib libraries. See bug
  #356127

  08 Oct 2011; Hanno Boeck <hanno@gentoo.org> package.mask:
  Un-lastrite pngcrush.

  08 Oct 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Drop qbitorrent entry

  08 Oct 2011; Fabian Groffen <grobian@gentoo.org> package.mask:
  Mask upcoming Exim 4.77 release candidates

  08 Oct 2011; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Remove pcsc-lite mask.

  08 Oct 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite media-gfx/pngcrush.

  07 Oct 2011; Jeremy Olexa <darkside@gentoo.org> targets/desktop/package.use:
  Provide a better user experience on desktop profiles by enabling python
  useflag on dev-libs/libxml2, bug 385843

  06 Oct 2011; Alexis Ballier <aballier@gentoo.org> package.mask:
  unmask new janestreet ocaml packages

  06 Oct 2011; Alexis Ballier <aballier@gentoo.org> package.mask:
  ptex is gone, almost one year after its last rites

  06 Oct 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite londonlaw and xpilot-ng.

  06 Oct 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask crystalspace-1.2 and cel-1.2 for wxGTK-2.6 removal wrt #330683

  06 Oct 2011; Alexis Ballier <aballier@gentoo.org> package.mask:
  Mask new bin-prot

  06 Oct 2011; Alexis Ballier <aballier@gentoo.org> package.mask:
  mask new type-conv

  06 Oct 2011; Jeremy Olexa <darkside@gentoo.org> use.desc:
  Update 'doc' description to enhance end user experience

  06 Oct 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org> package.mask:
  Mask dev-lang/nacl-toolchain-newlib.

  05 Oct 2011; Alexis Ballier <aballier@gentoo.org> base/package.use.mask:
  mask media-libs/libass[harfbuzz] as it does not build with the current
  version in the tree

  05 Oct 2011; Jeremy Olexa <darkside@gentoo.org> default/linux/make.defaults:
  Remove USE={python,perl} from default profile, as discussed/announced. Bug
  250179

  05 Oct 2011; Alexis Ballier <aballier@gentoo.org> updates/4Q-2011:
  move obsolete texlive packages to their new names, as suggested by Matt
  Turner on -dev ml

  05 Oct 2011; Alexis Ballier <aballier@gentoo.org> package.mask:
  mask dev-texlive/texlive-documentation-greek

  05 Oct 2011; Alexis Ballier <aballier@gentoo.org> package.mask:
  mask dev-texlive/texlive-langarab

  05 Oct 2011; Alexis Ballier <aballier@gentoo.org> package.mask:
  mask dev-texlive/texlive-langukenglish

  05 Oct 2011; Alexis Ballier <aballier@gentoo.org> package.mask:
  mask for removal dev-texlive/texlive-psutils

  04 Oct 2011; Pacho Ramos <pacho@gentoo.org> base/package.use.mask,
  package.mask:
  Mask g-d-u -r300 with the rest of Gnome3 stuff, letting us to drop nautilus
  use mask.

  04 Oct 2011; Tomáš Chvátal <scarabeus@gentoo.org> +updates/4Q-2011:
  Move libtextcat to libexttextcat.

  04 Oct 2011; Hans de Graaff <graaff@gentoo.org> package.mask:
  Mask ruby-activeldap-1.2.1 until bug 384827 has been done.

  03 Oct 2011; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
  package.mask:
  Add mask for net-im/qutecom

  02 Oct 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org>
  targets/developer/make.defaults:
  Remove FEATURES=stricter from developer profile, it's counter-productive and
  people disable it anyway.

  02 Oct 2011; Richard Freeman <rich0@gentoo.org> package.mask:
  Taking over cfg-update maintainership.

  01 Oct 2011; Peter Volkov <pva@gentoo.org> package.mask:
  Hard mask net-wireless/madwifi-old{,-tools}, pending removal on 2011-11-02.

  01 Oct 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Unmask gnome-disk-utility >= 3 and gvfs >= 1.8.

  01 Oct 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Masking cfg-update for removal

  30 Sep 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Update message for lightdm

  30 Sep 2011; Samuli Suominen <ssuominen@gentoo.org> use.desc:
  Fix USE="v4l" and USE="v4l2" description.

  30 Sep 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Remove entries for pkgs removed because of not building against
  linux-headers-2.6.38.

  29 Sep 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite xfce4-xfapplet-plugin.

  29 Sep 2011; Mike Gilbert <floppym@gentoo.org> package.mask:
  Copy descriptive text for google-chrome mask from chromium

  28 Sep 2011; Samuli Suominen <ssuominen@gentoo.org> use.desc:
  Import description for USE="libffi".

  28 Sep 2011; Justin Bronder <jsbronder@gentoo.org> package.mask:
  Add dev-perl/perl-PBS to mask for <sys-cluster/torque-2.4

  28 Sep 2011; Justin Bronder <jsbronder@gentoo.org> package.mask:
  Add mask for <sys-cluster/torque-2.4.

  27 Sep 2011; Andreas K. Huettel <dilfridge@gentoo.org> package.mask:
  Preepmtive package mask of soprano-2.[67].1, should anyone bump it. KDE
  advises not to use these as they introduce major breakage.

  27 Sep 2011; Arun Raghavan <ford_prefect@gentoo.org> package.mask:
  Remove pulseaudio/pavucontrol 0.99 from package.mask -- these versions are
  gone now.

  27 Sep 2011; Arun Raghavan <ford_prefect@gentoo.org>
  arch/amd64/package.use.mask, arch/x86/package.use.mask,
  base/package.use.mask:
  Mask "orc" USE flag on media-sound/pulseaudio except on amd64/x86.

  27 Sep 2011; Samuli Suominen <ssuominen@gentoo.org>
  targets/desktop/package.use:
  Enable USE="apng" for media-libs/libpng by default wrt #372419 by Sebastian
  Pipping

  27 Sep 2011; Mike Gilbert <floppym@gentoo.org> package.mask:
  Update google-chrome dev channel mask.

  26 Sep 2011; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Mask app-emacs/rst for removal.

  26 Sep 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Masking app-misc/recoll for testing

  26 Sep 2011; Pacho Ramos <pacho@gentoo.org> arch/powerpc/package.use.mask:
  Mask xvid in media-video/miro due missing keywords, bug #372245

  26 Sep 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Mask boost-1.47

  25 Sep 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Update qbittorrent entry

  25 Sep 2011; Thomas Kahle <tomka@gentoo.org> package.mask:
  Mask x11-misc/ktsuss for removal (security bug 381115)

  24 Sep 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org> package.mask:
  Unmask www-client/chromium-15.x, mask 16.x.

  23 Sep 2011; Jeremy Olexa <darkside@gentoo.org> use.desc:
  use.desc: Add emphasis that python/perl USE flags are optional

  23 Sep 2011; Arun Raghavan <ford_prefect@gentoo.org> package.mask:
  Masking media-sound/pavucontrol pre-releases

  23 Sep 2011; Ulrich Mueller <ulm@gentoo.org> updates/3Q-2011:
  Slotmove net-wireless/iwl1000-ucode-128.50.3.1 from 0 to 3.

  22 Sep 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Unmask freeradius

  21 Sep 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Masking qbittorrent beta releases

  19 Sep 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  masking app-laptop/prey for testing

  19 Sep 2011; Michał Górny <mgorny@gentoo.org> thirdpartymirrors:
  Add thirdpartymirrors entry for github, as the currently used URL may change
  in future.

  19 Sep 2011; Mike Frysinger <vapier@gentoo.org> package.mask:
  Punt openafs masks now that things are out of pre stage.

  19 Sep 2011; Tim Harder <radhermit@gentoo.org> package.mask:
  Mask development releases of app-misc/task.

  18 Sep 2011; Anthony G. Basile <blueness@gentoo.org> package.mask:
  Mask sys-apps/elfix while testing experimental utility

  18 Sep 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Remove entry for sys-apps/hal and app-misc/hal-info.

  18 Sep 2011; Tomáš Chvátal <scarabeus@gentoo.org> package.mask:
  update pmask for gnutls.

  18 Sep 2011; Mounir Lamouri <volkmar@gentoo.org> package.mask:
  pmask www-plugins/weave for removal.

  17 Sep 2011; Joerg Bornkessel <hd_brummy@gentoo.org> package.mask:
  pmask live ebuild media-plugins/xbmc-addon-xvdr-9999

  17 Sep 2011; Aaron W. Swenson <titanofold@gentoo.org> package.mask:
  Pre-release versions removed from tree.

  17 Sep 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Insert app-pda/gtkpod >= 2.1.0 mask next to required dev-util/anjuta >= 3
  dependency.

  17 Sep 2011; Joerg Bornkessel <hd_brummy@gentoo.org> package.mask:
  masked live ebuild media-plugins/vdr-xvdr-9999

  17 Sep 2011; Joerg Bornkessel <hd_brummy@gentoo.org> package.mask:
  rmoved pmask vdr-pvrinput, fixed on bump

  17 Sep 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Prepare masks for lightdm and webmin

  17 Sep 2011; Tomáš Chvátal <scarabeus@gentoo.org> base/package.use.mask:
  Cleanup base.use.mask

  16 Sep 2011; Mike Gilbert <floppym@gentoo.org> package.mask:
  Update Arfrever's email address

  15 Sep 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite net-ftp/ftpcube wrt #201314, #330683

  15 Sep 2011; Joerg Bornkessel <hd_brummy@gentoo.org> package.mask:
  removed pmask for media-plugins/vdr-pvr350, fixed on bump

  15 Sep 2011; Joerg Bornkessel <hd_brummy@gentoo.org> package.mask:
  changed pmask for =media-plugins/vdr-avards-0.2.2

  15 Sep 2011; Mike Gilbert <floppym@gentoo.org> package.mask:
  Mask net-zope category at Arfrever's request

  14 Sep 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Remove entry for gpixpod which was removed from tree.

  14 Sep 2011; Peter Volkov <pva@gentoo.org> package.mask:
  Drop mask for net-analyzer/wireshark-1.6.0_rc*.

  13 Sep 2011; Pacho Ramos <pacho@gentoo.org> package.mask:
  Clean old entries.

  13 Sep 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite xdtv, video-entropyd, qutecom, vdr-pvr350, SDLcam, vdr-avards,
  vdr-atmo, vdr-pvrinput and gnomeradio.

  12 Sep 2011; Pacho Ramos <pacho@gentoo.org> arch/alpha/package.use.mask,
  arch/arm/package.use.mask, arch/ia64/package.use.mask,
  arch/powerpc/package.use.mask, arch/sparc/package.use.mask:
  Mask dts USE flag for gst-plugins-meta.

  11 Sep 2011; Pacho Ramos <pacho@gentoo.org> package.mask:
  Mask >=gnome-extra/nautilus-sendto-3.0 with the rest of Gnome3 as it isn't
  compatible with 2.32 gnome-bluetooth, bug 381267.

  11 Sep 2011; Vlastimil Babka <caster@gentoo.org> package.mask:
  Mask jdk/jre 1.7 until icedtea7 is ready, bug #382485.

  11 Sep 2011; Michał Górny <mgorny@gentoo.org> base/package.use.mask:
  Unmask systemd[audit] as audit-2 is no longer masked, bug #372865.

  11 Sep 2011; Robin H. Johnson <robbat2@gentoo.org> package.mask:
  Remove sys-process/audit mask.

  09 Sep 2011; Mike Frysinger <vapier@gentoo.org> package.mask:
  Posted coreutils patch tarball -> remove mask.

  09 Sep 2011; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask coreutils as unfetchable.

  09 Sep 2011; Robin H. Johnson <robbat2@gentoo.org> thirdpartymirrors:
  Temporarily remove kernel.org as a Gentoo mirror until they finish rebuilding
  servers.

  09 Sep 2011; Mike Frysinger <vapier@gentoo.org> package.mask:
  Posted gdb patch tarball -> remove gdb mask.

  08 Sep 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  qt-creator-2.3.0_beta is no more

  08 Sep 2011; Vlastimil Babka <caster@gentoo.org> license_groups:
  Add Oracle-BCLA-JavaSE to @EULA group.

  07 Sep 2011; Patrick McLean <chutzpah@gentoo.org>
  arch/alpha/package.use.mask, arch/powerpc/package.use.mask,
  arch/sparc/package.use.mask:
  Mask ffmpegsource USE flag for media-video/x264-encoder on ppc, sparc
  and alpha due to missing keywords for media-libs/ffmpegsource

  07 Sep 2011; Alexis Ballier <aballier@gentoo.org> package.mask:
  mask new sexplib

  07 Sep 2011; Ole Markus With <olemarkus@gentoo.org> package.mask:
  Masked roadsend-php for removal

  07 Sep 2011; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Remove masks on removed packages.

  07 Sep 2011; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask gdb 7.3.1, remove mask on removed package.

  06 Sep 2011; Matt Turner <mattst88@gentoo.org> package.mask:
  dev-libs/libots is gone

  04 Sep 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  app-emulation/frodo and net-misc/vget are gone

  02 Sep 2011; Nirbheek Chauhan <nirbheek@gentoo.org> package.mask:
  Mask gnome-user-share-3.0

  01 Sep 2011; Tomáš Chvátal <scarabeus@gentoo.org> package.mask:
  Unmask libreoffice-3.4.3

  31 Aug 2011; Andreas K. Huettel <dilfridge@gentoo.org>
  targets/desktop/kde/package.use:
  KDE does not need qt-sql[mysql] anymore, bug 380945

  01 Sep 2011; Magnus Granberg <zorry@gentoo.org> hardened/linux/make.default
  Add pax_kernel as default on

  31 Aug 2011; Alexey Shvetsov <alexxy@gentoo.org> arch/alpha/package.use.mask,
  arch/ia64/package.use.mask, arch/powerpc/package.use.mask,
  arch/sparc/package.use.mask:
  Mask numa use flag for hwloc on alpha ia64 ppc and sparc

  31 Aug 2011; Tomáš Chvátal <scarabeus@gentoo.org> updates/3Q-2011:
  Slotmove grub2 from 0 to 2 to awoid collisions with old grub2 ebuilds that
  were incoherent with their slot.

  31 Aug 2011; Sebastian Pipping <sping@gentoo.org> package.mask:
  Mask upcoming ~media-gfx/gimp-2.7.3

  31 Aug 2011; Pacho Ramos <pacho@gentoo.org> package.mask:
  Mask net-irc/conspire for removal

  31 Aug 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org> package.mask:
  Unmask dev-lang/v8-3.4, mask v8-3.5.

  29 Aug 2011; Christian Faulhammer <fauli@gentoo.org> package.mask:
  unmask Bazaar 2.4

  29 Aug 2011; William Hubbs <williamh@gentoo.org> package.mask:
  remove mask for app-accessibility/speechd since it has been removed for bug
  #360067.

  28 Aug 2011; Tomáš Chvátal <scarabeus@gentoo.org> package.mask:
  Mask ExtUtils-ParseXS until bug #378783 is sorted out.

  28 Aug 2011; Eray Aslan <eras@gentoo.org> package.mask:
  Remove mask for app-crypt/heimdal-1.5_pre*. No longer in the tree.

  28 Aug 2011; Eray Aslan <eras@gentoo.org> package.mask:
  Remove mask for net-mail/freepops. No longer in the tree.

  28 Aug 2011; Mike Gilbert <floppym@gentoo.org> package.mask:
  Mask www-client/google-chrome-15 (dev channel)

  27 Aug 2011; Andreas K. Huettel <dilfridge@gentoo.org> updates/3Q-2011:
  Move kde-misc/smaragd to x11-themes/smaragd (it is a kwin theme engine)

  27 Aug 2011; Mike Gilbert <floppym@gentoo.org> license_groups:
  Add EULA for www-client/google-chrome

  27 Aug 2011; Andreas K. Huettel <dilfridge@gentoo.org> package.mask:
  Mask kde-misc/kcm_gtk for removal

  28 Aug 2011; Tomáš Chvátal <scarabeus@gentoo.org> package.mask:
  Add p.mask entry for grub-1.99.

  28 Aug 2011; Tomáš Chvátal <scarabeus@gentoo.org>
  desc/grub_platforms.desc:
  Split efi platform to efi-32 and efi-64 as efi-32 is not almost used.

  27 Aug 2011; Patrick Lauer <patrick@gentoo.org> package.mask:
  Removing phoronix-test-suite from php 5.2 mask

  27 Aug 2011; Michał Górny <mgorny@gentoo.org> license_groups, repo_name:
  Add zpaq (modified MIT) to the list of GPL-COMPATIBLE licenses.

  27 Aug 2011; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
  package.mask:
  Drop mask for xorg-server 1.11 prereleases

  25 Aug 2011; Matt Turner <mattst88@gentoo.org> package.mask:
  Mask sys-boot/arcboot for removal.

  25 Aug 2011; Hanno Boeck <hanno@gentoo.org> license_groups:
  Add zpaq license to MISC-FREE.

  25 Aug 2011; Tomáš Chvátal <scarabeus@gentoo.org> package.mask:
  Punt my old pmask entries.

  23 Aug 2011; Anthony G. Basile <blueness@gentoo.org>
  hardened/linux/amd64/no-multilib/package.mask:
  Fix masking on hardened/linux/amd64/no-multilib, should be opencv, not ipp

  23 Aug 2011; Anthony G. Basile <blueness@gentoo.org>
  +hardened/linux/amd64/no-multilib/package.mask:
  Masked shadowgrounds-bin and ipp on hardened/linux/amd64/no-multilib

  22 Aug 2011; Anthony G. Basile <blueness@gentoo.org> profiles.desc:
  Marking hardened/*/selinux profiles stable

  22 Aug 2011; Andreas K. Huettel <dilfridge@gentoo.org>
  desc/calligra_features.desc:
  Update calligra component descriptions

  22 Aug 2011; Mark Loeser <halcy0n@gentoo.org> package.mask:
  Add app-benchmarks/phoronix-test-suite to the php-5.2 mask as it depends on
  dev-php5/php-gtk

  22 Aug 2011; Ole Markus With <olemarkus@gentoo.org> base/use.mask:
  Mask the php5-2 target so we do not break RDEPEND

  21 Aug 2011; Ole Markus With <olemarkus@gentoo.org> package.mask:
  Masking php:5.2

  21 Aug 2011; Ole Markus With <olemarkus@gentoo.org> package.mask:
  Masking beta versions of pecl-memcached

  21 Aug 2011; Amadeusz Żołnowski <aidecoe@gentoo.org>
  desc/dracut_modules.desc:
  'livenet' added to dracut_modules.

  21 Aug 2011; Andreas K. Huettel <dilfridge@gentoo.org> package.mask:
  Mask net-libs/libfwbuilder for removal

  20 Aug 2011; Alexis Ballier <aballier@gentoo.org> package.mask:
  mask dev-tex/pdftex

  19 Aug 2011; Kacper Kowalik <xarthisius@gentoo.org> package.mask:
  mask sys-block/iscsi-initiator-core-tools for removal

  19 Aug 2011; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Removed app-text/gnochm from tree.

  17 Aug 2011; Justin Lecher <jlec@gentoo.org> package.mask:
  Correct: Invalid atom in profiles/package.mask:
  >=app-office/libreoffice-3.4.3*

  17 Aug 2011; Tomáš Chvátal <scarabeus@gentoo.org> package.mask:
  Mask RCs for 3.4.3 libreoffice release

  16 Jul 2008; Raúl Porcel <armin76@gentoo.org>
  +default/linux/x86/2008.0/no-nptl/deprecated:
  Deprecate the no-nptl profile

  16 Aug 2011; Jeroen Roovers <jer@gentoo.org> package.mask:
  Mask >=net-libs/libecap-0.2.0 (bug #379343).

  16 Aug 2011; Sebastian Pipping <sping@gentoo.org> package.mask:
  app-text/xmlstarlet-1.0.3 now gone from the tree - remove mask

  16 Aug 2011; Sebastian Pipping <sping@gentoo.org> package.mask:
  Unmask sys-block/open-iscsi-2.0.872 as requested (bug #340425)

  16 Aug 2011; Nirbheek Chauhan <nirbheek@gentoo.org> package.mask:
  Unmask some GNOME 3 libraries that are either slotted, or safe

  16 Aug 2011; Christian Faulhammer <fauli@gentoo.org> package.mask:
  Add bzr-explorer to >=2.3 Bazaar mask

  15 Aug 2011; Mike Frysinger <vapier@gentoo.org> package.mask:
  Distfile posted -> package unmasked.

  15 Aug 2011; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask gnuconfig that has missing distfile.

  15 Aug 2011; Jeremy Olexa <darkside@gentoo.org> thirdpartymirrors:
  fix ftp.halifax.rwth-aachen.de entry

  15 Aug 2011; Andreas K. Huettel <dilfridge@gentoo.org> package.mask:
  Add package.mask for knetworkmanager versions requiring ~networkmanager-0.9

  15 Aug 2011; Nirbheek Chauhan <nirbheek@gentoo.org> package.mask:
  Remove modemmanager from mask, it works with the 0.8 series too

  14 Aug 2008; Raúl Porcel <armin76@gentoo.org>
  -default/linux/x86/2008.0/no-nptl/deprecated, -default/linux/x86/2008.0/no-nptl/parent:
  Remove no-nptl

  14 Aug 2011; Markus Meier <maekke@gentoo.org>
  default/linux/arm/10.0/armv4/desktop/gnome/parent,
  default/linux/arm/10.0/armv4/desktop/kde/parent,
  default/linux/arm/10.0/armv4t/desktop/gnome/parent,
  default/linux/arm/10.0/armv4t/desktop/kde/parent,
  default/linux/arm/10.0/armv5te/desktop/gnome/parent,
  default/linux/arm/10.0/armv5te/desktop/kde/parent,
  default/linux/arm/10.0/armv6j/desktop/gnome/parent,
  default/linux/arm/10.0/armv6j/desktop/kde/parent,
  default/linux/arm/10.0/armv7a/desktop/gnome/parent,
  default/linux/arm/10.0/armv7a/desktop/kde/parent:
  fix gnome/kde parents in arm subprofiles, spotted by mr_bones_

  14 Aug 2011; Markus Meier <maekke@gentoo.org>
  +default/linux/arm/10.0/armv4/desktop/eapi,
  +default/linux/arm/10.0/armv4/desktop/gnome/eapi,
  +default/linux/arm/10.0/armv4/desktop/gnome/parent,
  +default/linux/arm/10.0/armv4/desktop/kde/eapi,
  +default/linux/arm/10.0/armv4/desktop/kde/parent,
  +default/linux/arm/10.0/armv4/desktop/parent,
  +default/linux/arm/10.0/armv4/developer/eapi,
  +default/linux/arm/10.0/armv4/developer/parent,
  +default/linux/arm/10.0/armv4/eapi, +default/linux/arm/10.0/armv4/parent,
  +default/linux/arm/10.0/armv4/server/eapi,
  +default/linux/arm/10.0/armv4/server/parent,
  +default/linux/arm/10.0/armv4t/desktop/eapi,
  +default/linux/arm/10.0/armv4t/desktop/gnome/eapi,
  +default/linux/arm/10.0/armv4t/desktop/gnome/parent,
  +default/linux/arm/10.0/armv4t/desktop/kde/eapi,
  +default/linux/arm/10.0/armv4t/desktop/kde/parent,
  +default/linux/arm/10.0/armv4t/desktop/parent,
  +default/linux/arm/10.0/armv4t/developer/eapi,
  +default/linux/arm/10.0/armv4t/developer/parent,
  +default/linux/arm/10.0/armv4t/eapi, +default/linux/arm/10.0/armv4t/parent,
  +default/linux/arm/10.0/armv4t/server/eapi,
  +default/linux/arm/10.0/armv4t/server/parent,
  +default/linux/arm/10.0/armv5te/desktop/eapi,
  +default/linux/arm/10.0/armv5te/desktop/gnome/eapi,
  +default/linux/arm/10.0/armv5te/desktop/gnome/parent,
  +default/linux/arm/10.0/armv5te/desktop/kde/eapi,
  +default/linux/arm/10.0/armv5te/desktop/kde/parent,
  +default/linux/arm/10.0/armv5te/desktop/parent,
  +default/linux/arm/10.0/armv5te/developer/eapi,
  +default/linux/arm/10.0/armv5te/developer/parent,
  +default/linux/arm/10.0/armv5te/eapi, +default/linux/arm/10.0/armv5te/parent,
  +default/linux/arm/10.0/armv5te/server/eapi,
  +default/linux/arm/10.0/armv5te/server/parent,
  +default/linux/arm/10.0/armv6j/desktop/eapi,
  +default/linux/arm/10.0/armv6j/desktop/gnome/eapi,
  +default/linux/arm/10.0/armv6j/desktop/gnome/parent,
  +default/linux/arm/10.0/armv6j/desktop/kde/eapi,
  +default/linux/arm/10.0/armv6j/desktop/kde/parent,
  +default/linux/arm/10.0/armv6j/desktop/parent,
  +default/linux/arm/10.0/armv6j/developer/eapi,
  +default/linux/arm/10.0/armv6j/developer/parent,
  +default/linux/arm/10.0/armv6j/eapi, +default/linux/arm/10.0/armv6j/parent,
  +default/linux/arm/10.0/armv6j/server/eapi,
  +default/linux/arm/10.0/armv6j/server/parent,
  +default/linux/arm/10.0/armv7a/desktop/eapi,
  +default/linux/arm/10.0/armv7a/desktop/gnome/eapi,
  +default/linux/arm/10.0/armv7a/desktop/gnome/parent,
  +default/linux/arm/10.0/armv7a/desktop/kde/eapi,
  +default/linux/arm/10.0/armv7a/desktop/kde/parent,
  +default/linux/arm/10.0/armv7a/desktop/parent,
  +default/linux/arm/10.0/armv7a/developer/eapi,
  +default/linux/arm/10.0/armv7a/developer/parent,
  +default/linux/arm/10.0/armv7a/eapi, +default/linux/arm/10.0/armv7a/parent,
  +default/linux/arm/10.0/armv7a/server/eapi,
  +default/linux/arm/10.0/armv7a/server/parent, profiles.desc:
  add armv4, armv4t, armv5re, armv6j and armv7a subprofiles

  14 Aug 2011; Nirbheek Chauhan <nirbheek@gentoo.org> package.mask:
  Add libgweather to GNOME 3 mask

  13 Aug 2011; Anthony G. Basile <blueness@gentoo.org> base/package.mask,
  features/selinux/package.mask, selinux/package.mask:
  Added maskings and unmaskings for sys-libs/libsepol

  12 Aug 2011; Tomáš Chvátal <scarabeus@gentoo.org> base/make.defaults:
  Add grub_platforms by default empty to the make_defaults, this is preparation
  for my grub2 ebuilds.

  12 Aug 2011; Tomáš Chvátal <scarabeus@gentoo.org>
  desc/grub_platforms.desc:
  Add loongson to the list of grub platforms.

  12 Aug 2011; Ole Markus With <olemarkus@gentoo.org> package.mask:
  Added another RC to PHP 5.3.7

  11 Aug 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org> package.mask:
  Unmask www-client/chromium-14.x, mask www-client/chromium-15.x

  11 Aug 2011; Ulrich Mueller <ulm@gentoo.org> updates/3Q-2011:
  Package move app-editors/gentoo-editor to app-misc/editor-wrapper.

  10 Aug 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  dhcpv6 is gone

  09 Aug 2011; Samuli Suominen <ssuominen@gentoo.org> -gcc2/deprecated,
  -default/linux/x86/gcc2/parent, -default/linux/x86/vserver/deprecated,
  -default/linux/x86/vserver/parent:
  Remove gcc2 and vserver wrt #361133

  09 Aug 2011; Andreas K. Huettel <dilfridge@gentoo.org> updates/3Q-2011:
  Move kde-misc/steamcompanion to correct SLOT 4

  09 Aug 2011; Samuli Suominen <ssuominen@gentoo.org>
  -features/no-nptl/package.mask, -features/no-nptl/packages,
  -features/no-nptl/use.mask, -hardened/linux/x86/10.0/no-nptl/deprecated,
  -hardened/linux/x86/10.0/no-nptl/parent, -hardened/linux/x86/no-nptl/parent:
  Remove no-nptl profiles because there is no sys-libs/glibc < 2.6 available.

  09 Aug 2011; Robert Piasek <dagger@gentoo.org> package.mask:
  Updated package mask from RC to final for samba 3.6.0

  09 Aug 2011; Samuli Suominen <ssuominen@gentoo.org>
  -default/linux/arm/2008.0/deprecated,
  -default/linux/arm/2008.0/desktop/deprecated,
  -default/linux/arm/2008.0/desktop/make.defaults,
  -default/linux/arm/2008.0/desktop/parent,
  -default/linux/arm/2008.0/developer/deprecated,
  -default/linux/arm/2008.0/developer/parent, -default/linux/arm/2008.0/parent,
  -default/linux/arm/2008.0/server/deprecated,
  -default/linux/arm/2008.0/server/parent,
  -default/linux/ia64/2008.0/deprecated,
  -default/linux/ia64/2008.0/desktop/deprecated,
  -default/linux/ia64/2008.0/desktop/make.defaults,
  -default/linux/ia64/2008.0/desktop/parent,
  -default/linux/ia64/2008.0/developer/deprecated,
  -default/linux/ia64/2008.0/developer/parent,
  -default/linux/ia64/2008.0/parent,
  -default/linux/ia64/2008.0/server/deprecated,
  -default/linux/ia64/2008.0/server/parent,
  -default/linux/m68k/2008.0/deprecated,
  -default/linux/m68k/2008.0/desktop/deprecated,
  -default/linux/m68k/2008.0/desktop/make.defaults,
  -default/linux/m68k/2008.0/desktop/parent,
  -default/linux/m68k/2008.0/developer/deprecated,
  -default/linux/m68k/2008.0/developer/parent,
  -default/linux/m68k/2008.0/package.mask, -default/linux/m68k/2008.0/parent,
  -default/linux/m68k/2008.0/server/deprecated,
  -default/linux/m68k/2008.0/server/parent,
  -default/linux/mips/2008.0/deprecated,
  -default/linux/mips/2008.0/desktop/deprecated,
  -default/linux/mips/2008.0/desktop/make.defaults,
  -default/linux/mips/2008.0/desktop/parent,
  -default/linux/mips/2008.0/developer/deprecated,
  -default/linux/mips/2008.0/developer/parent,
  -default/linux/mips/2008.0/parent,
  -default/linux/mips/2008.0/server/deprecated,
  -default/linux/mips/2008.0/server/parent,
  -default/linux/powerpc/ppc32/2008.0/deprecated,
  -default/linux/powerpc/ppc32/2008.0/desktop/deprecated,
  -default/linux/powerpc/ppc32/2008.0/desktop/make.defaults,
  -default/linux/powerpc/ppc32/2008.0/desktop/parent,
  -default/linux/powerpc/ppc32/2008.0/developer/deprecated,
  -default/linux/powerpc/ppc32/2008.0/developer/parent,
  -default/linux/powerpc/ppc32/2008.0/parent,
  -default/linux/powerpc/ppc32/2008.0/server/deprecated,
  -default/linux/powerpc/ppc32/2008.0/server/parent,
  -default/linux/powerpc/ppc32/2008.0/server/profile.bashrc,
  -default/linux/powerpc/ppc64/2008.0/32bit-userland/deprecated,
  -default/linux/powerpc/ppc64/2008.0/32bit-userland/desktop/deprecated,
  -default/linux/powerpc/ppc64/2008.0/32bit-userland/desktop/make.defaults,
  -default/linux/powerpc/ppc64/2008.0/32bit-userland/desktop/parent,
  -default/linux/powerpc/ppc64/2008.0/32bit-userland/developer/deprecated,
  -default/linux/powerpc/ppc64/2008.0/32bit-userland/developer/parent,
  -default/linux/powerpc/ppc64/2008.0/32bit-userland/parent,
  -default/linux/powerpc/ppc64/2008.0/32bit-userland/server/deprecated,
  -default/linux/powerpc/ppc64/2008.0/32bit-userland/server/parent,
  -default/linux/powerpc/ppc64/2008.0/32bit-userland/server/profile.bashrc,
  -default/linux/powerpc/ppc64/2008.0/64bit-userland/deprecated,
  -default/linux/powerpc/ppc64/2008.0/64bit-userland/desktop/deprecated,
  -default/linux/powerpc/ppc64/2008.0/64bit-userland/desktop/make.defaults,
  -default/linux/powerpc/ppc64/2008.0/64bit-userland/desktop/parent,
  -default/linux/powerpc/ppc64/2008.0/64bit-userland/developer/deprecated,
  -default/linux/powerpc/ppc64/2008.0/64bit-userland/developer/parent,
  -default/linux/powerpc/ppc64/2008.0/64bit-userland/parent,
  -default/linux/powerpc/ppc64/2008.0/64bit-userland/server/deprecated,
  -default/linux/powerpc/ppc64/2008.0/64bit-userland/server/parent,
  -default/linux/powerpc/ppc64/2008.0/64bit-userland/server/profile.bashrc,
  -default/linux/powerpc/ppc64/2008.0/deprecated,
  -default/linux/powerpc/ppc64/2008.0/desktop/deprecated,
  -default/linux/powerpc/ppc64/2008.0/desktop/make.defaults,
  -default/linux/powerpc/ppc64/2008.0/desktop/parent,
  -default/linux/powerpc/ppc64/2008.0/developer/deprecated,
  -default/linux/powerpc/ppc64/2008.0/developer/parent,
  -default/linux/powerpc/ppc64/2008.0/parent,
  -default/linux/powerpc/ppc64/2008.0/server/deprecated,
  -default/linux/powerpc/ppc64/2008.0/server/parent,
  -default/linux/s390/2008.0/deprecated, -default/linux/s390/2008.0/parent,
  -default/linux/s390/2008.0/server/deprecated,
  -default/linux/s390/2008.0/server/parent,
  -default/linux/sh/2008.0/deprecated,
  -default/linux/sh/2008.0/desktop/deprecated,
  -default/linux/sh/2008.0/desktop/make.defaults,
  -default/linux/sh/2008.0/desktop/parent,
  -default/linux/sh/2008.0/developer/deprecated,
  -default/linux/sh/2008.0/developer/parent, -default/linux/sh/2008.0/parent,
  -default/linux/sh/2008.0/server/deprecated,
  -default/linux/sh/2008.0/server/parent,
  -default/linux/sparc/2008.0/deprecated,
  -default/linux/sparc/2008.0/desktop/deprecated,
  -default/linux/sparc/2008.0/desktop/make.defaults,
  -default/linux/sparc/2008.0/desktop/parent,
  -default/linux/sparc/2008.0/developer/deprecated,
  -default/linux/sparc/2008.0/developer/parent,
  -default/linux/sparc/2008.0/packages, -default/linux/sparc/2008.0/parent,
  -default/linux/sparc/2008.0/server/deprecated,
  -default/linux/sparc/2008.0/server/parent,
  -default/linux/sparc/2008.0/use.mask:
  Remove 2008.0 profiles from every arch except amd64 and x86.

  09 Aug 2011; Samuli Suominen <ssuominen@gentoo.org>
  -targets/vserver/packages, -targets/vserver/packages.build:
  Remove unused vserver parent wrt #361133

  09 Aug 2011; Ulrich Mueller <ulm@gentoo.org> uclibc/arm/2.4/package.mask,
  uclibc/arm/armeb/2.4/package.mask, uclibc/ppc/2.4/package.mask,
  uclibc/ppc/hardened/2.4/package.mask, uclibc/sh/2.4/package.mask,
  uclibc/x86/2.4/package.mask, uclibc/x86/2005.1/2.4/package.mask,
  uclibc/x86/hardened/2.4/package.mask:
  Remove mask for >=virtual/linux-sources-2.5 because versioning of the virtual
  will be dropped.

  09 Aug 2011; Zac Medico <zmedico@gentoo.org> -arch/arm/packages,
  arch/arm/package.mask, +arch/ia64/package.mask, -arch/ia64/packages,
  +arch/sh/package.mask, -arch/sh/packages, arch/x86/package.mask,
  -arch/x86/packages, +arch/x86/xbox/package.mask, -arch/x86/xbox/packages,
  -features/gcc2/packages, features/gcc2/package.mask,
  features/selinux/package.mask, features/selinux/packages,
  hardened/amd64/package.mask, hardened/amd64/packages,
  hardened/ia64/package.mask, hardened/ia64/packages,
  hardened/x86/package.mask, hardened/x86/packages,
  releases/10.0/package.mask, -releases/10.0/packages,
  releases/2008.0/package.mask, -releases/2008.0/packages,
  selinux/package.mask, selinux/packages:
  Bug #377907 - Use package.mask for compatibility with PMS section 5.2.7, and
  future versions of sys-apps/portage.

  09 Aug 2011; Zac Medico <zmedico@gentoo.org> +arch/s390/package.mask,
  +default/linux/m68k/10.0/package.mask,
  +default/linux/m68k/2008.0/package.mask, +releases/10.0/package.mask,
  +releases/2008.0/package.mask, -default/linux/m68k/10.0/packages,
  -default/linux/m68k/2008.0/packages, arch/m68k/package.mask,
  arch/m68k/packages, arch/s390/packages, releases/10.0/packages,
  releases/2008.0/packages:
  Bug #377907 - Use package.mask for compatibility with PMS section 5.2.7, and
  future versions of sys-apps/portage.

  09 Aug 2011; Zac Medico <zmedico@gentoo.org> +uclibc/arm/2.4/package.mask,
  +uclibc/arm/armeb/2.4/package.mask, +uclibc/ppc/2.4/package.mask,
  +uclibc/ppc/hardened/2.4/package.mask, +uclibc/sh/2.4/package.mask,
  +uclibc/x86/2.4/package.mask, +uclibc/x86/2005.1/2.4/package.mask,
  +uclibc/x86/hardened/2.4/package.mask, -uclibc/arm/2.4/packages,
  -uclibc/arm/armeb/2.4/packages, -uclibc/ppc/2.4/packages,
  -uclibc/ppc/hardened/2.4/packages, -uclibc/sh/2.4/packages,
  -uclibc/x86/2.4/packages, -uclibc/x86/2005.1/2.4/packages,
  -uclibc/x86/hardened/2.4/packages, uclibc/package.mask, uclibc/packages:
  Bug #377907 - Use package.mask for compatibility with PMS section 5.2.7, and
  future versions of sys-apps/portage.

  08 Aug 2011; Kacper Kowalik <xarthisius@gentoo.org> package.mask:
  Mask sys-fs/unionfs for removal

  07 Aug 2011; Anthony G. Basile <blueness@gentoo.org> base/package.mask,
  features/selinux/package.mask, selinux/package.mask:
  Added maskings and unmaskings for sec-policy/selinux-pan

  07 Aug 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Unmask some raptor:2 reverse dependencies like liblrdf and redland.

  06 Aug 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask sys-apps/hal and app-misc/hal-info

  04 Aug 2011; Tomáš Chvátal <scarabeus@gentoo.org> package.mask:
  Unleash the libreoffice-3.4

  04 Aug 2011; Tomáš Chvátal <scarabeus@gentoo.org> updates/3Q-2011:
  Move media-libs/libwpg to app-text/libwpg even tho it is not text tool the 2
  brothers wpd and wps are there so it is nicer to have all the same libs in
  one place.

  04 Aug 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Masking app-emulation/frodo for removal

  04 Aug 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Masking net-misc/vget for removal

  04 Aug 2011; Matt Turner <mattst88@gentoo.org> package.mask:
  Mask dev-libs/libots for removal.

  03 Aug 2011; Hans de Graaff <graaff@gentoo.org> package.mask:
  Mask dev-ruby/capistrano-launcher as it is no longer needed by capistrano.

  03 Aug 2011; Arun Raghavan <ford_prefect@gentoo.org> package.mask:
  Mask media-sound/pulseaudio prereleases

  02 Aug 2011; Matt Turner <mattst88@gentoo.org> updates/3Q-2011:
  pkgmove from x11-libs/Xaw3d to x11-libs/libXaw3d.

  01 Aug 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  remove old entries

  31 Jul 2011; Steev Klimaszewsk <steev@gentoo.org> package.mask:


  Mask net-misc/dhcdbd. This package has been obsolete since NetworkManager
  0.7. NetworkManager 0.8 is in the tree as the oldest version so we can remove
  this in 30 days.


  29 Jul 2011; Andreas K. Huettel <dilfridge@gentoo.org> updates/3Q-2011:
  libkmap becomes libkgeomap

  29 Jul 2011; Nirbheek Chauhan <nirbheek@gentoo.org> package.mask:
  Add preliminary GNOME 3 package mask, will be removed after everything is in
  the tree

  29 Jul 2011; Nirbheek Chauhan <nirbheek@gentoo.org>
  features/64bit-native/package.mask:
  Unmask tb/fx/sm-bin on 64bit-native since they now install 64-bit binary
  tarballs on amd64, bug 374757

  29 Jul 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask -r20 of ardour and liblrdf for testing; uses raptor2 instead of raptor

  28 Jul 2011; Alexis Ballier <aballier@gentoo.org> package.mask:
  unleash TeX Live 2011 to ~arch

  28 Jul 2011; Hanno Boeck <hanno@gentoo.org> license_groups:
  Add NCSA-HDF to MISC-FREE license group.

  28 Jul 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org>
  package.mask:
  [package.mask] Update the mysql/mariadb mask.
  Dropped 5.4 from the mask as it's no longer in the tree.
  Added virtual/mysql-5.3 now that mariadb did it's first beta release of
  5.3.0.

  28 Jul 2011; Peter Volkov <pva@gentoo.org> package.mask:
  Unmask =net-analyzer/httping-1.5.1* - it is released and 1.5.1_beta1 dropped
  from the tree.

  28 Jul 2011; Alexis Ballier <aballier@gentoo.org> package.mask:
  mask TeX Live 2011 for testing

  27 Jul 2011; Andreas K. Huettel <dilfridge@gentoo.org> package.mask:
  Remove kde-4.7 mask as it has been released

  27 Jul 2011; Alexey Shvetsov <alexxy@gentoo.org> package.mask:
  Mask KDE SC 4.7.0 untill official release

  27 Jul 2011; Alexey Shvetsov <alexxy@gentoo.org> arch/arm/package.mask,
  arch/powerpc/package.mask:
  Mask KDE SC 4.7.0 per bug #376613

  27 Jul 2011; Tomáš Chvátal <scarabeus@gentoo.org> package.mask:
  Mask openoffice{,-bin} and wpd2sxw for removal. Substitutes are in main tree.

  25 Jul 2011; Anthony G. Basile <blueness@gentoo.org> base/package.mask,
  features/selinux/package.mask, selinux/package.mask:
  Added maskings and unmaskings for sec-policy/selinux-nginx

  25 Jul 2011; Anthony G. Basile <blueness@gentoo.org> base/package.mask,
  features/selinux/package.mask, selinux/package.mask:
  Added maskings and unmaskings for sec-policy/selinux-haveged

  25 Jul 2011; Anthony G. Basile <blueness@gentoo.org> base/package.mask,
  features/selinux/package.mask, selinux/package.mask:
  Added maskings and unmaskings for sec-policy/selinux-gpg

  25 Jul 2011; Pacho Ramos <pacho@gentoo.org> package.mask:
  Mask dev-libs/libsigc++:1.0 for removal , bug 358587

  25 Jul 2011; Pacho Ramos <pacho@gentoo.org> package.mask:
  Mask net-libs/libicq2000 for removal, bug #358589.

  24 Jul 2011; Doug Goldstein <cardoe@gentoo.org> package.mask:
  Remove MythTV package mask

  24 Jul 2011; Tomáš Chvátal <scarabeus@gentoo.org> package.mask:
  Remove libnc-dap pmask as it is punted from main tree

  24 Jul 2011; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Add json-glib developement releases mask.

  23 Jul 2011; Michał Januszewski <spock@gentoo.org> package.mask:
  Removing mask on nvidia-cuda-profiler (dropped from the tree).

  23 Jul 2011; Maciej Mrozowski <reavertm@gentoo.org>
  arch/amd64/no-multilib/package.mask, hardened/linux/package.mask:
  Mask media-sound/skype-call-recorder on no-multilib and hardened

  23 Jul 2011; Peter Volkov <pva@gentoo.org> package.mask:
  Mask release candidates: dev-libs/guiloader, dev-libs/guiloader-c++ and
  dev-util/crow-designer.

  23 Jul 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  bring net-analyzer/ntop to testing tree

  23 Jul 2011; Hans de Graaff <graaff@gentoo.org> updates/3Q-2011:
  Add slotmoves for dev-ruby/rack-test.

  22 Jul 2011; Thomas Kahle <tomka@gentoo.org> license_groups:
  adding gmtp license to MISC_FREE group

  22 Jul 2011; Pacho Ramos <pacho@gentoo.org> package.mask:
  Update emul mask.

  22 Jul 2011; Christoph Mende <angelos@gentoo.org>
  arch/amd64/package.use.mask:
  Remove invalid USE unmask

  22 Jul 2011; Nathan Phillip Brink <binki@gentoo.org> package.mask:
  Drop net-irc/oer for bug #339545, bug #240918, and upstream abandoning the
  project.

  22 Jul 2011; Nathan Phillip Brink <binki@gentoo.org> package.mask:
  Drop net-irc/oer-mysql abandoned by upstream. bug #332111, bug #354493, and
  bug #252000.

  22 Jul 2011; Nathan Phillip Brink <binki@gentoo.org> package.mask:
  Remove irssi-svn from the list of live ebuilds since it's now called
  irssi-999.

  22 Jul 2011; Nathan Phillip Brink <binki@gentoo.org> updates/3Q-2011:
  Move net-irc/irssi-svn-0.3 to net-irc/irssi-999.

  21 Jul 2011; Pacho Ramos <pacho@gentoo.org> package.mask:
  Remove moonlight mask entry.

  21 Jul 2011; Pacho Ramos <pacho@gentoo.org> package.mask:
  Mask libcanberra version that is prepared to work with Gnome3 dropping gnome2
  support.

  21 Jul 2011; Eray Aslan <eras@gentoo.org> package.mask:
  remove mask for mail-client/smtpclient as it is no longer in the tree

  21 Jul 2011; Eray Aslan <eras@gentoo.org> package.mask:
  remove mask for net-mail/teapop as it is no longer in the tree

  21 Jul 2011; Eray Aslan <eras@gentoo.org> package.mask:
  remove mask for net-mail/signature as it is no longer in the tree.

  21 Jul 2011; Eray Aslan <eras@gentoo.org> package.mask:
  remove mask for net-mail/vm-pop3d as it is no longer in the tree

  20 Jul 2011; Eray Aslan <eras@gentoo.org> package.mask:
  mask net-mail/freepops for removal

  20 Jul 2011; Pacho Ramos <pacho@gentoo.org> package.mask:
  Mask app-portage/meatoo for removal

  20 Jul 2011; Tiziano Müller <dev-zero@gentoo.org> package.mask:
  Remove mask for php-libvirt since that package is gone

  20 Jul 2011; Nathan Phillip Brink <binki@gentoo.org> package.mask:
  Add package.mask for net-irc/atheme-services as requested by atheme upstream.

  19 Jul 2011; Matt Turner <mattst88@gentoo.org> profiles.desc:
  Sort mips profiles by endianness first, alphabetically second.

  19 Jul 2011; Pacho Ramos <pacho@gentoo.org> arch/alpha/package.use.mask,
  arch/arm/package.use.mask, arch/ia64/package.use.mask,
  arch/powerpc/package.use.mask, arch/sparc/package.use.mask:
  Mask 'vcd' and 'dvd' USE flags on different arches not having needed
  dependencies keyworded yet.

  18 Jul 2011; Amadeusz Żołnowski <aidecoe@gentoo.org>
  desc/dracut_modules.desc:
  'crypt-gpg' added to dracut_modules.

  18 Jul 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Masking qt-creator-2.3.0_beta for testing

  17 Jul 2011; Anthony G. Basile <blueness@gentoo.org>
  features/selinux/use.mask:
  Removed x264 use mask on features/selinux

  17 Jul 2011; Pacho Ramos <pacho@gentoo.org> arch/ia64/package.use.mask:
  Mask mms USE flag for gst-plugins-meta on ia64

  17 Jul 2011; Pacho Ramos <pacho@gentoo.org> arch/arm/package.use.mask,
  arch/arm/use.mask, arch/sh/use.mask:
  Move to global mms USE flag.

  17 Jul 2011; Christoph Mende <angelos@gentoo.org> arch/arm/package.use.mask:
  Mask mpd[mms] on arm

  17 Jul 2011; Pacho Ramos <pacho@gentoo.org> use.desc:
  Add mms USE flag description.

  17 Jul 2011; Christian Faulhammer <fauli@gentoo.org> package.mask:
  Add bzr-git to incompatible Bazaar tools...we still wait for bzr-svn to get
  updated

  17 Jul 2011; Christian Faulhammer <fauli@gentoo.org> package.mask:
  Raise version match for Bazaar programs for 2.3 compatability

  17 Jul 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Masking new version of www-apps/tt-rss for testing

  16 Jul 2011; Robin H. Johnson <robbat2@gentoo.org> package.mask:
  Mask sys-libs/db-5.2 for testing. Update db-5.1 mask.

  16 Jul 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org>
  base/packages:
  [base/packages] Drop autotools, flex and bison from system set - fixes bug
  221311.

  16 Jul 2011; Justin Lecher <jlec@gentoo.org> package.mask:
  Unmask sci-libs/mmdb as I found the solution for the inline changes

  15 Jul 2011; Kacper Kowalik <xarthisius@gentoo.org> package.mask:
  Removed obsolete pmask on sys-cluster/pvfs2

  15 Jul 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org>
  base/packages:
  [base/packages] Revert unintentional commit about bug 221311 - will apply it
  later when I finish testing it.

  15 Jul 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org>
  base/packages, package.mask:
  [package.mask] Masked ~dev-db/mariadb-5.1.55 until we get some feedback on
  the unit tests as they build for me but fail for Robin.

  14 Jul 2011; Pacho Ramos <pacho@gentoo.org> package.mask:
  Mask gnome-extra/libgda:3 for removal, bug #252540.

  14 Jul 2011; Eray Aslan <eras@gentoo.org> package.mask:
  remove mask against net-mail/gml. no longer in the tree

  14 Jul 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org>
  default/linux/packages.build:
  Added sys-apps/shadow to packages.build as we need it on stage1.

  13 Jul 2011; Justin Lecher <jlec@gentoo.org> package.mask:
  mask dev-tcltk/tkimg-1.5*, fails with libjpeg-turbo on tests

  11 Jul 2011; Nirbheek Chauhan <nirbheek@gentoo.org>
  arch/amd64/no-multilib/package.mask:
  Unmask tb/fx/sm-bin on no-multilib since they now install 64-bit binary
  tarballs on amd64, bug 374757

  11 Jul 2011; Anthony G. Basile <blueness@gentoo.org>
  -selinux/v2refpolicy/package.mask, features/selinux/package.mask:
  Removed unnecessary maskings of sec-policy/selinux-*-3

  11 Jul 2011; Tiziano Müller <dev-zero@gentoo.org> package.mask:
  Removed qemu-kvm-spice.

  10 Jul 2011; Aaron W. Swenson <titanofold@gentoo.org> package.mask:
  Added mask for beta release of pgadmin3

  10 Jul 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Masking net-misc/dhcpv6 for removal in 30 days

  08 Jul 2011; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask newest pcsc-lite/ccid as they don't seem to work reliably.

  07 Jul 2011; Eray Aslan <eras@gentoo.org> package.mask:
  remove postfix-2.8.4_rc entry. no longer in the tree

  06 Jul 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite www-plugins/moonlight.

  06 Jul 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Remove mask entry for dev-python/cgal-python which isn't in gentoo-x86
  anymore.

  06 Jul 2011; Alexis Ballier <aballier@gentoo.org> package.mask:
  unmask ocaml-3.12.1

  06 Jul 2011; Andreas Proschofsky <suka@gentoo.org> package.mask:
  Mask LibreOffice 3.4.1 for some additional testing

  06 Jul 2011; Alexis Ballier <aballier@gentoo.org> profiles.desc:
  add gfbsd 8.2 profiles to profiles.desc

  05 Jul 2011; Jeroen Roovers <jer@gentoo.org> package.mask:
  Mask >=dev-python/pyparted-3.8 (bug #370163).

  04 Jul 2011; Hans de Graaff <graaff@gentoo.org> +updates/3Q-2011:
  Slot move rack-mount into slots. Start new quarter file.

  03 Jul 2011; Anthony G. Basile <blueness@gentoo.org> hardened/linux/packages:
  Added sys-apps/paxctl to system for hardened profiles

  03 Jul 2011; <halcyon@gentoo.org> arch/amd64/package.use.mask,
  arch/x86/package.use.mask, base/package.use.mask:
  Move infiniband package.use.mask to the profiles that unmask the flag

  03 Jul 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  sys-fs/evms is gone

  03 Jul 2011; Nirbheek Chauhan <nirbheek@gentoo.org> package.mask:
  Remove old spidermonkey-2.0 mask, add 1.8.5 mask for new js185 release

  02 Jul 2011; Eray Aslan <eras@gentoo.org> package.mask:
  remove mask entry for amavisd-new-2.7.0_rc*. No longer in the tree

  01 Jul 2011; Alexey Shvetsov <alexxy@gentoo.org> +desc/ofed_drivers.desc,
  -desc/openib_drivers.desc, base/make.defaults:
  Rename OPENIB_DRIVERS to OFED_DRIVERS to follow upstream names

  01 Jul 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  app-text/notecase will stay

  01 Jul 2011; Jory A. Pratt <anarchy@gentoo.org> package.mask:
  unmasking >=mail-client/thunderbird-3.3_alpha3

  01 Jul 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  masking app-text/notecase for removal

  01 Jul 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  masking app-crypt/steghide for removal

  01 Jul 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  masking app-emulation/pearpc for removal

  01 Jul 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  masking app-emulation/gdb-armulator for removal

  01 Jul 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Masking pcmcia-cs suite for removal. Bug #236286

  01 Jul 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  masking net-libs/clinkcc for removal

  01 Jul 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Masking app-arch/upm for removal. bug #371157

  01 Jul 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Remove entries for spiralmodular and hrktorrent

  30 Jun 2011; Alexey Shvetsov <alexxy@gentoo.org> desc/openib_drivers.desc:
  Add one more device to openib_drivers

  30 Jun 2011; Alexey Shvetsov <alexxy@gentoo.org> +desc/openib_drivers.desc,
  base/ChangeLog, base/make.defaults, base/package.use.mask, categories,
  use.desc:
  Add OPENIB_DRIVERS to USE_EXPAND and its descriptins. Add infiniband use flag
  to global one since many packages can use it

  30 Jun 2011; Anthony G. Basile <blueness@gentoo.org> hardened/linux/use.mask:
  Use masked opencl on hardened, bug #367225

  29 Jun 2011; Pacho Ramos <pacho@gentoo.org> targets/desktop/make.defaults:
  Enable 'cdda' by default as most desktop users will want it like 'cdr' and
  prevents people from having to manually enable it for sound-juicer.

  29 Jun 2011; Pacho Ramos <pacho@gentoo.org> ChangeLog:
  Mask for removal in 30 days x11-libs/gtksourceview:1.0 and reverse
  dependencies, bug #354241

  29 Jun 2011; Justin Lecher <jlec@gentoo.org> package.mask:
  Mask mmdb and coot due to ABI/API breakage

  29 Jun 2011; Justin Lecher <jlec@gentoo.org> package.mask:
  Unmask sci-libs/mmdb, seems fine now

  29 Jun 2011; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
  package.mask:
  Unmask xorg-drivers-1.11

  28 Jun 2011; Matt Turner <mattst88@gentoo.org> profiles.desc:
  Remove mips sys/ profiles and add multilib profiles to profiles.desc

  28 Jun 2011; Ole Markus With <olemarkus@gentoo.org> package.mask:
  Mask php 5.4 alpha versions and above

  28 Jun 2011; Tony Vroon <chainsaw@gentoo.org> package.mask:
  The replacement package is net-misc/gogoc, not net-misc/gogo6. As pointed out
  by Evesong on #gentoo.

  28 Jun 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org>
  default/linux/packages.build, hardened/packages.build:
  Added sys-apps/makedev and sys-fs/udev to packages.build for default/linux
  and hardened profiles.
  This will allow stages to have devices and udev in sysinit runlevel - bug
  368597.

  27 Jun 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Remove entries for packages removed in favour completing bug #359595.

  27 Jun 2011; Justin Lecher <jlec@gentoo.org> package.mask:
  Mask sci-chemistry/webmo - Only available version upstream isn't in the tree

  26 Jun 2011; Alexis Ballier <aballier@gentoo.org> package.mask:
  mask ocamlduce built against ocaml 3.12.1 rc

  26 Jun 2011; Alexis Ballier <aballier@gentoo.org> package.mask:
  Mask release candidate of ocaml

  26 Jun 2011; Alexis Ballier <aballier@gentoo.org> package.mask:
  unmask ocamlnet 3.3

  25 Jun 2011; Hans de Graaff <graaff@gentoo.org> package.mask:
  Mask forthcoming rubygems 1.8.x releases for testing.

  23 Jun 2011; Michał Górny <mgorny@gentoo.org> base/package.use.mask:
  Mask sys-apps/systemd[audit] due to masked >=sys-process/audit-2.

  23 Jun 2011; Tomáš Chvátal <scarabeus@gentoo.org> package.mask:
  Mask just 0.7 release. Not the pre or the live ebuild.

  23 Jun 2011; Alexis Ballier <aballier@gentoo.org> package.mask:
  mask ffmpeg 0.8

  22 Jun 2011; Michał Górny <mgorny@gentoo.org> package.mask:
  Unmask systemd.

  22 Jun 2011; Justin Lecher <jlec@gentoo.org> default/linux/make.defaults:
  Add fortran to default USE again in order to avoid direct installation of
  ifc, #372513

  21 Jun 2011; Justin Lecher <jlec@gentoo.org> default/linux/make.defaults:
  Remove fortran from default USE, this is now handled by virtual/fortran and
  fortran-2.eclass

  21 Jun 2011; Eray Aslan <eras@gentoo.org> package.mask:
  Mask prerelease app-crypt/heimdal-1.5_pre*

  21 Jun 2011; Tomáš Chvátal <scarabeus@gentoo.org> package.mask:
  Mask libav 0.7 release instead of rc as lots still does not compile.

  21 Jun 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  media-libs/sdl-gui and net-p2p/ghostwhitecrab are gone

  20 Jun 2011; Peter Volkov <pva@gentoo.org> package.mask:
  Mask dev-util/oprofile-0.9.7 release candidate

  19 Jun 2011; Hans de Graaff <graaff@gentoo.org> updates/2Q-2011:
  Add slotmoves for dev-ruby/deprecated.

  19 Jun 2011; Hans de Graaff <graaff@gentoo.org> updates/2Q-2011:
  Fix slotmoves for dev-ruby/arel.

  19 Jun 2011; Anthony G. Basile <blueness@gentoo.org> base/package.mask,
  features/selinux/package.mask, package.mask, selinux/package.mask,
  selinux/v2refpolicy/package.mask:
  Unmasked sec-policy/selinux-policykit, bug #371441

  18 Jun 2011; Andreas K. Huettel <dilfridge@gentoo.org> package.mask:
  Mask cups-1.5, too new and still needs a lot of testing

  18 Jun 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org>
  package.mask:
  Update Robin's earlier mask of mysql-5.2 to add mask for mariadb-5.2*.

  18 Jun 2011; Eray Aslan <eras@gentoo.org> package.mask:
  Mask mail-client/smtpclient for removal

  18 Jun 2011; Eray Aslan <eras@gentoo.org> package.mask:
  Mask net-mail/teapop for removal

  18 Jun 2011; Eray Aslan <eras@gentoo.org> package.mask:
  Mask mail-mta/postfix-2.8.4_rc* release candidates

  18 Jun 2011; Torsten Veller <tove@gentoo.org> package.mask:
  Mask =dev-lang/perl-5.14*

  18 Jun 2011; Torsten Veller <tove@gentoo.org> package.mask:
  Remove bugzilla EOL mask - versions were removed

  18 Jun 2011; Hans de Graaff <graaff@gentoo.org> updates/2Q-2011:
  Move incompatible versions of dev-ruby/arel into slots.

  17 Jun 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org> package.mask:
  Unmask www-client/chromium-13 and corresponding v8 versions.

  17 Jun 2011; Ole Markus With <olemarkus@gentoo.org> package.mask:
  Masking php-5.3.7 release candidates

  17 Jun 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org> package.mask:
  Mask www-client/chromium-14 and dev-lang/v8-3.4 dev channel releases.

  16 Jun 2011; Stanislav Ochotnicky <sochotnicky@gentoo.org> updates/2Q-2011:
  Moving dev-ruby/fromcvs to dev-vcs/fromcvs

  16 Jun 2011; Peter Volkov <pva@gentoo.org> desc/xtables_addons.desc:
  add xtables_addons_{dnetmap,ipset{4,6}} USE flags descriptions

  16 Jun 2011; Jonathan Callen <abcd@gentoo.org> updates/2Q-2011:
  Fix stupid typos from not reading the output of my scripts

  16 Jun 2011; Anthony G. Basile <blueness@gentoo.org> base/package.mask,
  features/selinux/package.mask, package.mask, selinux/package.mask,
  selinux/v2refpolicy/package.mask:
  Masked sec-policy/selinux-policykit for removal, bug #371441

  15 Jun 2011; Jonathan Callen <abcd@gentoo.org> updates/2Q-2011:
  Add The Great KDE Slot Move: gentoo-x86 Edition

  15 Jun 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Retire gpixpod for bugs 221277 and 351307.

  15 Jun 2011; Tomáš Chvátal <scarabeus@gentoo.org> package.mask:
  Move libav mask from beta to rc.

  15 Jun 2011; Eray Aslan <eras@gentoo.org> package.mask:
  Mask experimental mail-mta/postfix-2.9 releases

  14 Jun 2011; Eray Aslan <eras@gentoo.org> package.mask:
  Mask net-mail/signature for removal

  14 Jun 2011; Eray Aslan <eras@gentoo.org> package.mask:
  Mask net-mail/vm-pop3d for removal

  14 Jun 2011; Nirbheek Chauhan <nirbheek@gentoo.org> package.mask,
  thirdpartymirrors:
  Add GNOME 3.1.x pre-release mask

  13 Jun 2011; Christian Faulhammer <fauli@gentoo.org> package.mask:
  Mask app-misc/gramps 3.3.0 for testing, as the DB will get updated

  13 Jun 2011; Christian Faulhammer <fauli@gentoo.org> package.mask:
  Remove some spurious entries for already removed packages

  12 Jun 2011; Michał Januszewski <spock@gentoo.org> package.mask:
  Masked dev-util/nvidia-cuda-profiler for removal.

  11 Jun 2011; Sergei Trofimovich <slyfox@gentoo.org> package.mask:
  Masked dev-haskell/gtk2hs for removal.

  09 Jun 2011; Theo Chatzimichos <tampakrap@gentoo.org> package.mask:
  Remove KDEPIM 4.5.95 mask, the regular release is now in tree

  09 Jun 2011; Hans de Graaff <graaff@gentoo.org> package.mask:
  Rails 2.2 has been removed.

  09 Jun 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Unmask media-video/setpwc wrt #363469.

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

  08 Jun 2011; Hans de Graaff <graaff@gentoo.org> updates/2Q-2011:
  slotmove versions of dev-ruby/mysql2 into separate slots.

  08 Jun 2011; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask libtirpc 0.2.2 until it can get fixed.

  08 Jun 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org>
  -targets/developer/profile.bashrc:
  Remove "You should enable -g (or higher) for debugging" message from the
  developer profile,
  <http://archives.gentoo.org/gentoo-dev/msg_b3b395864767d6b6f29f55e0911d4431.x
  ml>

  08 Jun 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org> package.mask:
  Unmask dev-lang/v8-3.2.x, needed for a security bump.

  08 Jun 2011; Nathan Phillip Brink <binki@gentoo.org> updates/2Q-2011:
  Rename net-irc/atheme to net-irc/atheme-services to follow upstream's
  package name change.

  07 Jun 2011; Sebastian Pipping <sping@gentoo.org> package.mask:
  Mask upcoming sys-block/open-iscsi-2.0.872 (bug #340425)

  07 Jun 2011; Bernard Cafarelli <voyageur@gentoo.org> package.mask:
  Unmask libobjc2, mask new gnustep-base/gnustep-make depending on it

  06 Jun 2011; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
  package.mask:
  Mask prerelease of xorg-server 1.11

  06 Jun 2011; Andreas K. Huettel <dilfridge@gentoo.org>
  targets/desktop/kde/make.defaults:
  Add more useflags by default to desktop/kde profile, as decided by kde team.
  Bug 365251

  06 Jun 2011; Michał Górny <mgorny@gentoo.org> package.mask:
  Mask sys-apps/systemd before adding.

  05 Jun 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  net-misc/guidedog will stay

  05 Jun 2011; Jeroen Roovers <jer@gentoo.org> package.mask:
  Mask sys-block/parted-3 (bug #370163). Fix two date entries.

  05 Jun 2011; Sergei Trofimovich <slyfox@gentoo.org> package.mask:
  Packages, depending on <ghc-6.10 were removed from the tree. Removed masks.

  05 Jun 2011; Tomáš Chvátal <scarabeus@gentoo.org>
  +desc/grub_platforms.desc:
  Add grub_platforms.desc to describe USE_EXPAND for grub2 (for now used just
  in my dev overlay).

  05 Jun 2011; Hans de Graaff <graaff@gentoo.org> package.mask:
  Add virtual/ruby-threads to the ruby 1.9 mask.

  04 Jun 2011; Eray Aslan <eras@gentoo.org> package.mask:
  Mask net-mail/gml for removal

  04 Jun 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org> package.mask:
  Remove www-client/chromium-bin mask, the package has been removed from the
  tree.

  03 Jun 2011; Tim Harder <radhermit@gentoo.org> package.mask:
  Mask scribus release candidates.

  03 Jun 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Masking sys-fs/evms for removal

  03 Jun 2011; Andreas K. Huettel <dilfridge@gentoo.org> package.mask:
  pmask kbluetooth (requires KDE 4.4)

  02 Jun 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  net-p2p/qbittorrent-2.8.0_rc is gone

  02 Jun 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  quickaccecss wont be removed

  30 May 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Masking media-sound/spiralmodular for removal

  30 May 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Masking net-p2p/hrktorrent for removal

  29 May 2011; Markus Meier <maekke@gentoo.org> package.mask:
  remove hugin mask, final version is in tree

  29 May 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org> desc/linguas.desc:
  Add Filipino (fil) locale,
  https://secure.wikimedia.org/wikipedia/en/wiki/Filipino_language. fil is ISO
  639 code for the Filipino language.

  29 May 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Masking emesene:2

  27 May 2011; Tony Vroon <chainsaw@gentoo.org> package.mask:
  Unmask asterisk 1.8 branch; 1.8.4.1 seems usable.

  26 May 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Masking ntop-4.0.3 for testing. Bug #347393

  26 May 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Masked for testing. Bug #308449

  26 May 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Update qbittorent entry

  25 May 2011; Hans de Graaff <graaff@gentoo.org> package.mask:
  Remove mask for removed package cgi_multipart_eof_fix.

  25 May 2011; MATSUU Takuto <matsuu@gentoo.org> package.mask:
  Unmask ibus packages.

  24 May 2011; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Remove mask for removed app-emacs/psql, bug 364775.

  24 May 2011; Jeroen Roovers <jer@gentoo.org> package.mask:
  Mask www-client/opera-next.

  24 May 2011; Peter Volkov <pva@gentoo.org> package.mask:
  drop mask for net-analyzer/ipac-ng, package was removed from the tree

  24 May 2011; Peter Volkov <pva@gentoo.org> package.mask:
  Mask net-analyzer/wireshark release candidates

  24 May 2011; Denis Dupeyron <calchan@gentoo.org>
  arch/amd64/no-multilib/package.mask, features/64bit-native/package.mask:
  Add games-rpg/nwn-shadowlordsdreamcatcherdemon to
  arch/amd64/no-multilib/package.mask and features/64bit-native/package.mask.

  22 May 2011; Eray Aslan <eras@gentoo.org> package.mask:
  mask mail-filter/amavisd-new-2.7.0 release candidates

  22 May 2011; Eray Aslan <eras@gentoo.org> package.mask:
  mailfilter/amavisd-new-2.7.0_pre* is no longer in the tree.

  22 May 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Masking net-p2p/ghostwhitecrab for removal. Bug #322361

  21 May 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Unmask remina packages

  21 May 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Masking media-libs/sdl-qui for removal. Bug #334779

  21 May 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Masking net-misc/guidedog for removal. Bug #363163

  21 May 2011; Ole Markus With <olemarkus@gentoo.org> base/use.mask,
  desc/php_targets.desc:
  Masking the php5-5 PHP_TARGET

  21 May 2011; Ole Markus With <olemarkus@gentoo.org> package.mask:
  Removed base, centreon and PEAR-Image_Graph from package.mask as they have
  been removed from the tree

  20 May 2011; Peter Volkov <pva@gentoo.org> package.mask:
  drop net-p2p/transmission mask. It's released now.

  19 May 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite spcaview, aatv, camsource, effectv, setpwc, fame, fmio and came for
  linux-headers-2.6.38 wrt #359595.

  19 May 2011; Bernard Cafarelli <voyageur@gentoo.org> package.mask:
  Remove mask on last-rited gnustep-libs/camaelon and
  x11-themes/camaelon-themes

  19 May 2011; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Unmask mod_security 2.6.0.

  18 May 2011; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Remove mask for several removed packages in app-emacs category, bug 358351.

  18 May 2011; Tim Harder <radhermit@gentoo.org> package.mask:
  Mask hugin release candidates.

  17 May 2011; Sebastian Pipping <sping@gentoo.org> package.mask:
  Unmask Blender >=2.57 as Python 3.2 is no longer masked. package.mask

  17 May 2011; Anthony G. Basile <blueness@gentoo.org>
  +features/selinux/make.defaults, +features/selinux/package.mask,
  +features/selinux/package.use.force, +features/selinux/package.use.mask,
  +features/selinux/packages, +features/selinux/profile.bashrc,
  +features/selinux/use.force, +features/selinux/use.mask,
  +features/selinux/virtuals, +hardened/linux/amd64/no-multilib/selinux/parent,
  +hardened/linux/amd64/selinux/parent, +hardened/linux/x86/selinux/parent,
  profiles.desc:
  Added new features/selinux profile. Bug #365483

  16 May 2011; Arfrever Frehtes Taifersar Arahesis <arfrever@gentoo.org>
  package.mask:
  Mask Python 2.7.1-r2.

  16 May 2011; Andreas K. Huettel <dilfridge@gentoo.org> package.mask:
  Removed pmask of sys-apps/linux-gpib, seems to work fine

  16 May 2011; Tomáš Chvátal <scarabeus@gentoo.org> base/make.defaults,
  desc/calligra_features.desc:
  Add more calligra features.

  15 May 2011; Hans de Graaff <graaff@gentoo.org> package.mask:
  Mask forthcoming dev-lang/ruby-enterprise version for testing.

  15 May 2011; Hans de Graaff <graaff@gentoo.org> updates/2Q-2011:
  Slotmove latest cucumber-rails into a new slot.

  15 May 2011; Tomáš Chvátal <scarabeus@gentoo.org>
  +desc/calligra_features.desc, base/make.defaults:
  Add calligra options to the USE_EXPAND and enable all of them by default.

  15 May 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Mask kde-misc/quickaccess for removal

  14 May 2011; Arfrever Frehtes Taifersar Arahesis <arfrever@gentoo.org>
  package.mask:
  Unmask NumPy 1.6.

  14 May 2011; Andreas K. Huettel <dilfridge@gentoo.org> updates/2Q-2011:
  Filelight is now part of kde-base, bug 361199

  14 May 2011; Jim Ramsay <lack@gentoo.org> arch/amd64/package.use.mask:
  Masking USE=kde for www-plugins/adobe-flash under amd64 since the config
  plugin is 32-bit only.

  14 May 2011; Jim Ramsay <lack@gentoo.org> package.mask:
  Removed old adobe-flash versions as foretold in package.mask

  13 May 2011; Arfrever Frehtes Taifersar Arahesis <arfrever@gentoo.org>
  package.mask:
  Unmask Python 3.2.

  13 May 2011; Nathan Phillip Brink <binki@gentoo.org> package.mask:
  Mask net-irc/oer and net-irc/oer-mysql for removal due to no more support
  from upstream and QA issues.

  13 May 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org> package.mask:
  Mask dev-lang/v8-3.3, update reason for masking v8-3.2 (failing tests).

  13 May 2011; Eray Aslan <eras@gentoo.org> package.mask:
  Unmask cyrus-imapd-2.4.8 and cyrus-imap-admin-2.4.8

  13 May 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org> package.mask:
  Mask www-client/chromium-13.x

  11 May 2011; Eray Aslan <eras@gentoo.org> package.mask:
  Mask cyrus-imap-admin-2.4.8. Needs testing first

  10 May 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Remove entry for qt-creator 2.2.0 RC release

  10 May 2011; Andreas K. Huettel <dilfridge@gentoo.org> updates/2Q-2011:
  Move keyjnote to new name impressive, bug 364161

  10 May 2011; Eray Aslan <eras@gentoo.org> package.mask:
  Needs some testing first net-mail/cyrus-imapd-2.4.8

  10 May 2011; Justin Bronder <jsbronder@gentoo.org> package.mask:
  Masking sys-cluster/pvfs2 for removal (#337374)

  09 May 2011; Ulrich Mueller <ulm@gentoo.org> use.desc:
  Restore prefix USE flag, it is used.

  09 May 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org> package.mask:
  Unmask www-client/chromium-12.x, now in the beta channel.

  08 May 2011; Diego E. Pettenò <flameeyes@gentoo.org>
  desc/sane_backends.desc:
  Describe new sane-backends.

  06 May 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Unmasking boost

  06 May 2011; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking app-crypt/scsign for QA removal.

  05 May 2011; Anthony G. Basile <blueness@gentoo.org>
  hardened/linux/package.mask:
  sys-devel/prelink: Masked on hardened, use sys-apps/elfix instead to fix
  gnustack

  05 May 2011; Anthony G. Basile <blueness@gentoo.org> package.mask:
  sys-apps/chpax: Unmasked after discussion, see Bug #365825

  05 May 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org> package.mask:
  Unmask >=sci-mathematics/nusmv-2.5.0. Was hard masked for many months,
  should generally work.

  03 May 2011; Luca Barbato <lu_zero@gentoo.org> package.mask:
  Mask blender-2.57, depends on python-3.2

  03 May 2011; Anthony G. Basile <blueness@gentoo.org> package.mask:
  sys-apps/chpax: Masked for removal in 30 days. Bug #365825

  02 May 2011; Mark Loeser <halcy0n@gentoo.org> package.mask:
  Mask reverse deps of dev-php/PEAR-Image_Graph

  02 May 2011; Jeroen Roovers <jer@gentoo.org> thirdpartymirrors:
  Remove patan.com.ar mirrors.

  01 May 2011; <olemarkus@gentoo.org> package.mask:
  Masking SVN snapshot versions of PHP

  01 May 2011; Fabian Groffen <grobian@gentoo.org> profiles.desc:
  Add Prefix FreeBSD 8.2 x64 profile

  30 Apr 2011; Ulrich Mueller <ulm@gentoo.org> -hardened/linux/virtuals,
  -hardened/virtuals, -uclibc/mips/virtuals, -uclibc/ppc/hardened/virtuals,
  -uclibc/virtuals, -uclibc/x86/hardened/virtuals:
  Remove old-style virtual/linux-sources, bug 118442.

  29 Apr 2011; Nirbheek Chauhan <nirbheek@gentoo.org> package.mask:
  Mask notification-daemon-0.7, GTK3 version

  29 Apr 2011; Kacper Kowalik <xarthisius@gentoo.org> package.mask:
  Mask dev-python/cgal-python for removal in 30 days

  29 Apr 2011; Tomáš Chvátal <scarabeus@gentoo.org>
  targets/desktop/make.defaults:
  Do not profile enable mikmod by default.

  29 Apr 2011; Bernard Cafarelli <voyageur@gentoo.org> package.mask:
  Unmask gnustep base packages with new layout, news item is out

  29 Apr 2011; Ulrich Mueller <ulm@gentoo.org> info_pkgs:
  Add glibc and uclibc wrt bug 364673.

  27 Apr 2011; Christoph Mende <angelos@gentoo.org> package.mask:
  Remove masks for gmpc-{q,osd} and -coveramazon

  26 Apr 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Masking qt-creator-2.2.0_rc1 release. Remove entry for beta release

  26 Apr 2011; Hans de Graaff <graaff@gentoo.org> updates/2Q-2011:
  Slot move builder 3.0.0 into slot 3.

  25 Apr 2011; Christian Faulhammer <fauli@gentoo.org> package.mask:
  mask app-emacs/psql for removal, bug 364775

  25 Apr 2011; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Add gnome-extra/nautilus-open-terminal to Gnome 3 mask.

  24 Apr 2011; <olemarkus@gentoo.org> package.mask:
  Masking dev-php/PEAR-Image_Graph for removal

  24 Apr 2011; Hans de Graaff <graaff@gentoo.org> package.mask:
  Mask dev-ruby/cgi_multipart_eof_fix for removal.

  24 Apr 2011; Gilles Dartiguelongue <eva@gentoo.org> updates/2Q-2011,
  package.mask:
  Add slotmoves for media-libs/libwpg and unmask it with libwpd.

  24 Apr 2011; Gilles Dartiguelongue <eva@gentoo.org> updates/2Q-2011:
  Slotmove libwpd 0.8 and 0.9.

  23 Apr 2011; Theo Chatzimichos <tampakrap@gentoo.org> package.mask:
  Mask KDEPIM 4.6 beta ebuilds

  23 Apr 2011; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Removed games-util/taxidraw and games-misc/jugglemaster.

  23 Apr 2011; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Mask app-text/gnochm for removal.

  23 Apr 2011; Sergei Trofimovich <slyfox@gentoo.org> use.desc:
  Added USE=hscolour (colours sources for haddock documentation)

  22 Apr 2011; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Restrict mask of monster-masher since new revision have been fixed.

  22 Apr 2011; Andreas K. Huettel <dilfridge@gentoo.org> package.mask:
  Remove kdepim-4.4.11.1 package mask

  21 Apr 2011; Andreas K. Huettel <dilfridge@gentoo.org> package.mask:
  Add missing kdepim-l10n

  21 Apr 2011; Andreas K. Huettel <dilfridge@gentoo.org> package.mask:
  Add pmask for kdepim-4.4.11.1

  21 Apr 2011; Bernard Cafarelli <voyageur@gentoo.org> package.mask:
  Last rites for gnustep-libs/camaelon and x11-themes/camaelon-themes

  20 Apr 2011; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
  package.mask:
  Mask prerelase pixman, unmask lightspark

  20 Apr 2011; Ulrich Mueller <ulm@gentoo.org> uclibc/virtuals:
  Remove old-style virtual/libc, bug 359001.

  20 Apr 2011; Bernard Cafarelli <voyageur@gentoo.org> package.mask:
  Mask new gnustep release, testing the transition to new layout

  20 Apr 2011; Peter Volkov <pva@gentoo.org> package.mask:
  Mask beta version of net-analyzer/httping

  20 Apr 2011; Alexis Ballier <aballier@gentoo.org> package.mask:
  mask newest media-libs/celt

  20 Apr 2011; Torsten Veller <tove@gentoo.org> package.mask:
  Remove Moose-2 mask

  20 Apr 2011; Pacho Ramos <pacho@gentoo.org> package.mask:
  Drop libxmlpp mask.

  20 Apr 2011; Pacho Ramos <pacho@gentoo.org> package.mask:
  Mask >=app-text/libwpd-0.9 and >=media-libs/libwpg-0.2 until tree is ready.

  20 Apr 2011; Justin Lecher <jlec@gentoo.org> package.mask:
  Dropped nessus-2.3.1 due to pending removal request, #169466

  19 Apr 2011; Jeroen Roovers <jer@gentoo.org> package.mask:
  Mask net-analyzer/net-snmp-5.6 too.

  19 Apr 2011; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Clean up gnome related masks.

  19 Apr 2011; Jeroen Roovers <jer@gentoo.org> package.mask:
  Mask development versions of argus/-clients.

  19 Apr 2011; <olemarkus@gentoo.org> package.mask:
  Remove package mask of PEAR-File_XSPF and PEAR-XML_Tree now that they have
  been removed from the tree

  19 Apr 2011; Luca Barbato <lu_zero@gentoo.org> package.mask:
  Masked for testing, deprecated api removed since this version

  19 Apr 2011; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask rc versions of ModSecurity.

  18 Apr 2011; Hans de Graaff <graaff@gentoo.org> package.mask:
  IceRuby has been removed.

  18 Apr 2011; Tiziano Müller <dev-zero@gentoo.org> package.mask:
  Removed mask for spice-0.7* since those versions are gone.

  17 Apr 2011; Christian Faulhammer <fauli@gentoo.org> package.mask:
  Mask dev-cpp/libthrowable and dev-portage/gatt for removal

  17 Apr 2011; Christian Faulhammer <fauli@gentoo.org> package.mask:
  Mask mail-client/claws-mail-cachesaver

  17 Apr 2011; Tony Vroon <chainsaw@gentoo.org> package.mask:
  Remove 2.5 alpha mask for audacious.

  16 Apr 2011; Ulrich Mueller <ulm@gentoo.org> +uclibc/package.use,
  -hardened/linux/x86/minimal/virtuals, uclibc/virtuals:
  Remove old-style virtual/ssh. Add USE=minimal for new-style virtual/ssh in
  uclibc profile. Bug 361121.

  16 Apr 2011; Anthony G. Basile <blueness@gentoo.org> base/package.mask,
  selinux/package.mask, selinux/v2refpolicy/package.mask:
  Removed maskings and unmaskings for sec-policy/selinux-hal.

  16 Apr 2011; Anthony G. Basile <blueness@gentoo.org> base/package.mask,
  selinux/package.mask, selinux/v2refpolicy/package.mask:
  Added maskings and unmaskings for sec-policy/selinux-ldap.

  16 Apr 2011; Anthony G. Basile <blueness@gentoo.org> package.mask:
  sec-policy/selinux-hal: Masked for removal in 30 days. Bug #362847

  16 Apr 2011; Aaron W. Swenson <titanofold@gentoo.org> package.mask:
  Removed dev-cpp/libpqpp mask as dev-cpp/libpqpp has been removed from
  tree.

  15 Apr 2011; Ulrich Mueller <ulm@gentoo.org> -uclibc/arm/2.4/virtuals,
  -uclibc/arm/armeb/2.4/virtuals, -uclibc/ppc/2.4/virtuals,
  -uclibc/ppc/hardened/2.4/virtuals, -uclibc/sh/2.4/virtuals,
  -uclibc/x86/2.4/virtuals, -uclibc/x86/2005.1/2.4/virtuals,
  -uclibc/x86/hardened/2.4/virtuals, hardened/virtuals:
  Remove old-style virtual/dev-manager, bug 361133.

  15 Apr 2011; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Remove masks for removed packages.

  15 Apr 2011; Diego E. Pettenò <flameeyes@gentoo.org> license_groups:
  Add SCM-MICRO license to the EULA group.

  15 Apr 2011; Pacho Ramos <pacho@gentoo.org> package.mask:
  Mask media-gfx/gthumb development versions.

  14 Apr 2011; Alexis Ballier <aballier@gentoo.org> package.mask:
  mask beta version of dev-ml/ocamlnet

  14 Apr 2011; Jim Ramsay <lack@gentoo.org> package.mask:
  Mask old unfetchable (Bug #360529) and security-vulnerable (Bug
  #354207,#359019) versions of Adobe flash player.
  Will be removed in a week or so.


  14 Apr 2011; Jeroen Roovers <jer@gentoo.org> package.mask:
  Remove mask for x11-drivers/xf86-video-xgi (bug #348001). Remove remaining
  <xorg-server-1.7.99 masks (bug #344827).

  14 Apr 2011; Jeroen Roovers <jer@gentoo.org> package.mask:
  Remove masks for packages that depend on xorg-server-1.7.99 (bug #344827).

  14 Apr 2011; Jeroen Roovers <jer@gentoo.org> package.mask:
  Remove masks for nvidia-drivers versions that need <xorg-server-1.7.99 (bug
  #344827).

  14 Apr 2011; Torsten Veller <tove@gentoo.org> package.mask:
  Mask dev-perl/Moose-2 for testing

  14 Apr 2011; Ulrich Mueller <ulm@gentoo.org> -default/linux/virtuals,
  hardened/virtuals, info_pkgs, uclibc/mips/virtuals, uclibc/virtuals:
  Remove old-style virtual/os-headers, bug 358999.

  13 Apr 2011; Justin Lecher <jlec@gentoo.org> package.mask:
  Only mask nvidia beta driver

  13 Apr 2011; Tiziano Müller <dev-zero@gentoo.org> package.mask:
  Masked dev-php5/php-libvirt for removal.

  12 Apr 2011; Nirbheek Chauhan <nirbheek@gentoo.org> package.mask:
  Mask metacity-2.34.0, it's supposed to be used only with GNOME 3

  11 Apr 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org>
  base/package.use.mask:
  Remove USE mask for system-v8, it's no longer used.

  11 Apr 2011; Jeroen Roovers <jer@gentoo.org> package.mask:
  Remove www-client/opera mask.

  10 Apr 2011; Christian Faulhammer <fauli@gentoo.org> package.mask:
  All Claws plugins bumped, thus removing mask

  10 Apr 2011; Christian Faulhammer <fauli@gentoo.org> package.mask:
  Mask Claws Mail 3.7.9 and plugins until all are bumped

  10 Apr 2011; Ulrich Mueller <ulm@gentoo.org> -hardened/amd64/virtuals,
  -hardened/linux/powerpc/ppc64/64bit-userland/virtuals,
  -hardened/linux/powerpc/ppc64/virtuals, -hardened/ppc/virtuals,
  -hardened/ppc64/virtuals, -uclibc/amd64/virtuals, -uclibc/ppc/virtuals,
  -uclibc/x86/virtuals, hardened/virtuals, uclibc/mips/virtuals:
  Remove old-style virtual/bootloader, bug 359971.

  10 Apr 2011; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Remove mask from sudo 1.8.1.

  10 Apr 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Mask new qbittorrent beta releases

  09 Apr 2011; Ulrich Mueller <ulm@gentoo.org> default/linux/packages.build:
  Old-style virtual/portage is replaced by new-style virtual/package-manager,
  bug 358847.

  09 Apr 2011; Samuli Suominen <ssuominen@gentoo.org>
  +default/linux/x86/gcc2/deprecated, +default/linux/x86/vserver/deprecated:
  Mark default/linux/x86/gcc2 and default/linux/x86/vserver for deletion wrt
  #361133.

  08 Apr 2011; Tomáš Chvátal <scarabeus@gentoo.org> use.desc:
  Update xinerama description. Users MUST enable it on multiscreen setups. Yes
  even if you use xrandr to stretch your screens it is still required for quite
  few major features...

  08 Apr 2011; Jeroen Roovers <jer@gentoo.org> desc/linguas.desc:
  Add Montenegrin (Crnogorski, me) locale for www-client/opera.

  08 Apr 2011; Torsten Veller <tove@gentoo.org> package.mask:
  dev-perl/gnome2-print was removed from the tree

  08 Apr 2011; Torsten Veller <tove@gentoo.org> package.mask:
  Unmask Module-Build-0.380.0

  08 Apr 2011; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask app-crypt/ekey-egd-linux for removal.

  06 Apr 2011; Alex Alexander <wired@gentoo.org> updates/2Q-2011:
  moved x11-libs/qt to x11-libs/qt-meta.

  06 Apr 2011; Peter Volkov <pva@gentoo.org> package.mask:
  mask beta version of net-p2p/transmission-2.30.

  05 Apr 2011; Bernard Cafarelli <voyageur@gentoo.org> package.mask:
  Drop old filezilla p.mask, tinxyml has enough keywords now

  05 Apr 2011; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
  package.mask:
  Unmask xf86-video-nouveau-0.0.16_pre20110323 as mesa is now libdrm-2.4.24
  compatible.

  05 Apr 2011; Ulrich Mueller <ulm@gentoo.org> uclibc/virtuals:
  Remove old-style virtual/utempter, bug 361117.

  04 Apr 2011; Christoph Mende <angelos@gentoo.org> updates/1Q-2011:
  Removed dbus-shar->ndesk-dbus move.
  This causes weird behaviour after syncs since there is a new dbus-sharp that
  portage tries to move.
  Users still using the old dbus-sharp will upgrade to the new one and packages
  will pull in ndesk-dbus, so this will not break systems.

  04 Apr 2011; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
  targets/desktop/package.use:
  Adjust for removal of hal USE flag from x11-base/xorg-server.

  03 Apr 2011; Ole Markus With <olemarkus@gentoo.org> package.mask:
  Removed masking of ZendOptimizer as it has been removed from the tree

  03 Apr 2011; Alexis Ballier <aballier@gentoo.org> package.mask:
  unmask dev-lang/ocaml 3.12, everything should be fine with it now

  03 Apr 2011; Tomáš Chvátal <scarabeus@gentoo.org> info_pkgs:
  Remove obsolete packages from info_pkgs and update comment.

  03 Apr 2011; Ulrich Mueller <ulm@gentoo.org> default/linux/packages.build,
  hardened/packages.build, targets/vserver/packages.build:
  Remove old-style virtual/gzip, bug 358829.

  03 Apr 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Mask media-video/libav and media-video/mplayer2.

  03 Apr 2011; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Mask >=sys-devel/gcc-4.6.0 for testing.

  02 Apr 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org>
  targets/developer/make.defaults:
  Remove digest from FEATURES in developer profile, see
  http://archives.gentoo.org/gentoo-dev/msg_0fce536d0f609340beaac7fe3d0dad76
  .xml

  02 Apr 2011; Aaron W. Swenson <titanofold@gentoo.org> package.mask:
  Packages removed from tree.

  02 Apr 2011; Ulrich Mueller <ulm@gentoo.org> -hardened/ia64/virtuals,
  -uclibc/arm/virtuals:
  Remove old-style virtual/bootloader, bug 359971.

  02 Apr 2011; Aaron W. Swenson <titanofold@gentoo.org> package.mask:
  Removed >app-admin/eselect-postgresql-1 mask. Ready for testing.

  02 Apr 2011; Pacho Ramos <pacho@gentoo.org> arch/alpha/ChangeLog,
  arch/alpha/package.use.mask, arch/arm/ChangeLog, arch/arm/package.use.mask,
  arch/ia64/ChangeLog, arch/ia64/package.use.mask, arch/sparc/ChangeLog,
  arch/sparc/package.use.mask:
  Mask media-video/totem youtube USE flag as quvi support is needed to play
  youtube files now.

  01 Apr 2011; Peter Volkov <pva@gentoo.org> package.mask:
  Smokeping #358389 fixed, unmask dev-perl/Config-Grammar.

  01 Apr 2011; Andreas K. Huettel <dilfridge@gentoo.org>
  targets/desktop/kde/make.defaults, +targets/desktop/kde/use.force:
  Force useflags consolekit and policykit on in the desktop/kde profile, as
  decided in the kde team meeting

  31 Mar 2011; Tomáš Chvátal <scarabeus@gentoo.org> package.mask:
  Unmask xorg-server-1.10. Should work decently.

  31 Mar 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite media-video/motioneye.

  31 Mar 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite media-video/linux-uvc.

  31 Mar 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite media-video/mvc.

  31 Mar 2011; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
  package.mask:
  Mask libdrm-2.4.23 incompatible version of x11-drivers/xf86-video-nouveau

  31 Mar 2011; Pacho Ramos <pacho@gentoo.org> package.mask:
  Mask gnome-extra/libgda:1 for removal.

  31 Mar 2011; Pacho Ramos <pacho@gentoo.org> package.mask:
  Mask gnome-extra/libgnomedb and co. for removal.

  31 Mar 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite media-plugins/gst-plugins-v4l.

  30 Mar 2011; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Update libopensync mask.

  29 Mar 2011; Eray Aslan <eras@gentoo.org> package.mask:
  lastrite net-mail/mailwrapper net-mail/mailer-config

  29 Mar 2011; Jeroen Roovers <jer@gentoo.org> package.mask:
  Extend mask on dev-libs/libnl (bug #342461).

  29 Mar 2011; Samuli Suominen <ssuominen@gentoo.org> use.desc:
  New global USE flag called "ios" for Apple's iDevice with iOS operating
  system.

  29 Mar 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite xfce4-icon-theme.

  29 Mar 2011; Nirbheek Chauhan <nirbheek@gentoo.org> package.mask:
  gtk+3 is in the tree, remove related p.masks

  29 Mar 2011; Diego E. Pettenò <flameeyes@gentoo.org>
  arch/amd64/package.use.mask, arch/amd64/use.mask, arch/hppa/use.mask,
  arch/x86/package.use.mask, arch/x86/use.mask, base/package.use.mask,
  default/linux/use.mask, prefix/linux/use.mask:
  Only unmask nouveau for x86 and amd64; follow the x11-base/xorg-drivers
  masking this time, but cover _all_ packages.

  28 Mar 2011; Andreas K. Huettel <dilfridge@gentoo.org> updates/1Q-2011:
  Add package move media-sound/phonon-xine > media-libs/phonon-xine, bug
  325319

  28 Mar 2011; Andreas K. Huettel <dilfridge@gentoo.org> updates/1Q-2011:
  Add package move media-sound/phonon-vlc > media-libs/phonon-vlc, bug
  325319

  28 Mar 2011; Luca Barbato <lu_zero@gentoo.org> arch/ia64/package.use.mask:
  Mask mplayer2 arch specific flags (part II)

  28 Mar 2011; Luca Barbato <lu_zero@gentoo.org>
  arch/amd64/package.use.mask, arch/x86/package.use.mask,
  base/package.use.mask:
  Mask mplayer2 arch specific flags

  28 Mar 2011; Diego E. Pettenò <flameeyes@gentoo.org> base/use.mask,
  default/linux/use.mask, prefix/linux/use.mask:
  Mask nouveau VIDEO_CARDS flag on non-Linux systems.

  28 Mar 2011; Amadeusz Żołnowski <aidecoe@gentoo.org>
  desc/dracut_modules.desc:
  Reworded DRACUT_MODULES descriptions and updated for 009 release.

  28 Mar 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Unmasking qmmp-0.5.0

  28 Mar 2011; Nirbheek Chauhan <nirbheek@gentoo.org> package.mask:
  Re-mask clutter-gtk-0.91*, gtk+3 still can't be added to the tree

  28 Mar 2011; Sébastien Fabbro <bicatali@gentoo.org> package.mask:
  Masking =dev-python/numpy-1.6* beta release

  28 Mar 2011; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking x11-plugins/wmnetmon for QA removal.

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

  28 Mar 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite openfoam and reverse dependencies.

  28 Mar 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Unmask libopensync 0.22 and libopesync-plugin-python 0.22 series for
  app-pda/synce-sync-engine.

  27 Mar 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Temporarily mask =sys-apps/pciutils-3.1.7-r1.

  27 Mar 2011; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask app-text/xxddiff app-text/mxml2man sys-block/unieject for removal.

  27 Mar 2011; Andreas K. Huettel <dilfridge@gentoo.org> updates/1Q-2011:
  Add package move sci-misc/brlcad > media-gfx/brlcad

  27 Mar 2011; Jeroen Roovers <jer@gentoo.org> package.mask:
  Mask net-analyzer/iptraf (bug #305781).

  27 Mar 2011; Samuli Suominen <ssuominen@gentoo.org> use.desc:
  Remove USE="hal" description.

  27 Mar 2011; Diego E. Pettenò <flameeyes@gentoo.org> base/package.use.mask,
  default/linux/package.use.mask:
  Mask pdnsd's Linux-specific USE flags on non-Linux profiles.

  27 Mar 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite dev-libs/eggdbus.

  27 Mar 2011; Andreas K. Huettel <dilfridge@gentoo.org> updates/1Q-2011:
  Add package move media-sound/phonon-gstreamer >
  media-libs/phonon-gstreamer, bug 325319

  27 Mar 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite luks-tools, pam_usb and thoggen.

  27 Mar 2011; Nirbheek Chauhan <nirbheek@gentoo.org> package.mask:
  Unmask clutter, revdeps seem to be okay

  27 Mar 2011; Jeremy Olexa <darkside@gentoo.org> package.mask:
  remove masks for removed packages

  26 Mar 2011; Gilles Dartiguelongue <eva@gentoo.org> base/package.use.mask:
  Drop deprecated mask entry about abiword-plugins.

  26 Mar 2011; Gilles Dartiguelongue <eva@gentoo.org> base/package.use.mask,
  package.mask:
  Drop tracker mask, mask applet USE flag due to unsatisfied dependencies.

  26 Mar 2011; Justin Lecher <jlec@gentoo.org> hardened/package.use.mask:
  USE mask app-arch/p7zip pch

  26 Mar 2011; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Drop old net-im/empathy mask.

  26 Mar 2011; Gilles Dartiguelongue <eva@gentoo.org> updates/1Q-2011:
  Add slotmove for dev-cpp/pangomm.

  26 Mar 2011; Andreas K. Huettel <dilfridge@gentoo.org> updates/1Q-2011:
  Add package move media-sound/phonon > media-libs/phonon, bug 325319

  26 Mar 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org> package.mask:
  Mask dev-lang/v8-3.2.x

  25 Mar 2011; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Drop glib-2.28 and gtk+-2.24 mask (and related).

  25 Mar 2011; Thomas Beierlein <tomjbe@gentoo.org> package.mask:
  Mask sci-libs/libgeda for removal

  25 Mar 2011; Anthony G. Basile <blueness@gentoo.org>
  hardened/linux/amd64/package.use:
  Fixed package name - bug #348050

  25 Mar 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Masking new qmmp release

  25 Mar 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Masking qt-creator beta release

  25 Mar 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org> package.mask:
  Mask www-client/chromium-12.x dev channel releases.

  25 Mar 2011; Arfrever Frehtes Taifersar Arahesis <arfrever@gentoo.org>
  package.mask:
  Mask GnuTLS 2.12.

  24 Mar 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Remove lessfs masking

  24 Mar 2011; Christoph Mende <angelos@gentoo.org> package.mask:
  Removed sys-apps/inotail mask

  24 Mar 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Remove x11-misc/talika entry

  23 Mar 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite dev-util/bugle.

  23 Mar 2011; Torsten Veller <tove@gentoo.org> package.mask:
  Mask app-misc/filer for removal (#360093)

  23 Mar 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org> package.mask:
  Unmask www-client/chromium-11.x and v8-3.1.x for beta channel release.

  23 Mar 2011; Nirbheek Chauhan <nirbheek@gentoo.org> updates/1Q-2011:
  slotmove libgweather from 3 to 2, no need for slotting anymore

  23 Mar 2011; Mike Frysinger <vapier@gentoo.org> package.mask:
  Drop dhcp-4 mask now that it seems to be feature complete/stablish.

  22 Mar 2011; Andreas Proschofsky <suka@gentoo.org> package.mask:
  Remove mask for LibreOffice 3.3.2, officially released now.

  22 Mar 2011; Christian Faulhammer <fauli@gentoo.org> package.mask:
  Raise mask for dev-vcs/bzr and bzrtools

  22 Mar 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite media-sound/mixxx.

  22 Mar 2011; Kacper Kowalik <xarthisius@gentoo.org> package.mask:
  Unmask sys-cluster/heartbeat-3.x

  20 Mar 2011; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
  package.mask:
  Add >=lightspark-0.4.6.1 to package.mask

  20 Mar 2011; Justin Lecher <jlec@gentoo.org> updates/1Q-2011:
  x11-libs/fltk SLOTMOVE 1.1 -> 1

  20 Mar 2011; Diego E. Pettenò <flameeyes@gentoo.org> arch/arm/use.mask,
  base/package.use.mask, base/use.mask:
  Make the neon USE flag globally available only on ARM architecture.

  20 Mar 2011; Aaron W. Swenson <titanofold@gentoo.org> package.mask:
  dev-db/postgresql-{docs,base,server}-8.1* removed from tree. Removed mask.

  20 Mar 2011; Aaron W. Swenson <titanofold@gentoo.org> package.mask:
  Masking 9.1 pre-release versions

  20 Mar 2011; Pacho Ramos <pacho@gentoo.org> package.mask:
  Update mask entries.

  20 Mar 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite www-misc/zoneminder.

  20 Mar 2011; <olemarkus@gentoo.org> package.mask:
  Masking dev-php/PEAR-File_XSPF and dev-php/PEAR-XML_Tree for removal

  20 Mar 2011; <olemarkus@gentoo.org> package.mask:
  Removed mask of PHP RCs as they have been removed from the tree

  19 Mar 2011; Mr. Aaron W. Swenson (TitanOfOld) <titan@gentoo.org>
  Masking >app-admin/eselect-postgresql-1 module(s) as experimental

  19 Mar 2011; Vadim Kuznetsov <vadimk@gentoo.org> package.mask:
  cleaned mask vmware-server-1

  19 Mar 2011; Vadim Kuznetsov <vadimk@gentoo.org> package.mask:
  removed mask vmware-workstation-5.5.9

  18 Mar 2011: Mike Frysinger <vapier@gentoo.org> **/make.defaults:
  Drop CDEFINE_<abi> variables now that nothing uses them.

  18 Mar 2011; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Drop gupnp-av and gupnp-vala mask since gstreamer-0.10.32 has been added to
  the tree.

  18 Mar 2011; Pacho Ramos <pacho@gentoo.org> arch/x86-fbsd/package.use.mask:
  Mask dev-libs/totem-pl-parser USE flags due missing keywords on deps.

  18 Mar 2011; Sébastien Fabbro <bicatali@gentoo.org> package.mask:
  Unmasking sci-physics/geant:4

  18 Mar 2011; Pacho Ramos <pacho@gentoo.org> arch/x86-fbsd/ChangeLog,
  arch/x86-fbsd/package.use.mask:
  Mask media-plugins/gst-plugins-meta USE flags due missing keywords on deps.

  18 Mar 2011; Jeroen Roovers <jer@gentoo.org> package.mask:
  Mask new snapshots of www-client/opera.

  18 Mar 2011; Justin Lecher <jlec@gentoo.org> updates/1Q-2011:
  Move sci-chemistry/caver to sci-chemistry/pymol-plugins-caver

  17 Mar 2011; Magnus Grenberg <zorry@gentoo.org> hardened/linux/amd64/package.use:
  Add pic use flag on open-vm-tools (bug #358929)

  17 Mar 2011; Jeroen Roovers <jer@gentoo.org> package.mask:
  Remove mask for www-client/opera-11.10 beta.

  17 Mar 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Masking openocd snapshots

  17 Mar 2011; Torsten Veller <tove@gentoo.org> package.mask:
  Unmask >=dev-perl/libwww-perl-6 and dependencies

  16 Mar 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Unmask openocd-0.4.0

  16 Mar 2011; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Drop bittorrent mask.

  15 Mar 2011; Jeroen Roovers <jer@gentoo.org> package.mask:
  Remove development snapshot mask for app-admin/sysstat.

  15 Mar 2011; Pacho Ramos <pacho@gentoo.org> package.mask:
  Drop gnucash mask.

  14 Mar 2011; <olemarkus@gentoo.org> base/virtuals:
  Removed old-style virtual/php

  14 Mar 2011; Pacho Ramos <pacho@gentoo.org> package.mask:
  Mask media-gfx/gpp for removal (bug #358437).

  14 Mar 2011; Torsten Veller <tove@gentoo.org> package.mask:
  Mask dev-perl/Config-Grammar (#358389)

  13 Mar 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Fix entry

  13 Mar 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Masking boost-1.46.1 ebuilds

  13 Mar 2011; Sergei Trofimovich <slyfox@gentoo.org> package.mask:
  Masked pre ghc-6.10 haskell package versions before removal.

  13 Mar 2011; Andreas Proschofsky <suka@gentoo.org> package.mask:
  Mask Release Candidate for LibreOffice 3.3.2

  13 Mar 2011; <angelos@gentoo.org> package.mask:
  Last rites for media-plugins/gmpc-coveramazon

  13 Mar 2011; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Revert bittorrent mask temporarily for bug #358485.

  12 Mar 2011; Joerg Bornkessel <hd_brummy@gentoo.org> package.mask:
  cleanup for removal bug 352558, 358552

  12 Mar 2011; Joerg Bornkessel <hd_brummy@gentoo.org> package.mask:
  media-plugins/vdr-vdricq, removal on April 10, bug 358591

  12 Mar 2011; Pacho Ramos <pacho@gentoo.org> package.mask:
  Mask dev-cpp/gtkmm:1.2 for removal (bug #355825).

  12 Mar 2011; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Mask app-emacs/htmlfontify for removal.

  12 Mar 2011; Christian Faulhammer <fauli@gentoo.org> package.mask:
  www-apps/joomla 1.6 series needs some more testing, so mask it

  12 Mar 2011; <angelos@gentoo.org> updates/1Q-2011:
  Moved dev-dotnet/dbus{,-glib}-sharp to dev-dotnet/ndesk-dbus{,-glib}

  12 Mar 2011; Pacho Ramos <pacho@gentoo.org> package.mask:
  Update package.mask entries after removals.

  12 Mar 2011; Hans de Graaff <graaff@gentoo.org> package.mask:
  Mask dev-ruby/ruby-gnomeprint and dev-ruby/ruby-gnomeprintui for removal.

  12 Mar 2011; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Mask net-p2p/bittorrent for removal 20110412 (#336166).

  11 Mar 2011; Torsten Veller <tove@gentoo.org> package.mask:
  Mask deprecated dev-perl/gnome2-print for removal (#358423)

  11 Mar 2011; Andreas K. Huettel <dilfridge@gentoo.org> package.mask:
  Masked dev-tex/memoir and dev-tex/listings for removal

  11 Mar 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite ipod-sharp, podsleuth and libipoddevice.

  11 Mar 2011; Torsten Veller <tove@gentoo.org> updates/1Q-2011:
  Move Thread-Queue and Thread-Semaphore from dev-perl to perl-core

  11 Mar 2011; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Mask several app-emacs packages for removal.

  11 Mar 2011; Alex Alexander <wired@gentoo.org> package.mask:
  masked x11-themes/qgtkstyle. style provided by qt-gui[gtk] now.

  10 Mar 2011; <olemarkus@gentoo.org> package.mask:
  Masking another PHP RC

  09 Mar 2011; Diego E. Pettenò <flameeyes@gentoo.org>
  default/linux/package.use.mask:
  Mask usb USE flag for pcsc-lite-1.7.0 and later on Linux.

  09 Mar 2011; Nirbheek Chauhan <nirbheek@gentoo.org> package.mask:
  Unmask telepathy-glib and telepathy-farsight

  09 Mar 2011; Torsten Veller <tove@gentoo.org> package.mask:
  Mask libwww-perl-6 for testing: upgrade path, SSL, cert-checking

  09 Mar 2011; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask perf.

  08 Mar 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Unmask xfce4-xkb-plugin with a new snapshot.

  08 Mar 2011; Justin Lecher <jlec@gentoo.org> package.mask:
  Removed dev-tcltk/tclxml-expat from package.mask after removal

  08 Mar 2011; Anthony G. Basile <blueness@gentoo.org>
  -hardened/linux/amd64/package.use.mask, hardened/linux/package.mask,
  hardened/linux/package.use.mask, hardened/linux/x86/package.use.mask:
  Removed outdated maskings for hardened profiles, bug #355915.

  07 Mar 2011; Torsten Veller <tove@gentoo.org> package.mask:
  Unmask net-mail/imapsync again. Latest versions can be fetched from fedora

  07 Mar 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite media-libs/glitz.

  07 Mar 2011; <olemarkus@gentoo.org> package.mask:
  Removed dev-php5/mongo from p.mask as it was removed from the tree

  07 Mar 2011; Anthony G. Basile <blueness@gentoo.org> base/package.mask,
  selinux/package.mask, selinux/v2refpolicy/package.mask:
  Added maskings and unmaskings for sec-policy/selinux-sasl.

  07 Mar 2011; Anthony G. Basile <blueness@gentoo.org> base/package.mask,
  selinux/package.mask, selinux/v2refpolicy/package.mask:
  Added maskings and unmaskings for sec-policy/selinux-courier.

  06 Mar 2011; Torsten Veller <tove@gentoo.org> package.mask:
  Mask perl-core/Module-Build for testing

  06 Mar 2011; Magnus Granberg <zorry@gentoo.org>
  hardened/linux/amd64/make.default, +hardened/linux/amd64/package.use:
  Remove the pic use flag #348050

  05 Mar 2011; Andreas K. Huettel <dilfridge@gentoo.org> package.mask:
  Mask sys-power/guidance-power-manager for removal.

  04 Mar 2011; Alexey Shvetsov <alexxy@gentoo.org> package.mask:
  unmask kde

  04 Mar 2011; Alexey Shvetsov <alexxy@gentoo.org> package.mask:
  Mask kde 4.6.1

  04 Mar 2011; Justin Lecher <jlec@gentoo.org> package.mask:
  Masked =sci-libs/mmdb-1.23.2, because of problems during linking against the
  package

  04 Mar 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org> package.mask:
  Mask www-client/chromium-bin for removal.

  03 Mar 2011; <olemarkus@gentoo.org> package.mask:
  Masking dev-php5/ZendOptimizer for removal in 30 days

  03 Mar 2011; <olemarkus@gentoo.org> package.mask:
  Masking another PHP RC

  03 Mar 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Masking zen-sources snapshot release

  02 Mar 2011; Sébastien Fabbro <bicatali@gentoo.org> package.mask:
  Masked blas-goto for removal

  02 Mar 2011; Patrick Lauer <patrick@gentoo.org> thirdpartymirrors:
  Removing defunct samba mirror

  01 Mar 2011; Jeremy Olexa <darkside@gentoo.org> package.mask:
  p.mask pdflib & pecl-pdflib

  01 Mar 2011; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Mask sudo-1.8

  01 Mar 2011; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Update mask for emacs-vcs:23.

  28 Feb 2011; Ulrich Mueller <ulm@gentoo.org> license_groups:
  Add wxWinLL-3.1 to MISC-FREE license group.

  28 Feb 2011; Rafael G. Martins <rafaelmartins@gentoo.org> package.mask:
  Unmasked =sci-mathematics/octave-3.4*

  27 Feb 2011; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Mask for net-im/empathy-2.33 and related.

  27 Feb 2011; Anthony G. Basile <blueness@gentoo.org>
  hardened/linux/powerpc/parent, hardened/linux/powerpc/ppc32/parent,
  hardened/linux/powerpc/ppc64/parent:
  Restructured profile inheritance for hardened/linux/powerpc/ppc32,
  hardened/linux/powerpc/ppc64. Bug #356149

  27 Feb 2011; Hans de Graaff <graaff@gentoo.org> package.mask:
  Mask dev-ruby/bones-extras for removal.

  26 Feb 2011; Gilles Dartiguelongue <eva@gentoo.org> updates/1Q-2011:
  Move dev-libs/gdl to slot 1.

  25 Feb 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org>
  package.mask:
  Dropped the x11-terms/sakura-2.4.0 package.mask as the runtime issues seem to
  affect only one of my boxes and users confirm it works for them.

  25 Feb 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite dev-libs/libmimedir.

  25 Feb 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org>
  package.mask:
  Masked x11-terms/sakura-2.4.0 as it's crashing on startup.

  24 Feb 2011; Anthony G. Basile <blueness@gentoo.org>
  hardened/linux/amd64/parent, hardened/linux/ia64/parent,
  hardened/linux/parent, hardened/linux/x86/parent:
  Restructured profile inheritance for hardened/linux/amd64,
  hardened/linux/ia64, hardened/linux/x86. Bug #356149

  24 Feb 2011; Jeroen Roovers <jer@gentoo.org> package.mask:
  Unmask =dev-libs/libevent-2* (bug #333077).

  23 Feb 2011; Gilles Dartiguelongue <eva@gentoo.org> base/package.use.mask:
  Use mask libgnome[esd] and related, bug #348644 and bug #352260.

  23 Feb 2011; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Mask gtetrinet and monster-masher due to libgnome[esd] removal, bug #348644.

  23 Feb 2011; Andreas Proschofsky <suka@gentoo.org> package.mask:
  Unmask LibreOffice 3.3.1

  23 Feb 2011; Sebastian Pipping <sping@gentoo.org>
  default/bsd/package.use.mask:
  app-text/asciidoc: Add upcoming flag "highlight" to BSD package.use.mask (bug
  #344289)

  23 Feb 2011; Ulrich Mueller <ulm@gentoo.org> use.desc:
  Add "sound" as global USE flag.

  22 Feb 2011; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Add gupnp-vala to gupnp-dlna mask since it depends on it.

  22 Feb 2011; Sebastian Pipping <sping@gentoo.org>
  arch/alpha/package.use.mask, arch/arm/package.use.mask,
  arch/hppa/package.use.mask, arch/ia64/package.use.mask,
  arch/powerpc/package.use.mask, arch/s390/package.use.mask,
  arch/sh/package.use.mask, arch/sparc/package.use.mask,
  default/bsd/package.use.mask:
  Adjust package.use.mask for app-text/asciidoc (bug #356069)

  22 Feb 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Mask new dev-embedded/openocd

  22 Feb 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite media-sound/libifp-module.

  22 Feb 2011; Ulrich Mueller <ulm@gentoo.org> license_groups:
  PDFLite is not a free software license, remove it from @MISC-FREE.

  22 Feb 2011; Nirbheek Chauhan <nirbheek@gentoo.org> thirdpartymirrors:
  gnome: prefer http mirror over ftp mirror

  22 Feb 2011; Alexis Ballier <aballier@gentoo.org> package.mask:
  mask new dev-ml/bin-prot as it requires masked type-conv

  22 Feb 2011; Sebastian Pipping <sping@gentoo.org>
  arch/alpha/package.use.mask, arch/arm/package.use.mask,
  arch/hppa/package.use.mask, arch/ia64/package.use.mask,
  arch/powerpc/package.use.mask, arch/sparc/package.use.mask,
  base/package.use.mask:
  Move use flag mask "app-text/asciidoc test" down to affected arches

  22 Feb 2011; Jeremy Olexa <darkside@gentoo.org> package.mask:
  p.mask yafc, atftp, gwydion-dylan for removal in 60 days

  21 Feb 2011; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Add gupnp-dlna-0.5.1 mask due to unsatisfied dependencies.

  21 Feb 2011; Anthony G. Basile <blueness@gentoo.org>
  hardened/linux/amd64/parent, hardened/linux/ia64/parent,
  hardened/linux/powerpc/parent, hardened/linux/powerpc/ppc32/parent,
  hardened/linux/powerpc/ppc64/parent, hardened/linux/x86/parent:
  Reordered profile stacking to fix USE="-unicode" on hardened profiles.

  21 Feb 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Masking x11-misc/talika for removal. Bug #355901

  21 Feb 2011; Arfrever Frehtes Taifersar Arahesis <arfrever@gentoo.org>
  package.mask:
  Mask Python 3.2.

  20 Feb 2011; Anthony G. Basile <blueness@gentoo.org> package.mask:
  Remove package.mask for dev-lua/luaevent-prosody since it was removed from
  the tree. Bug #333097.

  20 Feb 2011; Torsten Veller <tove@gentoo.org> package.mask:
  Mask net-mail/imapsync because it "is no longer gratis on the homepage" and
  we don't have access to the latest fixes/improvements/releases (#354831)

  19 Feb 2011; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
  package.mask:
  Add old nouveau ebuilds to xorg-server 1.7 mask

  18 Feb 2011; Benedikt Böhm <hollow@gentoo.org> package.mask:
  remove uwsgi from package.mask

  18 Feb 2011; Vadim Kuznetsov <vadimk@gentoo.org> package.mask:
  Last rites for vmware-workstation-5.5.9

  18 Feb 2011; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
  package.mask:
  Add more reverse dependencies to xorg-server-1.7 mask

  18 Feb 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org> package.mask:
  Unmask www-client/chromium and dev-lang/v8 beta channel releases.

  18 Feb 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org> package.mask:
  Mask www-client/chromium and dev-lang/v8 dev channel releases.

  17 Feb 2011; Ole Markus With <olemarkus@gentoo.org> package.mask:
  Masking dev-lang/php-5.3.6_rc1

  17 Feb 2011; Jeroen Roovers <jer@gentoo.org> package.mask:
  Mask www-client/opera-11.10*.

  17 Feb 2011; Pacho Ramos <pacho@gentoo.org> package.mask:
  Mask dev-cpp/libgdamm:0 for removal (bug #355307).

  17 Feb 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org> package.mask:
  Mask www-client/chromium dev channel release.

  16 Feb 2011; Vlastimil Babka <caster@gentoo.org> package.mask:
  Unmask ant due to breaking ppc and ia64 stable trees.

  15 Feb 2011; Christoph Junghans <ottxor@gentoo.org> license_groups:
  Add google-talkplugin to EULA license group

  15 Feb 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite app-office/qbankmanager and xfce-extra/xfce4-xkb-plugin.

  15 Feb 2011; Vadim Kuznetsov <vadimk@gentoo.org> package.mask:
  Last rites for vmware-{server,player,modules}-1

  15 Feb 2011; <caster@gentoo.org> package.mask:
  Last rites for <dev-java/ant*-1.8.1

  14 Feb 2011; Pacho Ramos <pacho@gentoo.org> package.mask:
  Mask app-office/abiword-plugins for removal.

  14 Feb 2011; Pacho Ramos <pacho@gentoo.org> base/make.defaults:
  Enable 'ptp2' by default as it is available for most cameras.

  14 Feb 2011; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
  package.mask:
  Suggest replacement in xf86-video-xgi mask comment

  13 Feb 2011; Arfrever Frehtes Taifersar Arahesis <arfrever@gentoo.org>
  hardened/linux/amd64/make.defaults, hardened/linux/ia64/make.defaults,
  hardened/linux/make.defaults, hardened/linux/powerpc/ppc32/make.defaults,
  hardened/linux/powerpc/ppc64/make.defaults,
  hardened/linux/x86/10.0/make.defaults, hardened/linux/x86/make.defaults:
  Avoid duplication of USE flags in hardened profiles.

  13 Feb 2011; Arfrever Frehtes Taifersar Arahesis <arfrever@gentoo.org>
  +default/linux/package.use, default/bsd/fbsd/package.use:
  Disable deprecated bsddb module of Python 2 by default.

  13 Feb 2011; Arfrever Frehtes Taifersar Arahesis <arfrever@gentoo.org>
  arch/amd64/make.defaults, base/make.defaults,
  default/bsd/fbsd/amd64/7.2/make.defaults,
  default/bsd/fbsd/amd64/8.0/make.defaults,
  default/bsd/fbsd/x86/7.2/make.defaults,
  default/bsd/fbsd/x86/8.0/make.defaults,
  hardened/amd64/multilib/make.defaults,
  prefix/darwin/macos/10.4/x86/make.defaults,
  prefix/darwin/macos/10.5/x64/make.defaults,
  prefix/darwin/macos/10.5/x86/make.defaults,
  prefix/darwin/macos/10.6/x64/make.defaults,
  prefix/darwin/macos/10.6/x86/make.defaults, prefix/linux/make.defaults,
  releases/10.0/make.defaults, releases/2008.0/make.defaults,
  releases/freebsd-7.2/make.defaults:
  Don't include ${USE} in the first assignment to USE in make.defaults files to
  avoid incorrect interactions between enabled and disabled flags in different
  files.

  13 Feb 2011; Tim Harder <radhermit@gentoo.org> base/package.use.mask:
  Remove mask on the bluray USE flag for mplayer.

  12 Feb 2011; Robin H. Johnson <robbat2@gentoo.org> -use.local.desc:
  use.local.desc is now generated purely in the rsync tier and is no longer
  required in CVS. If you were looking to change it, you should be using
  metadata.xml instead.

  12 Feb 2011; Rafael G. Martins <rafaelmartins@gentoo.org> package.mask:
  =sci-mathematics/octave-3.4* pmasked for testing.

  12 Feb 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite sys-apps/halevt.

  12 Feb 2011; Andreas Proschofsky <suka@gentoo.org> package.mask:
  Mask new LibreOffice 3.3.1 release candidate

  12 Feb 2011; Peter Volkov <pva@gentoo.org> package.mask:
  Masked =net-p2p/transmission-2.21 as it depends on libevent-2.

  11 Feb 2011; Christian Faulhammer <fauli@gentoo.org> package.mask:
  Mask new versions of dev-vcs/bzr and bzrtools because of API breakage

  11 Feb 2011; Pacho Ramos <pacho@gentoo.org> package.mask:
  Mask app-text/ggv for removal.

  11 Feb 2011; Pacho Ramos <pacho@gentoo.org> package.mask:
  Mask app-misc/magicdev for removal.

  11 Feb 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org> package.mask:
  Mask www-client/chromium dev channel release.

  10 Feb 2011; Ulrich Mueller <ulm@gentoo.org> updates/1Q-2011:
  Move packages easygit, qgit, rapidsvn, rcsi, and svn2cl to dev-vcs.

  10 Feb 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite app-pda/libopensync and reverse dependencies.

  10 Feb 2011; Tomáš Chvátal <scarabeus@gentoo.org> package.mask:
  TREECLEAN: Drop no longer relevant pmask entries.

  10 Feb 2011; Mike Frysinger <vapier@gentoo.org> arch/alpha/package.use.mask,
  arch/arm/package.use.mask, arch/m68k/package.use.mask,
  arch/mips/package.use.mask, arch/powerpc/ppc64/package.use.mask,
  arch/s390/package.use.mask, arch/sh/package.use.mask:
  Mask net-firewall/iptables[netlink] pending keywording #354309.

  09 Feb 2011; Nirbheek Chauhan <nirbheek@gentoo.org> updates/1Q-2011:
  Change libwnck SLOT from 0 to 1, new SLOT=3 ebuild coming

  09 Feb 2011; Pacho Ramos <pacho@gentoo.org> package.mask:
  Fix gtk+-2.24 masking (bug #354275 by Dennis Schridde).

  09 Feb 2011; Nirbheek Chauhan <nirbheek@gentoo.org> updates/1Q-2011:
  Change libunique SLOT from 0 to 1, new SLOT=3 ebuild coming

  09 Feb 2011; Hans de Graaff <graaff@gentoo.org> package.mask:
  Mask Rails 2.2 due to bug 354249.

  09 Feb 2011; Andreas Proschofsky <suka@gentoo.org> package.mask:
  Remove mask on app-office/libreoffice, should be ready for the masses

  08 Feb 2011; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Fix type for new glib/gtk+ mask.

  08 Feb 2011; Hanno Boeck <hanno@gentoo.org> license_groups:
  Add HTML-Tidy to MISC_FREE license group, BSD-alike.

  08 Feb 2011; Diego E. Pettenò <flameeyes@gentoo.org> base/package.mask,
  uclibc/package.mask:
  Make sys-libs/uclibc appear masked on non-uclibc profiles. This hides the
  ebuild that has broken dynamic SLOT generation (the same as newlib).

  07 Feb 2011; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Add newlib to the list of crossdev-only packages. The SLOT tricks it has been
  using up to today are not bright and break with the new metadata
  regeneration.

  07 Feb 2011; Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org>
  desc/video_cards.desc:
  Add qxl to VIDEO_CARDS.

  07 Feb 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Temporarily mask net-misc/pino until upstream release is out.

  07 Feb 2011; <olemarkus@gentoo.org> package.mask:
  Lastrite dev-php5/mongo

  05 Feb 2011; Nirbheek Chauhan <nirbheek@gentoo.org> package.mask:
  Re-add libnotify-0.7 mask according to general consensus on #gentoo-dev.
  We need to fix the broken packages first.

  05 Feb 2011; Michał Górny <mgorny@gentoo.org> package.mask:
  Remove mask for ekg2-9999 (the ebuild was removed).

  04 Feb 2011; Maciej Mrozowski <reavertm@gentoo.org> package.mask:
  Unmask poppler-0.16.x

  04 Feb 2011; Theo Chatzimichos <tampakrap@gentoo.org> package.mask:
  Unmask KDE SC 4.6.0

  04 Feb 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org> package.mask:
  Mask www-client/chromium dev channel release.

  04 Feb 2011; Pacho Ramos <pacho@gentoo.org> package.mask:
  Drop gossip package.mask entry and update emul-linux one.

  04 Feb 2011; Pacho Ramos <pacho@gentoo.org>
  arch/powerpc/ppc64/package.use.mask:
  Mask mathml on ppc64 until needed deps are stabilized.

  03 Feb 2011; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Install mask entries for new glib/gtk+.

  02 Feb 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  broken libfm and pcmanfm are no longer on tree

  02 Feb 2011; Theo Chatzimichos <tampakrap@gentoo.org> package.mask:
  Sort the kde4.6 deps mask a bit

  02 Feb 2011; Hans de Graaff <graaff@gentoo.org> package.mask:
  Mask dev-ruby/IceRuby for removal.

  02 Feb 2011; Vlastimil Babka <caster@gentoo.org> package.mask:
  Unmask icedtea6-bin

  02 Feb 2011; Vlastimil Babka <caster@gentoo.org> package.mask:
  Mask icedtea6-bin-1.9.5 for distfiles propagation.

  02 Feb 2011; Theo Chatzimichos <tampakrap@gentoo.org> base/package.use.mask,
  base/use.mask:
  mask ayatana use flag globally

  02 Feb 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org> package.mask:
  Mask www-client/chromium dev channel release.

  01 Feb 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite net-dialup/slmodem.

  31 Jan 2011; Andreas K. Huettel <dilfridge@gentoo.org> package.mask:
  Added pmask for sci-libs/linux-gpib (about to be committed)

  31 Jan 2011; Patrick Lauer <patrick@gentoo.org> package.mask:
  Masking postgres 8.1 as it is EOL upstream

  31 Jan 2011; Nirbheek Chauhan <nirbheek@gentoo.org> package.mask:
  Mask sys-apps/gnome-disk-utility-2.32.1, which needs libnotify-0.7

  31 Jan 2011; Nirbheek Chauhan <nirbheek@gentoo.org> package.mask:
  Add clutter-gst-1.3 to the clutter mask

  30 Jan 2011; Tony Vroon <chainsaw@gentoo.org> package.mask:
  Mask Audacious & libmowgli alpha releases.

  30 Jan 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite net-p2p/lince.

  30 Jan 2011; MATSUU Takuto <matsuu@gentoo.org> package.mask:
  Mask >=net-dns/maradns-2 wrt security #352569.

  30 Jan 2011; Hanno Boeck <hanno@gentoo.org> license_groups:
  Add tanuki-community to GPL-compatible, this is just GPL and a BSD-alike
  license.

  30 Jan 2011; Hanno Boeck <hanno@gentoo.org> license_groups:
  Add MaxMind2 license to FREE-DOCUMENTS.

  30 Jan 2011; Ulrich Mueller <ulm@gentoo.org> package.mask:
  Remove mask for virtual/emacs-24, removed from tree.

  29 Jan 2011; Pacho Ramos <pacho@gentoo.org> package.mask:
  Update emul-linux-x86-opengl mask.

  29 Jan 2011; Hanno Boeck <hanno@gentoo.org> license_groups:
  Add Allegro license to MISC-FREE, similar to public domain.

  29 Jan 2011; Torsten Veller <tove@gentoo.org> package.mask:
  Unmask =dev-lang/perl-5.12.3

  27 Jan 2011; Jeroen Roovers <jer@gentoo.org> package.mask:
  Unmask www-client/opera-11.01.

  27 Jan 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org> package.mask:
  Mask www-client/chromium dev channel release.

  26 Jan 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Unmask gnome-mount for ~x86-fbsd and gnome-base/gvfs with USE hal.

  26 Jan 2011; Alexey Shvetsov <alexxy@gentoo.org> package.mask:
  Mask KDE SC 4.6.0 and its deps

  26 Jan 2011; Pacho Ramos <pacho@gentoo.org> package.mask:
  Mask gnome-extra/quick-lounge-applet due its gnome-panel-2.32 problems.

  26 Jan 2011; Pacho Ramos <pacho@gentoo.org> package.mask:
  Mask media-sound/last-exit for removal.

  26 Jan 2011; Pacho Ramos <pacho@gentoo.org> package.mask:
  Mask www-plugins/moonlight until works with mono-2.8 (bug #340375).

  26 Jan 2011; Robin H. Johnson <robbat2@gentoo.org> thirdpartymirrors:
  Update apache mirrors.

  26 Jan 2011; Robin H. Johnson <robbat2@gentoo.org> thirdpartymirrors:
  Update alsaproject mirrors.

  26 Jan 2011; Robin H. Johnson <robbat2@gentoo.org> thirdpartymirrors:
  Sort thirdpartymirrors back into alphabetical order.

  25 Jan 2011; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking dev-util/plan9port for QA removal.

  25 Jan 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite sys-auth/policykit.

  25 Jan 2011; Joerg Bornkessel <hd_brummy@gentoo.org> package.mask:
  removed mask for gentoo-vdr-scripts-0.4.8_rc*

  24 Jan 2011; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Add x11-libs/libnotify mask for early breakage detection.

  24 Jan 2011; Andreas Proschofsky <suka@gentoo.org> package.mask:
  Add mask for upcoming libreoffice package

  24 Jan 2011; Tim Harder <radhermit@gentoo.org> updates/1Q-2011:
  Move app-vim/latexsuite to app-vim/vim-latex (bug #289890).

  23 Jan 2011; Joerg Bornkessel <hd_brummy@gentoo.org> package.mask:
  media-tv/vdr-dvd-scripts masked for removal due 24 Feb 2011, not needed by
  any other packages, bug #352558

  23 Jan 2011; Joerg Bornkessel <hd_brummy@gentoo.org> package.mask:
  media-tv/vdrplugin-rebuild masked for removal due 24 Feb 2011, not needed
  by any other packages, bug *352552

  23 Jan 2011; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Add net-misc/rygel mask for pre-gnome 3 releases.

  23 Jan 2011; Maciej Mrozowski <reavertm@gentoo.org> package.mask:
  Unmask split phonon

  23 Jan 2011; Andreas Proschofsky <suka@gentoo.org> desc/linguas.desc:
  Add a bunch of new locales for libreoffice-bin

  23 Jan 2011; Maciej Mrozowski <reavertm@gentoo.org> package.mask:
  Initial mask for split phonon inclusion

  22 Jan 2011; Pacho Ramos <pacho@gentoo.org> arch/amd64/ChangeLog,
  arch/amd64/package.use.mask:
  Update wine package.use.mask entry.

  22 Jan 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite xfce-extra/thunar-thumbnailers.

  22 Jan 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Mask remmina and remmina-plugins for testing

  22 Jan 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite x11-themes/gion-icon-theme.

  22 Jan 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite app-editors/mousepad.

  22 Jan 2011; Torsten Veller <tove@gentoo.org> package.mask:
  Mask perl-5.12.3 until the virtuals are updated and for testing (change INC
  order: prefer former vendor-/sitedirs to current priv-/archlib)

  22 Jan 2011; Ryan Hill <dirtyepic@gentoo.org> package.mask:
  Mask development versions due to unstable API as requested by leio
  >=dev-python/wxpython-2.9 >=x11-libs/wxGTK-2.9

  22 Jan 2011; Sébastien Fabbro <bicatali@gentoo.org> package.mask:
  masked sci-physics/geant4.9.4 beta cmake version

  22 Jan 2011; Sébastien Fabbro <bicatali@gentoo.org> package.mask:
  csparse now removed

  21 Jan 2011; Tim Harder <radhermit@gentoo.org> package.mask:
  Unmask mail-mta/postfix-2.8.0.

  21 Jan 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org> package.mask:
  Mask www-client/chromium dev channel release.

  21 Jan 2011; Anthony G. Basile <blueness@gentoo.org> package.mask:
  Replaced by dev-lua/luaevent; masked for removal in 30 days; bug #333097

  20 Jan 2011; Alexis Ballier <aballier@gentoo.org> package.mask:
  unmask lwt, ocsigen 1.3.4 is fine with it

  20 Jan 2011; Diego E. Pettenò <flameeyes@gentoo.org> license_groups:
  Add intel-ucode to BINARY_REDISTRIBUTABLE licenses.

  20 Jan 2011; Andreas K. Huettel <dilfridge@gentoo.org> updates/1Q-2011:
  package move: rename kcm_tablet to wacomtablet to reflect upstream name
  change

  20 Jan 2011; Peter Volkov <pva@gentoo.org> package.mask:
  Unmask net-analyzer/ipcad as it is fixed, #335592.

  20 Jan 2011; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Remove deleted packages from mask.

  19 Jan 2011; Joerg Bornkessel <hd_brummy@gentoo.org> package.mask:
  removed mask dev-libs/tntnet-2.0 dev-libs/cxxtools-2.0

  19 Jan 2011; Joerg Bornkessel <hd_brummy@gentoo.org> package.mask:
  masked dev-libs/tntnet-2.0 dev-libs/cxxtools-2.0, bug #331417

  19 Jan 2011; Dane Smith <c1pher@gentoo.org> package.mask:
  Mask net-analyzer/ipcad, net-dns/ez-ipupdate, app-cdr/pxlinux,
  app-cdr/cdrdetect, app-emulation/basiliskII-jit for removal.

  18 Jan 2011; Christian Faulhammer <fauli@gentoo.org> package.mask:
  Unmask dev-lang/erlang 14.2.1, all issues resolved

  18 Jan 2011; Joerg Bornkessel <hd_brummy@gentoo.org> package.mask:
  media-plugins/vdr-avolctl masked for removel on 18 Feb 2011

  18 Jan 2011; Tim Harder <radhermit@gentoo.org> package.mask:
  Mask mail-mta/postfix-2.8.0 release candidates.

  17 Jan 2011; Hans de Graaff <graaff@gentoo.org> package.mask,
  profiles.desc:
  Remove ruby-rrd mask, package has been removed.

  17 Jan 2011; Pacho Ramos <pacho@gentoo.org> package.mask:
  Mask >=dev-cpp/libxmlpp-2.33.1 for bug #350150

  16 Jan 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Mask lessfs-1.3.1

  15 Jan 2011; Torsten Veller <tove@gentoo.org> updates/2Q-2005:
  Remove old dev-perl/Text-CSV to dev-perl/Text-CSV_XS move.
  Both exist in the tree (#351760)

  15 Jan 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Mask old net-misc/hamachi client for removal

  15 Jan 2011; Theo Chatzimichos <tampakrap@gentoo.org> package.mask:
  Remove amarok mask, released

  15 Jan 2011; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking net-print/gqueue for QA removal.

  13 Jan 2011; Samuli Suominen <ssuominen@gentoo.org> desc/xfce_plugins.desc:
  Update xfce_plugins.desc for app-office/orage.

  12 Jan 2011; Andreas K. Huettel <dilfridge@gentoo.org> package.mask:
  Starting with KOffice version 2.2.0, the functionality of
  app-office/kchart is provided by the app-office/koffice-libs ebuild. So,
  add pmask as incentive to unmerge.

  12 Jan 2011; Theo Chatzimichos <tampakrap@gentoo.org> package.mask:
  Mask Amarok 2.4.0, not released yet

  12 Jan 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org> package.mask:
  Mask www-client/chromium dev channel release.

  12 Jan 2011; <nirbheek@gentoo.org> package.mask:
  Add pyclutter-1.3 to the >=clutter-1.4 mask

  11 Jan 2011; Samuli Suominen <ssuominen@gentoo.org> thirdpartymirrors:
  Update Xfce mirrors wrt upstream http://www.xfce.org/download/

  11 Jan 2011; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking net-mail/cyrus-imspd for QA removal.

  10 Jan 2011; Markos Chandras <hwoarang@gentoo.org>
  arch/amd64/no-multilib/package.mask, features/64bit-native/package.mask:
  Masking net-misc/ps3mediaserver for amd64 no-multilib profiles

  10 Jan 2011; Fabian Groffen <grobian@gentoo.org> use.desc:
  Update description for aqua USE-flag

  10 Jan 2011; Anthony G. Basile <blueness@gentoo.org> package.mask:
  Masking =net-misc/tor-0.2.2* until libevent-2* is unmasked (bug #333077)

  10 Jan 2011; Jory A. Pratt <anarchy@gentoo.org> package.mask:
  Remove wireless-tools mask on 30_pre* releases.

  10 Jan 2011; Diego E. Pettenò <flameeyes@gentoo.org> package.mask:
  Masking app-i18n/skktools for QA removal.

  10 Jan 2011; Pacho Ramos <pacho@gentoo.org> arch/amd64/ChangeLog,
  arch/amd64/package.use.mask:
  Mask nls USE flag for wine until gettext is included in emul set (bug
  #351224).

  10 Jan 2011; Zac Medico <zmedico@gentoo.org> updates/3Q-2008:
  Remove obsolete virtualbox and virtualbox-additions package moves from
  3Q-2008 since they are reversed in 1Q-2011.

  09 Jan 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Unmask qbittorrent

  09 Jan 2011; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org>
  package.mask:
  [package.mask] Masked KDE-4.5.5 while moving it into the tree.

  08 Jan 2011; Jeroen Roovers <jer@gentoo.org> package.mask:
  Mask www-client/opera-11.01 and up.

  08 Jan 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  Mask qbittorrent RC releases

  08 Jan 2011; Robin H. Johnson <robbat2@gentoo.org> package.mask:
  Block virtual/mysql-5.2 that is used in the overlay.

  07 Jan 2011; Sebastian Pipping <sping@gentoo.org> package.mask:
  Unmask rss2email >=2.69, transition from 2.65 to 2.69 got basic testing now

  07 Jan 2011; Tiziano Müller <dev-zero@gentoo.org> package.mask:
  Mask version bump for uwsgi for testing of the gcc compilation and since I
  added apache-support

  06 Jan 2011; Tiziano Müller <dev-zero@gentoo.org> package.mask:
  Added masks for boost-1.45* stuff

  06 Jan 2011; Samuli Suominen <ssuominen@gentoo.org> base/virtuals:
  virtual/fam was converted to new-style.

  06 Jan 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org> package.mask:
  Mask www-client/chromium dev channel release.

  06 Jan 2011; Torsten Veller <tove@gentoo.org> package.mask:
  Mask <dev-lang/perl-5.12.2 and <sys-devel/libperl-5.10.1

  06 Jan 2011; Alexey Shvetsov <alexxy@gentoo.org> package.mask:
  Drop drupal 7.0_rc mask

  05 Jan 2011; Michał Górny <mgorny@gentoo.org> package.mask:
  Mask the live ebuild for net-im/ekg2 for removal.

  05 Jan 2011; Tiziano Müller <dev-zero@gentoo.org> package.mask:
  Unmasked stable versions of spice and spice-protocol as well as the slotted
  celt-0.5.1.3.

  04 Jan 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite sys-fs/gnomevfs-mount.

  04 Jan 2011; Markos Chandras <hwoarang@gentoo.org> package.mask:
  app-emulation/ies4linux removed. Bug #344233

  04 Jan 2011; Gilles Dartiguelongue <eva@gentoo.org> package.mask:
  Remove dev-cpp/libgtksourceviewmm mask, package has been removed, bug
  #298158.

  03 Jan 2011; Samuli Suominen <ssuominen@gentoo.org> package.mask:
  Lastrite thunar-vcs-plugin wrt #350358.

  01 Jan 2011; Markus Meier <maekke@gentoo.org> package.mask:
  remove media-gfx/2010.4.0 mask, as final version is in tree

  For previous entries, please see ChangeLog-2010.
