Skip to content

Issue with VCS installs in 2024.1.0 -- resolver trying to resolve vcs as regular dependency #6266

@matteius

Description

@matteius
Traceback (most recent call last):
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/patched/pip/_vendor/packaging/requirements.py", line 36, in __init__
    parsed = _parse_requirement(requirement_string)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/patched/pip/_vendor/packaging/_parser.py", line 62, in parse_requirement
    return _parse_requirement(Tokenizer(source, rules=DEFAULT_RULES))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/patched/pip/_vendor/packaging/_parser.py", line 80, in _parse_requirement
    url, specifier, marker = _parse_requirement_details(tokenizer)
                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/patched/pip/_vendor/packaging/_parser.py", line 124, in _parse_requirement_details
    marker = _parse_requirement_marker(
             ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/patched/pip/_vendor/packaging/_parser.py", line 145, in _parse_requirement_marker
    tokenizer.raise_syntax_error(
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/patched/pip/_vendor/packaging/_tokenizer.py", line 167, in raise_syntax_error
    raise ParserSyntaxError(
pipenv.patched.pip._vendor.packaging._tokenizer.ParserSyntaxError: Expected end or semicolon (after name and no valid version specifier)
    pyminizip==
             ^

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/patched/pip/_internal/req/constructors.py", line 362, in _parse_req_string
    return get_requirement(req_as_string)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/patched/pip/_internal/utils/packaging.py", line 45, in get_requirement
    return Requirement(req_string)
           ^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/patched/pip/_vendor/packaging/requirements.py", line 38, in __init__
    raise InvalidRequirement(str(e)) from e
pipenv.patched.pip._vendor.packaging.requirements.InvalidRequirement: Expected end or semicolon (after name and no valid version specifier)
    pyminizip==
             ^

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/Users/mdavis/.pyenv/versions/3.11.6/bin/pipenv", line 8, in <module>
    sys.exit(cli())
             ^^^^^
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/vendor/click/core.py", line 1157, in __call__
    return self.main(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/cli/options.py", line 52, in main
    return super().main(*args, **kwargs, windows_expand_args=False)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/vendor/click/core.py", line 1078, in main
    rv = self.invoke(ctx)
         ^^^^^^^^^^^^^^^^
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/vendor/click/core.py", line 1688, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/vendor/click/core.py", line 1434, in invoke
    return ctx.invoke(self.callback, **ctx.params)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/vendor/click/core.py", line 783, in invoke
    return __callback(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/vendor/click/decorators.py", line 92, in new_func
    return ctx.invoke(f, obj, *args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/vendor/click/core.py", line 783, in invoke
    return __callback(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/cli/command.py", line 207, in install
    do_install(
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/routines/install.py", line 234, in do_install
    raise e
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/routines/install.py", line 209, in do_install
    do_init(
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/routines/install.py", line 624, in do_init
    do_update(
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/routines/update.py", line 61, in do_update
    do_lock(
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/routines/lock.py", line 67, in do_lock
    venv_resolve_deps(
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/utils/resolver.py", line 809, in venv_resolve_deps
    results = resolver.resolve_packages(
              ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/resolver.py", line 635, in resolve_packages
    results = clean_results(results, resolver, project, category)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/resolver.py", line 574, in clean_results
    entry_dict = translate_markers(entry.get_cleaned_dict)
                                   ^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/resolver.py", line 546, in __getattribute__
    return super().__getattribute__(key)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/functools.py", line 1001, in __get__
    val = self.func(instance)
          ^^^^^^^^^^^^^^^^^^^
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/resolver.py", line 253, in get_cleaned_dict
    self.validate_constraints()
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/resolver.py", line 490, in validate_constraints
    pinned_version = self.updated_version
                     ^^^^^^^^^^^^^^^^^^^^
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/resolver.py", line 546, in __getattribute__
    return super().__getattribute__(key)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/resolver.py", line 396, in updated_version
    version = str(self.entry.specifier)
                  ^^^^^^^^^^
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/resolver.py", line 546, in __getattribute__
    return super().__getattribute__(key)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/resolver.py", line 294, in entry
    self._entry = self.make_requirement(self.name, self.entry_dict)
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/resolver.py", line 136, in make_requirement
    return from_pipfile(name, entry)
           ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/utils/dependencies.py", line 1149, in from_pipfile
    install_req, markers, req_str = install_req_from_pipfile(name, pipfile)
                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/utils/dependencies.py", line 1135, in install_req_from_pipfile
    install_req, _ = expansive_install_req_from_line(
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/utils/dependencies.py", line 1034, in expansive_install_req_from_line
    parts = parse_req_from_line(pip_line, line_source)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/patched/pip/_internal/req/constructors.py", line 379, in parse_req_from_line
    req: Optional[Requirement] = _parse_req_string(req_as_string)
                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mdavis/.pyenv/versions/3.11.6/lib/python3.11/site-packages/pipenv/patched/pip/_internal/req/constructors.py", line 376, in _parse_req_string
    raise InstallationError(msg)
pipenv.patched.pip._internal.exceptions.InstallationError: Invalid requirement: 'pyminizip==': Expected end or semicolon (after name and no valid version specifier)
    pyminizip==

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions