Should rye normalize the project name for projects which root folder contains spaces?
➜ rye sync
Initializing new virtualenv in /private/tmp/test 1/.venv
Python version: [email protected]
Generating production lockfile: /private/tmp/test 1/requirements.lock
error: subprocess-exited-with-error
× Preparing metadata (pyproject.toml) did not run successfully.
│ exit code: 1
╰─> [20 lines of output]
Traceback (most recent call last):
File "/Users/seba/.rye/self/lib/python3.10/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
main()
File "/Users/seba/.rye/self/lib/python3.10/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
json_out['return_val'] = hook(**hook_input['kwargs'])
File "/Users/seba/.rye/self/lib/python3.10/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 152, in prepare_metadata_for_build_wheel
whl_basename = backend.build_wheel(metadata_directory, config_settings)
File "/private/var/folders/xn/8rrz2r9s6gb_vbycdvs2t4f00000gn/T/pip-build-env-npq7zyua/overlay/lib/python3.10/site-packages/hatchling/build.py", line 56, in build_wheel
return os.path.basename(next(builder.build(wheel_directory, ['standard'])))
File "/private/var/folders/xn/8rrz2r9s6gb_vbycdvs2t4f00000gn/T/pip-build-env-npq7zyua/overlay/lib/python3.10/site-packages/hatchling/builders/plugin/interface.py", line 93, in build
self.metadata.validate_fields()
File "/private/var/folders/xn/8rrz2r9s6gb_vbycdvs2t4f00000gn/T/pip-build-env-npq7zyua/overlay/lib/python3.10/site-packages/hatchling/metadata/core.py", line 244, in validate_fields
self.core.validate_fields()
File "/private/var/folders/xn/8rrz2r9s6gb_vbycdvs2t4f00000gn/T/pip-build-env-npq7zyua/overlay/lib/python3.10/site-packages/hatchling/metadata/core.py", line 1325, in validate_fields
getattr(self, attribute)
File "/private/var/folders/xn/8rrz2r9s6gb_vbycdvs2t4f00000gn/T/pip-build-env-npq7zyua/overlay/lib/python3.10/site-packages/hatchling/metadata/core.py", line 409, in name
self._name = normalize_project_name(self.raw_name)
File "/private/var/folders/xn/8rrz2r9s6gb_vbycdvs2t4f00000gn/T/pip-build-env-npq7zyua/overlay/lib/python3.10/site-packages/hatchling/metadata/core.py", line 397, in raw_name
raise ValueError(message)
ValueError: Required field `project.name` must only contain ASCII letters/digits, underscores, hyphens, and periods, and must begin and end with ASCII letters/digits.
[end of output]
note: This error originates from a subprocess, and is likely not a problem with pip.
Traceback (most recent call last):
File "/Users/seba/.rye/self/lib/python3.10/site-packages/pip/_internal/operations/build/metadata.py", line 35, in generate_metadata
distinfo_dir = backend.prepare_metadata_for_build_wheel(metadata_dir)
File "/Users/seba/.rye/self/lib/python3.10/site-packages/pip/_internal/utils/misc.py", line 713, in prepare_metadata_for_build_wheel
return super().prepare_metadata_for_build_wheel(
File "/Users/seba/.rye/self/lib/python3.10/site-packages/pip/_vendor/pyproject_hooks/_impl.py", line 186, in prepare_metadata_for_build_wheel
return self._call_hook('prepare_metadata_for_build_wheel', {
File "/Users/seba/.rye/self/lib/python3.10/site-packages/pip/_vendor/pyproject_hooks/_impl.py", line 311, in _call_hook
self._subprocess_runner(
File "/Users/seba/.rye/self/lib/python3.10/site-packages/pip/_internal/utils/subprocess.py", line 252, in runner
call_subprocess(
File "/Users/seba/.rye/self/lib/python3.10/site-packages/pip/_internal/utils/subprocess.py", line 224, in call_subprocess
raise error
pip._internal.exceptions.InstallationSubprocessError: Preparing metadata (pyproject.toml) exited with 1
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/Users/seba/.rye/self/bin/pip-compile", line 8, in <module>
sys.exit(cli())
File "/Users/seba/.rye/self/lib/python3.10/site-packages/click/core.py", line 1130, in __call__
return self.main(*args, **kwargs)
File "/Users/seba/.rye/self/lib/python3.10/site-packages/click/core.py", line 1055, in main
rv = self.invoke(ctx)
File "/Users/seba/.rye/self/lib/python3.10/site-packages/click/core.py", line 1404, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/Users/seba/.rye/self/lib/python3.10/site-packages/click/core.py", line 760, in invoke
return __callback(*args, **kwargs)
File "/Users/seba/.rye/self/lib/python3.10/site-packages/click/decorators.py", line 26, in new_func
return f(get_current_context(), *args, **kwargs)
File "/Users/seba/.rye/self/lib/python3.10/site-packages/piptools/scripts/compile.py", line 592, in cli
results = resolver.resolve(max_rounds=max_rounds)
File "/Users/seba/.rye/self/lib/python3.10/site-packages/piptools/resolver.py", line 593, in resolve
is_resolved = self._do_resolve(
File "/Users/seba/.rye/self/lib/python3.10/site-packages/piptools/resolver.py", line 625, in _do_resolve
resolver.resolve(
File "/Users/seba/.rye/self/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/resolver.py", line 73, in resolve
collected = self.factory.collect_root_requirements(root_reqs)
File "/Users/seba/.rye/self/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/factory.py", line 491, in collect_root_requirements
req = self._make_requirement_from_install_req(
File "/Users/seba/.rye/self/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/factory.py", line 453, in _make_requirement_from_install_req
cand = self._make_candidate_from_link(
File "/Users/seba/.rye/self/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/factory.py", line 185, in _make_candidate_from_link
self._editable_candidate_cache[link] = EditableCandidate(
File "/Users/seba/.rye/self/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/candidates.py", line 318, in __init__
super().__init__(
File "/Users/seba/.rye/self/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/candidates.py", line 156, in __init__
self.dist = self._prepare()
File "/Users/seba/.rye/self/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/candidates.py", line 225, in _prepare
dist = self._prepare_distribution()
File "/Users/seba/.rye/self/lib/python3.10/site-packages/pip/_internal/resolution/resolvelib/candidates.py", line 328, in _prepare_distribution
return self._factory.preparer.prepare_editable_requirement(self._ireq)
File "/Users/seba/.rye/self/lib/python3.10/site-packages/pip/_internal/operations/prepare.py", line 687, in prepare_editable_requirement
dist = _get_prepared_distribution(
File "/Users/seba/.rye/self/lib/python3.10/site-packages/pip/_internal/operations/prepare.py", line 69, in _get_prepared_distribution
abstract_dist.prepare_distribution_metadata(
File "/Users/seba/.rye/self/lib/python3.10/site-packages/pip/_internal/distributions/sdist.py", line 61, in prepare_distribution_metadata
self.req.prepare_metadata()
File "/Users/seba/.rye/self/lib/python3.10/site-packages/pip/_internal/req/req_install.py", line 555, in prepare_metadata
self.metadata_directory = generate_metadata(
File "/Users/seba/.rye/self/lib/python3.10/site-packages/pip/_internal/operations/build/metadata.py", line 37, in generate_metadata
raise MetadataGenerationFailed(package_details=details) from error
pip._internal.exceptions.MetadataGenerationFailed: metadata generation failed
Error: could not write production lockfile for project
Caused by:
failed to generate lockfile