[ The original post I'm replying to is at http://lists.debian.org/debian-project/2008/10/msg00145.html ] On Fri, Oct 24, 2008 at 11:44:03AM +0300, Lars Wirzenius wrote: > I do not like the way Joerg wants to change the way people become and > are members of the Debian project. It's not all bad, but on the whole it > makes some of the worst parts of Debian become worse. It concentrates > power into fewer hands, removes some of the benefits of the Debian > Maintainer process, adds more hoops to jump through, and makes the whole > question of what it means to be a member of Debian massively > complicated. > > I think we should go in the opposite direction: massively simplify > the whole membership thing. This proposal received a lot of interest back then, but in the end went nowhere. I think we should resurrect it and put into use at least some of its parts. In particular, the part about "expiration of DD rights" received only minor criticisms; criticisms which I've tried to address. The essence of the proposal I'm advancing follows; if there is interest, it should then be converted into a GR text and voted upon. ------------------------------------------------------------------------ * DDs which are not active for 2 years or more automatically loose vote and upload rights. * Activity is defined as not having neither voted nor signed any upload (in the past 2 years). ------------------------------------------------------------------------ Some notes, including discussion of what changed wrt original text: - Inactivity takes now into account uploads and not only votes (to avoid "mandatory voting"). This way, inactivity is defined around unused rights which are DD-specific: voting and uploading. - The part about entering the project of Lars' proposal is no longer there, for two reasons: (1) it received way more criticism and that's enough of a reason to split it away; (2) part of the received criticism where bound to the potential amount of inactive DDs we currently have. That "flaw" can potentially be fixed by this proposal before moving to the other. - The proposal does not overload the current "emeritus" status, which can be entered upon request and has an easy way back. For formality-fans, the current proposal can be seen as defining a new "inactive" status which you enter after the 2 years of inactivity. From there you can go to emeritus upon request or something such. (FWIW, I don't think these details should be part of the GR text.) I'm looking for comments on this proposal. If there is interest, I of course volunteer to draft the GR text. Cheers PS I've "implemented" the proposal, by checking TTBOMK how many accounts will be affected by its adoption: 172 accounts as of today. The code it's attached: it uses UDD for upload history and *_voters.txt files from www.d.o for voting stats (which are over approximated and "save" accounts which have voted up to 3 years - 1 day ago)). As usual, there might be bugs, but I don't think the merits of the proposal can be affected by them. PS2 quotes of Lars' original proposal follow, mostly as kudos and because he is way better than me in explaining this kind of things :-) > The other end of the membership process is screwed up too. We should > not have to actively seek out members who are Missing In > Action. Staying a member in Debian should be an active process: if > you don't do anything, you should be automatically retired. <snip> > > Proposal > -------- > * Membership ends 24 months after they're given, or after the latest > participation in a vote arranged by the project's Secretary. Members > may retire themselves earlier, of course. -- Stefano Zacchiroli -o- PhD in Computer Science \ PostDoc @ Univ. Paris 7 zack@{upsilon.cc,pps.jussieu.fr,debian.org} -<>- http://upsilon.cc/zack/ Dietro un grande uomo c'è ..| . |. Et ne m'en veux pas si je te tutoie sempre uno zaino ...........| ..: |.... Je dis tu à tous ceux que j'aime
#!/bin/bash # Copyright: © 2009 Stefano Zacchiroli <zack@debian.org> # License: GNU General Public License, version 3 or above TARGETDIR="/org/udd.debian.org/mirrors/votes" BASEURL="http://www.debian.org/vote" WGET="wget --timestamping -q" mkdir -p $TARGETDIR rm -rf $TARGETDIR/* start_year="2006" # before that, URL scheme was different this_year=`date +%Y` for year in `seq $start_year $this_year` ; do for i in `seq -w 1 999` ; do $WGET -O "$TARGETDIR/${year}_vote_${i}_voters.txt" "$BASEURL/$year/vote_${i}_voters.txt" || break $WGET -O "$TARGETDIR/${year}_vote_${i}_tally.txt" "$BASEURL/$year/vote_${i}_tally.txt" || break done done for f in $TARGETDIR/* ; do # wget's timestamping leaves around empty files test -s $f || rm -f $f done
#!/bin/bash # Copyright: © 2009 Stefano Zacchiroli <zack@debian.org> # License: GNU General Public License, version 3 or above # Requirements: Debian package "moreutils" # years of inactivities to be reported YEARS=2 # where to find _voters.txt files # see http://svn.debian.org/wsvn/collab-qa/udd/scripts/fetch_votes.sh VOTESDIR="/org/udd.debian.org/mirrors/votes" udd="ssh merkel.debian.org /usr/lib/postgresql/8.4/bin/psql 'service=udd' -t -A -c" no_upload_query=" SELECT l.login FROM carnivore_keys AS k JOIN carnivore_login AS l ON k.id = l.id JOIN upload_history AS u ON k.key = u.fingerprint WHERE key_type = 'keyring' GROUP BY l.login HAVING MAX(u.date) < current_date - 365 * $YEARS ORDER BY l.login ;" this_year=$(date +%Y) info () { echo "* $*" 1>&2 } no_uploaders=$(mktemp -t tmp.inactive_dd.XXXXXXXXXX) recent_voters=$(mktemp -t tmp.inactive_dd.XXXXXXXXXX) inactive=$(mktemp -t tmp.inactive_dd.XXXXXXXXXX) trap "rm -f $no_uploaders $no_voters $inactive" EXIT $udd "\"$no_upload_query\"" > $no_uploaders info "DDs with no uploads in the last $YEARS year(s): $(wc -l $no_uploaders | cut -f 1 -d' ')" for year in $(seq $[$this_year - $YEARS] $this_year) ; do for report in $VOTESDIR/${year}_vote_*_voters.txt ; do egrep -h '^\s*[0-9]+' $report | awk '{print $2}' done done | sort -u > $recent_voters info "DDs which have voted in the last $YEARS year(s): $(wc -l $recent_voters | cut -f 1 -d' ')" combine $no_uploaders not $recent_voters > $inactive info "DDs which have neither uploaded nor voted in the last $YEARS year(s): $(wc -l $inactive | cut -f 1 -d' ')" cat $inactive
Attachment:
signature.asc
Description: Digital signature