# ChangeLog for app-emacs/easypg
# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
# $Header: /var/cvsroot/gentoo-x86/app-emacs/easypg/ChangeLog,v 1.14 2009/11/23 16:59:51 ulm Exp $

  23 Nov 2009; Ulrich Mueller <ulm@gentoo.org> -easypg-0.0.16.ebuild,
  -files/50easypg-gentoo-0.0.16.el:
  Remove old.

  23 Nov 2009; Markus Meier <maekke@gentoo.org> easypg-0.0.16-r1.ebuild:
  amd64/x86 stable, bug #293991

*easypg-0.0.16-r1 (23 Oct 2009)

  23 Oct 2009; Ulrich Mueller <ulm@gentoo.org> easypg-0.0.16.ebuild,
  +easypg-0.0.16-r1.ebuild, +files/50easypg-gentoo-0.0.16.el,
  files/50easypg-gentoo.el:
  Deactivate package for Emacs 23; it is already included. Fixes bug 290225.

  06 Dec 2008; Christian Faulhammer <fauli@gentoo.org>
  -easypg-0.0.15.ebuild:
  clean up

  28 Aug 2008; Ulrich Mueller <ulm@gentoo.org> easypg-0.0.15.ebuild,
  easypg-0.0.16.ebuild:
  Use elisp-compile instead of elisp-comp, bug 235442.

  28 Jul 2008; Ulrich Mueller <ulm@gentoo.org> metadata.xml:
  Add USE flag description to metadata wrt GLEP 56.

  24 Jun 2008; Christian Faulhammer <opfer@gentoo.org> easypg-0.0.16.ebuild:
  stable x86/amd64, bug 229133

*easypg-0.0.16 (21 Apr 2008)

  21 Apr 2008; Ulrich Mueller <ulm@gentoo.org> easypg-0.0.15.ebuild,
  +easypg-0.0.16.ebuild:
  Version bump. Correct name of pkg_postinst function.

  23 Jan 2008; Christian Faulhammer <opfer@gentoo.org> easypg-0.0.15.ebuild:
  stable x86/amd64

  23 Jan 2008; Christian Faulhammer <opfer@gentoo.org>
  -easypg-0.0.13.ebuild:
  clean up

*easypg-0.0.15 (11 Sep 2007)

  11 Sep 2007; Christian Faulhammer <opfer@gentoo.org>
  -easypg-0.0.11-r2.ebuild, +easypg-0.0.15.ebuild:
  clean up and version bump

*easypg-0.0.13 (15 Jul 2007)

  15 Jul 2007; Ulrich Mueller <ulm@gentoo.org> +easypg-0.0.13.ebuild:
  Version bump. Update SRC_URI. Fix compilation issue with pgg-epg; it
  requires both epa and pgg. Install documentation. Fixes bug #185042.

*easypg-0.0.11-r2 (23 May 2007)

  23 May 2007; Christian Faulhammer <opfer@gentoo.org>
  +files/50easypg-gentoo.el, +metadata.xml, +easypg-0.0.11-r2.ebuild:
  initial import, requested in bug #175028

