--- id: codefind version: "0.1.7" license: unclear license_treatment: unclear maintenance: dormant --- # codefind — Find code objects and their referents License: unclear · Maintenance: dormant · Downloads: 571.8K/mo ## What it is and what it does Codefind is a low-level introspection and code-patching library that lets you locate Python code objects by their qualified name or filename, find all function instances that share the same code object, and dynamically replace a function's code with another's. It has no runtime dependencies and installs cleanly. The package is primarily used as a building block for hot-reload and live-coding tools (notably jurigged). It exposes three main operations: find_code() to retrieve a code object from a module, get_functions() to enumerate all functions referencing a given code object, and conform() to swap one function's code for another's. This enables runtime patching of functions and their closures without reloading modules. Use it for: - Hot-reload and live-coding frameworks that need to update function implementations without restarting. - Interactive development environments where you want to patch a function's behavior on the fly. - Debugging tools that need to locate and inspect code objects by their qualified name. - Testing frameworks that need to replace function implementations during test execution. - Closure introspection when you need to find all instances of a closure created by a factory function. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Codefind locates code objects by filename and qualified name, retrieves all functions sharing a code object, and can replace a function's code with another's—enabling runtime code patching. Yes, if you are building a hot-reload or live-coding tool and accept the maintenance risk. The package is lightweight, has no dependencies, and solves a specific low-level problem well. However, maintenance is dormant, licensing is undeclared, and it is a niche tool—install only if you have a concrete use case and can tolerate lack of active support. ## Install pip install codefind uv add codefind poetry add codefind ## Installing codefind Before you install: Low install friction with no runtime dependencies. Maintenance is dormant—last commit was 2024-09-08 with only 3 repository stars, so expect no active support or updates. License in practice: License status is unclear; the package declares neither SPDX nor raw license metadata. Verify licensing terms before use in proprietary or restricted contexts. Quickstart: pip install codefind from codefind import find_code, get_functions, conform def f(x): return x + x code_obj = find_code("f", filename=__file__) funcs = get_functions(code_obj) conform(f, lambda x: x * x) # Replace f's code Requires Python 3.8 or later. Verify before relying: - Whether the package works reliably across Python 3.8 through current versions despite dormant maintenance. - Actual license terms—SPDX and raw license fields are null, creating ambiguity for distribution. - Whether conform() safely handles all closure types and edge cases in production use. ## Package facts - License: not declared (unclear) - Python support: supports_current - Install friction: low - Maintenance: dormant - Downloads: 571.8K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags find code objects by name, locate function code objects, runtime code replacement, function code patching, get functions from code object, dynamic function replacement, code-introspection, hot-reload, runtime-patching [View on SkillFed](https://skillfed.io/packages/codefind) · [View on PyPI](https://pypi.org/project/codefind/)