§ Contributing to SAGEmath
- The first time, run
make build. DO NOT RUN
make, as this performs a
make docas well which burns cycles building docs for no reason.
- Normally, if you just change Python code in the library, it suffices to run
./sage -brto update Python.
- Only if you changed docs, and want to test that they still work, you'd need to run
- To run doctests, can run
./sage -t . More info on the sage doctesting page
make build && ./sage -n=jupyter ./test-ddg-notebook.ipynb is reasonably fast.
§ Git the hard way for SAGE
git with SAGE uses different URLs for fetch and push.
[user@localhost sage]$ git remote add trac git://trac.sagemath.org/sage.git -t master
[user@localhost sage]$ git remote set-url --push trac email@example.com:sage.git
trac git://trac.sagemath.org/sage.git (fetch)
trac firstname.lastname@example.org:sage.git (push)
§ Getting the commit merged
The release manager (Volker Braun) takes care of it.
A number of people can close tickets for invalidity/duplicate etc,
but the actual merging is done by one person only (and a number of
bots/scripts that help).
A positively reviewed ticket with green bots and all fields filled in will
usually be merged in a week or two or rejected (merge conflict, issues
with specific architectures, failing bots). But it might take longer (too
many positively review tickets waiting, end of release cycle).
§ Tending to the garden
- Fix typos
pyflakes, lint warnings. Try to simplify code that's marked very compliated by
- Fix code that's marked by lgtm