funcsigs
Python function signatures from PEP362 for Python 2.6, 2.7 and 3.2+
Decision gist · record as of 2026-08-14
No. This package is abandoned (last release 2016-04-25) and targets Python versions that are themselves out of support. Modern Python includes inspect.signature natively. Install only if you are maintaining legacy Python 2.6–2.7 or Python 3.3–3.5 code that has no path to upgrade; for any new project or modern codebase, use the built-in inspect module instead.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Designed for Python 2.6, 2.7, and 3.3–3.5; modern Python versions have inspect.signature built-in and should not need this backport.
- Installation is straightforward with no runtime dependencies.
- However, the package is abandoned—last released 2016-04-25 and unmaintained since.
License · maintenance · safety
ASL (permissive) — Licensed under Apache Software License (permissive). No licensing restrictions on use or redistribution.
last release 2016-04-25 (3763 days)
0 known vulnerabilities (OSV.dev, 2026-08-14) · 4,967,244 downloads/mo, #2,189 on PyPI
Alternatives
Verify before relying
pip install funcsigs
from funcsigs import signature
def example(a, b=None, *args, **kwargs):
pass
sig = signature(example)
print(sig.parameters)- Whether the package works correctly on modern Python versions despite targeting only 2.6–3.5.
- Current state of PyPy compatibility (documentation notes PyPy3 CI was failing at last release).
- Whether any downstream projects still actively depend on this package or if it is purely legacy.
What it is and what it does
funcsigs is a backport of Python 3.3's inspect.signature API to older Python versions. It allows you to introspect function signatures—extracting parameter names, defaults, annotations, and binding arguments to parameters—on Python 2.6, 2.7, and early Python 3 versions that lack native support. The package exports a signature() function that returns a Signature object representing a callable's parameters and return annotation, along with Parameter objects describing each argument and methods like bind() and bind_partial() for argument validation.
This package was most useful during the transition from Python 2 to Python 3, when codebases needed to support both. Modern Python includes inspect.signature natively, making funcsigs obsolete for new projects. The package is abandoned and has not been maintained since its latest release, with no known security vulnerabilities but also no ongoing support.
Use it for
- Introspect function parameters in Python 2.7 code that needs to validate or document callable signatures.
- Backport signature-based argument validation to legacy Python 3.3–3.5 applications before native support.
- Support older testing or documentation tools that relied on PEP 362 introspection across Python 2 and 3.
- Maintain compatibility in libraries that must support both Python 2 and early Python 3 simultaneously.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
No.
This package is abandoned (last release 2016-04-25) and targets Python versions that are themselves out of support. Modern Python includes inspect.signature natively. Install only if you are maintaining legacy Python 2.6–2.7 or Python 3.3–3.5 code that has no path to upgrade; for any new project or modern codebase, use the built-in inspect module instead.
Install
funcsigs on PyPI
Before you install
Installation is straightforward with no runtime dependencies. However, the package is abandoned—last released 2016-04-25 and unmaintained since. It targets Python 2.6, 2.7, and 3.3–3.5, versions that are themselves long out of support.
Designed for Python 2.6, 2.7, and 3.3–3.5; modern Python versions have inspect.signature built-in and should not need this backport.
License in practice
Licensed under Apache Software License (permissive). No licensing restrictions on use or redistribution.
Quickstart
pip install funcsigs
from funcsigs import signature
def example(a, b=None, *args, **kwargs):
pass
sig = signature(example)
print(sig.parameters)
Verify before relying
- Whether the package works correctly on modern Python versions despite targeting only 2.6–3.5.
- Current state of PyPy compatibility (documentation notes PyPy3 CI was failing at last release).
- Whether any downstream projects still actively depend on this package or if it is purely legacy.
Package facts
| License | ASL permissive |
| Python support | Not specified |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | None |
| Maintenance | Abandoned 3,763 days since the last release |
| First released | |
| Downloads | 4,967,244 / month, #2,189 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 4 - BetaIntended Audience :: DevelopersLicense :: OSI Approved :: Apache Software LicenseOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 2Programming Language :: Python :: 2.6Programming Language :: Python :: 2.7Programming Language :: Python :: 3Programming Language :: Python :: 3.3Programming Language :: Python :: 3.4Programming Language :: Python :: 3.5Programming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: PyPyTopic :: Software Development :: Libraries :: Python Modules |
Evidence: funcsigs-1.0.2-py2.py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “PEP 362 backport”
- funcsigsProvides Python function signature introspection (PEP 362) for Python…
- contextvarsProvides the PEP 567 contextvars module for Python 3.6, enabling…
- dataclassesProvides the PEP 557 dataclasses module for Python 3.6, enabling…
Give your agent the search over MCP, or paste the wish link into any chat.
More Python Modules packages
Converts domain names between Unicode and ASCII-compatible encoding (Punycode) according to IDNA 2008 and Unicode Technical Standard 46, with security validation and broader script coverage than the standard library.
Install it if you work with internationalized domain names, need to validate domains, or use HTTP clients that depend on it transitively.
Setuptools is a Python build backend and package management tool that handles building, distributing, and installing Python packages, including support for C/C++ extension modules.
PyYAML parses and emits YAML 1.1 data format, enabling serialization and deserialization of configuration files and Python objects to and from human-readable YAML text.
Pydantic validates Python data structures against type hints, coercing and checking input at runtime to ensure it matches a declared schema.
Provides reusable metadata objects for use with PEP-593 `typing.Annotated` to express common constraints like bounds, collection sizes, and predicates on types.
Install it if you use or build libraries that need to express type constraints in a standardized, inspectable way—or if you want to annotate your own types with…
Provides runtime tools to inspect and introspect Python type annotations, enabling programmatic examination of type hints at execution time.
See also inspect2 · sigtools · docsig · entrypoint2 · typing · autocommand · wrapt · backports.ssl · typish