public inbox for gentoo-dev@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-dev] [PATCH] profiles/package.deprecated: deprecate python:2.7
@ 2020-06-20 13:57 Sergei Trofimovich
  2020-06-20 14:05 ` Michał Górny
  0 siblings, 1 reply; 15+ messages in thread
From: Sergei Trofimovich @ 2020-06-20 13:57 UTC (permalink / raw
  To: gentoo-dev; +Cc: Sergei Trofimovich

Give maintainers the chance to act and flag packages that pull in python:2.7.

Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
---
 profiles/package.deprecated | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/profiles/package.deprecated b/profiles/package.deprecated
index a756e845f47..bb661571962 100644
--- a/profiles/package.deprecated
+++ b/profiles/package.deprecated
@@ -17,6 +17,10 @@
 
 #--- END OF EXAMPLES ---
 
+# Sergei Trofimovich <slyfox@gentoo.org> (2020-06-20)
+# Deprecated. Consider poring to python 3 and drop support for python2.
+dev-lang/python:2.7
+
 # Sergei Trofimovich <slyfox@gentoo.org> (2020-02-22)
 # virtual/libstdc++ has only one sys-libs/libstdc++-v3 provider.
 # Use that instead. Or even better use none of them. It's a
-- 
2.27.0



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

* Re: [gentoo-dev] [PATCH] profiles/package.deprecated: deprecate python:2.7
  2020-06-20 13:57 [gentoo-dev] [PATCH] profiles/package.deprecated: deprecate python:2.7 Sergei Trofimovich
@ 2020-06-20 14:05 ` Michał Górny
  2020-06-20 15:29   ` Sergei Trofimovich
  0 siblings, 1 reply; 15+ messages in thread
From: Michał Górny @ 2020-06-20 14:05 UTC (permalink / raw
  To: gentoo-dev; +Cc: Sergei Trofimovich

[-- Attachment #1: Type: text/plain, Size: 1200 bytes --]

On Sat, 2020-06-20 at 14:57 +0100, Sergei Trofimovich wrote:
> Give maintainers the chance to act and flag packages that pull in python:2.7.
> 
> Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
> ---
>  profiles/package.deprecated | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/profiles/package.deprecated b/profiles/package.deprecated
> index a756e845f47..bb661571962 100644
> --- a/profiles/package.deprecated
> +++ b/profiles/package.deprecated
> @@ -17,6 +17,10 @@
>  
>  #--- END OF EXAMPLES ---
>  
> +# Sergei Trofimovich <slyfox@gentoo.org> (2020-06-20)
> +# Deprecated. Consider poring to python 3 and drop support for python2.
> +dev-lang/python:2.7
> +
>  # Sergei Trofimovich <slyfox@gentoo.org> (2020-02-22)
>  # virtual/libstdc++ has only one sys-libs/libstdc++-v3 provider.
>  # Use that instead. Or even better use none of them. It's a

That's just going to increase CI report size by a few megs without any
real benefit.  It will trigger the same for packages that support *only*
Python 2.7, as well as these that support 2.7 in addition to 3 because
they have 2.7 deps.  SNR will be very low.

-- 
Best regards,
Michał Górny


[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 618 bytes --]

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

* Re: [gentoo-dev] [PATCH] profiles/package.deprecated: deprecate python:2.7
  2020-06-20 14:05 ` Michał Górny
@ 2020-06-20 15:29   ` Sergei Trofimovich
  2020-06-26  6:42     ` Sergei Trofimovich
  0 siblings, 1 reply; 15+ messages in thread
From: Sergei Trofimovich @ 2020-06-20 15:29 UTC (permalink / raw
  To: Michał Górny, gentoo-dev

[-- Attachment #1: Type: text/plain, Size: 1293 bytes --]

On Sat, 20 Jun 2020 16:05:38 +0200
Michał Górny <mgorny@gentoo.org> wrote:

> On Sat, 2020-06-20 at 14:57 +0100, Sergei Trofimovich wrote:
> > Give maintainers the chance to act and flag packages that pull in python:2.7.
> > 
> > Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
> > ---
> >  profiles/package.deprecated | 4 ++++
> >  1 file changed, 4 insertions(+)
> > 
> > diff --git a/profiles/package.deprecated b/profiles/package.deprecated
> > index a756e845f47..bb661571962 100644
> > --- a/profiles/package.deprecated
> > +++ b/profiles/package.deprecated
> > @@ -17,6 +17,10 @@
> >  
> >  #--- END OF EXAMPLES ---
> >  
> > +# Sergei Trofimovich <slyfox@gentoo.org> (2020-06-20)
> > +# Deprecated. Consider poring to python 3 and drop support for python2.
> > +dev-lang/python:2.7
> > +
> >  # Sergei Trofimovich <slyfox@gentoo.org> (2020-02-22)
> >  # virtual/libstdc++ has only one sys-libs/libstdc++-v3 provider.
> >  # Use that instead. Or even better use none of them. It's a  
> 

> It will trigger the same for packages that support *only*
> Python 2.7, as well as these that support 2.7 in addition to 3 because
> they have 2.7 deps.

If we expect actions by developers on both cases I don't see a problem with that.

-- 

  Sergei

[-- Attachment #2: Цифровая подпись OpenPGP --]
[-- Type: application/pgp-signature, Size: 981 bytes --]

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

* Re: [gentoo-dev] [PATCH] profiles/package.deprecated: deprecate python:2.7
  2020-06-20 15:29   ` Sergei Trofimovich
@ 2020-06-26  6:42     ` Sergei Trofimovich
  2020-06-26  7:29       ` Michał Górny
  0 siblings, 1 reply; 15+ messages in thread
From: Sergei Trofimovich @ 2020-06-26  6:42 UTC (permalink / raw
  To: gentoo-dev

On Sat, 20 Jun 2020 16:29:53 +0100
Sergei Trofimovich <slyfox@gentoo.org> wrote:

> On Sat, 20 Jun 2020 16:05:38 +0200
> Michał Górny <mgorny@gentoo.org> wrote:
> 
> > On Sat, 2020-06-20 at 14:57 +0100, Sergei Trofimovich wrote:  
> > > Give maintainers the chance to act and flag packages that pull in python:2.7.
> > > 
> > > Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
> > > ---
> > >  profiles/package.deprecated | 4 ++++
> > >  1 file changed, 4 insertions(+)
> > > 
> > > diff --git a/profiles/package.deprecated b/profiles/package.deprecated
> > > index a756e845f47..bb661571962 100644
> > > --- a/profiles/package.deprecated
> > > +++ b/profiles/package.deprecated
> > > @@ -17,6 +17,10 @@
> > >  
> > >  #--- END OF EXAMPLES ---
> > >  
> > > +# Sergei Trofimovich <slyfox@gentoo.org> (2020-06-20)
> > > +# Deprecated. Consider poring to python 3 and drop support for python2.
> > > +dev-lang/python:2.7
> > > +
> > >  # Sergei Trofimovich <slyfox@gentoo.org> (2020-02-22)
> > >  # virtual/libstdc++ has only one sys-libs/libstdc++-v3 provider.
> > >  # Use that instead. Or even better use none of them. It's a    
> >   
> 
> > It will trigger the same for packages that support *only*
> > Python 2.7, as well as these that support 2.7 in addition to 3 because
> > they have 2.7 deps.  
> 
> If we expect actions by developers on both cases I don't see a problem with that.

Pushed as:
    https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=79d65d6641cfc0ef7b44df491c390e8c880e3049
with full text being:

+# Sergei Trofimovich <slyfox@gentoo.org> (2020-06-26)
+# Deprecated.
+# - optional python:2.7 dependency should be dropped if no reverse
+#   dependencies are using it.
+# - mandatory python:2.7 depepndency will require package porting
+#   or package removal if no reverse dependencies are using it.
+dev-lang/python:2.7

-- 

  Sergei


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

* Re: [gentoo-dev] [PATCH] profiles/package.deprecated: deprecate python:2.7
  2020-06-26  6:42     ` Sergei Trofimovich
@ 2020-06-26  7:29       ` Michał Górny
  2020-06-26  7:34         ` Joonas Niilola
  2020-06-26  8:51         ` Sergei Trofimovich
  0 siblings, 2 replies; 15+ messages in thread
From: Michał Górny @ 2020-06-26  7:29 UTC (permalink / raw
  To: gentoo-dev, Sergei Trofimovich

Dnia June 26, 2020 6:42:57 AM UTC, Sergei Trofimovich <slyfox@gentoo.org> napisał(a):
>On Sat, 20 Jun 2020 16:29:53 +0100
>Sergei Trofimovich <slyfox@gentoo.org> wrote:
>
>> On Sat, 20 Jun 2020 16:05:38 +0200
>> Michał Górny <mgorny@gentoo.org> wrote:
>> 
>> > On Sat, 2020-06-20 at 14:57 +0100, Sergei Trofimovich wrote:  
>> > > Give maintainers the chance to act and flag packages that pull in
>python:2.7.
>> > > 
>> > > Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
>> > > ---
>> > >  profiles/package.deprecated | 4 ++++
>> > >  1 file changed, 4 insertions(+)
>> > > 
>> > > diff --git a/profiles/package.deprecated
>b/profiles/package.deprecated
>> > > index a756e845f47..bb661571962 100644
>> > > --- a/profiles/package.deprecated
>> > > +++ b/profiles/package.deprecated
>> > > @@ -17,6 +17,10 @@
>> > >  
>> > >  #--- END OF EXAMPLES ---
>> > >  
>> > > +# Sergei Trofimovich <slyfox@gentoo.org> (2020-06-20)
>> > > +# Deprecated. Consider poring to python 3 and drop support for
>python2.
>> > > +dev-lang/python:2.7
>> > > +
>> > >  # Sergei Trofimovich <slyfox@gentoo.org> (2020-02-22)
>> > >  # virtual/libstdc++ has only one sys-libs/libstdc++-v3 provider.
>> > >  # Use that instead. Or even better use none of them. It's a    
>> >   
>> 
>> > It will trigger the same for packages that support *only*
>> > Python 2.7, as well as these that support 2.7 in addition to 3
>because
>> > they have 2.7 deps.  
>> 
>> If we expect actions by developers on both cases I don't see a
>problem with that.
>
>Pushed as:
>https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=79d65d6641cfc0ef7b44df491c390e8c880e3049
>with full text being:
>
>+# Sergei Trofimovich <slyfox@gentoo.org> (2020-06-26)
>+# Deprecated.
>+# - optional python:2.7 dependency should be dropped if no reverse
>+#   dependencies are using it.
>+# - mandatory python:2.7 depepndency will require package porting
>+#   or package removal if no reverse dependencies are using it.
>+dev-lang/python:2.7

You've just introduced 829 CI warnings, effectively disabling the ability to distinguish *new* problems in these packages.


--
Best regards, 
Michał Górny


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

* Re: [gentoo-dev] [PATCH] profiles/package.deprecated: deprecate python:2.7
  2020-06-26  7:29       ` Michał Górny
@ 2020-06-26  7:34         ` Joonas Niilola
  2020-06-26  8:51         ` Sergei Trofimovich
  1 sibling, 0 replies; 15+ messages in thread
From: Joonas Niilola @ 2020-06-26  7:34 UTC (permalink / raw
  To: gentoo-dev


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


On 6/26/20 10:29 AM, Michał Górny wrote:
> Dnia June 26, 2020 6:42:57 AM UTC, Sergei Trofimovich <slyfox@gentoo.org> napisał(a):
>
> Pushed as:
> https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=79d65d6641cfc0ef7b44df491c390e8c880e3049
> with full text being:
>
> +# Sergei Trofimovich <slyfox@gentoo.org> (2020-06-26)
> +# Deprecated.
> +# - optional python:2.7 dependency should be dropped if no reverse
> +#   dependencies are using it.
> +# - mandatory python:2.7 depepndency will require package porting
> +#   or package removal if no reverse dependencies are using it.
> +dev-lang/python:2.7
> You've just introduced 829 CI warnings, effectively disabling the ability to distinguish *new* problems in these packages.
>
>
> --
> Best regards, 
> Michał Górny
>
Hi,

Overall can we let the python project handle large-scale python-2.7
removal, please? Everyone can help updating their own packages, or m-n
packages.

-- juippis



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

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

* Re: [gentoo-dev] [PATCH] profiles/package.deprecated: deprecate python:2.7
  2020-06-26  7:29       ` Michał Górny
  2020-06-26  7:34         ` Joonas Niilola
@ 2020-06-26  8:51         ` Sergei Trofimovich
  2020-06-26  9:38           ` Michał Górny
  1 sibling, 1 reply; 15+ messages in thread
From: Sergei Trofimovich @ 2020-06-26  8:51 UTC (permalink / raw
  To: Michał Górny; +Cc: gentoo-dev

On Fri, 26 Jun 2020 07:29:45 +0000
Michał Górny <mgorny@gentoo.org> wrote:

> Dnia June 26, 2020 6:42:57 AM UTC, Sergei Trofimovich <slyfox@gentoo.org> napisał(a):
> >On Sat, 20 Jun 2020 16:29:53 +0100
> >Sergei Trofimovich <slyfox@gentoo.org> wrote:
> >  
> >> On Sat, 20 Jun 2020 16:05:38 +0200
> >> Michał Górny <mgorny@gentoo.org> wrote:
> >>   
> >> > On Sat, 2020-06-20 at 14:57 +0100, Sergei Trofimovich wrote:    
> >> > > Give maintainers the chance to act and flag packages that pull in  
> >python:2.7.  
> >> > > 
> >> > > Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
> >> > > ---
> >> > >  profiles/package.deprecated | 4 ++++
> >> > >  1 file changed, 4 insertions(+)
> >> > > 
> >> > > diff --git a/profiles/package.deprecated  
> >b/profiles/package.deprecated  
> >> > > index a756e845f47..bb661571962 100644
> >> > > --- a/profiles/package.deprecated
> >> > > +++ b/profiles/package.deprecated
> >> > > @@ -17,6 +17,10 @@
> >> > >  
> >> > >  #--- END OF EXAMPLES ---
> >> > >  
> >> > > +# Sergei Trofimovich <slyfox@gentoo.org> (2020-06-20)
> >> > > +# Deprecated. Consider poring to python 3 and drop support for  
> >python2.  
> >> > > +dev-lang/python:2.7
> >> > > +
> >> > >  # Sergei Trofimovich <slyfox@gentoo.org> (2020-02-22)
> >> > >  # virtual/libstdc++ has only one sys-libs/libstdc++-v3 provider.
> >> > >  # Use that instead. Or even better use none of them. It's a      
> >> >     
> >>   
> >> > It will trigger the same for packages that support *only*
> >> > Python 2.7, as well as these that support 2.7 in addition to 3  
> >because  
> >> > they have 2.7 deps.    
> >> 
> >> If we expect actions by developers on both cases I don't see a  
> >problem with that.
> >
> >Pushed as:
> >https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=79d65d6641cfc0ef7b44df491c390e8c880e3049
> >with full text being:
> >
> >+# Sergei Trofimovich <slyfox@gentoo.org> (2020-06-26)
> >+# Deprecated.
> >+# - optional python:2.7 dependency should be dropped if no reverse
> >+#   dependencies are using it.
> >+# - mandatory python:2.7 depepndency will require package porting
> >+#   or package removal if no reverse dependencies are using it.
> >+dev-lang/python:2.7  
> 
> You've just introduced 829 CI warnings

That's the intention.

> effectively disabling the ability to distinguish *new* problems in these packages.

Correct. Citing above:

"If we expect actions by developers on both cases I don't see a  problem with that."

I assume we still do.

-- 

  Sergei


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

* Re: [gentoo-dev] [PATCH] profiles/package.deprecated: deprecate python:2.7
  2020-06-26  8:51         ` Sergei Trofimovich
@ 2020-06-26  9:38           ` Michał Górny
  2020-06-26 16:47             ` Sergei Trofimovich
  0 siblings, 1 reply; 15+ messages in thread
From: Michał Górny @ 2020-06-26  9:38 UTC (permalink / raw
  To: gentoo-dev

[-- Attachment #1: Type: text/plain, Size: 3393 bytes --]

On Fri, 2020-06-26 at 09:51 +0100, Sergei Trofimovich wrote:
> On Fri, 26 Jun 2020 07:29:45 +0000
> Michał Górny <mgorny@gentoo.org> wrote:
> 
> > Dnia June 26, 2020 6:42:57 AM UTC, Sergei Trofimovich <slyfox@gentoo.org> napisał(a):
> > > On Sat, 20 Jun 2020 16:29:53 +0100
> > > Sergei Trofimovich <slyfox@gentoo.org> wrote:
> > >  
> > > > On Sat, 20 Jun 2020 16:05:38 +0200
> > > > Michał Górny <mgorny@gentoo.org> wrote:
> > > >   
> > > > > On Sat, 2020-06-20 at 14:57 +0100, Sergei Trofimovich wrote:    
> > > > > > Give maintainers the chance to act and flag packages that pull in  
> > > python:2.7.  
> > > > > > Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
> > > > > > ---
> > > > > >  profiles/package.deprecated | 4 ++++
> > > > > >  1 file changed, 4 insertions(+)
> > > > > > 
> > > > > > diff --git a/profiles/package.deprecated  
> > > b/profiles/package.deprecated  
> > > > > > index a756e845f47..bb661571962 100644
> > > > > > --- a/profiles/package.deprecated
> > > > > > +++ b/profiles/package.deprecated
> > > > > > @@ -17,6 +17,10 @@
> > > > > >  
> > > > > >  #--- END OF EXAMPLES ---
> > > > > >  
> > > > > > +# Sergei Trofimovich <slyfox@gentoo.org> (2020-06-20)
> > > > > > +# Deprecated. Consider poring to python 3 and drop support for  
> > > python2.  
> > > > > > +dev-lang/python:2.7
> > > > > > +
> > > > > >  # Sergei Trofimovich <slyfox@gentoo.org> (2020-02-22)
> > > > > >  # virtual/libstdc++ has only one sys-libs/libstdc++-v3 provider.
> > > > > >  # Use that instead. Or even better use none of them. It's a      
> > > > >     
> > > >   
> > > > > It will trigger the same for packages that support *only*
> > > > > Python 2.7, as well as these that support 2.7 in addition to 3  
> > > because  
> > > > > they have 2.7 deps.    
> > > > 
> > > > If we expect actions by developers on both cases I don't see a  
> > > problem with that.
> > > 
> > > Pushed as:
> > > https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=79d65d6641cfc0ef7b44df491c390e8c880e3049
> > > with full text being:
> > > 
> > > +# Sergei Trofimovich <slyfox@gentoo.org> (2020-06-26)
> > > +# Deprecated.
> > > +# - optional python:2.7 dependency should be dropped if no reverse
> > > +#   dependencies are using it.
> > > +# - mandatory python:2.7 depepndency will require package porting
> > > +#   or package removal if no reverse dependencies are using it.
> > > +dev-lang/python:2.7  
> > 
> > You've just introduced 829 CI warnings
> 
> That's the intention.
> 
> > effectively disabling the ability to distinguish *new* problems in these packages.
> 
> Correct. Citing above:
> 
> "If we expect actions by developers on both cases I don't see a  problem with that."
> 
> I assume we still do.

Not exactly.  You've pinpointed the wrong target.

First of all, we want people to support Python 3.  Removing support for
Python 2 is a secondary goal.

Flagging packages that support Python 2 in addition to Python 3
and cause no trouble in py2 cleanup is doubtful.

Flagging packages that support 2+3 because of their revdeps is not
helpful at all.  It's just noise to the maintainer who can't remove py2
because of revdeps.

Flagging dev-python/pypy* which needs py2 but is entirely outside
the eclass system is not helpful at all.

-- 
Best regards,
Michał Górny


[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 618 bytes --]

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

* Re: [gentoo-dev] [PATCH] profiles/package.deprecated: deprecate python:2.7
  2020-06-26  9:38           ` Michał Górny
@ 2020-06-26 16:47             ` Sergei Trofimovich
  2020-06-26 17:17               ` Michał Górny
  2020-06-26 17:41               ` Aaron Bauman
  0 siblings, 2 replies; 15+ messages in thread
From: Sergei Trofimovich @ 2020-06-26 16:47 UTC (permalink / raw
  To: Michał Górny; +Cc: gentoo-dev

On Fri, 26 Jun 2020 11:38:58 +0200
Michał Górny <mgorny@gentoo.org> wrote:

> On Fri, 2020-06-26 at 09:51 +0100, Sergei Trofimovich wrote:
> > On Fri, 26 Jun 2020 07:29:45 +0000
> > Michał Górny <mgorny@gentoo.org> wrote:
> >   
> > > Dnia June 26, 2020 6:42:57 AM UTC, Sergei Trofimovich <slyfox@gentoo.org> napisał(a):  
> > > > On Sat, 20 Jun 2020 16:29:53 +0100
> > > > Sergei Trofimovich <slyfox@gentoo.org> wrote:
> > > >    
> > > > > On Sat, 20 Jun 2020 16:05:38 +0200
> > > > > Michał Górny <mgorny@gentoo.org> wrote:
> > > > >     
> > > > > > On Sat, 2020-06-20 at 14:57 +0100, Sergei Trofimovich wrote:      
> > > > > > > Give maintainers the chance to act and flag packages that pull in    
> > > > python:2.7.    
> > > > > > > Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
> > > > > > > ---
> > > > > > >  profiles/package.deprecated | 4 ++++
> > > > > > >  1 file changed, 4 insertions(+)
> > > > > > > 
> > > > > > > diff --git a/profiles/package.deprecated    
> > > > b/profiles/package.deprecated    
> > > > > > > index a756e845f47..bb661571962 100644
> > > > > > > --- a/profiles/package.deprecated
> > > > > > > +++ b/profiles/package.deprecated
> > > > > > > @@ -17,6 +17,10 @@
> > > > > > >  
> > > > > > >  #--- END OF EXAMPLES ---
> > > > > > >  
> > > > > > > +# Sergei Trofimovich <slyfox@gentoo.org> (2020-06-20)
> > > > > > > +# Deprecated. Consider poring to python 3 and drop support for    
> > > > python2.    
> > > > > > > +dev-lang/python:2.7
> > > > > > > +
> > > > > > >  # Sergei Trofimovich <slyfox@gentoo.org> (2020-02-22)
> > > > > > >  # virtual/libstdc++ has only one sys-libs/libstdc++-v3 provider.
> > > > > > >  # Use that instead. Or even better use none of them. It's a        
> > > > > >       
> > > > >     
> > > > > > It will trigger the same for packages that support *only*
> > > > > > Python 2.7, as well as these that support 2.7 in addition to 3    
> > > > because    
> > > > > > they have 2.7 deps.      
> > > > > 
> > > > > If we expect actions by developers on both cases I don't see a    
> > > > problem with that.
> > > > 
> > > > Pushed as:
> > > > https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=79d65d6641cfc0ef7b44df491c390e8c880e3049
> > > > with full text being:
> > > > 
> > > > +# Sergei Trofimovich <slyfox@gentoo.org> (2020-06-26)
> > > > +# Deprecated.
> > > > +# - optional python:2.7 dependency should be dropped if no reverse
> > > > +#   dependencies are using it.
> > > > +# - mandatory python:2.7 depepndency will require package porting
> > > > +#   or package removal if no reverse dependencies are using it.
> > > > +dev-lang/python:2.7    
> > > 
> > > You've just introduced 829 CI warnings  
> > 
> > That's the intention.
> >   
> > > effectively disabling the ability to distinguish *new* problems in these packages.  
> > 
> > Correct. Citing above:
> > 
> > "If we expect actions by developers on both cases I don't see a  problem with that."
> > 
> > I assume we still do.  
> 
> Not exactly.  You've pinpointed the wrong target.
> 
> First of all, we want people to support Python 3.  Removing support for
> Python 2 is a secondary goal.

What is the desired end state here? All packages that depend on
python should support python3?

> Flagging packages that support Python 2 in addition to Python 3
> and cause no trouble in py2 cleanup is doubtful.

What is "py2 cleanup"? I still struggle to understand what packages
require change and which do not. Is there one pager doc that explains
a few things for me:
- How packages are picked for masking? Maybe we can deprecate them
  instead? Or we (I) can write a bit of code that flags packages requiring
  maintainers' attention.
- What is the expected end state for the "py2 cleanup"? 

The doc would also be a good link to add to recently added "# Py2 only"
masks as well.

> Flagging packages that support 2+3 because of their revdeps is not
> helpful at all.  It's just noise to the maintainer who can't remove py2
> because of revdeps.

I agree it can be spammy if we expect to have many packages with
python2 support for an extended period of time (3+ months). If it's
seen by others as too noisy I can revert the commit now.

> Flagging dev-python/pypy* which needs py2 but is entirely outside
> the eclass system is not helpful at all.

To pick a concrete example: from what I read above I don't see why
app-misc/golly was masked for removal.

-- 

  Sergei


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

* Re: [gentoo-dev] [PATCH] profiles/package.deprecated: deprecate python:2.7
  2020-06-26 16:47             ` Sergei Trofimovich
@ 2020-06-26 17:17               ` Michał Górny
  2020-06-26 17:51                 ` Sergei Trofimovich
  2020-06-26 17:41               ` Aaron Bauman
  1 sibling, 1 reply; 15+ messages in thread
From: Michał Górny @ 2020-06-26 17:17 UTC (permalink / raw
  To: gentoo-dev

[-- Attachment #1: Type: text/plain, Size: 5810 bytes --]

On Fri, 2020-06-26 at 17:47 +0100, Sergei Trofimovich wrote:
> On Fri, 26 Jun 2020 11:38:58 +0200
> Michał Górny <mgorny@gentoo.org> wrote:
> 
> > On Fri, 2020-06-26 at 09:51 +0100, Sergei Trofimovich wrote:
> > > On Fri, 26 Jun 2020 07:29:45 +0000
> > > Michał Górny <mgorny@gentoo.org> wrote:
> > >   
> > > > Dnia June 26, 2020 6:42:57 AM UTC, Sergei Trofimovich <slyfox@gentoo.org> napisał(a):  
> > > > > On Sat, 20 Jun 2020 16:29:53 +0100
> > > > > Sergei Trofimovich <slyfox@gentoo.org> wrote:
> > > > >    
> > > > > > On Sat, 20 Jun 2020 16:05:38 +0200
> > > > > > Michał Górny <mgorny@gentoo.org> wrote:
> > > > > >     
> > > > > > > On Sat, 2020-06-20 at 14:57 +0100, Sergei Trofimovich wrote:      
> > > > > > > > Give maintainers the chance to act and flag packages that pull in    
> > > > > python:2.7.    
> > > > > > > > Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
> > > > > > > > ---
> > > > > > > >  profiles/package.deprecated | 4 ++++
> > > > > > > >  1 file changed, 4 insertions(+)
> > > > > > > > 
> > > > > > > > diff --git a/profiles/package.deprecated    
> > > > > b/profiles/package.deprecated    
> > > > > > > > index a756e845f47..bb661571962 100644
> > > > > > > > --- a/profiles/package.deprecated
> > > > > > > > +++ b/profiles/package.deprecated
> > > > > > > > @@ -17,6 +17,10 @@
> > > > > > > >  
> > > > > > > >  #--- END OF EXAMPLES ---
> > > > > > > >  
> > > > > > > > +# Sergei Trofimovich <slyfox@gentoo.org> (2020-06-20)
> > > > > > > > +# Deprecated. Consider poring to python 3 and drop support for    
> > > > > python2.    
> > > > > > > > +dev-lang/python:2.7
> > > > > > > > +
> > > > > > > >  # Sergei Trofimovich <slyfox@gentoo.org> (2020-02-22)
> > > > > > > >  # virtual/libstdc++ has only one sys-libs/libstdc++-v3 provider.
> > > > > > > >  # Use that instead. Or even better use none of them. It's a        
> > > > > > >       
> > > > > >     
> > > > > > > It will trigger the same for packages that support *only*
> > > > > > > Python 2.7, as well as these that support 2.7 in addition to 3    
> > > > > because    
> > > > > > > they have 2.7 deps.      
> > > > > > 
> > > > > > If we expect actions by developers on both cases I don't see a    
> > > > > problem with that.
> > > > > 
> > > > > Pushed as:
> > > > > https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=79d65d6641cfc0ef7b44df491c390e8c880e3049
> > > > > with full text being:
> > > > > 
> > > > > +# Sergei Trofimovich <slyfox@gentoo.org> (2020-06-26)
> > > > > +# Deprecated.
> > > > > +# - optional python:2.7 dependency should be dropped if no reverse
> > > > > +#   dependencies are using it.
> > > > > +# - mandatory python:2.7 depepndency will require package porting
> > > > > +#   or package removal if no reverse dependencies are using it.
> > > > > +dev-lang/python:2.7    
> > > > 
> > > > You've just introduced 829 CI warnings  
> > > 
> > > That's the intention.
> > >   
> > > > effectively disabling the ability to distinguish *new* problems in these packages.  
> > > 
> > > Correct. Citing above:
> > > 
> > > "If we expect actions by developers on both cases I don't see a  problem with that."
> > > 
> > > I assume we still do.  
> > 
> > Not exactly.  You've pinpointed the wrong target.
> > 
> > First of all, we want people to support Python 3.  Removing support for
> > Python 2 is a secondary goal.
> 
> What is the desired end state here? All packages that depend on
> python should support python3?

Yes, or be masked for removal.  The desired result is that at some point
in time we can disable py2 target in eclass without anything breaking.

> > Flagging packages that support Python 2 in addition to Python 3
> > and cause no trouble in py2 cleanup is doubtful.
> 
> What is "py2 cleanup"? I still struggle to understand what packages
> require change and which do not. Is there one pager doc that explains
> a few things for me:

Some of this is mentioned in Python Guide [1].

[1] https://dev.gentoo.org/~mgorny/python-guide/package-maintenance.html#support-for-python-2

> - How packages are picked for masking? Maybe we can deprecate them
>   instead? Or we (I) can write a bit of code that flags packages requiring
>   maintainers' attention.

This is really decided by humans, and I don't think it can be trivially
automated.  So far we've focused on masking packages that are either
a. unlikely to be ported (e.g. dead upstream), b. have no Gentoo
maintainers.

> - What is the expected end state for the "py2 cleanup"? 

Not sure if I understand right but I think the answer is: we can disable
py2 support via eclass and nothing breaks.

> The doc would also be a good link to add to recently added "# Py2 only"
> masks as well.
> 
> > Flagging packages that support 2+3 because of their revdeps is not
> > helpful at all.  It's just noise to the maintainer who can't remove py2
> > because of revdeps.
> 
> I agree it can be spammy if we expect to have many packages with
> python2 support for an extended period of time (3+ months). If it's
> seen by others as too noisy I can revert the commit now.

The 'early' py2 removal date is set for 2021-01-01 AFAIR (I'm yet to
publish the timeline I've RFC-ed earlier).  Not sure if it's possible.
 One thing I'm sure of is that py2 support is becoming harder
and harder.

> 
> > Flagging dev-python/pypy* which needs py2 but is entirely outside
> > the eclass system is not helpful at all.
> 
> To pick a concrete example: from what I read above I don't see why
> app-misc/golly was masked for removal.

Me neither.  But I really do think this can be resolved peacefully
without neverending debates.

-- 
Best regards,
Michał Górny


[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 618 bytes --]

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

* Re: [gentoo-dev] [PATCH] profiles/package.deprecated: deprecate python:2.7
  2020-06-26 16:47             ` Sergei Trofimovich
  2020-06-26 17:17               ` Michał Górny
@ 2020-06-26 17:41               ` Aaron Bauman
  2020-06-26 21:02                 ` Sergei Trofimovich
  1 sibling, 1 reply; 15+ messages in thread
From: Aaron Bauman @ 2020-06-26 17:41 UTC (permalink / raw
  To: gentoo-dev



On June 26, 2020 12:47:24 PM EDT, Sergei Trofimovich <slyfox@gentoo.org> wrote:
>On Fri, 26 Jun 2020 11:38:58 +0200
>Michał Górny <mgorny@gentoo.org> wrote:
>
>> On Fri, 2020-06-26 at 09:51 +0100, Sergei Trofimovich wrote:
>> > On Fri, 26 Jun 2020 07:29:45 +0000
>> > Michał Górny <mgorny@gentoo.org> wrote:
>> >   
>> > > Dnia June 26, 2020 6:42:57 AM UTC, Sergei Trofimovich
><slyfox@gentoo.org> napisał(a):  
>> > > > On Sat, 20 Jun 2020 16:29:53 +0100
>> > > > Sergei Trofimovich <slyfox@gentoo.org> wrote:
>> > > >    
>> > > > > On Sat, 20 Jun 2020 16:05:38 +0200
>> > > > > Michał Górny <mgorny@gentoo.org> wrote:
>> > > > >     
>> > > > > > On Sat, 2020-06-20 at 14:57 +0100, Sergei Trofimovich
>wrote:      
>> > > > > > > Give maintainers the chance to act and flag packages that
>pull in    
>> > > > python:2.7.    
>> > > > > > > Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
>> > > > > > > ---
>> > > > > > >  profiles/package.deprecated | 4 ++++
>> > > > > > >  1 file changed, 4 insertions(+)
>> > > > > > > 
>> > > > > > > diff --git a/profiles/package.deprecated    
>> > > > b/profiles/package.deprecated    
>> > > > > > > index a756e845f47..bb661571962 100644
>> > > > > > > --- a/profiles/package.deprecated
>> > > > > > > +++ b/profiles/package.deprecated
>> > > > > > > @@ -17,6 +17,10 @@
>> > > > > > >  
>> > > > > > >  #--- END OF EXAMPLES ---
>> > > > > > >  
>> > > > > > > +# Sergei Trofimovich <slyfox@gentoo.org> (2020-06-20)
>> > > > > > > +# Deprecated. Consider poring to python 3 and drop
>support for    
>> > > > python2.    
>> > > > > > > +dev-lang/python:2.7
>> > > > > > > +
>> > > > > > >  # Sergei Trofimovich <slyfox@gentoo.org> (2020-02-22)
>> > > > > > >  # virtual/libstdc++ has only one sys-libs/libstdc++-v3
>provider.
>> > > > > > >  # Use that instead. Or even better use none of them.
>It's a        
>> > > > > >       
>> > > > >     
>> > > > > > It will trigger the same for packages that support *only*
>> > > > > > Python 2.7, as well as these that support 2.7 in addition
>to 3    
>> > > > because    
>> > > > > > they have 2.7 deps.      
>> > > > > 
>> > > > > If we expect actions by developers on both cases I don't see
>a    
>> > > > problem with that.
>> > > > 
>> > > > Pushed as:
>> > > >
>https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=79d65d6641cfc0ef7b44df491c390e8c880e3049
>> > > > with full text being:
>> > > > 
>> > > > +# Sergei Trofimovich <slyfox@gentoo.org> (2020-06-26)
>> > > > +# Deprecated.
>> > > > +# - optional python:2.7 dependency should be dropped if no
>reverse
>> > > > +#   dependencies are using it.
>> > > > +# - mandatory python:2.7 depepndency will require package
>porting
>> > > > +#   or package removal if no reverse dependencies are using
>it.
>> > > > +dev-lang/python:2.7    
>> > > 
>> > > You've just introduced 829 CI warnings  
>> > 
>> > That's the intention.
>> >   
>> > > effectively disabling the ability to distinguish *new* problems
>in these packages.  
>> > 
>> > Correct. Citing above:
>> > 
>> > "If we expect actions by developers on both cases I don't see a 
>problem with that."
>> > 
>> > I assume we still do.  
>> 
>> Not exactly.  You've pinpointed the wrong target.
>> 
>> First of all, we want people to support Python 3.  Removing support
>for
>> Python 2 is a secondary goal.
>
>What is the desired end state here? All packages that depend on
>python should support python3?
>
>> Flagging packages that support Python 2 in addition to Python 3
>> and cause no trouble in py2 cleanup is doubtful.
>
>What is "py2 cleanup"? I still struggle to understand what packages
>require change and which do not. Is there one pager doc that explains
>a few things for me:
>- How packages are picked for masking? Maybe we can deprecate them
>instead? Or we (I) can write a bit of code that flags packages
>requiring
>  maintainers' attention.
>- What is the expected end state for the "py2 cleanup"? 
>
>The doc would also be a good link to add to recently added "# Py2 only"
>masks as well.
>
>> Flagging packages that support 2+3 because of their revdeps is not
>> helpful at all.  It's just noise to the maintainer who can't remove
>py2
>> because of revdeps.
>
>I agree it can be spammy if we expect to have many packages with
>python2 support for an extended period of time (3+ months). If it's
>seen by others as too noisy I can revert the commit now.
>
>> Flagging dev-python/pypy* which needs py2 but is entirely outside
>> the eclass system is not helpful at all.
>
>To pick a concrete example: from what I read above I don't see why
>app-misc/golly was masked for removal.

It was masked because it only supports Py2. The maintainer (you) decided to drop Python script support. Problem solved. Easy day. All done. 

As discussed elsewhere, there are tools to show which packages only support Py2 etc. 

There is no discrimination of which packages get masked and when. Additionally, masking seems to drive the attention vice all the other discussions, bugs, etc. 

As we can see, folks will complain no matter what method is used. I could spend my days opening bugs and hoping for a response, yelling loudly on the ML for others to "pitch in" etc.

In the end, the mask seems to work quickest when only a couple of people can sift through the packages in the tree. We have a deadline...

Look at the list of packages masked for removal and how many get "saved." I think it is fairly clear how effective it is... Without wasting time opening bugs, begging on the ML for support, explaining that there are tools to help devs see these things etc. 

-- 
Sent from my Android device with K-9 Mail. Please excuse my brevity.


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

* Re: [gentoo-dev] [PATCH] profiles/package.deprecated: deprecate python:2.7
  2020-06-26 17:17               ` Michał Górny
@ 2020-06-26 17:51                 ` Sergei Trofimovich
  0 siblings, 0 replies; 15+ messages in thread
From: Sergei Trofimovich @ 2020-06-26 17:51 UTC (permalink / raw
  To: Michał Górny; +Cc: gentoo-dev

On Fri, 26 Jun 2020 19:17:50 +0200
Michał Górny <mgorny@gentoo.org> wrote:

> On Fri, 2020-06-26 at 17:47 +0100, Sergei Trofimovich wrote:
> > On Fri, 26 Jun 2020 11:38:58 +0200
> > Michał Górny <mgorny@gentoo.org> wrote:
> >   
> > > On Fri, 2020-06-26 at 09:51 +0100, Sergei Trofimovich wrote:  
> > > > On Fri, 26 Jun 2020 07:29:45 +0000
> > > > Michał Górny <mgorny@gentoo.org> wrote:
> > > >     
> > > > > Dnia June 26, 2020 6:42:57 AM UTC, Sergei Trofimovich <slyfox@gentoo.org> napisał(a):    
> > > > > > On Sat, 20 Jun 2020 16:29:53 +0100
> > > > > > Sergei Trofimovich <slyfox@gentoo.org> wrote:
> > > > > >      
> > > > > > > On Sat, 20 Jun 2020 16:05:38 +0200
> > > > > > > Michał Górny <mgorny@gentoo.org> wrote:
> > > > > > >       
> > > > > > > > On Sat, 2020-06-20 at 14:57 +0100, Sergei Trofimovich wrote:        
> > > > > > > > > Give maintainers the chance to act and flag packages that pull in      
> > > > > > python:2.7.      
> > > > > > > > > Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
> > > > > > > > > ---
> > > > > > > > >  profiles/package.deprecated | 4 ++++
> > > > > > > > >  1 file changed, 4 insertions(+)
> > > > > > > > > 
> > > > > > > > > diff --git a/profiles/package.deprecated      
> > > > > > b/profiles/package.deprecated      
> > > > > > > > > index a756e845f47..bb661571962 100644
> > > > > > > > > --- a/profiles/package.deprecated
> > > > > > > > > +++ b/profiles/package.deprecated
> > > > > > > > > @@ -17,6 +17,10 @@
> > > > > > > > >  
> > > > > > > > >  #--- END OF EXAMPLES ---
> > > > > > > > >  
> > > > > > > > > +# Sergei Trofimovich <slyfox@gentoo.org> (2020-06-20)
> > > > > > > > > +# Deprecated. Consider poring to python 3 and drop support for      
> > > > > > python2.      
> > > > > > > > > +dev-lang/python:2.7
> > > > > > > > > +
> > > > > > > > >  # Sergei Trofimovich <slyfox@gentoo.org> (2020-02-22)
> > > > > > > > >  # virtual/libstdc++ has only one sys-libs/libstdc++-v3 provider.
> > > > > > > > >  # Use that instead. Or even better use none of them. It's a          
> > > > > > > >         
> > > > > > >       
> > > > > > > > It will trigger the same for packages that support *only*
> > > > > > > > Python 2.7, as well as these that support 2.7 in addition to 3      
> > > > > > because      
> > > > > > > > they have 2.7 deps.        
> > > > > > > 
> > > > > > > If we expect actions by developers on both cases I don't see a      
> > > > > > problem with that.
> > > > > > 
> > > > > > Pushed as:
> > > > > > https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=79d65d6641cfc0ef7b44df491c390e8c880e3049
> > > > > > with full text being:
> > > > > > 
> > > > > > +# Sergei Trofimovich <slyfox@gentoo.org> (2020-06-26)
> > > > > > +# Deprecated.
> > > > > > +# - optional python:2.7 dependency should be dropped if no reverse
> > > > > > +#   dependencies are using it.
> > > > > > +# - mandatory python:2.7 depepndency will require package porting
> > > > > > +#   or package removal if no reverse dependencies are using it.
> > > > > > +dev-lang/python:2.7      
> > > > > 
> > > > > You've just introduced 829 CI warnings    
> > > > 
> > > > That's the intention.
> > > >     
> > > > > effectively disabling the ability to distinguish *new* problems in these packages.    
> > > > 
> > > > Correct. Citing above:
> > > > 
> > > > "If we expect actions by developers on both cases I don't see a  problem with that."
> > > > 
> > > > I assume we still do.    
> > > 
> > > Not exactly.  You've pinpointed the wrong target.
> > > 
> > > First of all, we want people to support Python 3.  Removing support for
> > > Python 2 is a secondary goal.  
> > 
> > What is the desired end state here? All packages that depend on
> > python should support python3?  
> 
> Yes, or be masked for removal.  The desired result is that at some point
> in time we can disable py2 target in eclass without anything breaking.

That helps. Thanks.

> > > Flagging packages that support Python 2 in addition to Python 3
> > > and cause no trouble in py2 cleanup is doubtful.  
> > 
> > What is "py2 cleanup"? I still struggle to understand what packages
> > require change and which do not. Is there one pager doc that explains
> > a few things for me:  
> 
> Some of this is mentioned in Python Guide [1].
> 
> [1] https://dev.gentoo.org/~mgorny/python-guide/package-maintenance.html#support-for-python-2
> 
> > - How packages are picked for masking? Maybe we can deprecate them
> >   instead? Or we (I) can write a bit of code that flags packages requiring
> >   maintainers' attention.  
> 
> This is really decided by humans, and I don't think it can be trivially
> automated.  So far we've focused on masking packages that are either
> a. unlikely to be ported (e.g. dead upstream), b. have no Gentoo
> maintainers.

I see. That will probably mean package masking confusion will be
brought up again and again.

Well, so be it. It least I'll hopefully be aware of it next time :)

> > - What is the expected end state for the "py2 cleanup"?   
> 
> Not sure if I understand right but I think the answer is: we can disable
> py2 support via eclass and nothing breaks.

The question does not make much sense if the set of affected packages
is not clearly defined. Longer term full python3 support is a good enough
answer.

> > The doc would also be a good link to add to recently added "# Py2 only"
> > masks as well.
> >   
> > > Flagging packages that support 2+3 because of their revdeps is not
> > > helpful at all.  It's just noise to the maintainer who can't remove py2
> > > because of revdeps.  
> > 
> > I agree it can be spammy if we expect to have many packages with
> > python2 support for an extended period of time (3+ months). If it's
> > seen by others as too noisy I can revert the commit now.  
> 
> The 'early' py2 removal date is set for 2021-01-01 AFAIR (I'm yet to
> publish the timeline I've RFC-ed earlier).  Not sure if it's possible.
>  One thing I'm sure of is that py2 support is becoming harder
> and harder.

I reverted the deprecation change as:
    https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cf062e6a3aa0c5850909a277f8fbe2ed7f5ebc70

-- 

  Sergei


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

* Re: [gentoo-dev] [PATCH] profiles/package.deprecated: deprecate python:2.7
  2020-06-26 17:41               ` Aaron Bauman
@ 2020-06-26 21:02                 ` Sergei Trofimovich
  2020-06-26 21:24                   ` Michał Górny
  2020-06-26 22:48                   ` Aaron Bauman
  0 siblings, 2 replies; 15+ messages in thread
From: Sergei Trofimovich @ 2020-06-26 21:02 UTC (permalink / raw
  To: Aaron Bauman; +Cc: gentoo-dev

On Fri, 26 Jun 2020 13:41:13 -0400
Aaron Bauman <bman@gentoo.org> wrote:

> On June 26, 2020 12:47:24 PM EDT, Sergei Trofimovich <slyfox@gentoo.org> wrote:
> >On Fri, 26 Jun 2020 11:38:58 +0200
> >Michał Górny <mgorny@gentoo.org> wrote:
> >  
> >> On Fri, 2020-06-26 at 09:51 +0100, Sergei Trofimovich wrote:  
> >> > On Fri, 26 Jun 2020 07:29:45 +0000
> >> > Michał Górny <mgorny@gentoo.org> wrote:
> >> >     
> >> > > Dnia June 26, 2020 6:42:57 AM UTC, Sergei Trofimovich  
> ><slyfox@gentoo.org> napisał(a):    
> >> > > > On Sat, 20 Jun 2020 16:29:53 +0100
> >> > > > Sergei Trofimovich <slyfox@gentoo.org> wrote:
> >> > > >      
> >> > > > > On Sat, 20 Jun 2020 16:05:38 +0200
> >> > > > > Michał Górny <mgorny@gentoo.org> wrote:
> >> > > > >       
> >> > > > > > On Sat, 2020-06-20 at 14:57 +0100, Sergei Trofimovich  
> >wrote:        
> >> > > > > > > Give maintainers the chance to act and flag packages that  
> >pull in      
> >> > > > python:2.7.      
> >> > > > > > > Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
> >> > > > > > > ---
> >> > > > > > >  profiles/package.deprecated | 4 ++++
> >> > > > > > >  1 file changed, 4 insertions(+)
> >> > > > > > > 
> >> > > > > > > diff --git a/profiles/package.deprecated      
> >> > > > b/profiles/package.deprecated      
> >> > > > > > > index a756e845f47..bb661571962 100644
> >> > > > > > > --- a/profiles/package.deprecated
> >> > > > > > > +++ b/profiles/package.deprecated
> >> > > > > > > @@ -17,6 +17,10 @@
> >> > > > > > >  
> >> > > > > > >  #--- END OF EXAMPLES ---
> >> > > > > > >  
> >> > > > > > > +# Sergei Trofimovich <slyfox@gentoo.org> (2020-06-20)
> >> > > > > > > +# Deprecated. Consider poring to python 3 and drop  
> >support for      
> >> > > > python2.      
> >> > > > > > > +dev-lang/python:2.7
> >> > > > > > > +
> >> > > > > > >  # Sergei Trofimovich <slyfox@gentoo.org> (2020-02-22)
> >> > > > > > >  # virtual/libstdc++ has only one sys-libs/libstdc++-v3  
> >provider.  
> >> > > > > > >  # Use that instead. Or even better use none of them.  
> >It's a          
> >> > > > > >         
> >> > > > >       
> >> > > > > > It will trigger the same for packages that support *only*
> >> > > > > > Python 2.7, as well as these that support 2.7 in addition  
> >to 3      
> >> > > > because      
> >> > > > > > they have 2.7 deps.        
> >> > > > > 
> >> > > > > If we expect actions by developers on both cases I don't see  
> >a      
> >> > > > problem with that.
> >> > > > 
> >> > > > Pushed as:
> >> > > >  
> >https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=79d65d6641cfc0ef7b44df491c390e8c880e3049  
> >> > > > with full text being:
> >> > > > 
> >> > > > +# Sergei Trofimovich <slyfox@gentoo.org> (2020-06-26)
> >> > > > +# Deprecated.
> >> > > > +# - optional python:2.7 dependency should be dropped if no  
> >reverse  
> >> > > > +#   dependencies are using it.
> >> > > > +# - mandatory python:2.7 depepndency will require package  
> >porting  
> >> > > > +#   or package removal if no reverse dependencies are using  
> >it.  
> >> > > > +dev-lang/python:2.7      
> >> > > 
> >> > > You've just introduced 829 CI warnings    
> >> > 
> >> > That's the intention.
> >> >     
> >> > > effectively disabling the ability to distinguish *new* problems  
> >in these packages.    
> >> > 
> >> > Correct. Citing above:
> >> > 
> >> > "If we expect actions by developers on both cases I don't see a   
> >problem with that."  
> >> > 
> >> > I assume we still do.    
> >> 
> >> Not exactly.  You've pinpointed the wrong target.
> >> 
> >> First of all, we want people to support Python 3.  Removing support  
> >for  
> >> Python 2 is a secondary goal.  
> >
> >What is the desired end state here? All packages that depend on
> >python should support python3?
> >  
> >> Flagging packages that support Python 2 in addition to Python 3
> >> and cause no trouble in py2 cleanup is doubtful.  
> >
> >What is "py2 cleanup"? I still struggle to understand what packages
> >require change and which do not. Is there one pager doc that explains
> >a few things for me:
> >- How packages are picked for masking? Maybe we can deprecate them
> >instead? Or we (I) can write a bit of code that flags packages
> >requiring
> >  maintainers' attention.
> >- What is the expected end state for the "py2 cleanup"? 
> >
> >The doc would also be a good link to add to recently added "# Py2 only"
> >masks as well.
> >  
> >> Flagging packages that support 2+3 because of their revdeps is not
> >> helpful at all.  It's just noise to the maintainer who can't remove  
> >py2  
> >> because of revdeps.  
> >
> >I agree it can be spammy if we expect to have many packages with
> >python2 support for an extended period of time (3+ months). If it's
> >seen by others as too noisy I can revert the commit now.
> >  
> >> Flagging dev-python/pypy* which needs py2 but is entirely outside
> >> the eclass system is not helpful at all.  
> >
> >To pick a concrete example: from what I read above I don't see why
> >app-misc/golly was masked for removal.  
> 
> It was masked because it only supports Py2. The maintainer (you) decided to drop Python script support. Problem solved. Easy day. All done. 

A few points:

1. "only supports Py2" does not seem to warrant to mask leaf packages
   and contradicts to Michał's explanation of cleanup effort:
     See https://archives.gentoo.org/gentoo-dev/message/04d419ebef01e80a43fc3b301e11afb6
   Please reconcile the goals within the python@ team. Ask team lead
   if not sure and provide clear guidance for others. "only supports Py2"
   is not good enough explanation.

   Leaf packages should be able to stay up to 2021-01-01, no? I'd suggest
   adding them to packages.deprecated instead.

2. I decided to drop python support in a hurry to unbreak world upgrade
   for users and myself. If I had some time I would prefer to do that in
   higher confidence and have a chance to look at python3 support in the
   package.
   But now I chucked python2 scripting entirely probably breaking a few
   users. I don't see it as a good thing.

   After Michał's explanation I am considering to restore python2 support
   while I investigate python3 support feasibility.

Thus no. Not "All done". We will probably have exactly the same conversation
next month if nothing changes in the process.

> There is no discrimination of which packages get masked and when. 

I fail to interpret this phrase. Does it mean you are about to mask all
python2-only packages ~now-ish?

> Additionally, masking seems to drive the attention vice all the other discussions, bugs, etc. 

I am not a native English speaker. I don't know what exactly this phrase
means.

It's not hard to get an attention by filing a bug against maintainer.
I personally read my bugs and try to act on them. I believe devs are still
required to have Bugzilla account.

I find posted links and related issues useful to assess what I should do
next and how much time I have. The blocker bug with a detailed
explanation of the effort, deadlines, next batch of packages and
whatever other stuff would be perfect there.

> As we can see, folks will complain no matter what method is used. I could spend my days opening bugs and hoping for a response, yelling loudly on the ML for others to "pitch in" etc.

I totally understand where the frustration comes from. If you
decided to do everything an your own it's challenging.

Moreover, I'm actively willing to fix whatever problems packages
I maintain have. I just need to know about them. Preferably slightly
before the change impacts users.

gentoo-dev@ emails don't work for me most of the time. At leat
I don't remember any emails in form close to
  "Port you python:2.7 packages Right Now: here is the list".

My complain is simple: I want an email directed to my email alias.
I periodically scrub bugs assigned to me and my aliases. I see that
explicit action is required from me and so on.

Is opening 100 bugs a slow procedure for you? Is it a technical
limitation or something else and you think it's useless? How about
asking others how they would like it to be handled when they complain?
What is their preference? I would be surprised to hear that
their first choice is when users complain about masked packages.

Mechanically you can auto-generate links with a one-liner script
and literally file bugs with one click. I can help with that.

I'm sure you spent more time reading only my emails in these threads
than filing bugs would take.

> In the end, the mask seems to work quickest when only a couple of people can sift through the packages in the tree.

I hope you don't optimize just for speed. Looks more like avoidance
contacting maintainers in any direct form.

Can you at least CC maintainers when masking is done?

> Without wasting time opening bugs

If I would get such a bug I would appreciate it.
Full list is also a clear indicator of how many things are yet to be done. 

> begging on the ML for support

Support for what you are doing? I'm sure if devs agree
on the ultimate goals you want to achieve you will get all the support.

Just make sure to link to the plan every time you do the change.

> explaining that there are tools to help devs see these things etc. 

Probably just linking people to the dashboard and scripts would be faster.
Per-maintainer breakdown of package list would help a lot.

-- 

  Sergei


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

* Re: [gentoo-dev] [PATCH] profiles/package.deprecated: deprecate python:2.7
  2020-06-26 21:02                 ` Sergei Trofimovich
@ 2020-06-26 21:24                   ` Michał Górny
  2020-06-26 22:48                   ` Aaron Bauman
  1 sibling, 0 replies; 15+ messages in thread
From: Michał Górny @ 2020-06-26 21:24 UTC (permalink / raw
  To: gentoo-dev, Aaron Bauman

[-- Attachment #1: Type: text/plain, Size: 7795 bytes --]

On Fri, 2020-06-26 at 22:02 +0100, Sergei Trofimovich wrote:
> On Fri, 26 Jun 2020 13:41:13 -0400
> Aaron Bauman <bman@gentoo.org> wrote:
> 
> > On June 26, 2020 12:47:24 PM EDT, Sergei Trofimovich <slyfox@gentoo.org> wrote:
> > > On Fri, 26 Jun 2020 11:38:58 +0200
> > > Michał Górny <mgorny@gentoo.org> wrote:
> > >  
> > > > On Fri, 2020-06-26 at 09:51 +0100, Sergei Trofimovich wrote:  
> > > > > On Fri, 26 Jun 2020 07:29:45 +0000
> > > > > Michał Górny <mgorny@gentoo.org> wrote:
> > > > >     
> > > > > > Dnia June 26, 2020 6:42:57 AM UTC, Sergei Trofimovich  
> > > <slyfox@gentoo.org> napisał(a):    
> > > > > > > On Sat, 20 Jun 2020 16:29:53 +0100
> > > > > > > Sergei Trofimovich <slyfox@gentoo.org> wrote:
> > > > > > >      
> > > > > > > > On Sat, 20 Jun 2020 16:05:38 +0200
> > > > > > > > Michał Górny <mgorny@gentoo.org> wrote:
> > > > > > > >       
> > > > > > > > > On Sat, 2020-06-20 at 14:57 +0100, Sergei Trofimovich  
> > > wrote:        
> > > > > > > > > > Give maintainers the chance to act and flag packages that  
> > > pull in      
> > > > > > > python:2.7.      
> > > > > > > > > > Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
> > > > > > > > > > ---
> > > > > > > > > >  profiles/package.deprecated | 4 ++++
> > > > > > > > > >  1 file changed, 4 insertions(+)
> > > > > > > > > > 
> > > > > > > > > > diff --git a/profiles/package.deprecated      
> > > > > > > b/profiles/package.deprecated      
> > > > > > > > > > index a756e845f47..bb661571962 100644
> > > > > > > > > > --- a/profiles/package.deprecated
> > > > > > > > > > +++ b/profiles/package.deprecated
> > > > > > > > > > @@ -17,6 +17,10 @@
> > > > > > > > > >  
> > > > > > > > > >  #--- END OF EXAMPLES ---
> > > > > > > > > >  
> > > > > > > > > > +# Sergei Trofimovich <slyfox@gentoo.org> (2020-06-20)
> > > > > > > > > > +# Deprecated. Consider poring to python 3 and drop  
> > > support for      
> > > > > > > python2.      
> > > > > > > > > > +dev-lang/python:2.7
> > > > > > > > > > +
> > > > > > > > > >  # Sergei Trofimovich <slyfox@gentoo.org> (2020-02-22)
> > > > > > > > > >  # virtual/libstdc++ has only one sys-libs/libstdc++-v3  
> > > provider.  
> > > > > > > > > >  # Use that instead. Or even better use none of them.  
> > > It's a          
> > > > > > > > >         
> > > > > > > >       
> > > > > > > > > It will trigger the same for packages that support *only*
> > > > > > > > > Python 2.7, as well as these that support 2.7 in addition  
> > > to 3      
> > > > > > > because      
> > > > > > > > > they have 2.7 deps.        
> > > > > > > > 
> > > > > > > > If we expect actions by developers on both cases I don't see  
> > > a      
> > > > > > > problem with that.
> > > > > > > 
> > > > > > > Pushed as:
> > > > > > >  
> > > https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=79d65d6641cfc0ef7b44df491c390e8c880e3049  
> > > > > > > with full text being:
> > > > > > > 
> > > > > > > +# Sergei Trofimovich <slyfox@gentoo.org> (2020-06-26)
> > > > > > > +# Deprecated.
> > > > > > > +# - optional python:2.7 dependency should be dropped if no  
> > > reverse  
> > > > > > > +#   dependencies are using it.
> > > > > > > +# - mandatory python:2.7 depepndency will require package  
> > > porting  
> > > > > > > +#   or package removal if no reverse dependencies are using  
> > > it.  
> > > > > > > +dev-lang/python:2.7      
> > > > > > 
> > > > > > You've just introduced 829 CI warnings    
> > > > > 
> > > > > That's the intention.
> > > > >     
> > > > > > effectively disabling the ability to distinguish *new* problems  
> > > in these packages.    
> > > > > Correct. Citing above:
> > > > > 
> > > > > "If we expect actions by developers on both cases I don't see a   
> > > problem with that."  
> > > > > I assume we still do.    
> > > > 
> > > > Not exactly.  You've pinpointed the wrong target.
> > > > 
> > > > First of all, we want people to support Python 3.  Removing support  
> > > for  
> > > > Python 2 is a secondary goal.  
> > > 
> > > What is the desired end state here? All packages that depend on
> > > python should support python3?
> > >  
> > > > Flagging packages that support Python 2 in addition to Python 3
> > > > and cause no trouble in py2 cleanup is doubtful.  
> > > 
> > > What is "py2 cleanup"? I still struggle to understand what packages
> > > require change and which do not. Is there one pager doc that explains
> > > a few things for me:
> > > - How packages are picked for masking? Maybe we can deprecate them
> > > instead? Or we (I) can write a bit of code that flags packages
> > > requiring
> > >  maintainers' attention.
> > > - What is the expected end state for the "py2 cleanup"? 
> > > 
> > > The doc would also be a good link to add to recently added "# Py2 only"
> > > masks as well.
> > >  
> > > > Flagging packages that support 2+3 because of their revdeps is not
> > > > helpful at all.  It's just noise to the maintainer who can't remove  
> > > py2  
> > > > because of revdeps.  
> > > 
> > > I agree it can be spammy if we expect to have many packages with
> > > python2 support for an extended period of time (3+ months). If it's
> > > seen by others as too noisy I can revert the commit now.
> > >  
> > > > Flagging dev-python/pypy* which needs py2 but is entirely outside
> > > > the eclass system is not helpful at all.  
> > > 
> > > To pick a concrete example: from what I read above I don't see why
> > > app-misc/golly was masked for removal.  
> > 
> > It was masked because it only supports Py2. The maintainer (you) decided to drop Python script support. Problem solved. Easy day. All done. 
> 
> A few points:
> 
> 1. "only supports Py2" does not seem to warrant to mask leaf packages
>    and contradicts to Michał's explanation of cleanup effort:
>      See https://archives.gentoo.org/gentoo-dev/message/04d419ebef01e80a43fc3b301e11afb6
>    Please reconcile the goals within the python@ team. Ask team lead
>    if not sure and provide clear guidance for others. "only supports Py2"
>    is not good enough explanation.
> 
>    Leaf packages should be able to stay up to 2021-01-01, no? I'd suggest
>    adding them to packages.deprecated instead.

Important leaf packages, yes.  However, we don't really want to
'surprise' everyone by suddenly masking everything.  Splitting it into
smaller batches is better, as it gives people effectively more time to
choose which packages to save.

There's no clear criteria how to determine which packages go first.
 Some of the packages chosen here wouldn't be my first choice.  However,
if they were last rited already, I would focus on restoring only these
that actually proved some demand.

> 2. I decided to drop python support in a hurry to unbreak world upgrade
>    for users and myself. If I had some time I would prefer to do that in
>    higher confidence and have a chance to look at python3 support in the
>    package.
>    But now I chucked python2 scripting entirely probably breaking a few
>    users. I don't see it as a good thing.
> 
>    After Michał's explanation I am considering to restore python2 support
>    while I investigate python3 support feasibility.

I might have missed a point there.  While indeed it is possible to keep
py2+py3 in various packages, I have myself been proactively removing py2
where py3 is already available.  This is mostly a matter of convenience
with the limited tooling we have.

Long story short, in all the dependency/conflict mess, the simplest way
forward is to iteratively try removing py2 everywhere.  This way we
slowly release deps.

-- 
Best regards,
Michał Górny


[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 618 bytes --]

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

* Re: [gentoo-dev] [PATCH] profiles/package.deprecated: deprecate python:2.7
  2020-06-26 21:02                 ` Sergei Trofimovich
  2020-06-26 21:24                   ` Michał Górny
@ 2020-06-26 22:48                   ` Aaron Bauman
  1 sibling, 0 replies; 15+ messages in thread
From: Aaron Bauman @ 2020-06-26 22:48 UTC (permalink / raw
  To: gentoo-dev

[-- Attachment #1: Type: text/plain, Size: 3972 bytes --]

On Fri, Jun 26, 2020 at 10:02:34PM +0100, Sergei Trofimovich wrote:
> A few points:
> 
> 1. "only supports Py2" does not seem to warrant to mask leaf packages
>    and contradicts to Michał's explanation of cleanup effort:
>      See https://archives.gentoo.org/gentoo-dev/message/04d419ebef01e80a43fc3b301e11afb6
>    Please reconcile the goals within the python@ team. Ask team lead
>    if not sure and provide clear guidance for others. "only supports Py2"
>    is not good enough explanation.
> 
>    Leaf packages should be able to stay up to 2021-01-01, no? I'd suggest
>    adding them to packages.deprecated instead.
>

Yes, it does warrant it. As we must remove/convert all leaf packages
before the interpreter can be safely removed. I believe Michal clarified
this in another email. It is a continuous effort...

> 2. I decided to drop python support in a hurry to unbreak world upgrade
>    for users and myself. If I had some time I would prefer to do that in
>    higher confidence and have a chance to look at python3 support in the
>    package.
>    But now I chucked python2 scripting entirely probably breaking a few
>    users. I don't see it as a good thing.
> 
>    After Michał's explanation I am considering to restore python2 support
>    while I investigate python3 support feasibility.
> 
> Thus no. Not "All done". We will probably have exactly the same conversation
> next month if nothing changes in the process.
> 

Restore the py2 support then and convert it to py3 as required. We have
a long ways to go... sorry your package got caught up in the mix...

> > There is no discrimination of which packages get masked and when. 
> 
> I fail to interpret this phrase. Does it mean you are about to mask all
> python2-only packages ~now-ish?
> 

Sorry for the misunderstanding/language barrier. Yes, the intent is to
rid the tree if py2 dependent packages. We have been doing this in
incremental stages in order to allow developers time to "save" packages
as needed. Generally, most packages go away, but occasionally packages
such as this wind up in the fold...

This is because there are a myriad of packages out there... it would
take *years* to rid the tree of them any other way.

> > Additionally, masking seems to drive the attention vice all the other discussions, bugs, etc. 
> 
> I am not a native English speaker. I don't know what exactly this phrase
> means.
> 

It simply means that masking packages gains the attention of developers
to drop Python support, convert their packages to py3, or let it go
away. Opening a bug for the 1k+ packages would be time consuming and
mostly meaningless. Again, the numbers from every "round" of masks have
shown that the *vast* majority of packages simply get removed.

> It's not hard to get an attention by filing a bug against maintainer.
> I personally read my bugs and try to act on them. I believe devs are still
> required to have Bugzilla account.
> 

Yes, you may respond along with a few other devs. Again, pure numbers
here... most packages just get tree cleaned. Few get "saved."

> > As we can see, folks will complain no matter what method is used. I could spend my days opening bugs and hoping for a response, yelling loudly on the ML for others to "pitch in" etc.
> 
> I totally understand where the frustration comes from. If you
> decided to do everything an your own it's challenging.
> 
> Moreover, I'm actively willing to fix whatever problems packages
> I maintain have. I just need to know about them. Preferably slightly
> before the change impacts users.
>

Thank you. Yes, please check your Py2 packages and convert/rid of them
as required.

> Support for what you are doing? I'm sure if devs agree
> on the ultimate goals you want to achieve you will get all the support.
>

There are a few *loud* voices that don't agree. Most others are very
quiet. 

-- 
Cheers,
Aaron

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

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

end of thread, other threads:[~2020-06-26 22:48 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-06-20 13:57 [gentoo-dev] [PATCH] profiles/package.deprecated: deprecate python:2.7 Sergei Trofimovich
2020-06-20 14:05 ` Michał Górny
2020-06-20 15:29   ` Sergei Trofimovich
2020-06-26  6:42     ` Sergei Trofimovich
2020-06-26  7:29       ` Michał Górny
2020-06-26  7:34         ` Joonas Niilola
2020-06-26  8:51         ` Sergei Trofimovich
2020-06-26  9:38           ` Michał Górny
2020-06-26 16:47             ` Sergei Trofimovich
2020-06-26 17:17               ` Michał Górny
2020-06-26 17:51                 ` Sergei Trofimovich
2020-06-26 17:41               ` Aaron Bauman
2020-06-26 21:02                 ` Sergei Trofimovich
2020-06-26 21:24                   ` Michał Górny
2020-06-26 22:48                   ` Aaron Bauman

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