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

*phpmyadmin-4.4.12 (09 Aug 2015)
*phpmyadmin-4.4.6.1 (09 Aug 2015)
*phpmyadmin-4.3.13.1 (09 Aug 2015)
*phpmyadmin-4.2.13.3 (09 Aug 2015)
*phpmyadmin-4.0.10.10 (09 Aug 2015)

  09 Aug 2015; Robin H. Johnson <robbat2@gentoo.org>
  +files/postinstall-en-3.1.txt, +metadata.xml, +phpmyadmin-4.0.10.10.ebuild,
  +phpmyadmin-4.2.13.3.ebuild, +phpmyadmin-4.3.13.1.ebuild,
  +phpmyadmin-4.4.6.1.ebuild, +phpmyadmin-4.4.12.ebuild:
  proj/gentoo: Initial commit

  This commit represents a new era for Gentoo:
  Storing the gentoo-x86 tree in Git, as converted from CVS.

  This commit is the start of the NEW history.
  Any historical data is intended to be grafted onto this point.

  Creation process:
  1. Take final CVS checkout snapshot
  2. Remove ALL ChangeLog* files
  3. Transform all Manifests to thin
  4. Remove empty Manifests
  5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$
  5.1. Do not touch files with -kb/-ko keyword flags.

  Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
  X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration
  tests
  X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this
  project
  X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo
  developer, wrote Git features for the migration
  X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve
  cvs2svn
  X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts
  X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014
  work in migration
  X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging
  X-Thanks: All of other Gentoo developers - many ideas and lots of paint on
  the bikeshed

*phpmyadmin-4.4.13.1 (09 Aug 2015)

  09 Aug 2015; Jorge Manuel B. S. Vicetto (jmbsvicetto)
  <jmbsvicetto@gentoo.org> +phpmyadmin-4.4.13.1.ebuild:
  Bump to the 4.4.13.1 release.

  Signed-off-by: Jorge Manuel B. S. Vicetto (jmbsvicetto)
  <jmbsvicetto@gentoo.org>

  10 Aug 2015; Julian Ospald <hasufell@gentoo.org> phpmyadmin-4.4.13.1.ebuild:
  Convert CVS style headers back to git style headers

  24 Aug 2015; Justin Lecher <jlec@gentoo.org> metadata.xml:
  Use https by default

  Convert all URLs for sites supporting encrypted connections from http to
  https

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

  24 Aug 2015; Mike Gilbert <floppym@gentoo.org> metadata.xml:
  Revert DOCTYPE SYSTEM https changes in metadata.xml

  repoman does not yet accept the https version.
  This partially reverts eaaface92ee81f30a6ac66fe7acbcc42c00dc450.

  Bug: https://bugs.gentoo.org/552720

*phpmyadmin-4.5.0_beta1 (01 Sep 2015)
*phpmyadmin-4.4.14 (01 Sep 2015)
*phpmyadmin-4.3.13.1-r1 (01 Sep 2015)
*phpmyadmin-4.2.13.3-r1 (01 Sep 2015)
*phpmyadmin-4.0.10.10-r1 (01 Sep 2015)

  01 Sep 2015; Jorge Manuel B. S. Vicetto (jmbsvicetto)
  <jmbsvicetto@gentoo.org> metadata.xml, -phpmyadmin-4.0.10.10.ebuild,
  +phpmyadmin-4.0.10.10-r1.ebuild, -phpmyadmin-4.2.13.3.ebuild,
  +phpmyadmin-4.2.13.3-r1.ebuild, +phpmyadmin-4.3.13.1-r1.ebuild,
  -phpmyadmin-4.4.12.ebuild, -phpmyadmin-4.4.13.1.ebuild,
  +phpmyadmin-4.4.14.ebuild, +phpmyadmin-4.5.0_beta1.ebuild:
  Drop old versions, add new 4.4.14 release and first 4.5 beta.

  Signed-off-by: Jorge Manuel B. S. Vicetto (jmbsvicetto)
  <jmbsvicetto@gentoo.org>

*phpmyadmin-4.5.0_rc1 (18 Sep 2015)
*phpmyadmin-4.4.14.1 (18 Sep 2015)
*phpmyadmin-4.3.13.3 (18 Sep 2015)

  18 Sep 2015; Jorge Manuel B. S. Vicetto (jmbsvicetto)
  <jmbsvicetto@gentoo.org> -phpmyadmin-4.3.13.1-r1.ebuild,
  +phpmyadmin-4.3.13.3.ebuild, -phpmyadmin-4.4.14.ebuild,
  +phpmyadmin-4.4.14.1.ebuild, -phpmyadmin-4.5.0_beta1.ebuild,
  +phpmyadmin-4.5.0_rc1.ebuild:
  Bump phpmyadmin to releases 4.4.13.3, 4.4.14.1 and 4.5.0_rc1 - fixes bug
  560408 (CVE-2015-6830).

  Signed-off-by: Jorge Manuel B. S. Vicetto (jmbsvicetto)
  <jmbsvicetto@gentoo.org>

  19 Sep 2015; Jeroen Roovers <jer@gentoo.org> phpmyadmin-4.3.13.3.ebuild,
  phpmyadmin-4.4.14.1.ebuild:
  Stable for HPPA PPC64 (bug #560408).

  Package-Manager: portage-2.2.20.1

  19 Sep 2015; Tobias Klausmann <klausman@gentoo.org>
  phpmyadmin-4.3.13.3.ebuild:
  add alpha keyword

  Gentoo-Bug: 560408

  Package-Manager: portage-2.2.20.1

  19 Sep 2015; Tobias Klausmann <klausman@gentoo.org>
  phpmyadmin-4.4.14.1.ebuild:
  add alpha keyword

  Gentoo-Bug: 560408

  Package-Manager: portage-2.2.20.1

  23 Sep 2015; Agostino Sarubbo <ago@gentoo.org> phpmyadmin-4.3.13.3.ebuild,
  phpmyadmin-4.4.14.1.ebuild:
  amd64 stable wrt bug #560408

  Package-Manager: portage-2.2.20.1
  RepoMan-Options: --include-arches="amd64"

  23 Sep 2015; Agostino Sarubbo <ago@gentoo.org> phpmyadmin-4.3.13.3.ebuild,
  phpmyadmin-4.4.14.1.ebuild:
  x86 stable wrt bug #560408

  Package-Manager: portage-2.2.20.1
  RepoMan-Options: --include-arches="x86"

*phpmyadmin-4.5.0.2 (25 Sep 2015)

  25 Sep 2015; Jorge Manuel B. S. Vicetto (jmbsvicetto)
  <jmbsvicetto@gentoo.org> -phpmyadmin-4.5.0_rc1.ebuild,
  +phpmyadmin-4.5.0.2.ebuild:
  Add 4.5.0.2 release - second regression fix release for the 4.5 series.

  Signed-off-by: Jorge Manuel B. S. Vicetto (jmbsvicetto)
  <jmbsvicetto@gentoo.org>

  01 Oct 2015; Justin Lecher <jlec@gentoo.org> metadata.xml:
  Add missing remote-id type=sourceforge

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

  10 Oct 2015; Mikle Kolyada <zlogene@gentoo.org> phpmyadmin-4.3.13.3.ebuild,
  phpmyadmin-4.4.14.1.ebuild:
  sparc stable wrt bug #560408

  Package-Manager: portage-2.2.20.1

  04 Nov 2015; Agostino Sarubbo <ago@gentoo.org> phpmyadmin-4.3.13.3.ebuild,
  phpmyadmin-4.4.14.1.ebuild:
  ppc stable wrt bug #560408

  Package-Manager: portage-2.2.20.1
  RepoMan-Options: --include-arches="ppc"

  04 Nov 2015; Jorge Manuel B. S. Vicetto (jmbsvicetto)
  <jmbsvicetto@gentoo.org> -phpmyadmin-4.0.10.10-r1.ebuild,
  -phpmyadmin-4.2.13.3-r1.ebuild, -phpmyadmin-4.3.13.1.ebuild,
  -phpmyadmin-4.3.13.3.ebuild, -phpmyadmin-4.4.6.1.ebuild:
  Drop old and vulnerable versions.

  Signed-off-by: Jorge Manuel B. S. Vicetto (jmbsvicetto)
  <jmbsvicetto@gentoo.org>

*phpmyadmin-4.5.1 (04 Nov 2015)
*phpmyadmin-4.4.15.1 (04 Nov 2015)

  04 Nov 2015; Jorge Manuel B. S. Vicetto (jmbsvicetto)
  <jmbsvicetto@gentoo.org> +phpmyadmin-4.4.15.1.ebuild,
  -phpmyadmin-4.5.0.2.ebuild, +phpmyadmin-4.5.1.ebuild:
  Version bump to address PMASA-2015-5 - fixes bug 564238. Drop vulnerable
  version.

  Signed-off-by: Jorge Manuel B. S. Vicetto (jmbsvicetto)
  <jmbsvicetto@gentoo.org>

*phpmyadmin-4.5.3.1 (27 Dec 2015)
*phpmyadmin-4.4.15.2 (27 Dec 2015)

  27 Dec 2015; Jorge Manuel B. S. Vicetto (jmbsvicetto)
  <jmbsvicetto@gentoo.org> -phpmyadmin-4.4.15.1.ebuild,
  +phpmyadmin-4.4.15.2.ebuild, -phpmyadmin-4.5.1.ebuild,
  +phpmyadmin-4.5.3.1.ebuild:
  Version bump (CVE-2015-8669) - fixes bug 569800.
  Use tar.xz files for SRC_URI.

  Signed-off-by: Jorge Manuel B. S. Vicetto (jmbsvicetto)
  <jmbsvicetto@gentoo.org>

  27 Dec 2015; Agostino Sarubbo <ago@gentoo.org> phpmyadmin-4.4.15.2.ebuild,
  phpmyadmin-4.5.3.1.ebuild:
  amd64 stable wrt bug #569800

  Package-Manager: portage-2.2.24
  RepoMan-Options: --include-arches="amd64"
  Signed-off-by: Agostino Sarubbo <ago@gentoo.org>

  02 Jan 2016; Jeroen Roovers <jer@gentoo.org> phpmyadmin-4.4.15.2.ebuild,
  phpmyadmin-4.5.3.1.ebuild:
  Stable for HPPA PPC64 (bug #569800).

  Package-Manager: portage-2.2.26
  RepoMan-Options: --ignore-arches

  09 Jan 2016; Agostino Sarubbo <ago@gentoo.org> phpmyadmin-4.4.15.2.ebuild,
  phpmyadmin-4.5.3.1.ebuild:
  sparc stable wrt bug #569800

  Package-Manager: portage-2.2.26
  RepoMan-Options: --include-arches="sparc"
  Signed-off-by: Agostino Sarubbo <ago@gentoo.org>

  10 Jan 2016; Agostino Sarubbo <ago@gentoo.org> phpmyadmin-4.4.15.2.ebuild,
  phpmyadmin-4.5.3.1.ebuild:
  alpha stable wrt bug #569800

  Package-Manager: portage-2.2.26
  RepoMan-Options: --include-arches="alpha"
  Signed-off-by: Agostino Sarubbo <ago@gentoo.org>

  17 Jan 2016; Agostino Sarubbo <ago@gentoo.org> phpmyadmin-4.4.15.2.ebuild,
  phpmyadmin-4.5.3.1.ebuild:
  ppc stable wrt bug #569800

  Package-Manager: portage-2.2.26
  RepoMan-Options: --include-arches="ppc"
  Signed-off-by: Agostino Sarubbo <ago@gentoo.org>

  19 Jan 2016; Andreas Schuerch <nativemad@gentoo.org>
  phpmyadmin-4.4.15.2.ebuild, phpmyadmin-4.5.3.1.ebuild:
  4.4.15.2 and 4.5.3.1 stable on x86, see bug 569800

  Package-Manager: portage-2.2.26

  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:
  Replace all herds with appropriate projects (GLEP 67)

  Replace all uses of herd with appropriate project maintainers, or no
  maintainers in case of herds requested to be disbanded.

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

*phpmyadmin-4.5.4.1 (08 Feb 2016)
*phpmyadmin-4.4.15.4 (08 Feb 2016)
*phpmyadmin-4.0.10.14 (08 Feb 2016)

  08 Feb 2016; Jorge Manuel B. S. Vicetto (jmbsvicetto)
  <jmbsvicetto@gentoo.org> +phpmyadmin-4.0.10.14.ebuild,
  -phpmyadmin-4.4.14.1.ebuild, -phpmyadmin-4.4.15.2.ebuild,
  +phpmyadmin-4.4.15.4.ebuild, -phpmyadmin-4.5.3.1.ebuild,
  +phpmyadmin-4.5.4.1.ebuild:
  Security bump and subsequent bugfix update - fixes bug 573286.

  Signed-off-by: Jorge Manuel B. S. Vicetto (jmbsvicetto)
  <jmbsvicetto@gentoo.org>

*phpmyadmin-4.5.3.1 (08 Feb 2016)

  08 Feb 2016; Jorge Manuel B. S. Vicetto (jmbsvicetto)
  <jmbsvicetto@gentoo.org> +phpmyadmin-4.5.3.1.ebuild:
  Restore last stable version - dropped it by mistake.

  Signed-off-by: Jorge Manuel B. S. Vicetto (jmbsvicetto)
  <jmbsvicetto@gentoo.org>

  09 Feb 2016; Tobias Klausmann <klausman@gentoo.org>
  phpmyadmin-4.0.10.14.ebuild:
  add alpha keyword

  Gentoo-Bug: 573286

  Package-Manager: portage-2.2.27

  09 Feb 2016; Tobias Klausmann <klausman@gentoo.org>
  phpmyadmin-4.4.15.4.ebuild:
  add alpha keyword

  Gentoo-Bug: 573286

  Package-Manager: portage-2.2.27

  09 Feb 2016; Tobias Klausmann <klausman@gentoo.org>
  phpmyadmin-4.5.4.1.ebuild:
  add alpha keyword

  Gentoo-Bug: 573286

  Package-Manager: portage-2.2.27

  10 Feb 2016; Richard Freeman <rich0@gentoo.org> phpmyadmin-4.5.4.1.ebuild:
  amd64 stable

  Bug: 573286

  Package-Manager: portage-2.2.26

  12 Feb 2016; Jeroen Roovers <jer@gentoo.org> phpmyadmin-4.0.10.14.ebuild,
  phpmyadmin-4.4.15.4.ebuild, phpmyadmin-4.5.4.1.ebuild:
  Stable for HPPA PPC64 (bug #573286).

  Package-Manager: portage-2.2.27
  RepoMan-Options: --ignore-arches

  13 Mar 2016; Markus Meier <maekke@gentoo.org> phpmyadmin-4.5.4.1.ebuild:
  add ~arm, bug #575954

  Package-Manager: portage-2.2.27
  RepoMan-Options: --include-arches="arm"

  15 Mar 2016; Agostino Sarubbo <ago@gentoo.org> phpmyadmin-4.0.10.14.ebuild,
  phpmyadmin-4.4.15.4.ebuild, phpmyadmin-4.5.4.1.ebuild:
  x86 stable wrt bug #573286

  Package-Manager: portage-2.2.26
  RepoMan-Options: --include-arches="x86"
  Signed-off-by: Agostino Sarubbo <ago@gentoo.org>

  16 Mar 2016; Agostino Sarubbo <ago@gentoo.org> phpmyadmin-4.0.10.14.ebuild,
  phpmyadmin-4.4.15.4.ebuild, phpmyadmin-4.5.4.1.ebuild:
  ppc stable wrt bug #573286

  Package-Manager: portage-2.2.26
  RepoMan-Options: --include-arches="ppc"
  Signed-off-by: Agostino Sarubbo <ago@gentoo.org>

  19 Mar 2016; Agostino Sarubbo <ago@gentoo.org> phpmyadmin-4.0.10.14.ebuild,
  phpmyadmin-4.4.15.4.ebuild, phpmyadmin-4.5.4.1.ebuild:
  sparc stable wrt bug #573286

  Package-Manager: portage-2.2.26
  RepoMan-Options: --include-arches="sparc"
  Signed-off-by: Agostino Sarubbo <ago@gentoo.org>

  19 Mar 2016; Jorge Manuel B. S. Vicetto (jmbsvicetto)
  <jmbsvicetto@gentoo.org> -phpmyadmin-4.5.3.1.ebuild:
  Drop vulnerable version - fixes bug 573286.

  Signed-off-by: Jorge Manuel B. S. Vicetto (jmbsvicetto)
  <jmbsvicetto@gentoo.org>

*phpmyadmin-4.5.5.1 (19 Mar 2016)
*phpmyadmin-4.4.15.5 (19 Mar 2016)
*phpmyadmin-4.0.10.15 (19 Mar 2016)

  19 Mar 2016; Jorge Manuel B. S. Vicetto (jmbsvicetto)
  <jmbsvicetto@gentoo.org> +phpmyadmin-4.0.10.15.ebuild,
  +phpmyadmin-4.4.15.5.ebuild, +phpmyadmin-4.5.5.1.ebuild:
  Security bmp to versions 4.0.10.15, 4.4.15.5 and 4.5.5.1 (PMASA-2016-10,
  PMASA-2016-11, PMASA-2016-12 and PMASA-2016-13) - bug 576136.

  Signed-off-by: Jorge Manuel B. S. Vicetto (jmbsvicetto)
  <jmbsvicetto@gentoo.org>

*phpmyadmin-4.6.0_rc1 (19 Mar 2016)

  19 Mar 2016; Jorge Manuel B. S. Vicetto (jmbsvicetto)
  <jmbsvicetto@gentoo.org> +phpmyadmin-4.6.0_rc1.ebuild:
  Add new 4.6.0_rc1 release.

  Signed-off-by: Jorge Manuel B. S. Vicetto (jmbsvicetto)
  <jmbsvicetto@gentoo.org>

  19 Mar 2016; Jorge Manuel B. S. Vicetto (jmbsvicetto)
  <jmbsvicetto@gentoo.org> phpmyadmin-4.5.5.1.ebuild,
  phpmyadmin-4.6.0_rc1.ebuild:
  Add dropped ~arm keyword to the 4.5 branch and keep it in the 4.6 branch.

  Signed-off-by: Jorge Manuel B. S. Vicetto (jmbsvicetto)
  <jmbsvicetto@gentoo.org>

  19 Mar 2016; Jorge Manuel B. S. Vicetto (jmbsvicetto)
  <jmbsvicetto@gentoo.org> -phpmyadmin-4.0.10.14.ebuild,
  -phpmyadmin-4.4.15.4.ebuild:
  Drop vulnerable versions - bug 576136.

  Signed-off-by: Jorge Manuel B. S. Vicetto (jmbsvicetto)
  <jmbsvicetto@gentoo.org>

  24 Mar 2016; Agostino Sarubbo <ago@gentoo.org> phpmyadmin-4.0.10.15.ebuild,
  phpmyadmin-4.4.15.5.ebuild, phpmyadmin-4.5.5.1.ebuild:
  Stable for amd64/ppc/ppc64/sparc/x86 wrt bug #576136

  Package-Manager: portage-2.2.26
  Signed-off-by: Agostino Sarubbo <ago@gentoo.org>

  26 Mar 2016; Jeroen Roovers <jer@gentoo.org> phpmyadmin-4.0.10.15.ebuild,
  phpmyadmin-4.4.15.5.ebuild, phpmyadmin-4.5.5.1.ebuild:
  Stable for HPPA (bug #576136).

  Package-Manager: portage-2.2.28
  RepoMan-Options: --ignore-arches

*phpmyadmin-4.6.0 (14 Apr 2016)

  14 Apr 2016; Jorge Manuel B. S. Vicetto (jmbsvicetto)
  <jmbsvicetto@gentoo.org> -phpmyadmin-4.6.0_rc1.ebuild,
  +phpmyadmin-4.6.0.ebuild:
  Version bump to release 4.6.0.

  Signed-off-by: Jorge Manuel B. S. Vicetto (jmbsvicetto)
  <jmbsvicetto@gentoo.org>

  20 May 2016; Tobias Klausmann <klausman@gentoo.org>
  phpmyadmin-4.0.10.15.ebuild:
  4.0.10.15-r0: add alpha keyword

  Gentoo-Bug: 576136

  Package-Manager: portage-2.3.0_rc1

  20 May 2016; Tobias Klausmann <klausman@gentoo.org>
  phpmyadmin-4.4.15.5.ebuild:
  4.4.15.5-r0: add alpha keyword

  Gentoo-Bug: 576136

  Package-Manager: portage-2.3.0_rc1

  20 May 2016; Tobias Klausmann <klausman@gentoo.org>
  phpmyadmin-4.5.5.1.ebuild:
  4.5.5.1-r0: add alpha keyword

  Gentoo-Bug: 576136

  Package-Manager: portage-2.3.0_rc1

*phpmyadmin-4.6.1 (24 May 2016)

  24 May 2016; Jorge Manuel B. S. Vicetto (jmbsvicetto)
  <jmbsvicetto@gentoo.org> +phpmyadmin-4.6.1.ebuild:
  Version bump to maintenance release 4.6.1 - fixes bug 583896.

  Package-Manager: portage-2.2.28

  24 May 2016; Jorge Manuel B. S. Vicetto (jmbsvicetto)
  <jmbsvicetto@gentoo.org> -phpmyadmin-4.5.4.1.ebuild:
  Drop vulnerable version - bug 576136.

  Package-Manager: portage-2.2.28

*phpmyadmin-4.6.4 (21 Aug 2016)
*phpmyadmin-4.4.15.8 (21 Aug 2016)
*phpmyadmin-4.0.10.17 (21 Aug 2016)

  21 Aug 2016; Jorge Manuel B. S. Vicetto (jmbsvicetto)
  <jmbsvicetto@gentoo.org> +phpmyadmin-4.0.10.17.ebuild,
  +phpmyadmin-4.4.15.8.ebuild, +phpmyadmin-4.6.4.ebuild:
  Security bump - 4.0.10.17, 4.4.15.8 and 4.6.4 releases.

  Series of security fixes listed in PMASA-2016-{29..43,45..56} with
  corresponding CVE 2016-{6606..6620,6622..6633}.
  For more details check each security advisory:
  https://www.phpmyadmin.net/security/PMASA-2016-29/
  https://www.phpmyadmin.net/security/PMASA-2016-30/
  https://www.phpmyadmin.net/security/PMASA-2016-31/
  https://www.phpmyadmin.net/security/PMASA-2016-32/
  https://www.phpmyadmin.net/security/PMASA-2016-33/
  https://www.phpmyadmin.net/security/PMASA-2016-34/
  https://www.phpmyadmin.net/security/PMASA-2016-35/
  https://www.phpmyadmin.net/security/PMASA-2016-36/
  https://www.phpmyadmin.net/security/PMASA-2016-37/
  https://www.phpmyadmin.net/security/PMASA-2016-38/
  https://www.phpmyadmin.net/security/PMASA-2016-39/
  https://www.phpmyadmin.net/security/PMASA-2016-40/
  https://www.phpmyadmin.net/security/PMASA-2016-41/
  https://www.phpmyadmin.net/security/PMASA-2016-42/
  https://www.phpmyadmin.net/security/PMASA-2016-43/
  https://www.phpmyadmin.net/security/PMASA-2016-45/
  https://www.phpmyadmin.net/security/PMASA-2016-46/
  https://www.phpmyadmin.net/security/PMASA-2016-47/
  https://www.phpmyadmin.net/security/PMASA-2016-48/
  https://www.phpmyadmin.net/security/PMASA-2016-49/
  https://www.phpmyadmin.net/security/PMASA-2016-50/
  https://www.phpmyadmin.net/security/PMASA-2016-51/
  https://www.phpmyadmin.net/security/PMASA-2016-52/
  https://www.phpmyadmin.net/security/PMASA-2016-53/
  https://www.phpmyadmin.net/security/PMASA-2016-54/
  https://www.phpmyadmin.net/security/PMASA-2016-55/
  https://www.phpmyadmin.net/security/PMASA-2016-56/

  Package-Manager: portage-2.3.0

  21 Aug 2016; Jorge Manuel B. S. Vicetto (jmbsvicetto)
  <jmbsvicetto@gentoo.org> -phpmyadmin-4.5.5.1.ebuild,
  -phpmyadmin-4.6.0.ebuild, -phpmyadmin-4.6.1.ebuild:
  Drop old, vulnerable and or unsupported versions.

  Signed-off-by: Jorge Manuel B. S. Vicetto (jmbsvicetto)
  <jmbsvicetto@gentoo.org>

  13 Sep 2016; Agostino Sarubbo <ago@gentoo.org> phpmyadmin-4.0.10.17.ebuild,
  phpmyadmin-4.4.15.8.ebuild:
  amd64 stable wrt bug #593582

  Package-Manager: portage-2.2.28
  RepoMan-Options: --include-arches="amd64"
  Signed-off-by: Agostino Sarubbo <ago@gentoo.org>

  16 Sep 2016; Tobias Klausmann <klausman@gentoo.org>
  phpmyadmin-4.0.10.17.ebuild:
  4.0.10.17-r0: add alpha keyword

  Gentoo-Bug: 593582

  16 Sep 2016; Tobias Klausmann <klausman@gentoo.org>
  phpmyadmin-4.4.15.8.ebuild:
  4.4.15.8-r0: add alpha keyword

  Gentoo-Bug: 593582

  24 Sep 2016; Jeroen Roovers <jer@gentoo.org> phpmyadmin-4.4.15.8.ebuild:
  Stable for HPPA (bug #593582).

  Package-Manager: portage-2.3.1
  RepoMan-Options: --ignore-arches

  24 Sep 2016; Jeroen Roovers <jer@gentoo.org> phpmyadmin-4.4.15.8.ebuild:
  Stable for PPC64 (bug #593582).

  Package-Manager: portage-2.3.1
  RepoMan-Options: --ignore-arches

  24 Sep 2016; Jeroen Roovers <jer@gentoo.org> phpmyadmin-4.0.10.17.ebuild:
  Stable for HPPA PPC64 (bug #593582).

  Package-Manager: portage-2.3.1
  RepoMan-Options: --ignore-arches

