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

*gnutls-3.4.3-r1 (09 Aug 2015)
*gnutls-3.3.16-r1 (09 Aug 2015)
*gnutls-3.3.15 (09 Aug 2015)
*gnutls-2.12.23-r6 (09 Aug 2015)

  09 Aug 2015; Robin H. Johnson <robbat2@gentoo.org>
  +files/gnutls-2.12.20-AF_UNIX.patch,
  +files/gnutls-2.12.20-guile-parallelmake.patch,
  +files/gnutls-2.12.20-libadd.patch,
  +files/gnutls-2.12.23-CVE-2013-2116.patch,
  +files/gnutls-2.12.23-CVE-2014-0092.patch,
  +files/gnutls-2.12.23-CVE-2014-1959.patch,
  +files/gnutls-2.12.23-CVE-2014-3466.patch,
  +files/gnutls-2.12.23-CVE-2014-3467.patch,
  +files/gnutls-2.12.23-CVE-2014-3468.patch,
  +files/gnutls-2.12.23-CVE-2014-3469.patch,
  +files/gnutls-2.12.23-cross-compile.patch,
  +files/gnutls-2.12.23-gdoc-perl-5.18.patch,
  +files/gnutls-2.12.23-gl-tests-getaddrinfo-skip-if-no-network.patch,
  +files/gnutls-2.12.23-hppa.patch, +gnutls-2.12.23-r6.ebuild,
  +gnutls-3.3.15.ebuild, +gnutls-3.3.16-r1.ebuild, +gnutls-3.4.3-r1.ebuild,
  +metadata.xml:
  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

*gnutls-3.4.4 (10 Aug 2015)
*gnutls-3.3.17 (10 Aug 2015)

  10 Aug 2015; Alon Bar-Lev <alonbl@gentoo.org> +gnutls-3.3.17.ebuild,
  +gnutls-3.4.4.ebuild:
  version bumps

  Package-Manager: portage-2.2.20

  10 Aug 2015; Julian Ospald <hasufell@gentoo.org> gnutls-3.3.17.ebuild,
  gnutls-3.4.4.ebuild:
  Convert CVS style headers back to git style headers

  19 Aug 2015; Alon Bar-Lev <alonbl@gentoo.org> gnutls-3.3.17.ebuild,
  gnutls-3.4.3-r1.ebuild, gnutls-3.4.4.ebuild:
  remove usless S override

  Package-Manager: portage-2.2.20.1

*gnutls-3.4.4.1 (21 Aug 2015)
*gnutls-3.3.17.1 (21 Aug 2015)

  21 Aug 2015; Alon Bar-Lev <alonbl@gentoo.org> -gnutls-3.3.17.ebuild,
  +gnutls-3.3.17.1.ebuild, -gnutls-3.4.4.ebuild, +gnutls-3.4.4.1.ebuild:
  version bump

  Bug: 557592

  Package-Manager: portage-2.2.20.1

  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

  29 Aug 2015; Alon Bar-Lev <alonbl@gentoo.org> gnutls-3.4.4.1.ebuild:
  fix libtasm1 dependency

  Bug: 558858
  Thanks: Andrew John Hughes

  Package-Manager: portage-2.2.20.1

  29 Aug 2015; Alon Bar-Lev <alonbl@gentoo.org> gnutls-3.3.17.1.ebuild:
  fix libtasm1 dependency

  Bug: 558858
  Thanks: Andrew John Hughes

  Package-Manager: portage-2.2.20.1

  29 Aug 2015; Alon Bar-Lev <alonbl@gentoo.org> -gnutls-3.3.16-r1.ebuild,
  -gnutls-3.4.3-r1.ebuild:
  cleanup

  Package-Manager: portage-2.2.20.1

  30 Aug 2015; Mikle Kolyada <zlogene@gentoo.org> gnutls-3.3.17.1.ebuild:
  amd64 stable wrt bug #559120

  Package-Manager: portage-2.2.20.1

  30 Aug 2015; Tobias Klausmann <klausman@gentoo.org> gnutls-3.3.17.1.ebuild:
  add alpha keyword

  Gentoo-Bug: 559120

  Package-Manager: portage-2.2.20.1

  06 Sep 2015; Markus Meier <maekke@gentoo.org> gnutls-3.3.17.1.ebuild:
  arm stable, bug #559120

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

  06 Sep 2015; Agostino Sarubbo <ago@gentoo.org> gnutls-3.3.17.1.ebuild:
  ppc stable wrt bug #559120

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

  08 Sep 2015; Jeroen Roovers <jer@gentoo.org> gnutls-3.3.17.1.ebuild:
  Stable for HPPA PPC64 (bug #559120).

  Package-Manager: portage-2.2.20.1

*gnutls-3.4.5 (12 Sep 2015)
*gnutls-3.3.18 (12 Sep 2015)

  12 Sep 2015; Alon Bar-Lev <alonbl@gentoo.org> +gnutls-3.3.18.ebuild,
  +gnutls-3.4.5.ebuild:
  version bump

  Package-Manager: portage-2.2.20.1

  20 Sep 2015; Agostino Sarubbo <ago@gentoo.org> gnutls-3.3.17.1.ebuild:
  x86 stable wrt bug #559120

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

  21 Sep 2015; Agostino Sarubbo <ago@gentoo.org> gnutls-3.3.17.1.ebuild:
  sparc stable wrt bug #559120

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

  24 Sep 2015; Agostino Sarubbo <ago@gentoo.org> gnutls-3.3.17.1.ebuild:
  ia64 stable wrt bug #559120

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

  24 Sep 2015; Alon Bar-Lev <alonbl@gentoo.org> -gnutls-3.3.15.ebuild,
  -gnutls-3.4.4.1.ebuild:
  cleanup

  Package-Manager: portage-2.2.20.1

  25 Sep 2015; Alon Bar-Lev <alonbl@gentoo.org> gnutls-3.3.17.1.ebuild,
  gnutls-3.3.18.ebuild, gnutls-3.4.5.ebuild:
  depend nettle with subslot aware

  Bug: 561458

  Package-Manager: portage-2.2.20.1

*gnutls-3.4.6 (20 Oct 2015)

  20 Oct 2015; Alon Bar-Lev <alonbl@gentoo.org> +gnutls-3.4.6.ebuild:
  version bump

  Package-Manager: portage-2.2.20.1

  22 Oct 2015; Alon Bar-Lev <alonbl@gentoo.org> metadata.xml:
  add subslot description

  Package-Manager: portage-2.2.20.1

  18 Nov 2015; Alon Bar-Lev <alonbl@gentoo.org> -gnutls-2.12.23-r6.ebuild,
  metadata.xml:
  cleanup

  Bug: 553690

  Package-Manager: portage-2.2.20.1

*gnutls-3.4.7 (22 Nov 2015)
*gnutls-3.3.19 (22 Nov 2015)

  22 Nov 2015; Alon Bar-Lev <alonbl@gentoo.org> +gnutls-3.3.19.ebuild,
  +gnutls-3.4.7.ebuild:
  version bump

  Package-Manager: portage-2.2.20.1

*gnutls-3.4.7-r1 (19 Dec 2015)
*gnutls-3.3.19-r1 (19 Dec 2015)

  19 Dec 2015; Alon Bar-Lev <alonbl@gentoo.org> +files/gnutls-3.3.19-build-all
  ow-installing-man-1-even-with-disable-doc.patch, +files/gnutls-3.4.7-build-a
  llow-installing-man-1-even-with-disable-doc.patch, +gnutls-3.3.19-r1.ebuild,
  +gnutls-3.4.7-r1.ebuild:
  install man(1)

  Bug: 568534

  Package-Manager: portage-2.2.24

*gnutls-3.4.8 (08 Jan 2016)
*gnutls-3.3.20 (08 Jan 2016)

  08 Jan 2016; Alon Bar-Lev <alonbl@gentoo.org> +gnutls-3.3.20.ebuild,
  +gnutls-3.4.8.ebuild:
  version bump

  Package-Manager: portage-2.2.26

  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)

*gnutls-3.4.9 (03 Feb 2016)
*gnutls-3.3.21 (03 Feb 2016)

  03 Feb 2016; Alon Bar-Lev <alonbl@gentoo.org> +gnutls-3.3.21.ebuild,
  +gnutls-3.4.9.ebuild:
  version bump

  Package-Manager: portage-2.2.26

*gnutls-3.4.10 (03 Mar 2016)

  03 Mar 2016; Alon Bar-Lev <alonbl@gentoo.org> +gnutls-3.4.10.ebuild:
  version bump

  Package-Manager: portage-2.2.26

*gnutls-3.3.22 (11 Mar 2016)

  11 Mar 2016; Alon Bar-Lev <alonbl@gentoo.org> +gnutls-3.3.22.ebuild:
  version bump

  Package-Manager: portage-2.2.26

*gnutls-3.4.11 (11 Apr 2016)

  11 Apr 2016; Alon Bar-Lev <alonbl@gentoo.org> +gnutls-3.4.11.ebuild:
  version bump

  Package-Manager: portage-2.2.26

*gnutls-3.5.0 (09 May 2016)

  09 May 2016; Alon Bar-Lev <alonbl@gentoo.org>
  +files/gnutls-3.5.0-build.patch, +gnutls-3.5.0.ebuild:
  version bump

  Package-Manager: portage-2.2.26

  10 May 2016; Alon Bar-Lev <alonbl@gentoo.org> -gnutls-3.3.18.ebuild,
  -gnutls-3.3.19.ebuild, -gnutls-3.3.19-r1.ebuild, -gnutls-3.3.20.ebuild,
  -gnutls-3.3.21.ebuild, -gnutls-3.4.5.ebuild, -gnutls-3.4.6.ebuild,
  -gnutls-3.4.7.ebuild, -gnutls-3.4.7-r1.ebuild, -gnutls-3.4.8.ebuild,
  -gnutls-3.4.9.ebuild, -gnutls-3.4.10.ebuild:
  cleanup

  Package-Manager: portage-2.2.26

*gnutls-3.4.12 (20 May 2016)
*gnutls-3.3.23 (20 May 2016)

  20 May 2016; Alon Bar-Lev <alonbl@gentoo.org> +gnutls-3.3.23.ebuild,
  +gnutls-3.4.12.ebuild:
  version bump

  Package-Manager: portage-2.2.28

*gnutls-3.4.13 (06 Jun 2016)

  06 Jun 2016; Alon Bar-Lev <alonbl@gentoo.org> +gnutls-3.4.13.ebuild:
  version bump

  Package-Manager: portage-2.2.28

  11 Jun 2016; Alon Bar-Lev <alonbl@gentoo.org> -gnutls-3.3.22.ebuild,
  -gnutls-3.4.11.ebuild, -gnutls-3.4.12.ebuild:
  cleanup

  Package-Manager: portage-2.2.28

*gnutls-3.5.1 (14 Jun 2016)

  14 Jun 2016; Alon Bar-Lev <alonbl@gentoo.org>
  -files/gnutls-3.5.0-build.patch, +gnutls-3.5.1.ebuild:
  version bump

  Package-Manager: portage-2.2.28

*gnutls-3.5.2 (06 Jul 2016)
*gnutls-3.4.14 (06 Jul 2016)
*gnutls-3.3.24 (06 Jul 2016)

  06 Jul 2016; Alon Bar-Lev <alonbl@gentoo.org> +gnutls-3.3.24.ebuild,
  +gnutls-3.4.14.ebuild, +gnutls-3.5.2.ebuild:
  version bump

  Package-Manager: portage-2.2.28

  08 Jul 2016; Agostino Sarubbo <ago@gentoo.org> gnutls-3.3.24.ebuild:
  amd64 stable wrt bug #588306

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

  08 Jul 2016; Agostino Sarubbo <ago@gentoo.org> gnutls-3.3.24.ebuild:
  x86 stable wrt bug #588306

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

  09 Jul 2016; Jeroen Roovers <jer@gentoo.org> gnutls-3.3.24.ebuild:
  Stable for HPPA PPC64 (bug #588306).

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

  16 Jul 2016; Tobias Klausmann <klausman@gentoo.org> gnutls-3.3.24.ebuild:
  3.3.24-r0: add alpha keyword

  Gentoo-Bug: 588306

  24 Jul 2016; Markus Meier <maekke@gentoo.org> gnutls-3.3.24.ebuild:
  arm stable, bug #588306

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

*gnutls-3.5.3 (09 Aug 2016)

  09 Aug 2016; Alon Bar-Lev <alonbl@gentoo.org> +gnutls-3.5.3.ebuild:
  version bump

  Package-Manager: portage-2.2.28

  09 Aug 2016; Alon Bar-Lev <alonbl@gentoo.org> gnutls-3.4.14.ebuild,
  gnutls-3.5.3.ebuild, metadata.xml:
  add tls-heartbeat, sslv2, sslv3 USE flags

  Bug: 590856

  Package-Manager: portage-2.2.28

  09 Aug 2016; Alon Bar-Lev <alonbl@gentoo.org> -gnutls-3.5.0.ebuild,
  -gnutls-3.5.1.ebuild, -gnutls-3.5.2.ebuild:
  cleanup

  Package-Manager: portage-2.2.28

*gnutls-3.4.14-r1 (12 Aug 2016)

  12 Aug 2016; Alon Bar-Lev <alonbl@gentoo.org>
  +files/gnutls-3.4.14-build.patch, +gnutls-3.4.14-r1.ebuild:
  fix parallel build

  Bug: 590918
  Thanks: Oleg

  Package-Manager: portage-2.2.28

  12 Aug 2016; Alon Bar-Lev <alonbl@gentoo.org> -gnutls-3.4.13.ebuild,
  -gnutls-3.4.14.ebuild:
  cleanup

  Package-Manager: portage-2.2.28

*gnutls-3.5.4 (09 Sep 2016)
*gnutls-3.4.15 (09 Sep 2016)

  09 Sep 2016; Alon Bar-Lev <alonbl@gentoo.org> +gnutls-3.4.15.ebuild,
  +gnutls-3.5.4.ebuild:
  version bump

  Package-Manager: portage-2.2.28

  23 Sep 2016; Alon Bar-Lev <alonbl@gentoo.org>
  -files/gnutls-2.12.20-AF_UNIX.patch,
  -files/gnutls-2.12.20-guile-parallelmake.patch,
  -files/gnutls-2.12.20-libadd.patch,
  -files/gnutls-2.12.23-CVE-2013-2116.patch,
  -files/gnutls-2.12.23-CVE-2014-0092.patch,
  -files/gnutls-2.12.23-CVE-2014-1959.patch,
  -files/gnutls-2.12.23-CVE-2014-3466.patch,
  -files/gnutls-2.12.23-CVE-2014-3467.patch,
  -files/gnutls-2.12.23-CVE-2014-3468.patch,
  -files/gnutls-2.12.23-CVE-2014-3469.patch,
  -files/gnutls-2.12.23-cross-compile.patch,
  -files/gnutls-2.12.23-gdoc-perl-5.18.patch,
  -files/gnutls-2.12.23-gl-tests-getaddrinfo-skip-if-no-network.patch,
  -files/gnutls-2.12.23-hppa.patch:
  remove unused files introduced by forigin merge 2f983b0?!?

  23 Sep 2016; Alon Bar-Lev <alonbl@gentoo.org> -gnutls-3.4.14-r1.ebuild,
  -gnutls-3.5.3.ebuild:
  cleanup

*gnutls-3.3.24-r1 (23 Sep 2016)

  23 Sep 2016; Alon Bar-Lev <alonbl@gentoo.org>
  +files/gnutls-3.3.24-CVE-2016-7444.patch, +gnutls-3.3.24-r1.ebuild:
  fix CVE-2016-7444

  Thanks:  behemothchess
  Bug: 594738
  Package-Manager: portage-2.2.28

  24 Sep 2016; Jeroen Roovers <jer@gentoo.org> gnutls-3.3.24-r1.ebuild:
  Stable for HPPA PPC64 (bug #594738).

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

