1267
Comment:
|
3726
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
{{{ ┌─┬──────┐ │░│ ⊙ ʘ │ │░│ │ │░│ ──── │ ╘═╧══════╛ }}} |
|
Line 11: | Line 18: |
The coverage is the percent of functions that are doctested. This must be 100%. |
|
Line 15: | Line 24: |
This detects the presence of the encoding line at the top of files. | This detects the presence of the encoding line at the top of files. (TO BE REMOVED) |
Line 19: | Line 28: |
Check that doctest continuation use the correct syntax, namely `....:` | Check that doctest continuation use the correct syntax, namely {{{....:}}} |
Line 25: | Line 34: |
This means '\choose', '\over', '\atop', '\above', '\overwithdelims', '\atopwithdelims', '\abovewithdelims'. | This means {{{\choose, \over, \atop, \above, \overwithdelims, \atopwithdelims, \abovewithdelims}}}. |
Line 27: | Line 36: |
== oldstyle_print == | All these commands are obsolete in latex. |
Line 29: | Line 38: |
Check that print is using python 3 syntax. (TO BE REMOVED) | == deprecation_number == Check that new deprecations use the correct ticket number. |
Line 35: | Line 46: |
0) xrange | 0) {{{xrange}}} |
Line 37: | Line 48: |
1) .iterkeys, .itervalues, .iteritems | 1) {{{.iterkeys, .itervalues, .iteritems}}} |
Line 39: | Line 50: |
2) basestring | 2) {{{basestring}}} |
Line 41: | Line 52: |
3) __nonzero__ | 3) {{{__nonzero__}}} |
Line 43: | Line 54: |
These are not allowed in python 3. (TO DE REMOVED) | These are not allowed in python 3. (TO BE REMOVED) |
Line 49: | Line 60: |
0) "import six" and "from six import" | 0) {{{import six}}} and {{{from six import}}} Never ever import anything from "six" in a Cython file. |
Line 53: | Line 66: |
Check that some python3 incompatible code does not appear. (TO BE REMOVED) 2) {{{ifilter, imap, izip}}} 3) {{{raise statements}}} 4) {{{cmp}}} (use {{{richcmp}}} for comparison) 6) {{{<>}}} (the correct syntax is {{{!=}}}) 7) {{{<type '[a-z]*'>}}} 8) {{{next}}} 9) {{{__metaclass__}}} 10) {{{except Exception, var}}} 11) {{{apply}}} 12) {{{sagenb}}} (the legacy notebook is deprecated) |
|
Line 54: | Line 89: |
Run `pyflakes` on the modified `.py` files. This typically reports about unused variables or imports, that you should remove. Sometimes it gives false-positive warnings. |
|
Line 57: | Line 98: |
Run `pycodestyle` on the modified `.py` files. Currently, the selected options are {{{W605, E401, E701, E702, E711, E712}}}. See [[http://pycodestyle.pycqa.org/en/latest/intro.html#error-codes|pycodestyle documentation]] for more information. |
|
Line 58: | Line 105: |
Perform various checks, mainly about blocks in the documentation. 1) correct syntax is {{{.. SEEALSO::}}} 2) {{{TESTS}}} and {{{EXAMPLES}}} should be plural, and {{{NOTE}}} singular 3) no {{{::}}} after {{{INPUT}}} and {{{OUTPUT}}} blocks, only a single colon 4) no {{{::}}} after {{{REFERENCE}}} blocks, only a single colon 5) no {{{ :}}} at the end of lines, namely the colon should not be preceded by a space 6) no {{{Returns}}} at the start of lines, but {{{Return}}} for the first line (short summary) or {{{This returns}}} otherwise |
|
Line 61: | Line 122: |
Look for the presence of triple colons {{{:::}}} or {{{: ::}}} |
|
Line 62: | Line 125: |
Look for the presence of badly formatted trac roles {{{:trac:}}} The correct syntax is {{{:trac:`23456`}}} |
|
Line 65: | Line 132: |
Try to decide if the startup time is getting worse. This performs a statistical analysis, which is not always pertinent. |
|
Line 66: | Line 137: |
Count modules imported at startup, and compare to stored data to see if this has increased. |
|
Line 69: | Line 142: |
Build the html documentation. This is mandatory. Any failure will prevent the ticket to be merged. == docbuild_pdf == Build the pdf documentation. This is not activated by default on the patchbot clients. |
|
Line 70: | Line 153: |
The aim of this plugin is not clear. |
┌─┬──────┐ │░│ ⊙ ʘ │ │░│ │ │░│ ──── │ ╘═╧══════╛
explanations on the patchbot plugins
commit_messages
Check for the existence of a commit message for every commit.
coverage
Try to check that coverage did increase.
The coverage is the percent of functions that are doctested. This must be 100%.
non_ascii
Look for the presence of non-ascii characters in python and cython files.
This detects the presence of the encoding line at the top of files. (TO BE REMOVED)
doctest_continuation
Check that doctest continuation use the correct syntax, namely ....:
foreign_latex
Check that some bad latex code does not appear.
This means \choose, \over, \atop, \above, \overwithdelims, \atopwithdelims, \abovewithdelims.
All these commands are obsolete in latex.
deprecation_number
Check that new deprecations use the correct ticket number.
python3_py
Look for some wrong patterns in python or rst files.
0) xrange
1) .iterkeys, .itervalues, .iteritems
2) basestring
3) __nonzero__
These are not allowed in python 3. (TO BE REMOVED)
python3_pyx
Look for some wrong patterns in cython files.
0) import six and from six import
Never ever import anything from "six" in a Cython file.
python3
Check that some python3 incompatible code does not appear. (TO BE REMOVED)
2) ifilter, imap, izip
3) raise statements
4) cmp (use richcmp for comparison)
6) <> (the correct syntax is !=)
7) <type '[a-z]*'>
8) next
9) __metaclass__
10) except Exception, var
11) apply
12) sagenb (the legacy notebook is deprecated)
pyflakes
Run pyflakes on the modified .py files.
This typically reports about unused variables or imports, that you should remove.
Sometimes it gives false-positive warnings.
pycodestyle
Run pycodestyle on the modified .py files.
Currently, the selected options are W605, E401, E701, E702, E711, E712.
See pycodestyle documentation for more information.
blocks
Perform various checks, mainly about blocks in the documentation.
1) correct syntax is .. SEEALSO::
2) TESTS and EXAMPLES should be plural, and NOTE singular
3) no :: after INPUT and OUTPUT blocks, only a single colon
4) no :: after REFERENCE blocks, only a single colon
5) no : at the end of lines, namely the colon should not be preceded by a space
6) no Returns at the start of lines, but Return for the first line (short summary) or This returns otherwise
triple_colon
Look for the presence of triple colons ::: or : ::
trac_links
Look for the presence of badly formatted trac roles :trac:
The correct syntax is :trac:`23456`
startup_time
Try to decide if the startup time is getting worse.
This performs a statistical analysis, which is not always pertinent.
startup_modules
Count modules imported at startup, and compare to stored data to see if this has increased.
docbuild
Build the html documentation.
This is mandatory. Any failure will prevent the ticket to be merged.
docbuild_pdf
Build the pdf documentation.
This is not activated by default on the patchbot clients.
git_rev_list
The aim of this plugin is not clear.