# ChangeLog for dev-libs/libdbh
# Copyright 1999-2016 Gentoo Foundation; Distributed under the GPL v2
# (auto-generated from git log)

*libdbh-5.0.19 (07 Oct 2015)

  07 Oct 2015; Christoph Mende <angelos@gentoo.org> +libdbh-5.0.19.ebuild,
  +metadata.xml:
  Initial import

  Package-Manager: portage-2.2.22

  16 Oct 2015; Justin Lecher <jlec@gentoo.org> metadata.xml:
  Update remote-ids

  Signed-off-by: Justin Lecher <jlec@gentoo.org>

  24 Jan 2016; Michał Górny <mgorny@gentoo.org> metadata.xml:
  Unify quoting in metadata.xml files for machine processing

  Force unified quoting in all metadata.xml files since lxml does not
  preserve original use of single and double quotes. Ensuring unified
  quoting before the process allows distinguishing the GLEP 67-related
  metadata.xml changes from unrelated quoting changes.

  24 Jan 2016; Michał Górny <mgorny@gentoo.org> metadata.xml:
  Set appropriate maintainer types in metadata.xml (GLEP 67)

  06 Aug 2016; Pacho Ramos <pacho@gentoo.org> metadata.xml:
  Cleanup per bug #177996

  Package-Manager: portage-2.3.0

