Re: [gentoo-dev] rfc: calling all eclass phase functions by default

2014-08-18 Thread Sergey Popov
17.08.2014 01:54, William Hubbs пишет: All, there is an ongoing discussion about how we handle eclass phase functions by default [1]. Currently, EXPORT_FUNCTIONS is called in eclasses, and because of the way this works, the phase function that is exported last in the chain of inherited

Re: [gentoo-dev] Automated Package Removal and Addition Tracker, for the week ending 2014-08-10 23h59 UTC

2014-08-18 Thread Sergey Popov
12.08.2014 16:44, Jason Zaman пишет: On Tue, Aug 12, 2014 at 11:55:51AM +0400, Sergey Popov wrote: 11.08.2014 04:25, Robin H. Johnson пишет: The attached list notes all of the packages that were added or removed from the tree, for the week ending 2014-08-10 23h59 UTC. Removals:

Re: [gentoo-dev] rfc: calling all eclass phase functions by default

2014-08-18 Thread Rich Freeman
On Mon, Aug 18, 2014 at 4:54 AM, Sergey Popov pinkb...@gentoo.org wrote: 17.08.2014 01:54, William Hubbs пишет: # Foo and bar both have src_unpack and src_install functions. # we want foo's src_unpack and bar's src_install: ECLASS_PHASES=foo_src_unpack bar_src_install You have my

Re: [gentoo-dev] rfc: calling all eclass phase functions by default

2014-08-18 Thread hasufell
Sergey Popov: You have my strong opposition on such change as well. It will turn ebuilds into unreadable and undpredictable mess, please do not do that They are already fairly unreadable and unpredictable.

Re: [gentoo-dev] rfc: eclass issues

2014-08-18 Thread hasufell
William Hubbs: All, I spoke with mgorny on IRC and found out what his concerns are about our current eclasses. First, he thinks we should get rid of base.eclass. I know there is work going on to get rid of it, but I haven't really looked into the status much yet. I do agree though, we

Re: [gentoo-dev] rfc: calling all eclass phase functions by default

2014-08-18 Thread Sergey Popov
18.08.2014 16:04, hasufell пишет: You have my strong opposition on such change as well. It will turn ebuilds into unreadable and undpredictable mess, please do not do that They are already fairly unreadable and unpredictable. For you - maybe. But not for me. I am NOT talking about hacks

Re: [gentoo-dev] rfc: calling all eclass phase functions by default

2014-08-18 Thread Sergey Popov
18.08.2014 14:44, Rich Freeman пишет: On Mon, Aug 18, 2014 at 4:54 AM, Sergey Popov pinkb...@gentoo.org wrote: 17.08.2014 01:54, William Hubbs пишет: # Foo and bar both have src_unpack and src_install functions. # we want foo's src_unpack and bar's src_install: ECLASS_PHASES=foo_src_unpack

Re: [gentoo-dev] rfc: calling all eclass phase functions by default

2014-08-18 Thread hasufell
Sergey Popov: 18.08.2014 16:04, hasufell пишет: You have my strong opposition on such change as well. It will turn ebuilds into unreadable and undpredictable mess, please do not do that They are already fairly unreadable and unpredictable. For you - maybe. But not for me. I am NOT

Re: [gentoo-dev] rfc: calling all eclass phase functions by default

2014-08-18 Thread hasufell
hasufell: Sergey Popov: 18.08.2014 16:04, hasufell пишет: You have my strong opposition on such change as well. It will turn ebuilds into unreadable and undpredictable mess, please do not do that They are already fairly unreadable and unpredictable. For you - maybe. But not for me. I

Re: [gentoo-dev] rfc: calling all eclass phase functions by default

2014-08-18 Thread Michał Górny
Dnia 2014-08-18, o godz. 12:41:11 hasufell hasuf...@gentoo.org napisał(a): hasufell: Sergey Popov: 18.08.2014 16:04, hasufell пишет: You have my strong opposition on such change as well. It will turn ebuilds into unreadable and undpredictable mess, please do not do that They are

Re: [gentoo-dev] rfc: calling all eclass phase functions by default

2014-08-18 Thread hasufell
hasufell: Even more interesting... you can work around this by inheriting base.eclass explicitly before e.g. unpacker.eclass, something like inherit base unpacker games = unpacker_src_unpack() is carried out by default (and the ebuild breaks if someone thinks the base.eclass is useless

Re: [gentoo-dev] rfc: eclass issues

2014-08-18 Thread Rich Freeman
On Mon, Aug 18, 2014 at 8:12 AM, hasufell hasuf...@gentoo.org wrote: I think the first thing to do and which already happened with e.g. qmake-utils.eclass is to make a very strong distinction between utility eclasses and those that export phase functions. Discussion on IRC the other day was

Re: [gentoo-dev] rfc: calling all eclass phase functions by default

2014-08-18 Thread Chris Reffett
On 8/18/2014 8:56 AM, hasufell wrote: hasufell: Even more interesting... you can work around this by inheriting base.eclass explicitly before e.g. unpacker.eclass, something like inherit base unpacker games = unpacker_src_unpack() is carried out by default (and the ebuild breaks if

Re: [gentoo-dev] rfc: calling all eclass phase functions by default

2014-08-18 Thread Rich Freeman
On Mon, Aug 18, 2014 at 8:21 AM, Sergey Popov pinkb...@gentoo.org wrote: 18.08.2014 14:44, Rich Freeman пишет: On Mon, Aug 18, 2014 at 4:54 AM, Sergey Popov pinkb...@gentoo.org wrote: 17.08.2014 01:54, William Hubbs пишет: # Foo and bar both have src_unpack and src_install functions. # we

Re: [gentoo-dev] rfc: calling all eclass phase functions by default

2014-08-18 Thread hasufell
Chris Reffett: On 8/18/2014 8:56 AM, hasufell wrote: hasufell: Even more interesting... you can work around this by inheriting base.eclass explicitly before e.g. unpacker.eclass, something like inherit base unpacker games = unpacker_src_unpack() is carried out by default (and the ebuild

Re: [gentoo-dev] gentoo-x86 tree cleanup for 'DESCRIPTION ends with a '.' character' warnings

2014-08-18 Thread Ben de Groot
On 13 August 2014 02:46, Michał Górny mgo...@gentoo.org wrote: Dnia 2014-08-11, o godz. 20:48:20 William Hubbs willi...@gentoo.org napisał(a): got a minor (but chatty) QA warning: DESCRIPTION ends with a '.' character Why is this a QA warning in the first place? Because it is a

Re: [gentoo-dev] rfc: calling all eclass phase functions by default

2014-08-18 Thread Michał Górny
Dnia 2014-08-18, o godz. 09:22:46 Chris Reffett creff...@gentoo.org napisał(a): On 8/18/2014 8:56 AM, hasufell wrote: Almost forgot, of course this does not work if you expect unpacker_src_unpacker() to run: inherit unpacker games base as well as inherit unpacker base games

Re: [gentoo-dev] rfc: calling all eclass phase functions by default

2014-08-18 Thread Chris Reffett
On August 18, 2014 11:11:56 AM EDT, Michał Górny mgo...@gentoo.org wrote: Dnia 2014-08-18, o godz. 09:22:46 Chris Reffett creff...@gentoo.org napisał(a): On 8/18/2014 8:56 AM, hasufell wrote: Almost forgot, of course this does not work if you expect unpacker_src_unpacker() to run:

Re: [gentoo-dev] rfc: calling all eclass phase functions by default

2014-08-18 Thread Michał Górny
Dnia 2014-08-18, o godz. 15:37:26 Chris Reffett creff...@gentoo.org napisał(a): On August 18, 2014 11:11:56 AM EDT, Michał Górny mgo...@gentoo.org wrote: Dnia 2014-08-18, o godz. 09:22:46 Chris Reffett creff...@gentoo.org napisał(a): On 8/18/2014 8:56 AM, hasufell wrote: Almost

Re: [gentoo-dev] rfc: calling all eclass phase functions by default

2014-08-18 Thread hasufell
Chris Reffett: On August 18, 2014 11:11:56 AM EDT, Michał Górny mgo...@gentoo.org wrote: Dnia 2014-08-18, o godz. 09:22:46 Chris Reffett creff...@gentoo.org napisał(a): On 8/18/2014 8:56 AM, hasufell wrote: Almost forgot, of course this does not work if you expect

[gentoo-dev] Initial (partial) EAPI6 implementation for Portage

2014-08-18 Thread Michał Górny
Hello, Since most of EAPI6 seems to be defined already, I've started working on an initial implementation for Portage. Since many of the features are not precisely defined yet, I've made a few assumptions. I'd like to ask you to look through it and ask any questions that may arise or report any

[gentoo-dev] Followup notes: {cvs,git,git.overlays}.gentoo.org migration; awol: some overlays commits, gitweb

2014-08-18 Thread Robin H. Johnson
Hi all, Last evening, the old sponsor where cvs/git/git.overlays was hosted turned off the old servers, earlier than I expected. With two notable exceptions listed below, almost everything should be how it should be, so you can continue as before. The new SSH keys, in case you still didn't have

[gentoo-portage-dev] [PATCH] Apply 'nonfatal' to helpers only

2014-08-18 Thread Michał Górny
Make 'nonfatal' modifier affect helpers only rather than disabling 'die' completely. This improves the PMS conformance. --- bin/isolated-functions.sh | 7 +-- 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/bin/isolated-functions.sh b/bin/isolated-functions.sh index

Re: [gentoo-portage-dev] [PATCH] Apply 'nonfatal' to helpers only

2014-08-18 Thread Arfrever Frehtes Taifersar Arahesis
2014-08-18 11:02 Michał Górny napisał(a): Make 'nonfatal' modifier affect helpers only rather than disabling 'die' completely. This improves the PMS conformance. It is better to leave current code, until there is replacement functionality. -- Arfrever Frehtes Taifersar Arahesis signature.asc

Re: [gentoo-portage-dev] [PATCH] Apply 'nonfatal' to helpers only

2014-08-18 Thread Michał Górny
Dnia 2014-08-18, o godz. 14:00:08 Arfrever Frehtes Taifersar Arahesis arfrever@gmail.com napisał(a): 2014-08-18 11:02 Michał Górny napisał(a): Make 'nonfatal' modifier affect helpers only rather than disabling 'die' completely. This improves the PMS conformance. It is better to leave

[gentoo-portage-dev] [PATCH] Rewrite default ebuild phase setting code

2014-08-18 Thread Michał Górny
Replace the ebuild phase setting code for EAPI 2 and newer with a simpler approach; first set proper default_* functions, and call them within the phase. Disallow calling default_* for other phase functions than the one being run. --- bin/phase-functions.sh | 117

Re: [gentoo-portage-dev] [PATCH] Apply 'nonfatal' to helpers only

2014-08-18 Thread Brian Dolbec
On Mon, 18 Aug 2014 14:04:32 +0200 Michał Górny mgo...@gentoo.org wrote: Dnia 2014-08-18, o godz. 14:00:08 Arfrever Frehtes Taifersar Arahesis arfrever@gmail.com napisał(a): 2014-08-18 11:02 Michał Górny napisał(a): Make 'nonfatal' modifier affect helpers only rather than

[gentoo-portage-dev] [PATCH 4/6] Make eapi_is_supported() reuse _supported_eapis list

2014-08-18 Thread Michał Górny
Make the eapi_is_supported() function use the generated list of supported EAPIs rather than partial lists and integer comparison. --- pym/portage/__init__.py | 14 +- 1 file changed, 1 insertion(+), 13 deletions(-) diff --git a/pym/portage/__init__.py b/pym/portage/__init__.py index

[gentoo-portage-dev] [PATCH 5/6] Apply 'nonfatal' to helpers only

2014-08-18 Thread Michał Górny
Make 'nonfatal' modifier affect helpers only rather than disabling 'die' completely. This improves the PMS conformance. --- bin/isolated-functions.sh | 7 +-- 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/bin/isolated-functions.sh b/bin/isolated-functions.sh index

[gentoo-portage-dev] [PATCH 1/6] econf: Replace unnecessary 'case' statements with 'if's

2014-08-18 Thread Michał Górny
Replace the 'case' statements used to match 'configure' output with simpler pattern-matching 'if's. Acked-by: Alexander Berntsen berna...@gentoo.org --- bin/phase-helpers.sh | 16 ++-- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/bin/phase-helpers.sh

[gentoo-portage-dev] [PATCHES] Random issues and refactoring before EAPI6 series

2014-08-18 Thread Michał Górny
dol-sen asked me to send all of them in a serie. Those are minor bugfixes and code refactoring done to prepare for EAPI6 code. 1 2 cleans up econf. In EAPI6 we will likely be adding --docdir and --htmldir there, so we should add it in nice code rather than copying the bad one. 3-4 aim to clean

[gentoo-portage-dev] [PATCH 6/6] Rewrite default ebuild phase setting code

2014-08-18 Thread Michał Górny
Replace the ebuild phase setting code for EAPI 2 and newer with a simpler approach; first set proper default_* functions, and call them within the phase. Disallow calling default_* for other phase functions than the one being run. --- bin/phase-functions.sh | 117

[gentoo-portage-dev] [PATCH 2/6] econf: Add EAPI-conditional arguments via array

2014-08-18 Thread Michał Górny
Use a dedicated array variable to add EAPI-conditional arguments to the configure script instead of prepending them to the command parameters. --- bin/phase-helpers.sh | 10 +++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/bin/phase-helpers.sh b/bin/phase-helpers.sh index

[gentoo-portage-dev] [PATCH 01/13] Support EAPI=6_pre1 for testing EAPI6 features

2014-08-18 Thread Michał Górny
--- pym/portage/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pym/portage/__init__.py b/pym/portage/__init__.py index 66bfeb0..0046161 100644 --- a/pym/portage/__init__.py +++ b/pym/portage/__init__.py @@ -491,7 +491,7 @@ def abssymlink(symlink, target=None):

[gentoo-portage-dev] [PATCH 03/13] Add tentative support for EAPI6 get_libdir()

2014-08-18 Thread Michał Górny
Add get_libdir() function to obtain the basename of libdir using the same algorithm that econf uses. --- bin/eapi.sh | 4 bin/phase-helpers.sh | 11 +++ 2 files changed, 15 insertions(+) diff --git a/bin/eapi.sh b/bin/eapi.sh index 5f96c3b..6ace20d 100644 --- a/bin/eapi.sh

[gentoo-portage-dev] [PATCH 02/13] Add tentative support for EAPI6 --docdir and --htmldir

2014-08-18 Thread Michał Górny
Pass --docdir and --htmldir to configure scripts that support it. --- bin/eapi.sh | 4 bin/phase-helpers.sh | 12 +++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/bin/eapi.sh b/bin/eapi.sh index 623b89f..5f96c3b 100644 --- a/bin/eapi.sh +++ b/bin/eapi.sh

[gentoo-portage-dev] [PATCH 09/13] Add tentative EAPI6 .txz unpack support

2014-08-18 Thread Michał Górny
Support unpacking .txz-suffixed archives. --- bin/eapi.sh | 4 bin/phase-helpers.sh | 13 + 2 files changed, 17 insertions(+) diff --git a/bin/eapi.sh b/bin/eapi.sh index fa57999..878f8e7 100644 --- a/bin/eapi.sh +++ b/bin/eapi.sh @@ -118,6 +118,10 @@

[gentoo-portage-dev] [PATCHES] Initial EAPI6 patch set for review

2014-08-18 Thread Michał Górny
Here are my patches drafting the first implementations of various parts of EAPI6, based on top of my cleaned up portage base (see the previous patch serie). Unless I've missed something, it includes all Council-approved items except for runtime USE, and additionally --docdir and --htmldir. Please

[gentoo-portage-dev] [PATCH 08/13] Enable tentative support for EAPI6 profile-level directories

2014-08-18 Thread Michał Górny
Enable the support for package.* and use.* directories on profile and repository level. --- pym/portage/eapi.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pym/portage/eapi.py b/pym/portage/eapi.py index 4f77910..7217d23 100644 --- a/pym/portage/eapi.py +++

[gentoo-portage-dev] [PATCH 10/13] Add tentative EAPI6 absolute path support to unpack()

2014-08-18 Thread Michał Górny
Add support for absolute paths in unpack(). Allow subdirectory-level relative paths not to start with './'. --- bin/eapi.sh | 4 bin/phase-helpers.sh | 25 ++--- 2 files changed, 22 insertions(+), 7 deletions(-) diff --git a/bin/eapi.sh b/bin/eapi.sh index

[gentoo-portage-dev] [PATCH 11/13] Add tentative EAPI6 nonfatal support to die()

2014-08-18 Thread Michał Górny
Add support for die() to respect 'nonfatal' modifier if '--respect-nonfatal' (or '-n') option is used. This allows eclasses to create custom ebuild helpers that mimic built-in helper behavior. --- bin/eapi.sh | 4 bin/isolated-functions.sh | 7 +++ 2 files changed, 11

[gentoo-portage-dev] [PATCH 13/13] Add tentative EAPI6 phase functions

2014-08-18 Thread Michał Górny
--- bin/phase-functions.sh | 11 +++ bin/phase-helpers.sh | 18 ++ 2 files changed, 29 insertions(+) diff --git a/bin/phase-functions.sh b/bin/phase-functions.sh index b7fb5d7..f2088bd 100644 --- a/bin/phase-functions.sh +++ b/bin/phase-functions.sh @@ -806,6 +806,17 @@

[gentoo-portage-dev] [PATCH 12/13] Add tentative EAPI6 in_iuse() function

2014-08-18 Thread Michał Górny
Add a function to query IUSE_EFFECTIVE for flags. --- bin/eapi.sh| 4 bin/phase-helpers.sh | 16 pym/portage/eapi.py| 3 +++ pym/portage/package/ebuild/doebuild.py | 2 +- 4 files changed, 24 insertions(+),