1 |
On Tue, Apr 21, 2020 at 07:50:13AM +0200, Michał Górny wrote: |
2 |
> On Mon, 2020-04-20 at 16:04 -0500, William Hubbs wrote: |
3 |
> > Your proposal seems to completely go against how the go ecosystem operates, |
4 |
> > but if you can come up with a proof-of-concept for how it would work |
5 |
> > without forcing a lot of busy work on us that would never get accepted |
6 |
> > upstream, I'll take a look. |
7 |
> > |
8 |
> |
9 |
> Define 'busy work'. |
10 |
|
11 |
Busy work, to me at least, is work that generates a large amount of |
12 |
overhead compared to the gain it offers the distro and will never be |
13 |
accepted by upstream. |
14 |
|
15 |
> Is doing things right 'busy work' vs taking shortcuts? |
16 |
|
17 |
This depends on what you think "doing things right" or "taking |
18 |
shortcuts" mean. For example, I have had discussions with maintainers who |
19 |
are fine with writing patches to fix issues without reporting the issues |
20 |
upstream. Personally, I disagree with this approach. |
21 |
|
22 |
> Is it 'busy |
23 |
> work' that I'm putting a lot of effort into fixing Python packages? |
24 |
> Should I just last rite them all and tell people to use virtualenv? |
25 |
|
26 |
This gets into the other issue being discussed on the thread, but I have |
27 |
heard people say that yes you should. All we really need in portage is |
28 |
the base python tools -- the language, maybe pip and maybe setuptools |
29 |
and portage itself, then everything else should be installed via pip. |
30 |
|
31 |
> Is testing packages 'busy work'? I suppose it's all easier when you |
32 |
> just silently include 240 dependencies without testing a single one of |
33 |
> them and call it a day. Sure, you run some tests on the final package. |
34 |
> Leaves 240 untested, some of them likely failing tests and requiring |
35 |
> 'busy work' to fix them. |
36 |
|
37 |
In general I would say no, but I have run into tests that do not tollerate |
38 |
portage's sandbox, tests that take hours or days to run, or tests that |
39 |
require root privs. We don't force those kinds of tests to be run in src_test. |
40 |
|
41 |
> Is security support 'busy work'? I suppose it's all easier when you |
42 |
> ignore them problem and let security team deal with it (except they |
43 |
> won't). Sure, you can assume that when vulnerability is discovered, all |
44 |
> upstreams will eventually learn of it, update their bundled dependencies |
45 |
> and *maybe* inform people that their code might have been indirectly |
46 |
> vulnerable (but would they do the 'busy work' of discovering whether it |
47 |
> affected them or not?). |
48 |
|
49 |
In my experience, the security team doesn't write patches to fix |
50 |
vulnerabilities, so what they do wouldn't be any different in this case. |
51 |
|
52 |
> I realize Go is not isolated here. It's just brought as one major |
53 |
> example. Rust is no better. All these shiny 'write and forget' |
54 |
> languages share the same problem. Pay for some work hours, get |
55 |
> a working product, deploy it and forget unless customers want more |
56 |
> features. |
57 |
> |
58 |
> Today these languages are still young and the problems can be considered |
59 |
> largely theoretical. But some day -- well, unless all the cool kids |
60 |
> manage to move on to next shiny new language before then -- this will be |
61 |
> a major catastrophe. |
62 |
|
63 |
We can talk about theoretical issues in languages all day, but if we are |
64 |
going to do that we also have to talk about how terrible and permissive |
65 |
c is. You can google things like "security in c" and you will find that |
66 |
since it allows you to do exactly what you want, it is a major |
67 |
catastrophe in terms of security, but we accept new applications in c |
68 |
without any questions. |
69 |
|
70 |
Also, what about the nightmare that is php? |
71 |
|
72 |
In short, I don't see any reason to bikeshed about theoretical issues in |
73 |
languages. |
74 |
|
75 |
The way I see Go and Rust specifically is, more and more things are |
76 |
being written in these languages, and if we don't accept them, we will |
77 |
become irrelivent fast. |
78 |
|
79 |
William |