Skip to content

fix: Stop fucking around with deprecated imports — Python 3.12/3.13/3.14 compatibility omnibus #1608

Description

@victorfang

This little gem is Pypi best kept secret in 2026 and I bumped into it today during my full github pypi packages trillion research.
Other than the spicy name, this package deserves more humanity to use.
Thanks for making TheF**k a better python library.

🩺 What's broken and why nobody noticed (they did, 31 times)
thefuck — a tool whose entire purpose is to fix your broken commands — cannot fix itself. Python removed imp in 3.12 (deprecated since 3.4, i.e., 2014). It also removed distutils and anydbm.
The result?
Running fuck produces an error so ironic it deserves a Turing Award.

ModuleNotFoundError: No module named 'imp'
The imp module was deprecated in Python 3.4 (2014) and removed in 3.12 (2023). That's a 9-year warning window. The PR fixes all 4 culprits: imp, anydbm, distutils.spawn, and pkg_resources.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions