hopla icon indicating copy to clipboard operation
hopla copied to clipboard

Setting an invalid config values disallows setting a correct one

Open melvio opened this issue 3 years ago • 1 comments

Bug:

$ hopla config cmd_all.loglevel debu
cmd_all.loglevel=debu

$ hopla config cmd_all.loglevel debug
hopla config cmd_all.loglevel debug
Traceback (most recent call last):
  File "/home/m/Documents/lcl/melvio/hopla/venv/bin/hopla", line 33, in <module>
    sys.exit(load_entry_point('hopla', 'console_scripts', 'hopla')())
  File "/home/m/Documents/lcl/melvio/hopla/venv/bin/hopla", line 25, in importlib_load_entry_point
    return next(matches).load()
  File "/usr/lib/python3.8/importlib/metadata.py", line 77, in load
    module = import_module(match.group('module'))
  File "/usr/lib/python3.8/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 975, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 671, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 848, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/home/m/Documents/lcl/melvio/hopla/src/hopla/__init__.py", line 50, in <module>
    log = setup_logging()
  File "/home/m/Documents/lcl/melvio/hopla/src/hopla/__init__.py", line 44, in setup_logging
    level=loglevel_mapping[parsed_loglevel],
KeyError: 'debu'

Version: commit: 84f31b3d56c7aab693ef02e9f40d04a29a9c73a3

Proposed solution: Input validation when setting config vargs.

melvio avatar Sep 08 '21 19:09 melvio