<commit_before>[tox]
minversion = 1.6
skipsdist = True
envlist = py26,py27,pep8

[testenv]
# Note the hash seed is set to 0 until cinder can be tested with a
# random hash seed successfully.
setenv = VIRTUAL_ENV={envdir}
         PYTHONHASHSEED=0
usedevelop = True
install_command = pip install {opts} {packages}

deps = -r{toxinidir}/requirements.txt
       -r{toxinidir}/test-requirements.txt
commands =
  python setup.py testr --slowest --testr-args='--concurrency 1 {posargs}'
  {toxinidir}/tools/config/check_uptodate.sh
whitelist_externals = bash

[tox:jenkins]
downloadcache = ~/cache/pip

[testenv:pep8]
commands =
  flake8 {posargs} . cinder/common
  flake8 --filename=cinder* bin
  # Check that .po and .pot files are valid:
  bash -c "find cinder -type f -regex '.*\.pot?' -print0|xargs -0 -n 1 msgfmt --check-format -o /dev/null"

[testenv:pylint]
deps = -r{toxinidir}/requirements.txt
       pylint==0.26.0
commands = bash tools/lintstack.sh

[testenv:cover]
# Also do not run test_coverage_ext tests while gathering coverage as those
# tests conflict with coverage.
commands =
  python setup.py testr --coverage \
    --testr-args='^(?!.*test.*coverage).*$'

[testenv:genconfig]
sitepackages = False
envdir = {toxworkdir}/venv
commands = {toxinidir}/tools/config/generate_sample.sh -b . -p cinder -o etc/cinder

[testenv:venv]
commands = {posargs}

[flake8]
# Following checks are ignored on purpose.
#
# E251 unexpected spaces around keyword / parameter equals
# reason: no improvement in readability
#
# E265 block comment should start with '# '
# reason: no improvement in readability
#
# H402 one line docstring needs punctuation
# reason: removed in hacking (https://review.openstack.org/#/c/101497/)
#
# H803 git commit title should not end with period
# reason: removed in hacking (https://review.openstack.org/#/c/101498/)
#
# H904 wrap long lines in parentheses instead of a backslash
# reason: removed in hacking (https://review.openstack.org/#/c/101701/)
#
# Due to the upgrade to hacking 0.9.2 the following checking are
# ignored on purpose for the moment and should be re-enabled.
#
# F841,H302,H305,H307,H405


ignore = E251,E265,H302,H402,H405,H803,H904
builtins = _
exclude = .git,.venv,.tox,dist,tools,doc,common,*egg,build
max-complexity=30

[hacking]
local-check-factory = cinder.hacking.checks.factory
import_exceptions = cinder.i18n<commit_msg>Activate pep8 check that _ is imported<commit_after>[tox]
minversion = 1.6
skipsdist = True
envlist = py26,py27,pep8

[testenv]
# Note the hash seed is set to 0 until cinder can be tested with a
# random hash seed successfully.
setenv = VIRTUAL_ENV={envdir}
         PYTHONHASHSEED=0
usedevelop = True
install_command = pip install {opts} {packages}

deps = -r{toxinidir}/requirements.txt
       -r{toxinidir}/test-requirements.txt
commands =
  python setup.py testr --slowest --testr-args='--concurrency 1 {posargs}'
  {toxinidir}/tools/config/check_uptodate.sh
whitelist_externals = bash

[tox:jenkins]
downloadcache = ~/cache/pip

[testenv:pep8]
commands =
  flake8 {posargs} . cinder/common
  flake8 --filename=cinder* bin
  # Check that .po and .pot files are valid:
  bash -c "find cinder -type f -regex '.*\.pot?' -print0|xargs -0 -n 1 msgfmt --check-format -o /dev/null"

[testenv:pylint]
deps = -r{toxinidir}/requirements.txt
       pylint==0.26.0
commands = bash tools/lintstack.sh

[testenv:cover]
# Also do not run test_coverage_ext tests while gathering coverage as those
# tests conflict with coverage.
commands =
  python setup.py testr --coverage \
    --testr-args='^(?!.*test.*coverage).*$'

[testenv:genconfig]
sitepackages = False
envdir = {toxworkdir}/venv
commands = {toxinidir}/tools/config/generate_sample.sh -b . -p cinder -o etc/cinder

[testenv:venv]
commands = {posargs}

[flake8]
# Following checks are ignored on purpose.
#
# E251 unexpected spaces around keyword / parameter equals
# reason: no improvement in readability
#
# E265 block comment should start with '# '
# reason: no improvement in readability
#
# H402 one line docstring needs punctuation
# reason: removed in hacking (https://review.openstack.org/#/c/101497/)
#
# H803 git commit title should not end with period
# reason: removed in hacking (https://review.openstack.org/#/c/101498/)
#
# H904 wrap long lines in parentheses instead of a backslash
# reason: removed in hacking (https://review.openstack.org/#/c/101701/)
#
# Due to the upgrade to hacking 0.9.2 the following checking are
# ignored on purpose for the moment and should be re-enabled.
#
# F841,H302,H305,H307,H405


ignore = E251,E265,H302,H402,H405,H803,H904
exclude = .git,.venv,.tox,dist,tools,doc,common,*egg,build
max-complexity=30

[hacking]
local-check-factory = cinder.hacking.checks.factory
import_exceptions = cinder.i18n
{'fraction_non_alphanumeric': 0.11965632858340318, 'fraction_numerical': 0.040863369656328585, 'mean_word_length': 4.245054945054945, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 6, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5224321', 'n_tokens_mistral': 1803, 'n_tokens_neox': 1640, 'n_words': 469}