<commit_before>[tox]
envlist = py36, coverage, flake8, pylint

[testenv]
deps =
    pytest
    coverage
    ufo2ft
commands = coverage run -m pytest {posargs}
passenv = LD_LIBRARY_PATH LD_PRELOAD

[testenv:coverage]
deps = coverage
skip_install = true
commands =
    coverage combine
    coverage report
    coverage html

# Exclude a lot of tests here without turning them off in setup.cfg, because a
# developer might want to see and fix them. This is more of a regression test.
[testenv:flake8]
deps = flake8
test_list = E901,E999,F821,F822,F823
commands = flake8 --count --select={[testenv:flake8]test_list} --show-source --statistics Lib

# Same rationale as with flake8.
[testenv:pylint]
deps = pylint
wont_fix = invalid-name,bad-indentation,inconsistent-return-statements,too-many-return-statements,too-many-public-methods
maybe_someday = fixme,missing-docstring,too-many-locals,too-many-branches,too-many-statements,bad-continuation,unidiomatic-typecheck,logging-format-interpolation,too-many-nested-blocks,superfluous-parens,bare-except,undefined-loop-variable,too-many-instance-attributes,old-style-class,unnecessary-pass,unused-argument,consider-iterating-dictionary,attribute-defined-outside-init,too-many-boolean-expressions,too-many-arguments,wrong-import-order,bad-whitespace,pointless-string-statement,pointless-statement,redefined-builtin,global-statement,too-many-lines,global-variable-undefined,redefined-variable-type,multiple-statements,expression-not-assigned,too-many-format-args,deprecated-lambda,broad-except,no-self-use,no-name-in-module,abstract-method,no-member,line-too-long,trailing-newlines,duplicate-code,redefined-outer-name,trailing-whitespace,unused-variable,logging-not-lazy,undefined-variable,protected-access,anomalous-backslash-in-string,wrong-import-position,ungrouped-imports,singleton-comparison,misplaced-comparison-constant,consider-using-enumerate,used-before-assignment,too-few-public-methods,dangerous-default-value,unexpected-keyword-arg,len-as-condition,no-else-return,relative-import,not-callable,unsupported-membership-test,keyword-arg-before-vararg,consider-using-ternary,useless-return,chained-comparison,consider-using-in,useless-object-inheritance
commands = pylint --disable={[testenv:pylint]wont_fix},{[testenv:pylint]maybe_someday} Lib/fontbakery<commit_msg>added no-else-raise to the maybe_someday list per suggestion from @felipesanches<commit_after>[tox]
envlist = py36, coverage, flake8, pylint

[testenv]
deps =
    pytest
    coverage
    ufo2ft
commands = coverage run -m pytest {posargs}
passenv = LD_LIBRARY_PATH LD_PRELOAD

[testenv:coverage]
deps = coverage
skip_install = true
commands =
    coverage combine
    coverage report
    coverage html

# Exclude a lot of tests here without turning them off in setup.cfg, because a
# developer might want to see and fix them. This is more of a regression test.
[testenv:flake8]
deps = flake8
test_list = E901,E999,F821,F822,F823
commands = flake8 --count --select={[testenv:flake8]test_list} --show-source --statistics Lib

# Same rationale as with flake8.
[testenv:pylint]
deps = pylint
wont_fix = invalid-name,bad-indentation,inconsistent-return-statements,too-many-return-statements,too-many-public-methods
maybe_someday = fixme,missing-docstring,too-many-locals,too-many-branches,too-many-statements,bad-continuation,unidiomatic-typecheck,logging-format-interpolation,too-many-nested-blocks,superfluous-parens,bare-except,undefined-loop-variable,too-many-instance-attributes,old-style-class,unnecessary-pass,unused-argument,consider-iterating-dictionary,attribute-defined-outside-init,too-many-boolean-expressions,too-many-arguments,wrong-import-order,bad-whitespace,pointless-string-statement,pointless-statement,redefined-builtin,global-statement,too-many-lines,global-variable-undefined,redefined-variable-type,multiple-statements,expression-not-assigned,too-many-format-args,deprecated-lambda,broad-except,no-self-use,no-name-in-module,abstract-method,no-member,line-too-long,trailing-newlines,duplicate-code,redefined-outer-name,trailing-whitespace,unused-variable,logging-not-lazy,undefined-variable,protected-access,anomalous-backslash-in-string,wrong-import-position,ungrouped-imports,singleton-comparison,misplaced-comparison-constant,consider-using-enumerate,used-before-assignment,too-few-public-methods,dangerous-default-value,unexpected-keyword-arg,len-as-condition,no-else-return,relative-import,not-callable,unsupported-membership-test,keyword-arg-before-vararg,consider-using-ternary,useless-return,chained-comparison,consider-using-in,useless-object-inheritance,no-else-raise
commands = pylint --disable={[testenv:pylint]wont_fix},{[testenv:pylint]maybe_someday} Lib/fontbakery
{'fraction_non_alphanumeric': 0.11754720984510927, 'fraction_numerical': 0.010184595798854232, 'mean_word_length': 7.358156028368795, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1382080', 'n_tokens_mistral': 1591, 'n_tokens_neox': 1538, 'n_words': 186}