{"adoption": {"forks": 167, "observed_at": "2026-08-28T04:04:11.679193+00:00", "stars": 1269}, "canonical_url": "https://ross.abutalabs.com/products/python-decompile3", "card": {"archived": false, "artifact_type": "cli-tool", "description": "Python decompiler for 3.7-3.8 Stripped down from uncompyle6 so we can refactor and start to fix up some long-standing problems", "domain": ["developer-tools", "security", "reverse-engineering"], "enriched": true, "function": ["parser", "reverse-engineering", "developer-tools"], "health_score": 91, "homepage": null, "language": "Python", "license": "GPL-3.0", "license_family": "copyleft", "maturity": "maintenance", "member_repos": ["rocky/python-decompile3"], "name": "rocky/python-decompile3", "platform": ["python", "cli", "cross-platform"], "pushed_at": "2026-07-21T20:31:39+00:00", "repo": "rocky/python-decompile3", "stars": 1269, "tags": ["decompiler", "bytecode", "uncompyle6", "python-3-7", "python-3-8", "python"], "topics": ["python", "decompiler", "bytecode"], "urls": [], "use_cases": ["decompile python 3.7 bytecode back to source", "recover lost python source code from .pyc files", "decompile python 3.8 bytecode", "analyze compiled python bytecode fragments", "reverse engineer python bytecode where uncompyle6 fails"], "what_it_is": "decompyle3 is a native Python decompiler that translates Python bytecode (versions 3.7 and 3.8) back into equivalent Python source code. It is a refactored, stripped-down rework of uncompyle6 aimed at fixing long-standing control-flow reconstruction problems.", "when_to_avoid": ["you need to decompile Python 2.x or older 3.x bytecode (use uncompyle6)", "you need to decompile Python 3.9+ bytecode", "you need a fully robust control-flow solution based on dominator analysis"], "when_to_choose": ["you need to decompile Python 3.7 or 3.8 bytecode", "uncompyle6 produces incorrect control flow for your bytecode", "you want a maintained fork focused on modern Python 3 bytecode"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/python-decompile3", "repo": "rocky/python-decompile3", "role": "main", "score": 68}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:04:11.679193+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T05:03:33.518926+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fa6d90712499a34573852ecbc3b4d6581689ac09a03121a05f05405529c3aefe", "fetched_at": "2026-08-28T04:04:11.679193+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rocky/python-decompile3"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:04:11.679193+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T05:03:33.518926+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fa6d90712499a34573852ecbc3b4d6581689ac09a03121a05f05405529c3aefe", "fetched_at": "2026-08-28T04:04:11.679193+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rocky/python-decompile3"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T05:03:33.518926+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fa6d90712499a34573852ecbc3b4d6581689ac09a03121a05f05405529c3aefe", "fetched_at": "2026-08-28T04:04:11.679193+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rocky/python-decompile3"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:04:11.679193+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:04:11.679193+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:04:11.679193+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T05:03:33.518926+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fa6d90712499a34573852ecbc3b4d6581689ac09a03121a05f05405529c3aefe", "fetched_at": "2026-08-28T04:04:11.679193+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rocky/python-decompile3"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:04:11.679193+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:04:11.679193+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T05:03:33.518926+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fa6d90712499a34573852ecbc3b4d6581689ac09a03121a05f05405529c3aefe", "fetched_at": "2026-08-28T04:04:11.679193+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rocky/python-decompile3"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:04:11.679193+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:04:11.679193+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:04:11.679193+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T05:03:33.518926+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fa6d90712499a34573852ecbc3b4d6581689ac09a03121a05f05405529c3aefe", "fetched_at": "2026-08-28T04:04:11.679193+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rocky/python-decompile3"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:04:11.679193+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:04:11.679193+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T05:03:33.518926+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fa6d90712499a34573852ecbc3b4d6581689ac09a03121a05f05405529c3aefe", "fetched_at": "2026-08-28T04:04:11.679193+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rocky/python-decompile3"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T05:03:33.518926+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fa6d90712499a34573852ecbc3b4d6581689ac09a03121a05f05405529c3aefe", "fetched_at": "2026-08-28T04:04:11.679193+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rocky/python-decompile3"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T05:03:33.518926+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fa6d90712499a34573852ecbc3b4d6581689ac09a03121a05f05405529c3aefe", "fetched_at": "2026-08-28T04:04:11.679193+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rocky/python-decompile3"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T05:03:33.518926+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fa6d90712499a34573852ecbc3b4d6581689ac09a03121a05f05405529c3aefe", "fetched_at": "2026-08-28T04:04:11.679193+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rocky/python-decompile3"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 93, "longevity": 100, "rhythm": 18}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2663, "days_push": 43, "days_rel": 336, "gap_med": null, "n_releases_24m": 1}, "score": 68, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}