View this PageEdit this PageUploads to this PageHistory of this PageTop of the SwikiRecent ChangesSearch the SwikiHelp Guide

Contributing sourcecode to SuperCollider 3

Home   How To   Code Pool   Public Library   Theory   Events

Important Notes

Developer Checkout

In order to commit any code changes you make back to the repository, you need to
checkout via the :ext: method, over SSH.
You can checkout an anonymous :pserver: copy if you simply wish to keep up to date
with the latest changes. ProjecctBuilder will let you know when a file has changed
and will download just that update.

This is how to check out an :ext: developer version.

1. Register with SourceForge
2. Get any of us admins to make you a developer (see list on sourceforge)
setenv CVS_RSH ssh
setenv CVSROOT

you can also put these statements in ~/.tcshrc

4. go to the folder you wish to put the sc source code into (it will make a folder called SuperCollider3 there)
cvs -z3 checkout SuperCollider3
enter your password at the prompt

you now have an :ext: "developer-mode" checked out version of the source code.

see PowerBuilder and CVS (sic: ProjectBuilder)

when you use ProjectBuilder to modify sources, remember:

For everyone who commits code, please go to the Format menu in ProjectBuilder, choose "Tab settings.." and set Tabs to 4 Indent to 4 and check "Editor uses tabs".
Otherwise the indentation becomes unreadable.

when you feel confident to actually commit a change, go to the directory of your file:

cvs commit filename

enter your password,
fill out a report of what your changes do (feel free to be verbose here rather than in the
source code itself. in the source you should only comment your code as per usual to explain
the implementation or api )
vi sucks. sorry. when you are done hit

escape :w // to write the file
escape :q // to quit vi

If you want a different editor to be used in place of vi, you can set the environment variable EDITOR to point to your editor of choice. This is probably best done in your ~/.tcshrc file.


Use the -m option rather than get dumped into vi.
cvs ci -m "only allow OSC bundles" SC_ComPort.cpp

you have been committed.


CVS settings
i strongly reccommend putting this:

diff -pRbBrHEAD
update -dP
history -c

in your ~/.cvsrc file
this will make these the default flags for these commands.

diff will always compare with the most recent version. it will go recursively from your current directory on down. the other flags improve the readibility.
Q quiet
p show which C function (or sc class !)
R recursive
bB ignore white space changes

update will prune folders that have had their contents removed. this is a common problem with CVS, its tricky to remove things.

history will show everybody's history, not just your own.


Link to this Page