Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Install Failed building wheel for pyworld: Object of type PosixPath is not JSON serializable #78

Closed
luthis1124 opened this issue Jul 17, 2023 · 14 comments
Assignees
Labels
bug Something isn't working

Comments

@luthis1124
Copy link

luthis1124 commented Jul 17, 2023

Using python 3.10.4

`
Building wheels for collected packages: pyworld
Building wheel for pyworld (pyproject.toml): started
Building wheel for pyworld (pyproject.toml): finished with status 'error'
Failed to build pyworld

STDERR:
error: subprocess-exited-with-error

× Building wheel for pyworld (pyproject.toml) did not run successfully.
│ exit code: 1
╰─> [107 lines of output]
/tmp/pip-build-env-ik9f2cal/overlay/lib/python3.10/site-packages/setuptools/dist.py:509: InformationOnly: Normalizing 'v0.3.3' to '0.3.3'
self.metadata.version = self._normalize_version(
running bdist_wheel
running build
running build_py
creating build
creating build/lib.linux-x86_64-cpython-310
creating build/lib.linux-x86_64-cpython-310/pyworld
copying pyworld/init.py -> build/lib.linux-x86_64-cpython-310/pyworld
running build_ext
/tmp/pip-build-env-ik9f2cal/overlay/lib/python3.10/site-packages/Cython/Compiler/Main.py:381: FutureWarning: Cython directive 'language_level' not set, using '3str' for now (Py3). This has changed from earlier releases! File: /tmp/pip-install-q8bi0hku/pyworld_24fc5a6fd8cf468fa1deebeaccdef199/pyworld/pyworld.pyx
tree = Parsing.p_module(s, pxd, full_module_name)
Compiling pyworld/pyworld.pyx because it changed.
[1/1] Cythonizing pyworld/pyworld.pyx
Traceback (most recent call last):
File "/home/st/GIT/audio-webui/venv/lib/python3.10/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 363, in
main()
File "/home/st/GIT/audio-webui/venv/lib/python3.10/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 345, in main
json_out['return_val'] = hook(**hook_input['kwargs'])
File "/home/st/GIT/audio-webui/venv/lib/python3.10/site-packages/pip/_vendor/pep517/in_process/_in_process.py", line 261, in build_wheel
return _build_backend().build_wheel(wheel_directory, config_settings,
File "/tmp/pip-build-env-ik9f2cal/overlay/lib/python3.10/site-packages/setuptools/build_meta.py", line 416, in build_wheel
return self._build_with_temp_dir(['bdist_wheel'], '.whl',
File "/tmp/pip-build-env-ik9f2cal/overlay/lib/python3.10/site-packages/setuptools/build_meta.py", line 401, in _build_with_temp_dir
self.run_setup()
File "/tmp/pip-build-env-ik9f2cal/overlay/lib/python3.10/site-packages/setuptools/build_meta.py", line 487, in run_setup
super(_BuildMetaLegacyBackend,
File "/tmp/pip-build-env-ik9f2cal/overlay/lib/python3.10/site-packages/setuptools/build_meta.py", line 338, in run_setup
exec(code, locals())
File "", line 27, in
File "/tmp/pip-build-env-ik9f2cal/overlay/lib/python3.10/site-packages/setuptools/init.py", line 107, in setup
return distutils.core.setup(**attrs)
File "/tmp/pip-build-env-ik9f2cal/overlay/lib/python3.10/site-packages/setuptools/_distutils/core.py", line 185, in setup
return run_commands(dist)
File "/tmp/pip-build-env-ik9f2cal/overlay/lib/python3.10/site-packages/setuptools/_distutils/core.py", line 201, in run_commands
dist.run_commands()
File "/tmp/pip-build-env-ik9f2cal/overlay/lib/python3.10/site-packages/setuptools/_distutils/dist.py", line 969, in run_commands
self.run_command(cmd)
File "/tmp/pip-build-env-ik9f2cal/overlay/lib/python3.10/site-packages/setuptools/dist.py", line 1234, in run_command
super().run_command(command)
File "/tmp/pip-build-env-ik9f2cal/overlay/lib/python3.10/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
cmd_obj.run()
File "/tmp/pip-build-env-ik9f2cal/overlay/lib/python3.10/site-packages/wheel/bdist_wheel.py", line 343, in run
self.run_command("build")
File "/tmp/pip-build-env-ik9f2cal/overlay/lib/python3.10/site-packages/setuptools/_distutils/cmd.py", line 318, in run_command
self.distribution.run_command(command)
File "/tmp/pip-build-env-ik9f2cal/overlay/lib/python3.10/site-packages/setuptools/dist.py", line 1234, in run_command
super().run_command(command)
File "/tmp/pip-build-env-ik9f2cal/overlay/lib/python3.10/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
cmd_obj.run()
File "/tmp/pip-build-env-ik9f2cal/overlay/lib/python3.10/site-packages/setuptools/_distutils/command/build.py", line 131, in run
self.run_command(cmd_name)
File "/tmp/pip-build-env-ik9f2cal/overlay/lib/python3.10/site-packages/setuptools/_distutils/cmd.py", line 318, in run_command
self.distribution.run_command(command)
File "/tmp/pip-build-env-ik9f2cal/overlay/lib/python3.10/site-packages/setuptools/dist.py", line 1234, in run_command
super().run_command(command)
File "/tmp/pip-build-env-ik9f2cal/overlay/lib/python3.10/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
cmd_obj.run()
File "/tmp/pip-build-env-ik9f2cal/overlay/lib/python3.10/site-packages/setuptools/command/build_ext.py", line 84, in run
_build_ext.run(self)
File "/tmp/pip-build-env-ik9f2cal/overlay/lib/python3.10/site-packages/setuptools/_distutils/command/build_ext.py", line 345, in run
self.build_extensions()
File "/tmp/pip-build-env-ik9f2cal/overlay/lib/python3.10/site-packages/setuptools/_distutils/command/build_ext.py", line 467, in build_extensions
self._build_extensions_serial()
File "/tmp/pip-build-env-ik9f2cal/overlay/lib/python3.10/site-packages/setuptools/_distutils/command/build_ext.py", line 493, in _build_extensions_serial
self.build_extension(ext)
File "/tmp/pip-build-env-ik9f2cal/overlay/lib/python3.10/site-packages/setuptools/command/build_ext.py", line 246, in build_extension
_build_ext.build_extension(self, ext)
File "/tmp/pip-build-env-ik9f2cal/overlay/lib/python3.10/site-packages/Cython/Distutils/build_ext.py", line 122, in build_extension
new_ext = cythonize(
File "/tmp/pip-build-env-ik9f2cal/overlay/lib/python3.10/site-packages/Cython/Build/Dependencies.py", line 1134, in cythonize
cythonize_one(*args)
File "/tmp/pip-build-env-ik9f2cal/overlay/lib/python3.10/site-packages/Cython/Build/Dependencies.py", line 1280, in cythonize_one
result = compile_single(pyx_file, options, full_module_name=full_module_name)
File "/tmp/pip-build-env-ik9f2cal/overlay/lib/python3.10/site-packages/Cython/Compiler/Main.py", line 615, in compile_single
return run_pipeline(source, options, full_module_name)
File "/tmp/pip-build-env-ik9f2cal/overlay/lib/python3.10/site-packages/Cython/Compiler/Main.py", line 539, in run_pipeline
err, enddata = Pipeline.run_pipeline(pipeline, source)
File "/tmp/pip-build-env-ik9f2cal/overlay/lib/python3.10/site-packages/Cython/Compiler/Pipeline.py", line 398, in run_pipeline
data = run(phase, data)
File "/tmp/pip-build-env-ik9f2cal/overlay/lib/python3.10/site-packages/Cython/Compiler/Pipeline.py", line 375, in run
return phase(data)
File "/tmp/pip-build-env-ik9f2cal/overlay/lib/python3.10/site-packages/Cython/Compiler/Pipeline.py", line 52, in generate_pyx_code_stage
module_node.process_implementation(options, result)
File "/tmp/pip-build-env-ik9f2cal/overlay/lib/python3.10/site-packages/Cython/Compiler/ModuleNode.py", line 222, in process_implementation
self.generate_c_code(env, options, result)
File "/tmp/pip-build-env-ik9f2cal/overlay/lib/python3.10/site-packages/Cython/Compiler/ModuleNode.py", line 490, in generate_c_code
self.generate_module_preamble(env, options, modules, result.embedded_metadata, h_code)
File "/tmp/pip-build-env-ik9f2cal/overlay/lib/python3.10/site-packages/Cython/Compiler/ModuleNode.py", line 773, in generate_module_preamble
code.putln(json.dumps(metadata, indent=4, sort_keys=True))
File "/home/st/.pyenv/versions/3.10.4/lib/python3.10/json/init.py", line 238, in dumps
**kw).encode(obj)
File "/home/st/.pyenv/versions/3.10.4/lib/python3.10/json/encoder.py", line 201, in encode
chunks = list(chunks)
File "/home/st/.pyenv/versions/3.10.4/lib/python3.10/json/encoder.py", line 431, in _iterencode
yield from _iterencode_dict(o, _current_indent_level)
File "/home/st/.pyenv/versions/3.10.4/lib/python3.10/json/encoder.py", line 405, in _iterencode_dict
yield from chunks
File "/home/st/.pyenv/versions/3.10.4/lib/python3.10/json/encoder.py", line 405, in _iterencode_dict
yield from chunks
File "/home/st/.pyenv/versions/3.10.4/lib/python3.10/json/encoder.py", line 325, in _iterencode_list
yield from chunks
File "/home/st/.pyenv/versions/3.10.4/lib/python3.10/json/encoder.py", line 438, in _iterencode
o = _default(o)
File "/home/st/.pyenv/versions/3.10.4/lib/python3.10/json/encoder.py", line 179, in default
raise TypeError(f'Object of type {o.class.name} '
TypeError: Object of type PosixPath is not JSON serializable
[end of output]

note: This error originates from a subprocess, and is likely not a problem with pip.
ERROR: Failed building wheel for pyworld
ERROR: Could not build wheels for pyworld, which is required to install pyproject.toml-based projects
WARNING: You are using pip version 22.0.4; however, version 23.2 is available.
You should consider upgrading via the '/home/st/GIT/audio-webui/venv/bin/python -m pip install --upgrade pip' command.

Please read the error above carefully.
If you are unsure, please create an issue at https://github.com/gitmylo/audio-webui/issues.
When creating an issue, please include your full autodebug message.
Exit code: 1
`

@luthis1124 luthis1124 added the bug Something isn't working label Jul 17, 2023
@luthis1124
Copy link
Author

Changed version to python 3.10.12 and same error.

@gitmylo
Copy link
Owner

gitmylo commented Jul 17, 2023

I personally use 3.10.8, but other versions should work as well.

Your python install might be missing some builtin features, it could be something else too. Since your error seems to be coming from a builtin python package.

@luthis1124
Copy link
Author

It's a fresh install, I use pyenv to manage the versions.

Any suggestions?

@gitmylo
Copy link
Owner

gitmylo commented Jul 17, 2023

Are you running with --skip-venv? Also, I cannot guarantee compatibility with pyenv, conda, etc. Only venv is officially supported, although others should work fine in theory. This could still be the issue that you're facing.

@zba
Copy link

zba commented Jul 18, 2023

Have same issue, seems it some problem with pyworld package, I tried to install it using just pip with and without pyenv and venv
JeremyCCHsu/Python-Wrapper-for-World-Vocoder#87

@CameronChurchwell
Copy link

Also having this issue now, inside of a container with python 3.10. It was working a couple of days ago

@dexXxed
Copy link

dexXxed commented Jul 18, 2023

Fixed using command:
pip install pyworld --no-build-isolation

@gitmylo
Copy link
Owner

gitmylo commented Jul 18, 2023

Fixed using command: pip install pyworld --no-build-isolation

I'm unsure of what happened, but i'll add that flag. I hope it doesn't break anything though, I'm guessing one of pyworld's dependencies updated recently?

This should be safe, as numpy is an earlier requirement.

@jeddyhhh
Copy link

jeddyhhh commented Jul 19, 2023

I fixed this by

  • Going into the audio-webui folder
  • Activate venv with "source venv/bin/activate"
  • Then installing a older version of cython with "pip install cython==0.29.36"
  • And then installing pyworld with "pip install pyworld"

Edit: After this I had to run "pip install numpy --upgrade" (in venv) for some reason, only then ./run.sh would complete and launch correctly.

@gitmylo
Copy link
Owner

gitmylo commented Jul 19, 2023

I fixed this by

* Going into the audio-webui folder

* Activate venv with "source venv/bin/activate"

* Then installing a older version of cython with "pip install cython==0.29.36"

* And then installing pyworld with "pip install pyworld"

Edit: After this I had to run "pip install numpy --upgrade" (in venv) for some reason, only then ./run.sh would complete and launch correctly.

Were you still having issues on the latest version, which builds with --no-build-isolation?

@fungi8
Copy link

fungi8 commented Jul 19, 2023

I had this problem too then I use command: pip install pyworld --no-build-isolation
its useful !
thanks

Fixed using command: pip install pyworld --no-build-isolation

@gitmylo
Copy link
Owner

gitmylo commented Jul 19, 2023

For reference, it's been fixed since 1b7e12a.

If you are up to date, and it still doesn't work, please tell me. I don't want users to have to do a manual workaround, it should be automatic.

@luthis1124
Copy link
Author

Confirmed resolved for me, thanks!

@HikiKL
Copy link

HikiKL commented Dec 6, 2023

Gosh...
Nothing's working

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

8 participants