11 repository-uri
Tools that assist in modifying, cleaning, or modernizing existing codebases.
Explore 11 awesome GitHub repositories matching part of an awesome list · Code Refactoring. Refine with filters or upvote what's useful.
This project is a comprehensive collection of software design patterns implemented in Python. It serves as a reference for architectural, behavioral, creational, and structural patterns to guide the organization of Python applications. The collection covers behavioral strategies for managing object communication and state, creational techniques for controlling object instantiation, and structural methods for composing classes and objects into flexible hierarchies. It also includes architectural references for system-wide structuring, such as multi-tier architectures and blackboard models. Th
Identifies architectural anti-patterns and provides clean, idiomatic Python refactoring alternatives.
Awesome autocompletion, static analysis and refactoring library for python
Library for autocompletion and static analysis during refactoring.
MonkeyType este un instrument de inferență a tipurilor la runtime și de analiză pentru Python. Acesta colectează tipurile reale ale argumentelor și valorilor returnate din apelurile de funcții în timpul execuției programului pentru a automatiza producerea de adnotări de tip static și fișiere stub compatibile. Sistemul convertește urmele de execuție capturate în hint-uri de tip static, care pot fi inserate direct în definițiile funcțiilor din codul sursă sau utilizate pentru a genera stub-uri de tip externe. Acest proces permite adăugarea siguranței tipurilor la codebase-urile existente prin analizarea tipurilor de date din lumea reală, mai degrabă decât prin auditare manuală. Capabilitățile instrumentului acoperă colectarea tipurilor la runtime, inferența dinamică a tipurilor și generarea definițiilor de tip static. Utilizează modificarea codului sursă și persistența urmelor de apel pentru a mapa tiparele observate la runtime către semnături statice.
Generates type annotations by observing runtime execution.
Vulture este un instrument de analiză statică și linter conceput pentru a găsi variabile, funcții și clase neutilizate în codul sursă Python. Operează ca un detector de cod mort și un instrument de căutare a codului neutilizat care scanează fișierele sursă pentru a identifica expresiile și importurile inaccesibile fără a executa codul. Instrumentul folosește un sistem de scorare euristic bazat pe încredere pentru a atribui valori de probabilitate detecțiilor, ajutând la distingerea simbolurilor cu adevărat neutilizate de potențialele alarme false. Asistă în continuare la eliminarea logicii moarte prin sortarea claselor și funcțiilor neutilizate detectate după numărul de linii, pentru a prioritiza eliminarea celor mai mari blocuri de cod. Suprafața de analiză include analiza accesibilității fluxului de control, urmărirea referințelor simbolurilor și capacitatea de a suprima alarmele false prin tipare de nume, decoratori sau comentarii de ignorare. Vulture suportă, de asemenea, generarea și gestionarea listelor albe (whitelists) prin module mock pentru a exclude anumite elemente din scanările ulterioare. Regulile de analiză la nivel de proiect și căile țintă pot fi gestionate prin fișiere de configurare, inclusiv suport pentru formatul TOML.
Identifies and removes unused or dead code.
pyupgrade este un modernizator de cod static și un instrument de actualizare a sintaxei pentru Python. Acesta rescrie automat codul sursă pentru a implementa funcționalități moderne ale limbajului și sintaxă bazată pe o versiune țintă specificată. Instrumentul se concentrează pe eliminarea datoriei tehnice prin ștergerea importurilor depreciate, a shim-urilor de compatibilitate și a blocurilor condiționale specifice versiunilor învechite. De asemenea, refactorizează adnotările de tip pentru a utiliza standardele actuale, cum ar fi alias-urile generice simplificate și operatorii de uniune. Suprafața sa de capabilități include actualizarea utilizării bibliotecii standard, optimizarea apelurilor de funcții built-in și conversia constructorilor de colecții verboși sau a formatării șirurilor în echivalente moderne concise. Aceste transformări sunt efectuate printr-un motor de reguli cu versiune țintă care păstrează formatarea și comentariile originale.
Automatically updates syntax to use modern language features.
a python refactoring library
Comprehensive library for automated code refactoring tasks.
Removes unused imports and unused variables as reported by pyflakes
Removes unused imports and variables from source files.
add-trailing-comma
Automatically inserts trailing commas for cleaner diffs.
com2ann
Converts type comments into modern type annotations.
.. image:: https://img.shields.io/pypi/v/massedit.svg :target: https://pypi.python.org/pypi/massedit/ :alt: PyPi version
Enables programmatic text editing across multiple files.
🚀 The ultimate linter and formatter for removing unused import statements in your code.
Cleans up unused import statements in Python files.