# ChangeLog for sys-cluster/ceph
# Copyright 1999-2016 Gentoo Foundation; Distributed under the GPL v2
# (auto-generated from git log)

*ceph-9999 (09 Aug 2015)
*ceph-0.94.2-r1 (09 Aug 2015)
*ceph-0.80.10-r1 (09 Aug 2015)
*ceph-0.80.9 (09 Aug 2015)

  09 Aug 2015; Robin H. Johnson <robbat2@gentoo.org> +ceph-0.80.9.ebuild,
  +ceph-0.80.10-r1.ebuild, +ceph-0.94.2-r1.ebuild, +ceph-9999.ebuild,
  +files/README.gentoo, +files/ceph-0.79-libzfs.patch,
  +files/ceph-0.80.10-cpp-backport.patch, +files/ceph-0.87.1-glibc-2.20.patch,
  +files/ceph-fix-gnustack.patch, +files/ceph-mds_at.service,
  +files/ceph-mds_at.service.conf, +files/ceph-mon_at.service,
  +files/ceph-mon_at.service.conf, +files/ceph-osd_at.service,
  +files/ceph-osd_at.service.conf, +files/ceph.confd-r1, +files/ceph.initd-r1,
  +files/ceph.logrotate, +files/ceph.target, +files/rbdmap.initd,
  +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

  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

*ceph-0.94.3 (02 Sep 2015)

  02 Sep 2015; Yixun Lan <dlan@gentoo.org> +ceph-0.94.3.ebuild, metadata.xml:
  version bump 0.94.3

  Gentoo-Bug: 559338

  Package-Manager: portage-2.2.20.1

  24 Sep 2015; Sergey Popov <pinkbyte@gentoo.org> ceph-0.80.10-r1.ebuild:
  amd64/x86 stable

  Gentoo-Bug: 556404

  Package-Manager: portage-2.2.20

  25 Sep 2015; Justin Lecher <jlec@gentoo.org> ceph-0.94.3.ebuild,
  metadata.xml:
  QA Fix whitespace problems

  Package-Manager: portage-2.2.21
  Signed-off-by: Justin Lecher <jlec@gentoo.org>

  14 Oct 2015; Patrick McLean <chutzpah@gentoo.org> metadata.xml:
  Add myself as co-maintainer

  Signed-off-by: Yixun Lan <dlan@gentoo.org>

*ceph-0.94.3-r1 (14 Oct 2015)

  14 Oct 2015; Patrick McLean <chutzpah@gentoo.org> +ceph-0.94.3-r1.ebuild:
  Revision bump, use python-single-r1 rather than python-any-r1

  This makes it clear that python binding are installed by this package,
  so there is a runtime dependeny on python.

  20 Oct 2015; Yixun Lan <dlan@gentoo.org> ceph-0.94.3-r1.ebuild,
  metadata.xml:
  restrict disk space requirement to 1G

  tested with USE="babeltrace debug fuse gtk libaio libatomic lttng nss
  radosgw static-libs
  tcmalloc xfs zfs -cryptopp -jemalloc" require no more than 1G disk space

  Package-Manager: portage-2.2.23

*ceph-0.94.4 (21 Oct 2015)

  21 Oct 2015; Yixun Lan <dlan@gentoo.org> -ceph-0.80.9.ebuild,
  -ceph-0.94.2-r1.ebuild, -ceph-0.94.3.ebuild, -ceph-0.94.3-r1.ebuild,
  +ceph-0.94.4.ebuild:
  bump 0.94.4, drop old

  Package-Manager: portage-2.2.23

*ceph-0.94.5 (05 Nov 2015)

  05 Nov 2015; Yixun Lan <dlan@gentoo.org> +ceph-0.94.5.ebuild:
  version bump, 0.94.5

  Package-Manager: portage-2.2.23

*ceph-10.0.0 (04 Dec 2015)
*ceph-9.0.3 (04 Dec 2015)

  04 Dec 2015; Robin H. Johnson <robbat2@gentoo.org> +ceph-9.0.3.ebuild,
  +ceph-10.0.0.ebuild:
  bump, in p.mask for now.

  Package-Manager: portage-2.2.24

*ceph-9.2.0 (21 Dec 2015)

  21 Dec 2015; Yixun Lan <dlan@gentoo.org> -ceph-0.94.4.ebuild,
  -ceph-9.0.3.ebuild, +ceph-9.2.0.ebuild, ceph-10.0.0.ebuild,
  ceph-9999.ebuild, files/README.gentoo, -files/ceph-0.87.1-glibc-2.20.patch,
  -files/ceph-fix-gnustack.patch, -files/ceph-mds_at.service,
  -files/ceph-mon_at.service, -files/ceph-osd_at.service, files/ceph.initd-r1:
  bump to 9.2.0

  add user/group: ceph
   now sys-cluster/ceph run in normal user 'ceph' instead of 'root'

  Package-Manager: portage-2.2.26

  23 Dec 2015; Yixun Lan <dlan@gentoo.org> +files/ceph-mds_at.service,
  +files/ceph-mon_at.service, +files/ceph-osd_at.service:
  restore systemd unit files for 0.94.5

  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)

  16 Feb 2016; Yixun Lan <dlan@gentoo.org> ceph-9.2.0.ebuild,
  ceph-10.0.0.ebuild, files/README.gentoo:
  warn user about permission changes

  Gentoo-bug: 574792

  Package-Manager: portage-2.2.27

  18 Feb 2016; Yixun Lan <dlan@gentoo.org> ceph-9.2.0.ebuild,
  ceph-10.0.0.ebuild:
  fix missing inherit versionator eclass

  Package-Manager: portage-2.2.27

*ceph-10.0.2 (15 Mar 2016)
*ceph-9.2.1 (15 Mar 2016)
*ceph-0.94.6 (15 Mar 2016)

  15 Mar 2016; Yixun Lan <dlan@gentoo.org> +ceph-0.94.6.ebuild,
  +ceph-9.2.1.ebuild, +ceph-10.0.2.ebuild:
  version bump

  0.94.6, 9.2.1 nothing new
  10.0.2 add cython dependency, explicitly enable eventfd

  Package-Manager: portage-2.2.27

*ceph-10.2.0 (12 May 2016)

  12 May 2016; Patrick McLean <chutzpah@gentoo.org> +ceph-10.2.0.ebuild,
  +files/ceph-10.2.0-dont-use-virtualenvs.patch, +files/ceph.initd-r2,
  metadata.xml:
  Version bump to 10.2.0 (bug #580878)

  This also adds a new init script that is written in POSIX shell (bug
  #581358)

  Gentoo-Bug: 580878

  Package-Manager: portage-2.2.28

  12 May 2016; Patrick McLean <chutzpah@gentoo.org> ceph-9999.ebuild:
  Sync 9999 ebuild with 10.2.0 ebuild

  Package-Manager: portage-2.2.28

*ceph-9.2.1-r1 (12 May 2016)

  12 May 2016; Patrick McLean <chutzpah@gentoo.org> +ceph-9.2.1-r1.ebuild:
  Revision bump to 9.2.1-r1 to fix init script (bug #581358)

  Package-Manager: portage-2.2.28

  12 May 2016; Patrick McLean <chutzpah@gentoo.org> -ceph-9.2.0.ebuild,
  -ceph-10.0.0.ebuild, -ceph-10.0.2.ebuild:
  Clean out some old versions

  Package-Manager: portage-2.2.28

*ceph-0.94.6-r1 (12 May 2016)

  12 May 2016; Patrick McLean <chutzpah@gentoo.org> +ceph-0.94.6-r1.ebuild,
  +files/ceph.initd-r1.1:
  Revision bump to 0.94.6-r1, don't try to run as "ceph" user

  Gentoo-Bug: 577570

  Package-Manager: portage-2.2.28

  12 May 2016; Patrick McLean <chutzpah@gentoo.org> -ceph-0.94.5.ebuild,
  -ceph-0.94.6.ebuild:
  Clean out old versions

  Package-Manager: portage-2.2.28

  18 May 2016; Austin English <wizardedit@gentoo.org> files/ceph.initd-r1,
  files/rbdmap.initd:
  use #!/sbin/openrc-run instead of #!/sbin/runscript

*ceph-10.2.1 (25 May 2016)

  25 May 2016; Patrick McLean <chutzpah@gentoo.org> +ceph-10.2.1.ebuild,
  +files/ceph-10.2.1-armv7l-doesnt-support-momit-leaf-frame-pointer.patch,
  +files/ceph-10.2.1-unbundle-jerasure.patch:
  Version bump to 10.2.1 (bug #583194)

  This also adds some preliminary code for unbundling dev-libs/jerasure and
  dev-libs/gf-complete (bug #463326), but it is commented out for the moment
  pending bugs 584056 and 584058.

  This also contains fixes for bugs 583550 and 582908.

  Package-Manager: portage-2.3.0_rc1

  07 Jun 2016; Yixun Lan <dlan@gentoo.org> ceph-10.2.1.ebuild,
  +files/ceph-10.2.1-libzfs.patch:
  correct zfs PKG_CONFIG's variable

  Gentoo-Bug: 585050

  Package-Manager: portage-2.3.0_rc1

  16 Jun 2016; Yixun Lan <dlan@gentoo.org> ceph-9.2.1-r1.ebuild,
  +files/ceph-9.2.1-libxfs.patch:
  fix missing xfs header err when USE=xfs enabled

  Gentoo-Bug: 585988

  Package-Manager: portage-2.3.0_rc1

*ceph-10.2.2 (16 Jun 2016)

  16 Jun 2016; Yixun Lan <dlan@gentoo.org> +ceph-10.2.2.ebuild:
  version bump 10.2.2

  Package-Manager: portage-2.3.0_rc1

  17 Jun 2016; Alexis Ballier <aballier@gentoo.org> ceph-10.2.2.ebuild,
  ceph-9999.ebuild:
  remove dependency on libedit.

  See commit f5da15945760d6a914077367b7b865e175746d72 upstream.

  Package-Manager: portage-2.3.0_rc1

  17 Jun 2016; Alexis Ballier <aballier@gentoo.org> ceph-10.2.2.ebuild,
  ceph-9999.ebuild:
  sphinx is only needed to build manpages, at build time.

  Package-Manager: portage-2.3.0_rc1

  17 Jun 2016; Alexis Ballier <aballier@gentoo.org> ceph-10.2.2.ebuild,
  ceph-9999.ebuild:
  Drop which & findutils deps.

  Those are in @system and cause me conflicts with busybox[make-symlinks]

  Package-Manager: portage-2.3.0_rc1

  17 Jun 2016; Alexis Ballier <aballier@gentoo.org> ceph-10.2.2.ebuild,
  ceph-9999.ebuild:
  Add missing dep on lz4 & bzip2.

  Those are needed by librocksdb-static currently enabled by default in
  configure.

  Package-Manager: portage-2.3.0_rc1

*ceph-10.2.2-r1 (30 Jun 2016)
*ceph-9.2.1-r2 (30 Jun 2016)

  30 Jun 2016; Patrick McLean <chutzpah@gentoo.org> +ceph-9.2.1-r2.ebuild,
  +ceph-10.2.2-r1.ebuild, +files/ceph-CVE-2016-5009.patch:
  Revision bump to 9.2.1-r2 and 10.2.2-r1 for CVE-2016-5009 (bug #587568)

  Package-Manager: portage-2.3.0

  30 Jun 2016; Patrick McLean <chutzpah@gentoo.org> -ceph-9.2.1.ebuild,
  -ceph-9.2.1-r1.ebuild, -ceph-10.2.0.ebuild, -ceph-10.2.1.ebuild,
  -ceph-10.2.2.ebuild:
  Clean out old versions in the 9.2 and 10.2 series

  Package-Manager: portage-2.3.0

  01 Jul 2016; Agostino Sarubbo <ago@gentoo.org> ceph-9.2.1-r2.ebuild:
  amd64 stable wrt bug #587568

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

  01 Jul 2016; Agostino Sarubbo <ago@gentoo.org> ceph-9.2.1-r2.ebuild:
  x86 stable wrt bug #587568

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

  01 Jul 2016; Patrick McLean <chutzpah@gentoo.org> -ceph-0.80.10-r1.ebuild,
  -ceph-0.94.6-r1.ebuild:
  Clean out versions 0.80.10 0.94.6 due to security bug #587568

  Package-Manager: portage-2.3.0

*ceph-0.94.7 (11 Jul 2016)

  11 Jul 2016; Yixun Lan <dlan@gentoo.org> +ceph-0.94.7.ebuild,
  +files/ceph-0.94.7-monitor-security.patch:
  restore 0.94.x (hammer)

  we decided to keep at least two LTS versions
  also, allow user upgrade from old versions (sidely)

  Gentoo-Bug: 587568

  Package-Manager: portage-2.3.0_rc1

*ceph-10.2.2-r2 (04 Oct 2016)

  04 Oct 2016; Alexis Ballier <aballier@gentoo.org> -ceph-10.2.2-r1.ebuild,
  +ceph-10.2.2-r2.ebuild:
  add missing := dep on crypto++

  Package-Manager: portage-2.3.1

