[gentoo-dev] Automated Package Removal and Addition Tracker, for the week ending 2019-07-21 23:59 UTC

2019-07-21 Thread Robin H. Johnson
The attached list notes all of the packages that were added or removed
from the tree, for the week ending 2019-07-21 23:59 UTC.

Removals:
dev-libs/liblazy 20190721-13:58 chewi890bc1db14c
games-kids/pytraffic 20190721-13:59 chewi6ada94c13b6
games-misc/yadex 20190721-14:01 chewi8117e2672f9

Additions:
dev-perl/Alien-Build 20190717-10:36 kentnl   4e62f2a039b
dev-perl/Alien-Libxml2   20190717-10:47 kentnl   487f99e7bda
dev-perl/FFI-CheckLib20190717-10:15 kentnl   5394804b674
dev-python/django-cacheops   20190715-23:13 williamh e0ea4cedc7e
dev-python/django-prometheus 20190715-22:15 williamh e9bc478ec8e
dev-ruby/jbuilder20190720-05:05 graaff   1d770d0daf7

--
Robin Hugh Johnson
Gentoo Linux Developer
E-Mail : robb...@gentoo.org
GnuPG FP   : 11AC BA4F 4778 E3F6 E4ED  F38E B27B 944E 3488 4E85
Removed Packages:
games-misc/yadex,removed,chewi,20190721-14:01,8117e2672f9
games-kids/pytraffic,removed,chewi,20190721-13:59,6ada94c13b6
dev-libs/liblazy,removed,chewi,20190721-13:58,890bc1db14c
Added Packages:
dev-ruby/jbuilder,added,graaff,20190720-05:05,1d770d0daf7
dev-perl/Alien-Libxml2,added,kentnl,20190717-10:47,487f99e7bda
dev-perl/Alien-Build,added,kentnl,20190717-10:36,4e62f2a039b
dev-perl/FFI-CheckLib,added,kentnl,20190717-10:15,5394804b674
dev-python/django-cacheops,added,williamh,20190715-23:13,e0ea4cedc7e
dev-python/django-prometheus,added,williamh,20190715-22:15,e9bc478ec8e

Done.

[gentoo-dev] [PATCH v2] python-any-r1.eclass: Declare PYTHON_REQUIRED_USE to catch errors

2019-07-21 Thread Michał Górny
Changes in v2:
- declare PYTHON_REQUIRED_USE only if not declared already
  (fixes issue when eclass is inherited multiple times)

Signed-off-by: Michał Górny 
---
 eclass/python-any-r1.eclass | 8 +++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/eclass/python-any-r1.eclass b/eclass/python-any-r1.eclass
index 7a91507a600f..db8f23647cd1 100644
--- a/eclass/python-any-r1.eclass
+++ b/eclass/python-any-r1.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2019 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: python-any-r1.eclass
@@ -171,6 +171,12 @@ _python_any_set_globals() {
PYTHON_DEPS=${deps}
readonly PYTHON_DEPS
fi
+
+   if [[ ! ${PYTHON_REQUIRED_USE+1} ]]; then
+   # fake var to catch mistaken usage
+   PYTHON_REQUIRED_USE='I-DO-NOT-EXIST-IN-PYTHON-ANY-R1'
+   readonly PYTHON_REQUIRED_USE
+   fi
 }
 _python_any_set_globals
 unset -f _python_any_set_globals
-- 
2.22.0




[gentoo-dev] [PATCH] python-any-r1.eclass: Declare PYTHON_REQUIRED_USE to catch errors

2019-07-21 Thread Michał Górny
Signed-off-by: Michał Górny 
---
 eclass/python-any-r1.eclass | 6 +-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/eclass/python-any-r1.eclass b/eclass/python-any-r1.eclass
index 7a91507a600f..184efc46b5d4 100644
--- a/eclass/python-any-r1.eclass
+++ b/eclass/python-any-r1.eclass
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2019 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: python-any-r1.eclass
@@ -171,6 +171,10 @@ _python_any_set_globals() {
PYTHON_DEPS=${deps}
readonly PYTHON_DEPS
fi
+
+   # fake var to catch mistaken usage
+   PYTHON_REQUIRED_USE='I-DO-NOT-EXIST-IN-PYTHON-ANY-R1'
+   readonly PYTHON_REQUIRED_USE
 }
 _python_any_set_globals
 unset -f _python_any_set_globals
-- 
2.22.0




Re: [gentoo-dev] [RFC] New QA policy: Packages must not disable installing manpages via USE flags

2019-07-21 Thread Christopher Head
On July 20, 2019 1:22:39 PM PDT, "Michał Górny"  wrote:
>Yes, I get it.  User experience is not important if it would mean
>developers would actually do anything but the bare minimum to get
>from one paycheck to another.  The usual Gentoo attitude.

Is my experience as a user really improved if a package I use is dropped 
because its maintainer no longer has time to maintain it because they now have 
to spend their N available hours per month building man pages for one package 
rather than maintaining two?

-- 
Christopher Head

signature.asc
Description: PGP signature


Re: [gentoo-dev] [RFC] New QA policy: Packages must not disable installing manpages via USE flags

2019-07-21 Thread Fabian Groffen
On 21-07-2019 23:47:02 +1200, Kent Fredric wrote:
> Yes, yes, I'm suggesting something perverted like a build server or
> system for aggregating built man-pages on gentoo-servers automatically
> as part of CI, that end users can just trivially fetch. But that's just
> one approach, surely, there are others.

Right, or we go for some (official) form of binpkgs distribution.

Fabian

-- 
Fabian Groffen
Gentoo on a different level


signature.asc
Description: PGP signature


Re: [gentoo-dev] [RFC] New QA policy: Packages must not disable installing manpages via USE flags

2019-07-21 Thread Kent Fredric
On Sat, 20 Jul 2019 22:22:39 +0200
Michał Górny  wrote:

> Yes, I get it.  User experience is not important if it would mean
> developers would actually do anything but the bare minimum to get
> from one paycheck to another.  The usual Gentoo attitude.

You of course realise putting more demands on The Process of existing
developers, who are in short supply, and their time is also in short
supply, will, ultimately result in a detriment to the userbase, by
virtue of them becoming less capable to achieve the same volume of
tasks?

Its one thing to make this a policy, which I think on the _surface_ is
fine, but this one hints towards substantial changes we don't currently
have tooling support to streamline.

Maybe think about how we can empower developers to achieve this, and
then after it becomes remotely practical to do this _at scale_, we make
it policy to do so?

Yes, yes, I'm suggesting something perverted like a build server or
system for aggregating built man-pages on gentoo-servers automatically
as part of CI, that end users can just trivially fetch. But that's just
one approach, surely, there are others.


pgpjWLbgg2KLe.pgp
Description: OpenPGP digital signature


[gentoo-dev] [PATCH 6/6] ruby-ng.eclass: remove 2-arg calling of depend methods in EAPI 7

2019-07-21 Thread graaff
From: Hans de Graaff 

No longer allow the deprecated 2 argument calls to the ruby*depend
methods in EAPI 7. These are already deprecated for a long time.

Signed-off-by: Hans de Graaff 
---
 eclass/ruby-ng.eclass | 26 --
 1 file changed, 20 insertions(+), 6 deletions(-)

diff --git a/eclass/ruby-ng.eclass b/eclass/ruby-ng.eclass
index 9fb6965a0790..a0c03ab6027e 100644
--- a/eclass/ruby-ng.eclass
+++ b/eclass/ruby-ng.eclass
@@ -208,9 +208,16 @@ ruby_add_rdepend() {
case $# in
1) ;;
2)
-   [[ "${GENTOO_DEV}" == "yes" ]] && eqawarn "You can now 
use the usual syntax in ruby_add_rdepend for $CATEGORY/$PF"
-   ruby_add_rdepend "$(_ruby_wrap_conditions "$1" "$2")"
-   return
+   case ${EAPI} in
+   4|5|6)
+   [[ "${GENTOO_DEV}" == "yes" ]] && 
eqawarn "You can now use the usual syntax in ruby_add_rdepend for $CATEGORY/$PF"
+   ruby_add_rdepend 
"$(_ruby_wrap_conditions "$1" "$2")"
+   return
+   ;;
+   *)
+   die "Use the usual depend syntax with a 
single argument in ruby_add_rdepend"
+   ;;
+   esac
;;
*)
die "bad number of arguments to $0"
@@ -243,9 +250,16 @@ ruby_add_bdepend() {
case $# in
1) ;;
2)
-   [[ "${GENTOO_DEV}" == "yes" ]] && eqawarn "You can now 
use the usual syntax in ruby_add_bdepend for $CATEGORY/$PF"
-   ruby_add_bdepend "$(_ruby_wrap_conditions "$1" "$2")"
-   return
+   case ${EAPI} in
+   4|5|6)
+   [[ "${GENTOO_DEV}" == "yes" ]] && 
eqawarn "You can now use the usual syntax in ruby_add_bdepend for $CATEGORY/$PF"
+   ruby_add_bdepend 
"$(_ruby_wrap_conditions "$1" "$2")"
+   return
+   ;;
+   *)
+   die "Use the usual depend syntax with a 
single argument in ruby_add_bdepend"
+   ;;
+   esac
;;
*)
die "bad number of arguments to $0"
-- 
2.21.0




[gentoo-dev] [PATCH 5/6] ruby-ng.eclass: handle BDEPEND for EAPI 7

2019-07-21 Thread graaff
From: Hans de Graaff 

Add support for BDEPEND in EAPI 7.

It is not clear how to handle test dependencies since the test
framework will need to run on the CBUILD host but the code that needs
to run is already cross-compiled for the CHOST. Most likely tests
won't work at all in this case. Add test dependencies to BDEPEND in
EAPI 7 since this matches most closely to how the test will be
executed.

Adjust `ruby_add_bdepend` to add to BDEPEND on EAPI 7. This also
allows us to keep the name for this method. Add a new
`ruby_add_depend` to add to DEPEND in EAPI 7 and newer only. This
allows for the rare case where gems need to link to other gem
code (e.g. dev-ruby/nokogumbo).

Add ruby itself to RDEPEND, BDEPEND, and DEPEND since it is expected
to be present in all three cases.

Signed-off-by: Hans de Graaff 
---
 eclass/ruby-ng.eclass | 62 ---
 1 file changed, 47 insertions(+), 15 deletions(-)

diff --git a/eclass/ruby-ng.eclass b/eclass/ruby-ng.eclass
index 8663033a499c..9fb6965a0790 100644
--- a/eclass/ruby-ng.eclass
+++ b/eclass/ruby-ng.eclass
@@ -43,7 +43,7 @@
 # @DESCRIPTION:
 # Set the value to "yes" to make the dependency on a Ruby interpreter
 # optional and then ruby_implementations_depend() to help populate
-# DEPEND and RDEPEND.
+# BDEPEND, DEPEND and RDEPEND.
 
 # @ECLASS-VARIABLE: RUBY_S
 # @DEFAULT_UNSET
@@ -223,19 +223,22 @@ ruby_add_rdepend() {
 
# Add the dependency as a test-dependency since we're going to
# execute the code during test phase.
-   DEPEND="${DEPEND} test? ( ${dependency} )"
+   case ${EAPI} in
+   4|5|6) DEPEND="${DEPEND} test? ( ${dependency} )" ;;
+   *) BDEPEND="${BDEPEND} test? ( ${dependency} )" ;;
+   esac
has test "$IUSE" || IUSE="${IUSE} test"
 }
 
 # @FUNCTION: ruby_add_bdepend
 # @USAGE: dependencies
 # @DESCRIPTION:
-# Adds the specified dependencies, with use condition(s) to DEPEND,
-# taking the current set of ruby targets into account. This makes sure
-# that all ruby dependencies of the package are installed for the same
-# ruby targets. Use this function for all ruby dependencies instead of
-# setting DEPEND yourself. The list of atoms uses the same syntax as
-# normal dependencies.
+# Adds the specified dependencies, with use condition(s) to DEPEND (or
+# BDEPEND in EAPI7), taking the current set of ruby targets into
+# account. This makes sure that all ruby dependencies of the package are
+# installed for the same ruby targets. Use this function for all ruby
+# dependencies instead of setting DEPEND or BDEPEND yourself. The list
+# of atoms uses the same syntax as normal dependencies.
 ruby_add_bdepend() {
case $# in
1) ;;
@@ -251,10 +254,35 @@ ruby_add_bdepend() {
 
local dependency=$(_ruby_atoms_samelib "$1")
 
-   DEPEND="${DEPEND} $dependency"
+   case ${EAPI} in
+   4|5|6) DEPEND="${DEPEND} $dependency" ;;
+   *) BDEPEND="${BDEPEND} $dependency" ;;
+   esac
RDEPEND="${RDEPEND}"
 }
 
+# @FUNCTION: ruby_add_depend
+# @USAGE: dependencies
+# @DESCRIPTION:
+
+# Adds the specified dependencies to DEPEND in EAPI7, similar to
+# ruby_add_bdepend.
+ruby_add_depend() {
+   case ${EAPI} in
+   4|5|6) die "only available in EAPI 7 and newer" ;;
+   *) ;;
+   esac
+
+   case $# in
+   1) ;;
+   *) die "bad number of arguments to $0" ;;
+   esac
+
+   local dependency=$(_ruby_atoms_samelib "$1")
+
+   DEPEND="${DEPEND} $dependency"
+}
+
 # @FUNCTION: ruby_get_use_implementations
 # @DESCRIPTION:
 # Gets an array of ruby use targets enabled by the user
@@ -308,6 +336,10 @@ if [[ ${RUBY_OPTIONAL} != yes ]]; then
DEPEND="${DEPEND} $(ruby_implementations_depend)"
RDEPEND="${RDEPEND} $(ruby_implementations_depend)"
REQUIRED_USE+=" || ( $(ruby_get_use_targets) )"
+   case ${EAPI} in
+   4|5|6) ;;
+   *) BDEPEND="${BDEPEND} $(ruby_implementations_depend)" ;;
+   esac
 fi
 
 _ruby_invoke_environment() {
@@ -634,8 +666,8 @@ ruby-ng_rspec() {
files="spec"
fi
 
-   if [[ ${DEPEND} != *"dev-ruby/rspec"* ]]; then
-   ewarn "Missing dev-ruby/rspec in \${DEPEND}"
+   if [[ "${DEPEND}${BDEPEND}" != *"dev-ruby/rspec"* ]]; then
+   ewarn "Missing test dependency dev-ruby/rspec"
fi
 
local rspec_params=
@@ -665,8 +697,8 @@ ruby-ng_rspec() {
 # This is simply a wrapper around the cucumber command (executed by $RUBY})
 # which also respects TEST_VERBOSE and NOCOLOR environment variables.
 ruby-ng_cucumber() {
-   if [[ ${DEPEND} != *"dev-util/cucumber"* ]]; then
-   ewarn "Missing dev-util/cucumber in \${DEPEND}"
+   if [[ "${DEPEND}${BDEPEND}" != *"dev-util/cucumber"* ]]; then
+   ewarn "Missing test dependency dev-util/cucumber"
fi
 
local cucumber_params=
@@ -699,8 

[gentoo-dev] [PATCH 2/6] ruby-ng.eclass: stop inheriting toolchain-funcs

2019-07-21 Thread graaff
From: Hans de Graaff 

Stop inheriting toolchain-funcs in EAPI 7. The eclass does not use
this eclass and any ebuild that requires it should inherit it directly
instead.

Signed-off-by: Hans de Graaff 
---
 eclass/ruby-ng.eclass | 7 +--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/eclass/ruby-ng.eclass b/eclass/ruby-ng.eclass
index c2a09585d8ef..7fef1085a9dd 100644
--- a/eclass/ruby-ng.eclass
+++ b/eclass/ruby-ng.eclass
@@ -69,14 +69,17 @@
 local inherits=""
 case ${EAPI} in
4|5)
-   inherits="eutils"
+   inherits="eutils toolchain-funcs"
+   ;;
+   6)
+   inherits="estack toolchain-funcs"
;;
*)
inherits="estack"
;;
 esac
 
-inherit ${inherits} multilib toolchain-funcs ruby-utils
+inherit ${inherits} multilib ruby-utils
 
 EXPORT_FUNCTIONS src_unpack src_prepare src_configure src_compile src_test 
src_install pkg_setup
 
-- 
2.21.0




[gentoo-dev] [PATCH 3/6] ruby-ng.eclass: make presence of RUBY_PATCHES fatal

2019-07-21 Thread graaff
From: Hans de Graaff 

The eqawarn in EAPI 6 is easy to mis and may lead to patches
"silently" not being applied. die on this in EAPI 7 to make this
situation more explicit.

Signed-off-by: Hans de Graaff 
---
 eclass/ruby-ng.eclass | 7 ++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/eclass/ruby-ng.eclass b/eclass/ruby-ng.eclass
index 7fef1085a9dd..59d4450a9954 100644
--- a/eclass/ruby-ng.eclass
+++ b/eclass/ruby-ng.eclass
@@ -420,11 +420,16 @@ _ruby_apply_patches() {
fi
done
;;
-   *)
+   6)
if [[ -n ${RUBY_PATCHES[@]} ]]; then
   eqawarn "RUBY_PATCHES is no longer supported, use 
PATCHES instead"
fi
;;
+   *)
+   if [[ -n ${RUBY_PATCHES[@]} ]]; then
+   die "RUBY_PATCHES is no longer supported, use 
PATCHES instead"
+   fi
+   ;;
esac
 
# This is a special case: instead of executing just in the special
-- 
2.21.0




[gentoo-dev] [PATCH 4/6] ruby-ng.eclass: use ruby_rbconfig_value

2019-07-21 Thread graaff
From: Hans de Graaff 

Consistently use ruby_rbconfig_value to get ruby configuration
information.

Signed-off-by: Hans de Graaff 
---
 eclass/ruby-ng.eclass | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/eclass/ruby-ng.eclass b/eclass/ruby-ng.eclass
index 59d4450a9954..8663033a499c 100644
--- a/eclass/ruby-ng.eclass
+++ b/eclass/ruby-ng.eclass
@@ -515,10 +515,10 @@ _each_ruby_check_install() {
# we have a Mach-O object here
[[ ${CHOST} == *-darwin ]] && scancmd=scanmacho
 
-   local libruby_basename=$(${RUBY} -rrbconfig -e 'puts 
RbConfig::CONFIG["LIBRUBY_SO"]')
+   local libruby_basename=$(ruby_rbconfig_value 'LIBRUBY_SO')
local libruby_soname=$(basename $(${scancmd} -F "%S#F" -qS 
"${EPREFIX}/usr/$(get_libdir)/${libruby_basename}") 2>/dev/null)
-   local sitedir=$(${RUBY} -rrbconfig -e 'puts 
RbConfig::CONFIG["sitedir"]')
-   local sitelibdir=$(${RUBY} -rrbconfig -e 'puts 
RbConfig::CONFIG["sitelibdir"]')
+   local sitedir=$(ruby_rbconfig_value 'sitedir')
+   local sitelibdir=$(ruby_rbconfig_value 'sitelibdir')
 
# The current implementation lacks libruby (i.e.: jruby)
[[ -z ${libruby_soname} ]] && return 0
-- 
2.21.0




[gentoo-dev] [PATCH 1/6] ruby-ng.eclass: add EAPI 7 support

2019-07-21 Thread graaff
From: Hans de Graaff 

Signed-off-by: Hans de Graaff 
---
 eclass/ruby-ng.eclass | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/eclass/ruby-ng.eclass b/eclass/ruby-ng.eclass
index 8dc3e1661252..c2a09585d8ef 100644
--- a/eclass/ruby-ng.eclass
+++ b/eclass/ruby-ng.eclass
@@ -8,7 +8,7 @@
 # Author: Diego E. Pettenò 
 # Author: Alex Legler 
 # Author: Hans de Graaff 
-# @SUPPORTED_EAPIS: 4 5 6
+# @SUPPORTED_EAPIS: 4 5 6 7
 # @BLURB: An eclass for installing Ruby packages with proper support for 
multiple Ruby slots.
 # @DESCRIPTION:
 # The Ruby eclass is designed to allow an easier installation of Ruby packages
@@ -83,7 +83,7 @@ EXPORT_FUNCTIONS src_unpack src_prepare src_configure 
src_compile src_test src_i
 case ${EAPI} in
0|1|2|3)
die "Unsupported EAPI=${EAPI} (too old) for ruby-ng.eclass" ;;
-   4|5|6)
+   4|5|6|7)
# S is no longer automatically assigned when it doesn't exist.
S="${WORKDIR}"
;;
@@ -283,7 +283,7 @@ ruby_get_use_targets() {
 # confuse this function with ruby_implementation_depend().
 #
 # @EXAMPLE:
-# EAPI=6
+# EAPI=7
 # RUBY_OPTIONAL=yes
 #
 # inherit ruby-ng
-- 
2.21.0




Re: [gentoo-dev] [RFC] New QA policy: Packages must not disable installing manpages via USE flags

2019-07-21 Thread Michał Górny
On Wed, 2019-07-17 at 12:09 -0700, Matt Turner wrote:
> On Wed, Jul 17, 2019 at 6:25 AM Michał Górny  wrote:
> > Hello,
> > 
> > The QA team would like to introduce the following policy:
> > 
> > """
> > Packages must not disable installing manpages via USE flags (e.g.
> > USE=man or USE=doc).
> 
> Xorg libraries use USE=doc to control the build (sometimes) and
> installation of thousands of developer-documentation man pages. 99.9%
> of the time users don't want the developer man pages installed.
> 
> With USE=-doc the packages still install man pages for the
> applications, just not the developer documentation man pages.
> 
> Is that not reasonable?

I think it's a reasonable compromise.

-- 
Best regards,
Michał Górny



signature.asc
Description: This is a digitally signed message part