zmoog / toggl-track

Toggl Track CLI
Apache License 2.0
0 stars 1 forks source link

Error messages are ugly #14

Open zmoog opened 1 year ago

zmoog commented 1 year ago
$ tgl entries --project-id 178435728 group-by --field description --start-date 2023-02-28
Traceback (most recent call last):
  File "/Users/zmoog/code/projects/zmoog/toggl-track/venv/bin/tgl", line 33, in <module>
    sys.exit(load_entry_point('toggl-track', 'console_scripts', 'tgl')())
  File "/Users/zmoog/code/projects/zmoog/toggl-track/venv/lib/python3.10/site-packages/click/core.py", line 1130, in __call__
    return self.main(*args, **kwargs)
  File "/Users/zmoog/code/projects/zmoog/toggl-track/venv/lib/python3.10/site-packages/click/core.py", line 1055, in main
    rv = self.invoke(ctx)
  File "/Users/zmoog/code/projects/zmoog/toggl-track/venv/lib/python3.10/site-packages/click/core.py", line 1657, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/Users/zmoog/code/projects/zmoog/toggl-track/venv/lib/python3.10/site-packages/click/core.py", line 1657, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/Users/zmoog/code/projects/zmoog/toggl-track/venv/lib/python3.10/site-packages/click/core.py", line 1404, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/Users/zmoog/code/projects/zmoog/toggl-track/venv/lib/python3.10/site-packages/click/core.py", line 760, in invoke
    return __callback(*args, **kwargs)
  File "/Users/zmoog/code/projects/zmoog/toggl-track/venv/lib/python3.10/site-packages/click/decorators.py", line 26, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "/Users/zmoog/code/projects/zmoog/toggl-track/toggl_track/cli.py", line 103, in group_by_entries
    client = TimeEntries.from_environment()
  File "/Users/zmoog/code/projects/zmoog/toggl-track/toggl_track/toggl.py", line 41, in from_environment
    raise Exception(
Exception: TOGGL_API_TOKEN environment variable not found. Please set it to your Toggl Track API token.
zmoog commented 1 year ago

When the TOGGL_API_TOKEN env variable is not defined CLI blows up.

zmoog commented 1 year ago

Click has a section about error handling: https://click.palletsprojects.com/en/8.1.x/exceptions/

zmoog commented 1 year ago

Trying use a new --api-token option that leverages envvar feature from Click.