Things you should do when you become a committer
This page describes stuff you'd want to do when you become elected a committer – in other words, when you're given write access to the SpamAssassin codebase. As described at ProjectRoles, the SpamAssassin project has 3 levels of involvement – the same as many Apache Software Foundation (ASF) projects.
(This page is still likely to be under construction.)
Set Your SVN Password
When your account is created, an ASF infrastructure volunteer will send you a password for the Apache login server (currently people.apache.org). This allows you to log in using SSH to set your SVN password, as described [http://www.apache.org/dev/version-control.html#https-svn here]. Here's a quick summary of what to do:
ssh -l MYUSERNAME people.apache.org Password: [YOURPASSWORD] svnpasswd
And enter your desired SVN password twice to set it. If you have difficulties logging in with SSH for the first time, make sure you use a keyboard interactive password method.
Another way to do it is to use https://svn.apache.org/change-password , apparently. If all else fails, mail root at apache dot org.
This keeps changing, so look at http://www.apache.org/dev/new-committers-guide.html and http://www.apache.org/dev/version-control.html for a more canonical set of instructions. If those pages differ from this page, they're more likely to be reliable.
Writable SVN checkout
When you become a committer, you should check out the svn repository using the HTTPS url instead of the HTTP one, so that you have read/write access to the repo. To check out from scratch, assuming that you're using the standard svn commandline client:
svn checkout https://svn.apache.org/repos/asf/spamassassin/trunk
or, if you have an existing read-only SVN checkout, to switch an existing checkout to HTTPS:
cd /path/to/checkedout/tree svn switch --relocate http:// https://
Changes to the SVN tree can now be checked in directly using svn commit -m 'a comment about the commit'
.
The first time a file is checked in using svn commit
, you will be prompted for your username and password. This will then be cached for all further commits.
You should first commit a change adding yourself to the CREDITS file. If you want to do additional test commits, you can try something like adding a single newline to the end of an inoffensive file in a subdirectory, and removing it again; that should do the trick.
The first time you commit something your commit message needs to be moderated through, so don't be surprised if it doesn't show up for awhile.
EOL-Style
You should also ensure that their checkout has the svn:eol-style
property set to native
throughout, as (apparently) this policy cannot be set server-wide. Do this by editing the file ~/.subversion/config
and adding these lines to the end:
enable-auto-props = yes *.pm = svn:eol-style=native *.pl = svn:eol-style=native *.PL = svn:eol-style=native *.in = svn:eol-style=native *.t = svn:eol-style=native *.c = svn:eol-style=native *.h = svn:eol-style=native *.xml = svn:eol-style=native *.html = svn:eol-style=native *.css = svn:eol-style=native *.bat = svn:eol-style=native
Rulesrc Sandbox
In order to use the NightlyMassCheck to test new rules, create a rulesrc sandbox cd /trunk/rulesrc/sandbox/; mkdir <apache username>
. Please use your Apache login as the name for your sandbox.
Rules placed in this directory will then be tested with the nightly mass check once commited to the SVN repository. NOTE: the rulesrc is external to the repository so you must commit changes here seperately, i.e. cd /trunk/rulesrc/sandbox/; svn commit -m 'spammers beware! new rules are on the prowl'
You can review the results of the Nightly Mass Check at http://ruleqa.spamassassin.org/
Misc
You should subscribe to the security list by sending a subscription request to security-subscribe at spamassassin.apache.org.
Be sure to read [http://www.apache.org/foundation/how-it-works.html how-it-works.html] – there's lots of useful stuff about ASF processes there.
PMC to-do
First, propose a vote to add the person as a committer on the pmc at spamassassin.apache.org list. Usually the subject is [VOTE] Name, btw.
Upon a successful vote, send an invite to the person (text below). If the invitation is accepted, grant the person's Bugzilla account with the 'EditBugs', 'HasCla', and 'Security' group permissions. This is done by following the "Users" link in Bugzilla, specifying the account by email address, and then granting the permissions from there.
Invitation Text
To: invitee-email-address Cc: pmc Subject: Committer status invite from Apache SpamAssassin Dear [First Name], On behalf of the Apache SpamAssassin Project, we are pleased to offer you SVN write access ("commit access") to the SpamAssassin project repositories. Please recognize that commit access does not preclude appropriate code review prior to committing code, based on the type of patch. The trunk is usually in Commit-then-Review mode (except before release) and stable branches are generally in Review-then-Commit mode. A formal review with three +1 votes on Bugzilla (which can include the author if the author is a committer) is required when in R-T-C mode prior to committing changes. However, even when in C-T-R mode, significant patches should still be submitted to Bugzilla or discussed on the development list first. Please read these web pages for background on how Apache works and what being a committer means. on committer status SA specifics, http://wiki.apache.org/spamassassin/ProjectRoles Apache, http://www.apache.org/foundation/how-it-works.html#roles Committership, http://www.apache.org/dev/committers.html on voting SA specifics, http://wiki.apache.org/spamassassin/VotingProcedure Apache, http://www.apache.org/foundation/voting.html on SA development http://wiki.apache.org/spamassassin/DevelopmentStuff If you accept this invitation, please reply in the affirmative and include in your reply your preference of account name at apache.org, and your forwarding email address. Finally, please note that being given commit access is not the same as being elected a member of the ASF or being on the SpamAssassin Project Management Committee. We've had some misunderstandings in the past on this so we point out the distinction up-front. Thanks for your sustained contributions to SpamAssassin! Regards, The SpamAssassin PMC