* [gentoo-dev] RDEPEND definition in docs differ from official PMS specs
@ 2009-01-17 13:09 Thomas Sachau
2009-01-17 13:24 ` Jan Kundrát
2009-01-17 14:38 ` Marius Mauch
0 siblings, 2 replies; 12+ messages in thread
From: Thomas Sachau @ 2009-01-17 13:09 UTC (permalink / raw
To: gentoo-dev
[-- Attachment #1: Type: text/plain, Size: 748 bytes --]
Hi,
as specified in the PMS spec [1] and stated in #gentoo-portage, RDEPEND will be set to DEPEND, if it
is not defined in the ebuild itself.
But devmanual [2] and developer handbook [3] both state, you have do explicitly set RDEPEND because
it may be removed in the future.
Since package manager have to follow the PMS spec, i would suggest to change those docs [2][3] and
let them follow the PMS spec.
Any problems, suggestions or anything else about this?
[1]: http://dev.gentoo.org/~yngwin/pms/pms.html#x1-750008.4
[2]: http://devmanual.gentoo.org/general-concepts/dependencies/index.html
[3]: http://www.gentoo.org/proj/en/devrel/handbook/handbook.xml?part=2&chap=1#doc_chap5
--
Thomas Sachau
Gentoo Linux Developer
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 315 bytes --]
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [gentoo-dev] RDEPEND definition in docs differ from official PMS specs
2009-01-17 13:09 [gentoo-dev] RDEPEND definition in docs differ from official PMS specs Thomas Sachau
@ 2009-01-17 13:24 ` Jan Kundrát
2009-01-17 14:38 ` Marius Mauch
1 sibling, 0 replies; 12+ messages in thread
From: Jan Kundrát @ 2009-01-17 13:24 UTC (permalink / raw
To: gentoo-dev
[-- Attachment #1: Type: text/plain, Size: 450 bytes --]
Thomas Sachau wrote:
> as specified in the PMS spec [1] and stated in #gentoo-portage, RDEPEND will be set to DEPEND, if it
> is not defined in the ebuild itself.
> But devmanual [2] and developer handbook [3] both state, you have do explicitly set RDEPEND because
> it may be removed in the future.
Please file a bug for devrel (the devrel handbook) and QA (for devmanual).
Cheers,
-jkt
--
cd /local/pub && more beer > /dev/mouth
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 260 bytes --]
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [gentoo-dev] RDEPEND definition in docs differ from official PMS specs
2009-01-17 13:09 [gentoo-dev] RDEPEND definition in docs differ from official PMS specs Thomas Sachau
2009-01-17 13:24 ` Jan Kundrát
@ 2009-01-17 14:38 ` Marius Mauch
2009-01-17 15:41 ` Thomas Sachau
1 sibling, 1 reply; 12+ messages in thread
From: Marius Mauch @ 2009-01-17 14:38 UTC (permalink / raw
To: gentoo-dev
On Sat, 17 Jan 2009 14:09:49 +0100
Thomas Sachau <tommy@gentoo.org> wrote:
> Hi,
>
> as specified in the PMS spec [1] and stated in #gentoo-portage,
> RDEPEND will be set to DEPEND, if it is not defined in the ebuild
> itself. But devmanual [2] and developer handbook [3] both state, you
> have do explicitly set RDEPEND because it may be removed in the
> future. Since package manager have to follow the PMS spec, i would
> suggest to change those docs [2][3] and let them follow the PMS spec.
>
> Any problems, suggestions or anything else about this?
It's strongly recommended to set both explicitly as the behavior could
change in future EAPI versions, and to ensure that you actually think
about which deps are build deps and which are runtime deps.
Also there is nothing wrong with policies being stricter than the
underlying spec.
Marius
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [gentoo-dev] RDEPEND definition in docs differ from official PMS specs
2009-01-17 14:38 ` Marius Mauch
@ 2009-01-17 15:41 ` Thomas Sachau
2009-01-17 15:52 ` Santiago M. Mola
2009-01-17 17:02 ` Marius Mauch
0 siblings, 2 replies; 12+ messages in thread
From: Thomas Sachau @ 2009-01-17 15:41 UTC (permalink / raw
To: gentoo-dev
[-- Attachment #1: Type: text/plain, Size: 1355 bytes --]
Marius Mauch schrieb:
> On Sat, 17 Jan 2009 14:09:49 +0100
> Thomas Sachau <tommy@gentoo.org> wrote:
>
>> Hi,
>>
>> as specified in the PMS spec [1] and stated in #gentoo-portage,
>> RDEPEND will be set to DEPEND, if it is not defined in the ebuild
>> itself. But devmanual [2] and developer handbook [3] both state, you
>> have do explicitly set RDEPEND because it may be removed in the
>> future. Since package manager have to follow the PMS spec, i would
>> suggest to change those docs [2][3] and let them follow the PMS spec.
>>
>> Any problems, suggestions or anything else about this?
>
> It's strongly recommended to set both explicitly as the behavior could
> change in future EAPI versions, and to ensure that you actually think
> about which deps are build deps and which are runtime deps.
> Also there is nothing wrong with policies being stricter than the
> underlying spec.
>
> Marius
>
>
If i want to use some future EAPI (give me some reasons, why this should be changed there by
default), i should think about it. But most ebuilds will stay with the default. I do think about
runtime deps and build deps. In my eyes, this is similar to src_unpack and src_compile. They have
defaults, noone specifies the defaults, even if they are changed in some EAPI.
--
Thomas Sachau
Gentoo Linux Developer
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 315 bytes --]
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [gentoo-dev] RDEPEND definition in docs differ from official PMS specs
2009-01-17 15:41 ` Thomas Sachau
@ 2009-01-17 15:52 ` Santiago M. Mola
2009-01-17 17:02 ` Marius Mauch
1 sibling, 0 replies; 12+ messages in thread
From: Santiago M. Mola @ 2009-01-17 15:52 UTC (permalink / raw
To: gentoo-dev
[-- Attachment #1: Type: text/plain, Size: 1785 bytes --]
El sáb, 17-01-2009 a las 16:41 +0100, Thomas Sachau escribió:
> Marius Mauch schrieb:
> > On Sat, 17 Jan 2009 14:09:49 +0100
> > Thomas Sachau <tommy@gentoo.org> wrote:
> >
> >> Hi,
> >>
> >> as specified in the PMS spec [1] and stated in #gentoo-portage,
> >> RDEPEND will be set to DEPEND, if it is not defined in the ebuild
> >> itself. But devmanual [2] and developer handbook [3] both state, you
> >> have do explicitly set RDEPEND because it may be removed in the
> >> future. Since package manager have to follow the PMS spec, i would
> >> suggest to change those docs [2][3] and let them follow the PMS spec.
> >>
> >> Any problems, suggestions or anything else about this?
> >
> > It's strongly recommended to set both explicitly as the behavior could
> > change in future EAPI versions, and to ensure that you actually think
> > about which deps are build deps and which are runtime deps.
> > Also there is nothing wrong with policies being stricter than the
> > underlying spec.
> >
> > Marius
> >
> >
>
> If i want to use some future EAPI (give me some reasons, why this should be changed there by
> default), i should think about it. But most ebuilds will stay with the default. I do think about
> runtime deps and build deps. In my eyes, this is similar to src_unpack and src_compile. They have
> defaults, noone specifies the defaults, even if they are changed in some EAPI.
>
You may want to change the wording in docs to make it say it's
encouraged to set both but it's not technically needed.
Note that PMS is *not* a good practice guidelenes. There are a bunch of
things that are technically valid but wrong from a QA point of view.
Regards,
--
Santiago Moisés Mola
Jabber: cooldwind@gmail.com | GPG: AAD203B5
[-- Attachment #2: Esta parte del mensaje está firmada digitalmente --]
[-- Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [gentoo-dev] RDEPEND definition in docs differ from official PMS specs
2009-01-17 15:41 ` Thomas Sachau
2009-01-17 15:52 ` Santiago M. Mola
@ 2009-01-17 17:02 ` Marius Mauch
2009-01-18 9:07 ` Peter Volkov
1 sibling, 1 reply; 12+ messages in thread
From: Marius Mauch @ 2009-01-17 17:02 UTC (permalink / raw
To: gentoo-dev
On Sat, 17 Jan 2009 16:41:25 +0100
Thomas Sachau <tommy@gentoo.org> wrote:
> Marius Mauch schrieb:
> > It's strongly recommended to set both explicitly as the behavior
> > could change in future EAPI versions, and to ensure that you
> > actually think about which deps are build deps and which are
> > runtime deps. Also there is nothing wrong with policies being
> > stricter than the underlying spec.
>
> If i want to use some future EAPI (give me some reasons, why this
> should be changed there by default), i should think about it.
If nothing else, dropping the implicit assignment would remove one
special case to handle in the PM (and I hope that everyone agrees that
special cases should generally be avoided). In the past there have also
been some issues due to the interaction between the implicit setting of
RDEPEND and eclasses (long fixed, but shows that there is a bit more
involved than might obvious).
> But most ebuilds will stay with the default. I do think about
> runtime deps and build deps.
If you do that's good, but that doesn't mean everyone else does.
Consider looking at an ebuild for a package you're not familiar with
that doesn't set RDEPEND. Could mean that the author was just too lazy
to add a RDEPEND="$DEPEND" statement and that all deps are needed for
build and runtime, or that he completely forgot to think about runtime
deps. There is no way to know (without asking him) if the implicit
RDEPEND is actually intended or not.
> In my eyes, this is similar to src_unpack and src_compile. They
> have defaults, noone specifies the defaults, even if they are changed
> in some EAPI.
Sure, but the key difference is that the defaults for those are fixed.
You would have a point if the default src_compile would vary based on
what other phase functions the ebuild defines, but that's not the case.
Marius
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [gentoo-dev] RDEPEND definition in docs differ from official PMS specs
2009-01-17 17:02 ` Marius Mauch
@ 2009-01-18 9:07 ` Peter Volkov
2009-01-18 11:21 ` Petteri Räty
0 siblings, 1 reply; 12+ messages in thread
From: Peter Volkov @ 2009-01-18 9:07 UTC (permalink / raw
To: gentoo-dev
[-- Attachment #1: Type: text/plain, Size: 334 bytes --]
Marius Mauch schrieb:
> It's strongly recommended to set both explicitly
FYI, I've opened bug to add repoman check for this:
http://bugs.gentoo.org/show_bug.cgi?id=255358
/me also had feeling that it's good idea to rely on implicit RDEPEND and
since it's not true, it's better to warn developers about that.
--
Peter.
[-- Attachment #2: Эта часть сообщения подписана цифровой подписью --]
[-- Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [gentoo-dev] RDEPEND definition in docs differ from official PMS specs
2009-01-18 9:07 ` Peter Volkov
@ 2009-01-18 11:21 ` Petteri Räty
2009-01-18 15:21 ` Ciaran McCreesh
0 siblings, 1 reply; 12+ messages in thread
From: Petteri Räty @ 2009-01-18 11:21 UTC (permalink / raw
To: gentoo-dev
[-- Attachment #1: Type: text/plain, Size: 528 bytes --]
Peter Volkov wrote:
> Marius Mauch schrieb:
>> It's strongly recommended to set both explicitly
>
> FYI, I've opened bug to add repoman check for this:
> http://bugs.gentoo.org/show_bug.cgi?id=255358
>
> /me also had feeling that it's good idea to rely on implicit RDEPEND and
> since it's not true, it's better to warn developers about that.
>
One thing to note why it's bad to rely on it is that if you have an
eclass setting RDEPEND then you are probably not getting what you wanted.
Regards,
Petteri
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 260 bytes --]
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [gentoo-dev] RDEPEND definition in docs differ from official PMS specs
2009-01-18 11:21 ` Petteri Räty
@ 2009-01-18 15:21 ` Ciaran McCreesh
2009-01-18 21:01 ` Maciej Mrozowski
0 siblings, 1 reply; 12+ messages in thread
From: Ciaran McCreesh @ 2009-01-18 15:21 UTC (permalink / raw
To: gentoo-dev
[-- Attachment #1: Type: text/plain, Size: 1013 bytes --]
On Sun, 18 Jan 2009 13:21:55 +0200
Petteri Räty <betelgeuse@gentoo.org> wrote:
> One thing to note why it's bad to rely on it is that if you have an
> eclass setting RDEPEND then you are probably not getting what you
> wanted.
Actually, you do. If you have ebuild:
DEPEND="from/ebuild"
and eclass:
DEPEND="from/eclass"
RDEPEND="also-from/eclass"
you end up with:
DEPEND="from/ebuild from/eclass"
RDEPEND="from/ebuild also-from/eclass"
It's been that way for several years now.
And yes, I'd really like to see this killed for EAPI 3. Ideally we'd go
with a single DEPENDENCIES variable with labels of some kind,
something like:
DEPENDENCIES="
build:
foo/bar
build+run:
foo/baz
post:
foo/plugin"
which would make it much easier to start specifying dependencies for
use of ROOT properly in the future -- it'd just be new labels, not
zillions of new variables.
--
Ciaran McCreesh
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [gentoo-dev] RDEPEND definition in docs differ from official PMS specs
2009-01-18 15:21 ` Ciaran McCreesh
@ 2009-01-18 21:01 ` Maciej Mrozowski
2009-01-18 21:24 ` Petteri Räty
2009-01-18 21:52 ` Ciaran McCreesh
0 siblings, 2 replies; 12+ messages in thread
From: Maciej Mrozowski @ 2009-01-18 21:01 UTC (permalink / raw
To: gentoo-dev
[-- Attachment #1: Type: text/plain, Size: 1138 bytes --]
On Sunday 18 of January 2009 16:21:57 Ciaran McCreesh wrote:
> And yes, I'd really like to see this killed for EAPI 3. Ideally we'd go
> with a single DEPENDENCIES variable with labels of some kind,
> something like:
>
> DEPENDENCIES="
> build:
> foo/bar
> build+run:
> foo/baz
> post:
> foo/plugin"
>
> which would make it much easier to start specifying dependencies for
> use of ROOT properly in the future -- it'd just be new labels, not
> zillions of new variables.
What's the benefit of changing syntax so dramatically? (apart from the sake of
changing it to someone's liking) and what's so wrong with zillion of separate
dependency variables? Are they too easy to read, implement and understand?
As everyone knows, to avoid copy&paste one can easily use such scheme:
COMMONDEPEND="
somedep
someotherdep
someuse? ( conddep )
"
DEPEND="${COMMONDEPEND}
somebuilddeponly
"
RDEPEND="${COMMONDEPEND}
someruntimedeponly
"
Similar simple bash play can be used for other purposes as well.
--
regards
MM
[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [gentoo-dev] RDEPEND definition in docs differ from official PMS specs
2009-01-18 21:01 ` Maciej Mrozowski
@ 2009-01-18 21:24 ` Petteri Räty
2009-01-18 21:52 ` Ciaran McCreesh
1 sibling, 0 replies; 12+ messages in thread
From: Petteri Räty @ 2009-01-18 21:24 UTC (permalink / raw
To: gentoo-dev
[-- Attachment #1: Type: text/plain, Size: 1668 bytes --]
Maciej Mrozowski wrote:
> On Sunday 18 of January 2009 16:21:57 Ciaran McCreesh wrote:
>
>> And yes, I'd really like to see this killed for EAPI 3. Ideally we'd go
>> with a single DEPENDENCIES variable with labels of some kind,
>> something like:
>>
>> DEPENDENCIES="
>> build:
>> foo/bar
>> build+run:
>> foo/baz
>> post:
>> foo/plugin"
>>
>> which would make it much easier to start specifying dependencies for
>> use of ROOT properly in the future -- it'd just be new labels, not
>> zillions of new variables.
>
> What's the benefit of changing syntax so dramatically? (apart from the sake of
> changing it to someone's liking) and what's so wrong with zillion of separate
> dependency variables? Are they too easy to read, implement and understand?
> As everyone knows, to avoid copy&paste one can easily use such scheme:
>
I don't think I have heard any devs opposing labels yet. Labels enable a
lot of good things when you start to use them heavily. See Exherbo docs
for ideas:
http://www.exherbo.org/exheres-0.html#dependencies
> COMMONDEPEND="
> somedep
> someotherdep
> someuse? ( conddep )
> "
> DEPEND="${COMMONDEPEND}
> somebuilddeponly
> "
> RDEPEND="${COMMONDEPEND}
>
> "
>
> Similar simple bash play can be used for other purposes as well.
Yeah you can usually make things more complex than they need to be if
you want.
DEPENDENCIES="
build:
somebuilddeponly
run:
someruntimedeponly
build+run:
somedep
someotherdep
someuse? ( conddep )"
Regards,
Petteri
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 260 bytes --]
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [gentoo-dev] RDEPEND definition in docs differ from official PMS specs
2009-01-18 21:01 ` Maciej Mrozowski
2009-01-18 21:24 ` Petteri Räty
@ 2009-01-18 21:52 ` Ciaran McCreesh
1 sibling, 0 replies; 12+ messages in thread
From: Ciaran McCreesh @ 2009-01-18 21:52 UTC (permalink / raw
To: gentoo-dev
[-- Attachment #1: Type: text/plain, Size: 853 bytes --]
On Sun, 18 Jan 2009 22:01:54 +0100
Maciej Mrozowski <reavertm@poczta.fm> wrote:
> What's the benefit of changing syntax so dramatically? (apart from
> the sake of changing it to someone's liking) and what's so wrong with
> zillion of separate dependency variables? Are they too easy to read,
> implement and understand? As everyone knows, to avoid copy&paste one
> can easily use such scheme:
A zillion is a lot, and the whole cache and metadata mechanism can't
deal with it. Start multiplying this lot together:
* on / vs under ROOT/
* native vs target
* required for build, run time, post, install, test or use
* however many userland ABIs there are
* however many Python ABIs there are
It quickly becomes clear that various things that are wanted in the
future can't be done by having lots of variables.
--
Ciaran McCreesh
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2009-01-18 21:52 UTC | newest]
Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-01-17 13:09 [gentoo-dev] RDEPEND definition in docs differ from official PMS specs Thomas Sachau
2009-01-17 13:24 ` Jan Kundrát
2009-01-17 14:38 ` Marius Mauch
2009-01-17 15:41 ` Thomas Sachau
2009-01-17 15:52 ` Santiago M. Mola
2009-01-17 17:02 ` Marius Mauch
2009-01-18 9:07 ` Peter Volkov
2009-01-18 11:21 ` Petteri Räty
2009-01-18 15:21 ` Ciaran McCreesh
2009-01-18 21:01 ` Maciej Mrozowski
2009-01-18 21:24 ` Petteri Räty
2009-01-18 21:52 ` Ciaran McCreesh
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox