turicas/rows

Show a better message if fails to detect plugin

Open

#227 opened on Jun 23, 2017

 (0 comments) (0 reactions) (0 assignees)Python (136 forks)github user discovery
bughelp wantedutils

Repository metrics

Stars
 (886 stars)
PR merge metrics
 (No merged PRs in 30d)

Description

$ rows convert http://bit.ly/todas-olimpiadas all-games.sqlite
Traceback (most recent call last):
  File "/home/turicas/projects/rows/rows/utils.py", line 266, in import_from_source
    import_function = getattr(rows, 'import_from_{}'.format(plugin_name))
AttributeError: module 'rows' has no attribute 'import_from_None'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/turicas/.virtualenvs/rows/bin/rows", line 11, in <module>
    load_entry_point('rows', 'console_scripts', 'rows')()
  File "/home/turicas/.virtualenvs/rows/lib/python3.6/site-packages/click/core.py", line 722, in __call__
    return self.main(*args, **kwargs)
  File "/home/turicas/.virtualenvs/rows/lib/python3.6/site-packages/click/core.py", line 697, in main
    rv = self.invoke(ctx)
  File "/home/turicas/.virtualenvs/rows/lib/python3.6/site-packages/click/core.py", line 1066, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/turicas/.virtualenvs/rows/lib/python3.6/site-packages/click/core.py", line 895, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/turicas/.virtualenvs/rows/lib/python3.6/site-packages/click/core.py", line 535, in invoke
    return callback(*args, **kwargs)
  File "/home/turicas/projects/rows/rows/cli.py", line 104, in convert
    verify_ssl=verify_ssl)
  File "/home/turicas/projects/rows/rows/cli.py", line 52, in _import_table
    encoding=encoding, *args, **kwargs)
  File "/home/turicas/projects/rows/rows/utils.py", line 285, in import_from_uri
    return import_from_source(source, default_encoding, *args, **kwargs)
  File "/home/turicas/projects/rows/rows/utils.py", line 268, in import_from_source
    raise ValueError('Plugin (import) "{}" not found'.format(plugin_name))
ValueError: Plugin (import) "None" not found

Contributor guide