Note that because js testing occurs on a different CI job than python
unit testing, files will not be clobbered by this change. The python unit
testing job also creates the same-named report through the diff_coverage
task.
This gets us checking for tests inheriting from other tests. When that
happens, tests get run more than once, which is pointless. We have a
few dozen new warnings due to this new check.
This also disables unused-wildcard-import. That removes a few hundred
warnings.
Together, this means we can reduce the pylint limit to 5999. :)
The platform includes jshint as a development tool, and our
builds are enforcing a limit on total number of jshint violations.
This commit will enforce no new jshint violations on a per-change
basis, much like pylint and pep8 are enforced. So with this change,
we'll be enforcing our linting requirements consistently, regardless
of type of violations.
Also on Jenkins, runs quality task after installing jshint.
The old line:
from path import path
produced pylint errors because of the baroque way that path.py defined
"path". We tried to get them to change how they defined it, but they
deleted the name instead: https://github.com/jaraco/path.py/issues/102
(Jason then changed his mind, but this is a better way to use path.py,
it avoids the pylint error at least.)
This complexity metric is created by using radon (see changed files for additional
documentation links). This tool calculates cyclomatic complexity and provides a numeric grade
where a lower number is better (e.g., less complex).
'distribute' is the ancestor of 'setuptools', and many packages require
setuptools to be installed.
Upgrade of MySQL-python from 1.2.4 to 1.2.5 is required because of an
incompatibility with setuptools>0.7.
JShint will be executed with paver run_jshint, which will use a defined set of
directories (likewise defined are directories to ignore). A limit can be imposed
on the total number of violations. Note that this change does NOT include adding
jshint to diff-quality or `paver run_quality`.