Makefile error
yochananmarqos opened this issue · 4 comments
Manjaro GNOME
roberta
0.1.0
python-pylint
2.3.1-1
python-pytest
5.1.1-1
python-coverage
4.5.4-1
shellcheck
0.7.0-20
I receive the following running make
:
shellcheck scripts/codestyle.sh tests/coverage-report.sh
pylint --rcfile=.pylint run-vm *.py tests/*.py
Traceback (most recent call last):
File "/usr/sbin/pylint", line 11, in <module>
load_entry_point('pylint==2.3.1', 'console_scripts', 'pylint')()
File "/usr/lib/python3.7/site-packages/pylint/__init__.py", line 20, in run_pylint
Run(sys.argv[1:])
File "/usr/lib/python3.7/site-packages/pylint/lint.py", line 1586, in __init__
linter.load_config_file()
File "/usr/lib/python3.7/site-packages/pylint/config.py", line 753, in load_config_file
self.global_set_option(option, value)
File "/usr/lib/python3.7/site-packages/pylint/config.py", line 646, in global_set_option
self._all_options[opt].set_option(opt, value)
File "/usr/lib/python3.7/site-packages/pylint/config.py", line 843, in set_option
value = _validate(value, optdict, optname)
File "/usr/lib/python3.7/site-packages/pylint/config.py", line 251, in _validate
return _call_validator(_type, optdict, name, value)
File "/usr/lib/python3.7/site-packages/pylint/config.py", line 231, in _call_validator
return VALIDATORS[opttype](optdict, option, value)
File "/usr/lib/python3.7/site-packages/pylint/config.py", line 219, in <lambda>
"choice": lambda opt, name, value: _choice_validator(opt["choices"], name, value),
File "/usr/lib/python3.7/site-packages/pylint/config.py", line 173, in _choice_validator
raise optparse.OptionValueError(msg % (name, value, choices))
optparse.OptionValueError: option spelling-dict: invalid value: 'en_GB', should be in ['']
make: *** [Makefile:53: lint] Error 1
I receive similar output trying to build boxtron
0.5.1 as well.
Just to be clear: make
(without any parameters) triggers make lint
, which is relevant only for development purposes - as user you only need make user-install
to place the files into the proper location.
So I'll assume you want to develop Boxtron/Roberta; install all packages mentioned in CONTRIBUTING.md. The error is caused by missing en_GB
dictionary on your machine (now I see this package is not mentioned in contributing guide - I'll correct it ASAP). I don't know how the dictionary package is called on Manjaro; on Fedora it's hunspell-en-GB
, on Debian it's myspell-en-GB
. This package is used for automatically checking spelling in comments in Python code. If you don't want to deal with this right now, you can temporarily disable the check (spelling-dict
setting in .pylint
file).
Thank you, I missed the CONTRIBUTING.md
. The Arch package is hunspell-en_GB
. After installing all the required dependencies, I receive this output:
shellcheck scripts/codestyle.sh tests/coverage-report.sh
pylint --rcfile=.pylint run-vm *.py tests/*.py
************* Module fakescripteval
fakescripteval.py:46:0: C0401: Wrong spelling of a word 'runtime' in a comment:
# TODO use runtime dir instead of cache here
^^^^^^^
Did you mean: ''run time' or 'run-time' or 'rudiment''? (wrong-spelling-in-comment)
------------------------------------------------------------------
Your code has been rated at 9.98/10 (previous run: 9.81/10, +0.17)
make: *** [Makefile:53: lint] Error 16
That's weird - this spelling is not caught in my dictionary (Fedora) and neither was caught on CI (Debian). I you feel like it, you can add it to the exceptions (spelling-ignore-words
in .pylint
) and send as PR. If you prefer not to, I'll fix it with the update to contributing guide.