toabctl / metaextract

get metadata for python modules
Apache License 2.0
7 stars 4 forks source link

python3.6: TypeError: Object of type 'dict_items' is not JSON serializable #4

Closed toabctl closed 7 years ago

toabctl commented 7 years ago
$ metaextract-3.6 ceilometer-stable-pike.tar.gz
Traceback (most recent call last):
  File "setup.py", line 30, in <module>
    pbr=True)
  File "/usr/lib64/python3.6/distutils/core.py", line 148, in setup
    dist.run_commands()
  File "/usr/lib64/python3.6/distutils/dist.py", line 955, in run_commands
    self.run_command(cmd)
  File "/usr/lib64/python3.6/distutils/dist.py", line 974, in run_command
    cmd_obj.run()
  File "/usr/lib/python3.6/site-packages/metaextract/metaextract.py", line 67, in run
    sort_keys=True))
  File "/usr/lib64/python3.6/json/__init__.py", line 238, in dumps
    **kw).encode(obj)
  File "/usr/lib64/python3.6/json/encoder.py", line 201, in encode
    chunks = list(chunks)
  File "/usr/lib64/python3.6/json/encoder.py", line 430, in _iterencode
    yield from _iterencode_dict(o, _current_indent_level)
  File "/usr/lib64/python3.6/json/encoder.py", line 404, in _iterencode_dict
    yield from chunks
  File "/usr/lib64/python3.6/json/encoder.py", line 404, in _iterencode_dict
    yield from chunks
  File "/usr/lib64/python3.6/json/encoder.py", line 437, in _iterencode
    o = _default(o)
  File "/usr/lib64/python3.6/json/encoder.py", line 180, in default
    o.__class__.__name__)
TypeError: Object of type 'dict_items' is not JSON serializable
Traceback (most recent call last):
  File "/usr/lib/python3.6/site-packages/metaextract/utils.py", line 105, in _setup_py_run_from_dir
    subprocess.check_output(cmd, stderr=subprocess.STDOUT, shell=True)
  File "/usr/lib64/python3.6/subprocess.py", line 336, in check_output
    **kwargs).stdout
  File "/usr/lib64/python3.6/subprocess.py", line 418, in run
    output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '/usr/bin/python3 setup.py -q --command-packages metaextract metaextract -o /tmp/tmplmxp1zo_ ' returned non-zero exit status 1.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/bin/metaextract-3.6", line 11, in <module>
    load_entry_point('metaextract==1.0.2', 'console_scripts', 'metaextract')()
  File "/usr/lib/python3.6/site-packages/metaextract/cmds.py", line 37, in main
    data = meta_utils.from_archive(archive)
  File "/usr/lib/python3.6/site-packages/metaextract/utils.py", line 134, in from_archive
    data = _setup_py_run_from_dir(root_dir, py_interpreter)
  File "/usr/lib/python3.6/site-packages/metaextract/utils.py", line 109, in _setup_py_run_from_dir
    subprocess.check_output(cmd, shell=True)
  File "/usr/lib64/python3.6/subprocess.py", line 336, in check_output
    **kwargs).stdout
  File "/usr/lib64/python3.6/subprocess.py", line 418, in run
    output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '/usr/bin/python3 setup.py -q --command-packages metaextract metaextract -o /tmp/tmplmxp1zo_ ' returned non-zero exit status 1.