# ChangeLog for net-im/turses
# Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
# $Header: /var/cvsroot/gentoo-x86/net-im/turses/ChangeLog,v 1.12 2015/06/05 06:36:14 jlec Exp $

*turses-0.2.23 (05 Jun 2015)

  05 Jun 2015; Justin Lecher <jlec@gentoo.org> +turses-0.2.23.ebuild,
  metadata.xml:
  Version Bump, bug #532312; thanks Adam Jones and Alessandro Molari for the
  ebuild, https://github.com/gentoo/gentoo-portage-rsync-mirror/pull/132

  08 Apr 2015; Michał Górny <mgorny@gentoo.org> turses-0.2.13-r1.ebuild:
  Drop old Python implementations

  10 Feb 2015; Pavlos Ratis <dastergon@gentoo.org> metadata.xml:
  Drop myself from metadata

  14 Oct 2014; Ian Delaney <idella4@gentoo.org> -turses-0.2.13.ebuild:
  remove old

  05 Aug 2014; Manuel Rüger <mrueg@gentoo.org> turses-0.2.13-r1.ebuild,
  turses-0.2.13.ebuild:
  Remove trailing '.' from DESCRIPTION.

*turses-0.2.13-r1 (09 May 2013)

  09 May 2013; Mike Gilbert <floppym@gentoo.org> +turses-0.2.13-r1.ebuild,
  -turses-0.2.10.ebuild, -turses-0.2.11-r1.ebuild, -turses-0.2.11.ebuild,
  -turses-0.2.12.ebuild, -turses-0.2.9.ebuild:
  Convert to distutils-r1. Resolves bug 447604 by James Rowe. Remove old.

*turses-0.2.13 (21 Mar 2013)

  21 Mar 2013; Patrick Lauer <patrick@gentoo.org> +turses-0.2.13.ebuild:
  Bump

*turses-0.2.12 (17 Mar 2013)

  17 Mar 2013; Patrick Lauer <patrick@gentoo.org> +turses-0.2.12.ebuild:
  Bump

*turses-0.2.11-r1 (06 Feb 2013)

  06 Feb 2013; Mike Gilbert <floppym@gentoo.org>
  +files/turses-0.2.11-tests.patch, +turses-0.2.11-r1.ebuild:
  Don't install tests, bug 455250.

*turses-0.2.11 (24 Jan 2013)

  24 Jan 2013; Patrick Lauer <patrick@gentoo.org> +turses-0.2.11.ebuild:
  Bump

*turses-0.2.10 (14 Jan 2013)

  14 Jan 2013; Patrick Lauer <patrick@gentoo.org> +turses-0.2.10.ebuild:
  Bump

*turses-0.2.9 (24 Nov 2012)

  24 Nov 2012; Pavlos Ratis <dastergon@gentoo.org> +metadata.xml,
  +turses-0.2.9.ebuild:
  new ebuild, bug 430114
