--- id: verspec version: "0.1.0" license: BSD 2-Clause or Apache-2.0 license_treatment: permissive maintenance: active --- # verspec — Flexible version handling License: permissive · Maintenance: active · Downloads: 1.8M/mo ## What it is and what it does verspec is a lightweight Python library for parsing, representing, and matching software version strings and version specifiers. It provides two main interfaces: loose.Version and loose.SpecifierSet for flexible version handling, and python.Version and python.SpecifierSet for strict Python versioning semantics. The library is adapted from the packaging project and handles common version comparison operations like checking whether a version satisfies a specifier constraint (e.g., testing if version 1.0 matches the specifier ~=1.0). The package has no external runtime dependencies and installs as a pure Python wheel, making it lightweight to add to projects that need version handling without pulling in the full packaging library. It is classified as Alpha and has not been updated since its initial release, though the repository remains active. Use it for: - Check if a software release version satisfies a version constraint in dependency resolution - Parse and compare version strings in package management or release tooling - Validate version specifiers in configuration files or user input - Implement custom version-matching logic in build or deployment scripts ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. verspec parses and compares software version strings and version specifiers (like '~=1.0'), adapted from the packaging library, supporting both loose and Python-specific version schemes. Yes, if you need lightweight version parsing without packaging as a dependency. The library is stable (no known vulnerabilities), has low install friction, and permissive licensing. However, it has not been updated since 2020 and documentation is incomplete, so consider it suitable for straightforward version-matching tasks rather than as a primary versioning solution in active development. ## Install pip install verspec uv add verspec poetry add verspec ## Installing verspec Before you install: Low friction: pure Python wheel with no runtime dependencies. Active repository with recent commits, though the package itself has not been updated since its initial 0.1.0 release in 2020. License in practice: Dual-licensed under BSD 2-Clause or Apache-2.0, both permissive licenses allowing commercial and private use with minimal restrictions. Quickstart: from verspec import loose v = loose.Version('1.0') s = loose.SpecifierSet('~=1.0') assert v in s Verify before relying: - Whether the package supports Python versions beyond 3.8 despite being classified for 3.6–3.8 - Current state of promised documentation ('Forthcoming' in excerpt) - Maintenance activity and bug-fix cadence since 2020 release ## Package facts - License: BSD 2-Clause or Apache-2.0 (permissive) - Python support: unspecified - Install friction: low - Maintenance: active - Downloads: 1.8M/month (top 5,000 on PyPI) - Known vulnerabilities: none known ## Tags version parsing and comparison, software version handling, version specifier matching, semantic versioning library, version constraint checking, loose version parsing, python version specifiers, version-handling, dependency-resolution [View on SkillFed](https://skillfed.io/packages/verspec) · [View on PyPI](https://pypi.org/project/verspec/)