Differences between revisions 3 and 4
Revision 3 as of 2012-01-06 08:34:10
Size: 2068
Editor: jdemeyer
Comment:
Revision 4 as of 2012-01-06 08:38:15
Size: 2381
Editor: jdemeyer
Comment:
Deletions are marked like this. Additions are marked like this.
Line 17: Line 17:
 * Documentation should be formatted according to the [[http://sagemath.org/doc/developer/conventions.html#documentation-strings|developer's guide]]
Line 31: Line 32:
 * New files should have a heading as shown in the [[http://sagemath.org/doc/developer/conventions.html#headings-of-sage-library-code-files|developer's guide]]
Line 35: Line 37:
 * Add youself to [http://trac.sagemath.org/sage_trac/#AccountNamesMappedtoRealNames|Account Names Mapped to Real Names]  * Add youself to [[http://trac.sagemath.org/sage_trac/#AccountNamesMappedtoRealNames|Account Names Mapped to Real Names]]

This is a checklist that can be consulted when authoring or reviewing a patch.

Read the patch

  • Most importantly, have a look at the patch and see what it does.

General

  • The patch should apply cleanly on top of the latest development release. "cleanly" in particular means without "fuzz".

  • There should be no trailing whitespace on any line touched by the patch.
  • The patch should be generated by Mercurial (preferably using hg export tip) and have a sensible commit message. A multi-line commit message is allowed and in fact encouraged. The first line (which will be shown by hg log) should make sense by itself.

  • make ptestlong should pass with the patch applied.

  • Run an interactive sage session, and manually exercise the affected code. Try in particular some corner cases or stuff not mentioned in the EXAMPLES section.

Documentation

  • Documentation should be formatted according to the developer's guide

  • Run sage --docbuild reference html to rebuild the reference docs. View any affected pages.

  • View affected documentation from within a sage session.
  • All variables in documentation should be enclosed in backticks.

Doctests

  • All new code should be doctested. Use sage --coverageall to make sure the doctest coverage has not gone down.

  • If the patch fixes a defect, there should be a doctest checking that the defect is fixed, and the comment should mention the trac ticket number.
  • Add a TESTS section to test corner cases or (for a bugfix ticket) cases fixed by the patch.
  • Also doctest exceptions. For example, when writing a function for division, test that dividing by zero yields a reasonable exception (as opposed to a crash of Sage)

New Functions

  • All new functions should have INPUT, OUTPUT, EXAMPLES, and TESTS sections where applicable.

  • New files should have a heading as shown in the developer's guide

Trac

ReviewChecklist (last edited 2023-02-23 20:15:26 by mkoeppe)