11 repositorios
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 es una herramienta de inferencia de tipos en tiempo de ejecución y análisis para Python. Recopila tipos reales de argumentos y retornos de llamadas a funciones durante la ejecución del programa para automatizar la producción de anotaciones de tipo estáticas y archivos stub compatibles. El sistema convierte trazas de ejecución capturadas en sugerencias de tipo estáticas, que pueden insertarse directamente en las definiciones de funciones del código fuente o utilizarse para generar stubs de tipo externos. Este proceso permite añadir seguridad de tipos a bases de código existentes analizando tipos de datos del mundo real en lugar de mediante auditoría manual. Las capacidades de la herramienta cubren la recopilación de tipos en tiempo de ejecución, inferencia de tipos dinámica y la generación de definiciones de tipo estáticas. Utiliza la modificación del código fuente y la persistencia de trazas de llamadas para mapear patrones observados en tiempo de ejecución a firmas estáticas.
Generates type annotations by observing runtime execution.
Vulture es una herramienta de análisis estático y linter diseñada para encontrar variables, funciones y clases no utilizadas en código fuente Python. Opera como un detector de código muerto y buscador de código no utilizado que escanea archivos fuente para identificar expresiones e importaciones inalcanzables sin ejecutar el código. La herramienta emplea un sistema de puntuación heurística basado en confianza para asignar valores de probabilidad a las detecciones, ayudando a distinguir símbolos verdaderamente no utilizados de posibles falsos positivos. Además, ayuda a podar lógica muerta ordenando las clases y funciones no utilizadas detectadas por conteo de líneas para priorizar la eliminación de los bloques de código más grandes. La superficie de análisis incluye análisis de alcanzabilidad de flujo de control, seguimiento de referencias de símbolos y la capacidad de suprimir falsos positivos mediante patrones de nombres, decoradores o comentarios de ignorar. Vulture también soporta la generación y gestión de listas blancas (whitelists) mediante módulos mock para excluir elementos específicos de escaneos posteriores. Las reglas de análisis de todo el proyecto y las rutas de destino pueden gestionarse mediante archivos de configuración, incluyendo soporte para el formato TOML.
Identifies and removes unused or dead code.
pyupgrade es un modernizador de código estático y actualizador de sintaxis para Python. Reescribe automáticamente el código fuente para implementar características modernas del lenguaje y sintaxis basada en una versión objetivo especificada. La herramienta se centra en eliminar la deuda técnica eliminando importaciones obsoletas, parches de compatibilidad y bloques condicionales obsoletos específicos de versiones. También refactoriza las anotaciones de tipo para utilizar estándares actuales, como alias genéricos simplificados y operadores de unión. Su superficie de capacidades incluye la actualización del uso de la librería estándar, la optimización de llamadas a funciones integradas y la conversión de constructores de colecciones verbosos o formateo de cadenas en equivalentes modernos concisos. Estas transformaciones se realizan mediante un motor de reglas versionado que preserva el formato y los comentarios originales.
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.