kennethreitz/bake

Nicers error message while running `bake` command with an empty `Bakefile`

Open

#32 opened on Nov 17, 2019

View on GitHub
 (0 comments) (0 reactions) (0 assignees)Python (24 forks)github user discovery
good first issue

Repository metrics

Stars
 (638 stars)
PR merge metrics
 (PR metrics pending)

Description

Currently, if I run bake command when the Bakefile is empty, the error message seems very scary:

Traceback (most recent call last):
  File "/home/redowan/.local/share/virtualenvs/flask-template-wBuRwttx/bin/bake", line 8, in <module>
    sys.exit(entrypoint())
  File "/home/redowan/.local/share/virtualenvs/flask-template-wBuRwttx/lib/python3.7/site-packages/click/core.py", line 764, in __call__
    return self.main(*args, **kwargs)
  File "/home/redowan/.local/share/virtualenvs/flask-template-wBuRwttx/lib/python3.7/site-packages/click/core.py", line 717, in main
    rv = self.invoke(ctx)
  File "/home/redowan/.local/share/virtualenvs/flask-template-wBuRwttx/lib/python3.7/site-packages/click/core.py", line 956, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/redowan/.local/share/virtualenvs/flask-template-wBuRwttx/lib/python3.7/site-packages/click/core.py", line 555, in invoke
    return callback(*args, **kwargs)
  File "/home/redowan/.local/share/virtualenvs/flask-template-wBuRwttx/lib/python3.7/site-packages/bake/cli.py", line 297, in entrypoint
    for _task in bf.tasks:
  File "/home/redowan/.local/share/virtualenvs/flask-template-wBuRwttx/lib/python3.7/site-packages/bake/bakefile.py", line 217, in tasks
    return self.tasks
  File "/home/redowan/.local/share/virtualenvs/flask-template-wBuRwttx/lib/python3.7/site-packages/bake/bakefile.py", line 217, in tasks
    return self.tasks
  File "/home/redowan/.local/share/virtualenvs/flask-template-wBuRwttx/lib/python3.7/site-packages/bake/bakefile.py", line 217, in tasks
    return self.tasks
  [Previous line repeated 974 more times]
  File "/home/redowan/.local/share/virtualenvs/flask-template-wBuRwttx/lib/python3.7/site-packages/bake/bakefile.py", line 212, in tasks
    for i, chunk in enumerate(self.chunks):
  File "/home/redowan/.local/share/virtualenvs/flask-template-wBuRwttx/lib/python3.7/site-packages/bake/bakefile.py", line 105, in chunks
    self._chunks = [c for c in self._iter_chunks()]
  File "/home/redowan/.local/share/virtualenvs/flask-template-wBuRwttx/lib/python3.7/site-packages/bake/bakefile.py", line 105, in <listcomp>
    self._chunks = [c for c in self._iter_chunks()]
  File "/home/redowan/.local/share/virtualenvs/flask-template-wBuRwttx/lib/python3.7/site-packages/bake/bakefile.py", line 65, in _iter_chunks
    all_chunks = [tl for tl in self._iter_chunk_task_lines()]
  File "/home/redowan/.local/share/virtualenvs/flask-template-wBuRwttx/lib/python3.7/site-packages/bake/bakefile.py", line 65, in <listcomp>
    all_chunks = [tl for tl in self._iter_chunk_task_lines()]
  File "/home/redowan/.local/share/virtualenvs/flask-template-wBuRwttx/lib/python3.7/site-packages/bake/bakefile.py", line 90, in _iter_chunk_task_lines
    for i, line in enumerate(self.source_lines):
  File "/home/redowan/.local/share/virtualenvs/flask-template-wBuRwttx/lib/python3.7/site-packages/bake/bakefile.py", line 166, in source_lines
    return self.source.split("\n")
  File "/home/redowan/.local/share/virtualenvs/flask-template-wBuRwttx/lib/python3.7/site-packages/bake/bakefile.py", line 162, in source
    return f.read()
RecursionError: maximum recursion depth exceeded while calling a Python object

Can we make this something nicer?

Contributor guide