public inbox for gentoo-portage-dev@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-portage-dev] EAPI 6
@ 2020-03-12 10:42 Samuel Bernardo
  2020-03-14 14:20 ` [gentoo-portage-dev] " Samuel Bernardo
  0 siblings, 1 reply; 5+ messages in thread
From: Samuel Bernardo @ 2020-03-12 10:42 UTC (permalink / raw
  To: gentoo-portage-dev


[-- Attachment #1.1: Type: text/plain, Size: 4860 bytes --]

Hi,

Is there any way to allow EAPI 6 for some overlays with current portage
stable version (2.3.89-r1)?

There are many previous functions that were updated strictly to EAPI 7.
As an example here is the result when running "eix-sync -a":

> ebuild failed with status
> 1                                                                                                                                                                                                                                                  
>  
>      Reading category 127|190 ( 66):
> net-misc...                                                                                                                                                                                                                             
>  
> cannot properly execute
> /var/lib/layman/go-overlay/net-misc/dbxcli/dbxcli-1.4.0.ebuild
>      Reading category 127|190 ( 66): net-misc... * ERROR:
> net-misc/gnatsd-0.9.4::go-overlay failed (depend
> phase):                     
>  *   golang-common: EAPI=6 is not
> supported                                                                                          
>  
>  *                                                        
>  * Call
> stack:                                                                                                                       
>  
>  *              ebuild.sh, line 609:  Called source
> '/var/lib/layman/go-overlay/net-misc/gnatsd/gnatsd-0.9.4.ebuild'
>  *    gnatsd-0.9.4.ebuild, line  10:  Called inherit
> 'golang-single'                                                                 
>  
>  *              ebuild.sh, line 314:  Called __qa_source
> '/var/lib/layman/go-overlay/eclass/golang-single.eclass'
>  *              ebuild.sh, line 112:  Called source
> '/var/lib/layman/go-overlay/eclass/golang-single.eclass'                         
>  
>  *   golang-single.eclass, line  66:  Called inherit
> 'golang-common'                                                  
>  *              ebuild.sh, line 314:  Called __qa_source
> '/var/lib/layman/go-overlay/eclass/golang-common.eclass'
>  *              ebuild.sh, line 112:  Called source
> '/var/lib/layman/go-overlay/eclass/golang-common.eclass'     
>  *   golang-common.eclass, line  37:  Called
> die                                                                                     
>  
>  * The specific snippet of
> code:                                                                                                     
>  
>  *              die "${ECLASS}: EAPI=${EAPI:-0} is not supported"
> ;;                                             
>  *                                                                                                                                   
>  
>  * If you need support, post the output of `emerge --info
> '=net-misc/gnatsd-0.9.4::go-overlay'`,                                     
>  
>  * the complete build log and the output of `emerge -pqv
> '=net-misc/gnatsd-0.9.4::go-overlay'`.                                      
>  
>  * Working directory:
> '/usr/lib64/python3.6/site-packages'                                                                           
>  
>  * S: '/gnatsd-0.9.4'
Thanks in advance for your help, comments and suggestions.

Best,

Samuel


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [gentoo-portage-dev] Re: EAPI 6
  2020-03-12 10:42 [gentoo-portage-dev] EAPI 6 Samuel Bernardo
@ 2020-03-14 14:20 ` Samuel Bernardo
  2020-03-14 18:48   ` Zac Medico
  0 siblings, 1 reply; 5+ messages in thread
From: Samuel Bernardo @ 2020-03-14 14:20 UTC (permalink / raw
  To: gentoo-portage-dev


[-- Attachment #1.1: Type: text/plain, Size: 5644 bytes --]

Hi again,

As a suggestion, I would propose for each overlay to override the eclass
functions for those necessary to EAPI 6 within their ebuilds.

For instance, go-overlay could use old eclasses that support EAPI 6
overriding the current ones. For some reason they updated their eclasses
to  EAPI 7 before updating the ebuilds.

This brings me to the main issue that is the portage cache and possible
conficts between those eclass defined in the overlay and those from
gentoo main stream. Maybe a name convention would be useful here for
future upgrades as a code styling guide for gentoo developers.

What do you think about this kind of issues?

Best,

Samuel

On 12/03/2020 10.42, Samuel Bernardo wrote:
> Hi,
>
> Is there any way to allow EAPI 6 for some overlays with current portage
> stable version (2.3.89-r1)?
>
> There are many previous functions that were updated strictly to EAPI 7.
> As an example here is the result when running "eix-sync -a":
>
>> ebuild failed with status
>> 1                                                                                                                                                                                                                                                  
>>  
>>      Reading category 127|190 ( 66):
>> net-misc...                                                                                                                                                                                                                             
>>  
>> cannot properly execute
>> /var/lib/layman/go-overlay/net-misc/dbxcli/dbxcli-1.4.0.ebuild
>>      Reading category 127|190 ( 66): net-misc... * ERROR:
>> net-misc/gnatsd-0.9.4::go-overlay failed (depend
>> phase):                     
>>  *   golang-common: EAPI=6 is not
>> supported                                                                                          
>>  
>>  *                                                        
>>  * Call
>> stack:                                                                                                                       
>>  
>>  *              ebuild.sh, line 609:  Called source
>> '/var/lib/layman/go-overlay/net-misc/gnatsd/gnatsd-0.9.4.ebuild'
>>  *    gnatsd-0.9.4.ebuild, line  10:  Called inherit
>> 'golang-single'                                                                 
>>  
>>  *              ebuild.sh, line 314:  Called __qa_source
>> '/var/lib/layman/go-overlay/eclass/golang-single.eclass'
>>  *              ebuild.sh, line 112:  Called source
>> '/var/lib/layman/go-overlay/eclass/golang-single.eclass'                         
>>  
>>  *   golang-single.eclass, line  66:  Called inherit
>> 'golang-common'                                                  
>>  *              ebuild.sh, line 314:  Called __qa_source
>> '/var/lib/layman/go-overlay/eclass/golang-common.eclass'
>>  *              ebuild.sh, line 112:  Called source
>> '/var/lib/layman/go-overlay/eclass/golang-common.eclass'     
>>  *   golang-common.eclass, line  37:  Called
>> die                                                                                     
>>  
>>  * The specific snippet of
>> code:                                                                                                     
>>  
>>  *              die "${ECLASS}: EAPI=${EAPI:-0} is not supported"
>> ;;                                             
>>  *                                                                                                                                   
>>  
>>  * If you need support, post the output of `emerge --info
>> '=net-misc/gnatsd-0.9.4::go-overlay'`,                                     
>>  
>>  * the complete build log and the output of `emerge -pqv
>> '=net-misc/gnatsd-0.9.4::go-overlay'`.                                      
>>  
>>  * Working directory:
>> '/usr/lib64/python3.6/site-packages'                                                                           
>>  
>>  * S: '/gnatsd-0.9.4'
> Thanks in advance for your help, comments and suggestions.
>
> Best,
>
> Samuel
>

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [gentoo-portage-dev] Re: EAPI 6
  2020-03-14 14:20 ` [gentoo-portage-dev] " Samuel Bernardo
@ 2020-03-14 18:48   ` Zac Medico
  2020-03-14 20:40     ` Samuel Bernardo
  0 siblings, 1 reply; 5+ messages in thread
From: Zac Medico @ 2020-03-14 18:48 UTC (permalink / raw
  To: gentoo-portage-dev, Samuel Bernardo


[-- Attachment #1.1: Type: text/plain, Size: 1472 bytes --]

On 3/14/20 7:20 AM, Samuel Bernardo wrote:
> Hi again,
> 
> As a suggestion, I would propose for each overlay to override the eclass
> functions for those necessary to EAPI 6 within their ebuilds.

Yes, either do that or upgrade EAPI in the ebuilds.

> For instance, go-overlay could use old eclasses that support EAPI 6
> overriding the current ones. For some reason they updated their eclasses
> to  EAPI 7 before updating the ebuilds.

Apparently the go-overlay sabotaged itself with this commit:

https://github.com/Dr-Terrible/go-overlay/commit/2b5bfa01bf8777f28f57eb5b7da2ccde4ace744b#diff-2e747d04b1138fffb99dbb6a5fdd6c1b

> This brings me to the main issue that is the portage cache and possible
> conficts between those eclass defined in the overlay and those from
> gentoo main stream. Maybe a name convention would be useful here for
> future upgrades as a code styling guide for gentoo developers.

There's no conflict. Overlays are free to override eclasses as needed.

> What do you think about this kind of issues?

It's not a good idea for overlays to make eclass changes that break
their own ebuilds.

> Best,
> 
> Samuel
> 
> On 12/03/2020 10.42, Samuel Bernardo wrote:
>> Hi,
>>
>> Is there any way to allow EAPI 6 for some overlays with current portage
>> stable version (2.3.89-r1)?

The portage version is irrelevant. All versions of portage are backward
compatible with all old EAPIs.

-- 
Thanks,
Zac


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 981 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [gentoo-portage-dev] Re: EAPI 6
  2020-03-14 18:48   ` Zac Medico
@ 2020-03-14 20:40     ` Samuel Bernardo
  2020-03-14 21:30       ` Zac Medico
  0 siblings, 1 reply; 5+ messages in thread
From: Samuel Bernardo @ 2020-03-14 20:40 UTC (permalink / raw
  To: Zac Medico; +Cc: gentoo-portage-dev


[-- Attachment #1.1: Type: text/plain, Size: 536 bytes --]

Thank you very much Zac for your answers.

I was wondering if I was missing any coding convention after reading
[1], since I always follow the pattern to define eclasses inside my
overlays as needed, sometimes overriding those provided from gentoo
portage. I was not sure if I was doing the development breaking the
expected QA rules.

With your explanation I know now that I'm doing it the right way.

[1]
https://devmanual.gentoo.org/appendices/common-problems/index.html#qa-notice----eclass-foo-inherited-illegally




[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [gentoo-portage-dev] Re: EAPI 6
  2020-03-14 20:40     ` Samuel Bernardo
@ 2020-03-14 21:30       ` Zac Medico
  0 siblings, 0 replies; 5+ messages in thread
From: Zac Medico @ 2020-03-14 21:30 UTC (permalink / raw
  To: gentoo-portage-dev, Samuel Bernardo


[-- Attachment #1.1: Type: text/plain, Size: 943 bytes --]

On 3/14/20 1:40 PM, Samuel Bernardo wrote:
> Thank you very much Zac for your answers.
> 
> I was wondering if I was missing any coding convention after reading
> [1], since I always follow the pattern to define eclasses inside my
> overlays as needed, sometimes overriding those provided from gentoo
> portage. I was not sure if I was doing the development breaking the
> expected QA rules.
> 
> With your explanation I know now that I'm doing it the right way.
> 
> [1]
> https://devmanual.gentoo.org/appendices/common-problems/index.html#qa-notice----eclass-foo-inherited-illegally

The stale cache issues that are mentioned there only applied to the
'pms' cache format which should not be used since around 2012/2013 when
we changed the default for the metadata/layout.conf cache-formats
setting here:

https://gitweb.gentoo.org/proj/portage.git/commit/?id=e760c8d2a4ccc56e351ac37904c715f596b58e42
-- 
Thanks,
Zac


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 981 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2020-03-14 21:30 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-03-12 10:42 [gentoo-portage-dev] EAPI 6 Samuel Bernardo
2020-03-14 14:20 ` [gentoo-portage-dev] " Samuel Bernardo
2020-03-14 18:48   ` Zac Medico
2020-03-14 20:40     ` Samuel Bernardo
2020-03-14 21:30       ` Zac Medico

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox