{"categories":[{"label":"Python Modules","url":"https://skillfed.io/packages/category/software-development-libraries-python-modules/12"}],"enrichment":{"capability":"mr. Proper is a static code analyzer that examines Python functions to determine whether they are pure\u2014free from side effects, global state mutations, and forbidden operations\u2014and reports why they fail purity checks.","skillfed_tags":["static-analysis","abandoned"],"use_cases":["Audit existing Python codebases to identify which functions have no side effects and could be refactored for testability.","Enforce functional programming patterns in a team by checking that utility functions remain pure during code review.","Detect accidental use of global state or ORM objects in functions intended to be pure calculations.","Analyze legacy code to find candidates for memoization or parallelization based on purity guarantees."],"what_it_does":"mr. Proper analyzes Python function definitions via AST inspection to assess whether they conform to a set of purity heuristics: no blacklisted calls (like print), no global state access, no argument mutation, no local imports, no forbidden argument types (like ORM objects), and only calls to other pure functions. It provides both a CLI tool and a programmatic API (is_function_pure) to report violations.\n\nThe tool is explicitly experimental and acknowledges edge cases\u2014functions marked pure may not actually be pure, but the analysis tends to identify cleaner code. It requires fully type-annotated functions and no dynamic calls. With an abandoned status since 2021 and no active maintenance, it is suitable only for exploratory code quality checks or legacy codebases where the tool was already integrated.","worth_installing":"No, unless you are maintaining legacy code that already uses it. The project is archived and unmaintained since 2021, with no bug fixes or Python version updates forthcoming. The purity heuristics are experimental and produce false positives. For new projects, consider actively maintained alternatives instead."},"id":"mr-proper","links":{"html":"https://skillfed.io/packages/mr-proper","md":"https://skillfed.io/packages/mr-proper.md","pypi":"https://pypi.org/project/mr-proper/"},"maintenance":{"status":"abandoned"},"meta":{"latest_release":"2021-10-27","license_spdx":null,"license_treatment":"permissive","name":"mr-proper","python_support":"unspecified","summary":"Static Python code analyzer, that tries to check if functions in code are pure or not and why."},"popularity":{"monthly_downloads":360139,"position":7246,"tier":"top_15000"},"security":{"n_vulnerabilities":0},"version":"0.0.7"}
