Skip to main content

No project description provided

Project description


Code quality checker package



Just run cq in the root of your package.

$ cq
requirements_setup_compatibility does not contain requirement 'coverage' that is in requirements.txt
dumb_style_checker Put exactly one space before and after `=`  [...     name='.........', ...].
package/ Put exactly one space before and after `=`  [... def fake_localtime(t=None): ...].
Hint: use `# NOQA` comment for disabling pyflakes on particular line
./tests/ 'types' imported but unused
Hint: use `# type: ignore` for disabling mypy on particular line
package/ error: Need type annotation for 'freeze_factories' (hint: "freeze_factories: List[<type>] = ...")
Hint: use `# pylint: disable=<violation name>` for disabling line check. For a list of violations, see `pylint --list-msgs`
package/ [W0212(protected-access), ] Access to a protected member _uuid_generate_time of a client class

You can specify path to packages that you want to test, if you want to test whole library/app.

$ cq package_1 package_2

Checkers are run in threads. Some of them (e.g. pylint, mypy) spawn an external process so this checkers run in parallel.

To disable certain checker for the whole run add option -d:

$ cq -d pylint -d branch_name_check

If something takes too long use debug output, which will print timing for each checker:

$ cq --debug

Most of the checkers support disabling the error in the comment on the respective line. For example in pylint you can use

# pylint: disable = protected-access

to disable protected access check in the current context.


Just run cq --fix with the same options as regular cq.


  • pylint - comprehensive linter
  • mypy - checks python typing
  • bellybutton - checks based on abstract syntax tree analysis
  • pyflakes-ext - another general linter
  • grammar_nazi - grammar/spelling errors
  • dumb_style_checker - basic python mistakes (e.g. use of print in a library)
  • requirements_setup_compatibility - validation of version compatibility between and requirements.txt
  • requirements-validator - requirements.txt validation
  • setup_check - validator
  • branch_name_check - check whether current branch name comply with Quantlane standards
  • orange - code formatter based on black
  • isort - isort your imports, so you don't have to


  • orange - code formatter based on black
  • isort - isort your imports, so you don't have to


You can override the packaged pylint rules in .pylintrc in the root of your project (actually in $PWD/.pylintrc for cq run)

Pylint checker can output two types of issues: warning and error. Errors are in bold typeset. Warnings can (but should not) be ignored.


Config can be overridden by having mypy.ini in the root of your project

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for ql-cq, version 0.35.0
Filename, size File type Python version Upload date Hashes
Filename, size ql_cq-0.35.0-py3-none-any.whl (29.9 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size ql-cq-0.35.0.tar.gz (22.9 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page