FAQ Search Today's Posts Mark Forums Read
» Video Reviews

» Linux Archive

Linux-archive is a website aiming to archive linux email lists and to make them easily accessible for linux users/developers.


» Sponsor

» Partners

» Sponsor

Go Back   Linux Archive > Gentoo > Gentoo Portage Developer

 
 
LinkBack Thread Tools
 
Old 10-04-2008, 12:09 AM
Zac Medico
 
Default Label profiles with EAPI for compatibility checks

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi everyone,

Please consider a new "eapi" profile configuration file that will
designate the EAPI to which any package atoms within a given layer
of the profile stack must conform. This will allow package managers
to bail out with an informative error message if the user
accidentally selects a profile containing an EAPI that is not
supported by the currently installed package manager.

In order to allow mixed EAPIs in the profiles, and to avoid having
to configure the EAPI in every single layer, each directory of the
profile stack should be able to either override or inherit the EAPI
value that may have been defined in a previous layer of the profile
stack. If no EAPI has been previously defined then it can be assumed
to be 0.

The format of the configuration file can be very simple, containing
only the EAPI value and nothing more. For example, a file containing
just a single "0" character, followed by a newline, could be
created at profiles/base/eapi in order to explicitly declare that
atoms in the base profile conform to EAPI 0. However, this
particular declaration would be redundant since the base profile
does not inherit from any other profile and therefore it's EAPI
would be assumed to be 0 anyway.

Does this seem like a good approach? Are there any suggestions for
improvements or alternative approaches?
- --
Thanks,
Zac
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.9 (GNU/Linux)

iEYEARECAAYFAkjmtEYACgkQ/ejvha5XGaNtSQCfXb2OQAYCEAe0Uuuu7Ou+DxyV
QZsAn0VpUbKqHJP0XRZSg6mhFKeUNXui
=qR8c
-----END PGP SIGNATURE-----
 
Old 10-04-2008, 12:09 AM
Zac Medico
 
Default Label profiles with EAPI for compatibility checks

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi everyone,

Please consider a new "eapi" profile configuration file that will
designate the EAPI to which any package atoms within a given layer
of the profile stack must conform. This will allow package managers
to bail out with an informative error message if the user
accidentally selects a profile containing an EAPI that is not
supported by the currently installed package manager.

In order to allow mixed EAPIs in the profiles, and to avoid having
to configure the EAPI in every single layer, each directory of the
profile stack should be able to either override or inherit the EAPI
value that may have been defined in a previous layer of the profile
stack. If no EAPI has been previously defined then it can be assumed
to be 0.

The format of the configuration file can be very simple, containing
only the EAPI value and nothing more. For example, a file containing
just a single "0" character, followed by a newline, could be
created at profiles/base/eapi in order to explicitly declare that
atoms in the base profile conform to EAPI 0. However, this
particular declaration would be redundant since the base profile
does not inherit from any other profile and therefore it's EAPI
would be assumed to be 0 anyway.

Does this seem like a good approach? Are there any suggestions for
improvements or alternative approaches?
- --
Thanks,
Zac
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.9 (GNU/Linux)

iEYEARECAAYFAkjmtEYACgkQ/ejvha5XGaNtSQCfXb2OQAYCEAe0Uuuu7Ou+DxyV
QZsAn0VpUbKqHJP0XRZSg6mhFKeUNXui
=qR8c
-----END PGP SIGNATURE-----
 
Old 10-04-2008, 09:59 AM
"Alec Warner"
 
Default Label profiles with EAPI for compatibility checks

On Fri, Oct 3, 2008 at 5:09 PM, Zac Medico <zmedico@gentoo.org> wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Hi everyone,
>
> Please consider a new "eapi" profile configuration file that will
> designate the EAPI to which any package atoms within a given layer
> of the profile stack must conform. This will allow package managers
> to bail out with an informative error message if the user
> accidentally selects a profile containing an EAPI that is not
> supported by the currently installed package manager.

Long Long Ago there was a conversation about versioning profiles; is
there some reason why you prefer the eapi method (which arguably has a
smaller scope) over full profile api versioning (PAPI?)

Arguably we could use both in the future as well.

>
> In order to allow mixed EAPIs in the profiles, and to avoid having
> to configure the EAPI in every single layer, each directory of the
> profile stack should be able to either override or inherit the EAPI
> value that may have been defined in a previous layer of the profile
> stack. If no EAPI has been previously defined then it can be assumed
> to be 0.
>
> The format of the configuration file can be very simple, containing
> only the EAPI value and nothing more. For example, a file containing
> just a single "0" character, followed by a newline, could be
> created at profiles/base/eapi in order to explicitly declare that
> atoms in the base profile conform to EAPI 0. However, this
> particular declaration would be redundant since the base profile
> does not inherit from any other profile and therefore it's EAPI
> would be assumed to be 0 anyway.
>
> Does this seem like a good approach? Are there any suggestions for
> improvements or alternative approaches?

PAPI

> - --
> Thanks,
> Zac
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v2.0.9 (GNU/Linux)
>
> iEYEARECAAYFAkjmtEYACgkQ/ejvha5XGaNtSQCfXb2OQAYCEAe0Uuuu7Ou+DxyV
> QZsAn0VpUbKqHJP0XRZSg6mhFKeUNXui
> =qR8c
> -----END PGP SIGNATURE-----
>
>
 
Old 10-04-2008, 09:59 AM
"Alec Warner"
 
Default Label profiles with EAPI for compatibility checks

On Fri, Oct 3, 2008 at 5:09 PM, Zac Medico <zmedico@gentoo.org> wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Hi everyone,
>
> Please consider a new "eapi" profile configuration file that will
> designate the EAPI to which any package atoms within a given layer
> of the profile stack must conform. This will allow package managers
> to bail out with an informative error message if the user
> accidentally selects a profile containing an EAPI that is not
> supported by the currently installed package manager.

Long Long Ago there was a conversation about versioning profiles; is
there some reason why you prefer the eapi method (which arguably has a
smaller scope) over full profile api versioning (PAPI?)

Arguably we could use both in the future as well.

>
> In order to allow mixed EAPIs in the profiles, and to avoid having
> to configure the EAPI in every single layer, each directory of the
> profile stack should be able to either override or inherit the EAPI
> value that may have been defined in a previous layer of the profile
> stack. If no EAPI has been previously defined then it can be assumed
> to be 0.
>
> The format of the configuration file can be very simple, containing
> only the EAPI value and nothing more. For example, a file containing
> just a single "0" character, followed by a newline, could be
> created at profiles/base/eapi in order to explicitly declare that
> atoms in the base profile conform to EAPI 0. However, this
> particular declaration would be redundant since the base profile
> does not inherit from any other profile and therefore it's EAPI
> would be assumed to be 0 anyway.
>
> Does this seem like a good approach? Are there any suggestions for
> improvements or alternative approaches?

PAPI

> - --
> Thanks,
> Zac
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v2.0.9 (GNU/Linux)
>
> iEYEARECAAYFAkjmtEYACgkQ/ejvha5XGaNtSQCfXb2OQAYCEAe0Uuuu7Ou+DxyV
> QZsAn0VpUbKqHJP0XRZSg6mhFKeUNXui
> =qR8c
> -----END PGP SIGNATURE-----
>
>
 
Old 10-04-2008, 05:49 PM
Zac Medico
 
Default Label profiles with EAPI for compatibility checks

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Alec Warner wrote:
> On Fri, Oct 3, 2008 at 5:09 PM, Zac Medico <zmedico@gentoo.org> wrote:
> Hi everyone,
>
> Please consider a new "eapi" profile configuration file that will
> designate the EAPI to which any package atoms within a given layer
> of the profile stack must conform. This will allow package managers
> to bail out with an informative error message if the user
> accidentally selects a profile containing an EAPI that is not
> supported by the currently installed package manager.
>
>> Long Long Ago there was a conversation about versioning profiles; is
>> there some reason why you prefer the eapi method (which arguably has a
>> smaller scope) over full profile api versioning (PAPI?)

I'm not sure what the specific intentions of PAPI are, but the EAPI
approach that I've suggested is intended to enable different layers
of the stack to contain dependency atoms that conform to different
EAPIs. For example, the base profile could remain at EAPI 0 and
could thus be shared between some older profiles that conform to
EAPI 0 (at all layers) and some newer profiles that contain some
layers which require EAPI 1 or EAPI 2.

By allowing a mix of different layers with different EAPIs, the
intention is to promote code sharing since we can use a common base
profile between older and newer profiles, yet still be able to use
new EAPIs in newer profiles.

>> Arguably we could use both in the future as well.
>
> In order to allow mixed EAPIs in the profiles, and to avoid having
> to configure the EAPI in every single layer, each directory of the
> profile stack should be able to either override or inherit the EAPI
> value that may have been defined in a previous layer of the profile
> stack. If no EAPI has been previously defined then it can be assumed
> to be 0.
>
> The format of the configuration file can be very simple, containing
> only the EAPI value and nothing more. For example, a file containing
> just a single "0" character, followed by a newline, could be
> created at profiles/base/eapi in order to explicitly declare that
> atoms in the base profile conform to EAPI 0. However, this
> particular declaration would be redundant since the base profile
> does not inherit from any other profile and therefore it's EAPI
> would be assumed to be 0 anyway.
>
> Does this seem like a good approach? Are there any suggestions for
> improvements or alternative approaches?
>
>> PAPI

Would PAPI provide the same benefits in terms of code sharing by
allowing layers with different PAPIs to be mixed?

- --
Thanks,
Zac
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.9 (GNU/Linux)

iEYEARECAAYFAkjnrLYACgkQ/ejvha5XGaMvpgCgiRYrpXxCbbHsULEMdxfoYbsZ
n7QAoNR3IiMYMX70YnlzTwrEWfgWXv7m
=WaSP
-----END PGP SIGNATURE-----
 
Old 10-04-2008, 05:49 PM
Zac Medico
 
Default Label profiles with EAPI for compatibility checks

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Alec Warner wrote:
> On Fri, Oct 3, 2008 at 5:09 PM, Zac Medico <zmedico@gentoo.org> wrote:
> Hi everyone,
>
> Please consider a new "eapi" profile configuration file that will
> designate the EAPI to which any package atoms within a given layer
> of the profile stack must conform. This will allow package managers
> to bail out with an informative error message if the user
> accidentally selects a profile containing an EAPI that is not
> supported by the currently installed package manager.
>
>> Long Long Ago there was a conversation about versioning profiles; is
>> there some reason why you prefer the eapi method (which arguably has a
>> smaller scope) over full profile api versioning (PAPI?)

I'm not sure what the specific intentions of PAPI are, but the EAPI
approach that I've suggested is intended to enable different layers
of the stack to contain dependency atoms that conform to different
EAPIs. For example, the base profile could remain at EAPI 0 and
could thus be shared between some older profiles that conform to
EAPI 0 (at all layers) and some newer profiles that contain some
layers which require EAPI 1 or EAPI 2.

By allowing a mix of different layers with different EAPIs, the
intention is to promote code sharing since we can use a common base
profile between older and newer profiles, yet still be able to use
new EAPIs in newer profiles.

>> Arguably we could use both in the future as well.
>
> In order to allow mixed EAPIs in the profiles, and to avoid having
> to configure the EAPI in every single layer, each directory of the
> profile stack should be able to either override or inherit the EAPI
> value that may have been defined in a previous layer of the profile
> stack. If no EAPI has been previously defined then it can be assumed
> to be 0.
>
> The format of the configuration file can be very simple, containing
> only the EAPI value and nothing more. For example, a file containing
> just a single "0" character, followed by a newline, could be
> created at profiles/base/eapi in order to explicitly declare that
> atoms in the base profile conform to EAPI 0. However, this
> particular declaration would be redundant since the base profile
> does not inherit from any other profile and therefore it's EAPI
> would be assumed to be 0 anyway.
>
> Does this seem like a good approach? Are there any suggestions for
> improvements or alternative approaches?
>
>> PAPI

Would PAPI provide the same benefits in terms of code sharing by
allowing layers with different PAPIs to be mixed?

- --
Thanks,
Zac
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.9 (GNU/Linux)

iEYEARECAAYFAkjnrLYACgkQ/ejvha5XGaMvpgCgiRYrpXxCbbHsULEMdxfoYbsZ
n7QAoNR3IiMYMX70YnlzTwrEWfgWXv7m
=WaSP
-----END PGP SIGNATURE-----
 
Old 10-05-2008, 12:47 AM
Ciaran McCreesh
 
Default Label profiles with EAPI for compatibility checks

On Fri, 03 Oct 2008 17:09:43 -0700
Zac Medico <zmedico@gentoo.org> wrote:
> In order to allow mixed EAPIs in the profiles, and to avoid having
> to configure the EAPI in every single layer, each directory of the
> profile stack should be able to either override or inherit the EAPI
> value that may have been defined in a previous layer of the profile
> stack. If no EAPI has been previously defined then it can be assumed
> to be 0.

That gets really confusing. Easier to just have an eapi file in every
directory.

Are we going to stick a file directly under profiles/ too? Some things
in there are EAPI dependent... It'd have to stay at 0 for quite a long
time, of course.

--
Ciaran McCreesh
 
Old 10-05-2008, 01:31 AM
Zac Medico
 
Default Label profiles with EAPI for compatibility checks

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Ciaran McCreesh wrote:
> On Fri, 03 Oct 2008 17:09:43 -0700
> Zac Medico <zmedico@gentoo.org> wrote:
>> In order to allow mixed EAPIs in the profiles, and to avoid having
>> to configure the EAPI in every single layer, each directory of the
>> profile stack should be able to either override or inherit the EAPI
>> value that may have been defined in a previous layer of the profile
>> stack. If no EAPI has been previously defined then it can be assumed
>> to be 0.
>
> That gets really confusing. Easier to just have an eapi file in every
> directory.

I think you're right. I don't see any really compelling need for
inheritance or override behavior here. If the file is missing from a
particular layer then we can simply assume that the layer's EAPI is 0.

> Are we going to stick a file directly under profiles/ too? Some things
> in there are EAPI dependent... It'd have to stay at 0 for quite a long
> time, of course.

Sure, that seems reasonable. That will allow us to eventually bump
the EAPI for the package.mask and info_pkgs files (those seem to be
the only ones that currently contain dependency atoms).
- --
Thanks,
Zac
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.9 (GNU/Linux)

iEYEARECAAYFAkjoGNUACgkQ/ejvha5XGaOQhACfVK+pE9hPkDMUV/EOu26gB7Zn
UjAAoJwT0L9PneRG4UvwWj2y5n18TV6c
=FlAq
-----END PGP SIGNATURE-----
 

Thread Tools




All times are GMT. The time now is 11:08 AM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.
Copyright 2007 - 2008, www.linux-archive.org