Gentoo Archives: gentoo-dev

From: Michael Cummings <mcummings@g.o>
To: gentoo-dev@l.g.o
Subject: [gentoo-dev] [RFC] Non-Dev Contributors and the Tree
Date: Thu, 07 Jun 2007 11:48:29
Message-Id: 4667EF71.9010103@gentoo.org
1 -----BEGIN PGP SIGNED MESSAGE-----
2 Hash: SHA1
3
4 ...or, Trees and Tree Climbers: Shaking up the tree
5
6 Parts of this argument have been raised before. If this particular angle
7 has already been addressed, kindly point me to the archive so I can see
8 whether I have anything new and original to add or not. Please desist
9 from simply flaming this as a "seen it, declined it" deal.
10
11 I was listening to last night's recording of the Linux Link Tech Show,
12 during which one of the Fedora leads was interviewed. During the course
13 of his talk, he mentioned that Fedora had a 1000+ contributors, with
14 only about 250 (ish) actual Fedora developers with commit rights to the
15 final tree. This got me thinking about how Gentoo has historically
16 handled contributors and the tree, and made me wonder if there weren't a
17 better way that would help bolster direct community involvement without
18 simultaneously overtaxing our existing infrastructure.
19
20 One of Gentoo's flaws, and I can say this because I have been guilty of
21 doing this at least once in the dim past, is that our work-from tree is
22 the same one that the mirrors are reading and people are downloading to
23 their desktops. A mistake in committing to CVS ruins it for everyone,
24 with rapid (and rabid) users getting bit right after a --sync. We've
25 done a good job of catching and correcting these incidents - but
26 wouldn't it be nice if they couldn't happen as easily?
27
28 One of the comments I hear frequently from active users is that they
29 would love to be able to help maintain a package, or assist with what we
30 do, but have neither the time nor the energy to become a full dev. Sure,
31 we have the various overlays, bugzilla, and the home grown solutions
32 that some teams have come up with, but there isn't a cohesive, unified
33 approach to the issue of maintaining by proxy that I am aware of.
34
35 What I would like to propose is that we have an official (yes, official)
36 cvs overlay that is used by developers *and* contributors to commit new
37 ebuilds and changes to. Mirrors would still pull, as they always have,
38 from the gentoo-x86 cvs repo. "Official" Gentoo developers would then be
39 able to take from the overlay and commit to the main tree at will, but
40 have a common stomping ground for contributors and developers to work in
41 without fear of breaking the rest of the tree. We reward those users
42 (pardon the terms if you find that condescending, its not intended as
43 such) with the drive and passion, but not the means, resources, or time,
44 by making them contributors to this overlay, where they can make cvs
45 commits.
46
47 This overlay wouldn't necessarily need to be the whole of the tree,
48 either. Some areas, such as profiles, could be absent, as well as select
49 projects (perhaps the kernel and toolchain portions?). These
50 contributors wouldn't need to have a flood of @gentoo.org email
51 addresses - they are only contributors who, for whatever reason, are not
52 actually full scale developers.
53
54 What's the advantage to the developer community? I'm glad you asked :) I
55 see a few benefits right from the start. First, it frees up some of the
56 developers from the 'grind' of the bump-test-commit cycle. We (the
57 Gentoo developers) didn't come here to be ebuild monkeys. We came here,
58 gave our energy and time, so that we could help shape and make something
59 out of this product. The bump and grind is a necessary part of it, but
60 too often, especially for teams managing large segments (perl team
61 being, obviously, no exception), that bump-test-commit cycle becomes the
62 only thing you are ever doing.
63
64 This might mean some developers, who joined Gentoo solely for the
65 ability to commit new ebuilds and maintain a small segment of the tree,
66 decide to downgrade themselves to contributor status. That isn't a bad
67 thing, and I wouldn't suggest that it be compulsory either. But it would
68 also mean that we would be opening the doors for those folks that
69 actually want to help with the maintenance without the pressure and
70 requirements of being a dev. Perhaps the definition and role of a dev
71 would need to be modified, enhanced even, under this new guise, but I
72 don't believe that to be a bad thing.
73
74 What about the infrastructure requirements? Well, hopefully, A) we're
75 scaled so that if we had a 1000 developers with cvs access we'd be ok
76 anyway (in which case, under this proposal, there would be little
77 difference - 1000 cvs accounts is a 1000 cvs accounts, no matter which
78 way you slice it), and B) we'd only be talking about the *actual* cvs
79 end of the house, not anything that would affect the mirrors. I wouldn't
80 suggest that this additional cvs root be opened to the user community at
81 large, or that the mirrors be asked to dup it as well. Since in my
82 (limited?) vision this would only be a segment, albeit a sizable
83 segment, I'll grant, it shouldn't exceed any of the current thresholds
84 we have.
85
86 As developers, we are already accustomed (and if not, what exactly are
87 you maintaining in the tree??) to using a cvs checkout as an overlay.
88 This would simply be adding another checkout - and, it strikes me,
89 finally achieving the 'stable' vs 'development' branches of the tree.
90 And yes, in case the question is posed, the 'stable' branch that is
91 mirrored would still have ~arch'd material; removing testing ebuilds is
92 not the intent. The intent is to open up the development and maintenance
93 of the tree to the audience at large. And maybe even making the dev
94 mailing list about development again, as devs that were formerly tied up
95 in in the bump cycle are now free to do what they came here to do: have
96 parties and lobby for the softserve machine.
97
98 This email was not vetted by any member of infrastructure, or the
99 developers at large (that's what I thought the -dev mailing list was a
100 forum for, after all). I speak in hypotheticals and potentials here, not
101 based on hard concrete facts, so some of my premises may be amiss. Yes,
102 I believe we would need to create some new 'tools' (ok, shell scripts :)
103 to help with some of the maintenance involved in this plan - but that
104 should hardly be a hinderance, as I'm sure there's plenty of us that
105 love sinking our teeth into a good shell script (or a bad one, as the
106 case may be).
107
108 Comments?
109
110 ~mcummings
111
112 P.S. Core readers, the irony isn't lost on me that I am posting to dev.
113 Consider this my last ditch post about development on -dev :)
114 - --
115
116 - -----o()o----------------------------------------------
117 Michael Cummings | #gentoo-dev, #gentoo-perl
118 Gentoo Perl Dev | on irc.freenode.net
119 Gentoo/SPARC
120 Gentoo/AMD64
121 GPG: 0543 6FA3 5F82 3A76 3BF7 8323 AB5C ED4E 9E7F 4E2E
122 - -----o()o----------------------------------------------
123 -----BEGIN PGP SIGNATURE-----
124 Version: GnuPG v2.0.4 (GNU/Linux)
125
126 iD8DBQFGZ+9xq1ztTp5/Ti4RAmc2AKChahdXYyVViF1u7202XiypnoFybACgmx0/
127 9VeDhgKjnMTE3WNFtYarU3w=
128 =uOtS
129 -----END PGP SIGNATURE-----
130 --
131 gentoo-dev@g.o mailing list

Replies

Subject Author
Re: [gentoo-dev] [RFC] Non-Dev Contributors and the Tree "Wulf C. Krueger" <philantrop@g.o>
Re: [gentoo-dev] [RFC] Non-Dev Contributors and the Tree Chris Gianelloni <wolf31o2@g.o>
Re: [gentoo-dev] [RFC] Non-Dev Contributors and the Tree Kent Fredric <kentfredric@×××××.com>