--- id: pyvalid version: "1.0.4" license: MIT license_treatment: permissive maintenance: abandoned --- # pyvalid — The module, which allows easily validate function's input/output values. License: permissive · Maintenance: abandoned · Downloads: 456.9K/mo ## What it is and what it does pyvalid is a decorator-based validation library that enforces type and value constraints on function inputs and outputs at runtime. It allows you to annotate functions with expected argument types and return types, then automatically validates those constraints when the function is called, raising exceptions if validation fails. The package depends only on six for Python 2/3 compatibility. It was last updated in October 2020 and has been abandoned since January 2021, meaning it receives no active maintenance or updates. While it carries a permissive MIT license and has low installation friction, its age and lack of maintenance create uncertainty about compatibility with recent Python versions and modern validation patterns. Use it for: - Add runtime type checking to legacy Python codebases without rewriting function signatures - Catch type mismatches early during development and testing via decorator annotations - Validate function outputs to ensure return values match expected types before use - Debug data flow issues by instrumenting functions with automatic input/output validation ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. pyvalid is a Python data validation tool that checks function input and output values, typically via decorators for runtime type and value validation. No. While pyvalid is simple to install and permissively licensed, it has been abandoned for over three years with no maintenance. Modern Python projects should prefer actively maintained alternatives like pydantic, typeguard, or beartype, which offer better compatibility with current Python versions, richer validation features, and ongoing support. Use pyvalid only if you are maintaining legacy code that already depends on it. ## Install pip install pyvalid uv add pyvalid poetry add pyvalid ## Installing pyvalid Before you install: Installation is low-friction, but the package has been abandoned since January 2021 with no recent maintenance. The last release was over three years ago, so compatibility with modern Python versions and dependency updates is uncertain. License in practice: Licensed under MIT (permissive), so you can use, modify, and distribute pyvalid freely in both open-source and commercial projects with minimal restrictions. Quickstart: pip install pyvalid from pyvalid import accepts, returns @accepts(int, int) @returns(int) def add(a, b): return a + b result = add(2, 3) Verify before relying: - Whether pyvalid works reliably with Python 3.10+ given the last release was October 2020 - Current state of the six dependency and whether it introduces compatibility issues - Whether decorator-based validation is still the preferred pattern for modern validation use cases ## Package facts - License: MIT (permissive) - Python support: unspecified - Install friction: low - Maintenance: abandoned - Downloads: 456.9K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags function input validation decorator, runtime type checking python, data validation tool, function output validation, parameter type checking, decorator-based, abandoned [View on SkillFed](https://skillfed.io/packages/pyvalid) · [View on PyPI](https://pypi.org/project/pyvalid/)