Skip to content

Permit contains calls to Specifier[Set] to use arbitrary strings #767

@pradyunsg

Description

@pradyunsg

The following should not raise an InvalidVersion exception, and should return False instead.

❯ python -c 'from packaging.specifiers import SpecifierSet; print(SpecifierSet("===foobar", prereleases=True).contains("foobar"))'
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/Users/pradyunsg/Developer/github/packaging/src/packaging/specifiers.py", line 927, in contains
    item = Version(item)
           ^^^^^^^^^^^^^
  File "/Users/pradyunsg/Developer/github/packaging/src/packaging/version.py", line 200, in __init__
    raise InvalidVersion(f"Invalid version: '{version}'")
packaging.version.InvalidVersion: Invalid version: 'foobar'

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions