1 |
On Fri, 26 Jun 2020 13:41:13 -0400 |
2 |
Aaron Bauman <bman@g.o> wrote: |
3 |
|
4 |
> On June 26, 2020 12:47:24 PM EDT, Sergei Trofimovich <slyfox@g.o> wrote: |
5 |
> >On Fri, 26 Jun 2020 11:38:58 +0200 |
6 |
> >Michał Górny <mgorny@g.o> wrote: |
7 |
> > |
8 |
> >> On Fri, 2020-06-26 at 09:51 +0100, Sergei Trofimovich wrote: |
9 |
> >> > On Fri, 26 Jun 2020 07:29:45 +0000 |
10 |
> >> > Michał Górny <mgorny@g.o> wrote: |
11 |
> >> > |
12 |
> >> > > Dnia June 26, 2020 6:42:57 AM UTC, Sergei Trofimovich |
13 |
> ><slyfox@g.o> napisał(a): |
14 |
> >> > > > On Sat, 20 Jun 2020 16:29:53 +0100 |
15 |
> >> > > > Sergei Trofimovich <slyfox@g.o> wrote: |
16 |
> >> > > > |
17 |
> >> > > > > On Sat, 20 Jun 2020 16:05:38 +0200 |
18 |
> >> > > > > Michał Górny <mgorny@g.o> wrote: |
19 |
> >> > > > > |
20 |
> >> > > > > > On Sat, 2020-06-20 at 14:57 +0100, Sergei Trofimovich |
21 |
> >wrote: |
22 |
> >> > > > > > > Give maintainers the chance to act and flag packages that |
23 |
> >pull in |
24 |
> >> > > > python:2.7. |
25 |
> >> > > > > > > Signed-off-by: Sergei Trofimovich <slyfox@g.o> |
26 |
> >> > > > > > > --- |
27 |
> >> > > > > > > profiles/package.deprecated | 4 ++++ |
28 |
> >> > > > > > > 1 file changed, 4 insertions(+) |
29 |
> >> > > > > > > |
30 |
> >> > > > > > > diff --git a/profiles/package.deprecated |
31 |
> >> > > > b/profiles/package.deprecated |
32 |
> >> > > > > > > index a756e845f47..bb661571962 100644 |
33 |
> >> > > > > > > --- a/profiles/package.deprecated |
34 |
> >> > > > > > > +++ b/profiles/package.deprecated |
35 |
> >> > > > > > > @@ -17,6 +17,10 @@ |
36 |
> >> > > > > > > |
37 |
> >> > > > > > > #--- END OF EXAMPLES --- |
38 |
> >> > > > > > > |
39 |
> >> > > > > > > +# Sergei Trofimovich <slyfox@g.o> (2020-06-20) |
40 |
> >> > > > > > > +# Deprecated. Consider poring to python 3 and drop |
41 |
> >support for |
42 |
> >> > > > python2. |
43 |
> >> > > > > > > +dev-lang/python:2.7 |
44 |
> >> > > > > > > + |
45 |
> >> > > > > > > # Sergei Trofimovich <slyfox@g.o> (2020-02-22) |
46 |
> >> > > > > > > # virtual/libstdc++ has only one sys-libs/libstdc++-v3 |
47 |
> >provider. |
48 |
> >> > > > > > > # Use that instead. Or even better use none of them. |
49 |
> >It's a |
50 |
> >> > > > > > |
51 |
> >> > > > > |
52 |
> >> > > > > > It will trigger the same for packages that support *only* |
53 |
> >> > > > > > Python 2.7, as well as these that support 2.7 in addition |
54 |
> >to 3 |
55 |
> >> > > > because |
56 |
> >> > > > > > they have 2.7 deps. |
57 |
> >> > > > > |
58 |
> >> > > > > If we expect actions by developers on both cases I don't see |
59 |
> >a |
60 |
> >> > > > problem with that. |
61 |
> >> > > > |
62 |
> >> > > > Pushed as: |
63 |
> >> > > > |
64 |
> >https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=79d65d6641cfc0ef7b44df491c390e8c880e3049 |
65 |
> >> > > > with full text being: |
66 |
> >> > > > |
67 |
> >> > > > +# Sergei Trofimovich <slyfox@g.o> (2020-06-26) |
68 |
> >> > > > +# Deprecated. |
69 |
> >> > > > +# - optional python:2.7 dependency should be dropped if no |
70 |
> >reverse |
71 |
> >> > > > +# dependencies are using it. |
72 |
> >> > > > +# - mandatory python:2.7 depepndency will require package |
73 |
> >porting |
74 |
> >> > > > +# or package removal if no reverse dependencies are using |
75 |
> >it. |
76 |
> >> > > > +dev-lang/python:2.7 |
77 |
> >> > > |
78 |
> >> > > You've just introduced 829 CI warnings |
79 |
> >> > |
80 |
> >> > That's the intention. |
81 |
> >> > |
82 |
> >> > > effectively disabling the ability to distinguish *new* problems |
83 |
> >in these packages. |
84 |
> >> > |
85 |
> >> > Correct. Citing above: |
86 |
> >> > |
87 |
> >> > "If we expect actions by developers on both cases I don't see a |
88 |
> >problem with that." |
89 |
> >> > |
90 |
> >> > I assume we still do. |
91 |
> >> |
92 |
> >> Not exactly. You've pinpointed the wrong target. |
93 |
> >> |
94 |
> >> First of all, we want people to support Python 3. Removing support |
95 |
> >for |
96 |
> >> Python 2 is a secondary goal. |
97 |
> > |
98 |
> >What is the desired end state here? All packages that depend on |
99 |
> >python should support python3? |
100 |
> > |
101 |
> >> Flagging packages that support Python 2 in addition to Python 3 |
102 |
> >> and cause no trouble in py2 cleanup is doubtful. |
103 |
> > |
104 |
> >What is "py2 cleanup"? I still struggle to understand what packages |
105 |
> >require change and which do not. Is there one pager doc that explains |
106 |
> >a few things for me: |
107 |
> >- How packages are picked for masking? Maybe we can deprecate them |
108 |
> >instead? Or we (I) can write a bit of code that flags packages |
109 |
> >requiring |
110 |
> > maintainers' attention. |
111 |
> >- What is the expected end state for the "py2 cleanup"? |
112 |
> > |
113 |
> >The doc would also be a good link to add to recently added "# Py2 only" |
114 |
> >masks as well. |
115 |
> > |
116 |
> >> Flagging packages that support 2+3 because of their revdeps is not |
117 |
> >> helpful at all. It's just noise to the maintainer who can't remove |
118 |
> >py2 |
119 |
> >> because of revdeps. |
120 |
> > |
121 |
> >I agree it can be spammy if we expect to have many packages with |
122 |
> >python2 support for an extended period of time (3+ months). If it's |
123 |
> >seen by others as too noisy I can revert the commit now. |
124 |
> > |
125 |
> >> Flagging dev-python/pypy* which needs py2 but is entirely outside |
126 |
> >> the eclass system is not helpful at all. |
127 |
> > |
128 |
> >To pick a concrete example: from what I read above I don't see why |
129 |
> >app-misc/golly was masked for removal. |
130 |
> |
131 |
> It was masked because it only supports Py2. The maintainer (you) decided to drop Python script support. Problem solved. Easy day. All done. |
132 |
|
133 |
A few points: |
134 |
|
135 |
1. "only supports Py2" does not seem to warrant to mask leaf packages |
136 |
and contradicts to Michał's explanation of cleanup effort: |
137 |
See https://archives.gentoo.org/gentoo-dev/message/04d419ebef01e80a43fc3b301e11afb6 |
138 |
Please reconcile the goals within the python@ team. Ask team lead |
139 |
if not sure and provide clear guidance for others. "only supports Py2" |
140 |
is not good enough explanation. |
141 |
|
142 |
Leaf packages should be able to stay up to 2021-01-01, no? I'd suggest |
143 |
adding them to packages.deprecated instead. |
144 |
|
145 |
2. I decided to drop python support in a hurry to unbreak world upgrade |
146 |
for users and myself. If I had some time I would prefer to do that in |
147 |
higher confidence and have a chance to look at python3 support in the |
148 |
package. |
149 |
But now I chucked python2 scripting entirely probably breaking a few |
150 |
users. I don't see it as a good thing. |
151 |
|
152 |
After Michał's explanation I am considering to restore python2 support |
153 |
while I investigate python3 support feasibility. |
154 |
|
155 |
Thus no. Not "All done". We will probably have exactly the same conversation |
156 |
next month if nothing changes in the process. |
157 |
|
158 |
> There is no discrimination of which packages get masked and when. |
159 |
|
160 |
I fail to interpret this phrase. Does it mean you are about to mask all |
161 |
python2-only packages ~now-ish? |
162 |
|
163 |
> Additionally, masking seems to drive the attention vice all the other discussions, bugs, etc. |
164 |
|
165 |
I am not a native English speaker. I don't know what exactly this phrase |
166 |
means. |
167 |
|
168 |
It's not hard to get an attention by filing a bug against maintainer. |
169 |
I personally read my bugs and try to act on them. I believe devs are still |
170 |
required to have Bugzilla account. |
171 |
|
172 |
I find posted links and related issues useful to assess what I should do |
173 |
next and how much time I have. The blocker bug with a detailed |
174 |
explanation of the effort, deadlines, next batch of packages and |
175 |
whatever other stuff would be perfect there. |
176 |
|
177 |
> 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. |
178 |
|
179 |
I totally understand where the frustration comes from. If you |
180 |
decided to do everything an your own it's challenging. |
181 |
|
182 |
Moreover, I'm actively willing to fix whatever problems packages |
183 |
I maintain have. I just need to know about them. Preferably slightly |
184 |
before the change impacts users. |
185 |
|
186 |
gentoo-dev@ emails don't work for me most of the time. At leat |
187 |
I don't remember any emails in form close to |
188 |
"Port you python:2.7 packages Right Now: here is the list". |
189 |
|
190 |
My complain is simple: I want an email directed to my email alias. |
191 |
I periodically scrub bugs assigned to me and my aliases. I see that |
192 |
explicit action is required from me and so on. |
193 |
|
194 |
Is opening 100 bugs a slow procedure for you? Is it a technical |
195 |
limitation or something else and you think it's useless? How about |
196 |
asking others how they would like it to be handled when they complain? |
197 |
What is their preference? I would be surprised to hear that |
198 |
their first choice is when users complain about masked packages. |
199 |
|
200 |
Mechanically you can auto-generate links with a one-liner script |
201 |
and literally file bugs with one click. I can help with that. |
202 |
|
203 |
I'm sure you spent more time reading only my emails in these threads |
204 |
than filing bugs would take. |
205 |
|
206 |
> In the end, the mask seems to work quickest when only a couple of people can sift through the packages in the tree. |
207 |
|
208 |
I hope you don't optimize just for speed. Looks more like avoidance |
209 |
contacting maintainers in any direct form. |
210 |
|
211 |
Can you at least CC maintainers when masking is done? |
212 |
|
213 |
> Without wasting time opening bugs |
214 |
|
215 |
If I would get such a bug I would appreciate it. |
216 |
Full list is also a clear indicator of how many things are yet to be done. |
217 |
|
218 |
> begging on the ML for support |
219 |
|
220 |
Support for what you are doing? I'm sure if devs agree |
221 |
on the ultimate goals you want to achieve you will get all the support. |
222 |
|
223 |
Just make sure to link to the plan every time you do the change. |
224 |
|
225 |
> explaining that there are tools to help devs see these things etc. |
226 |
|
227 |
Probably just linking people to the dashboard and scripts would be faster. |
228 |
Per-maintainer breakdown of package list would help a lot. |
229 |
|
230 |
-- |
231 |
|
232 |
Sergei |