Overview
Discover how to automate refactoring of large Python codebases in this 28-minute conference talk from EuroPython 2022. Learn about Carta's approach to adopting best practices like Black formatting and type annotation in multi-million-line codebases. Explore the automated refactoring pipeline that uses LibCST and MonkeyType to modify Python syntax trees and GitPython/PyGithub to manage pull requests. Gain insights into dividing changes into small, reviewable pull requests and assigning appropriate code owners. See how this method led to the conversion of a large codebase to Black format and the addition of type annotations to over 50,000 functions. Acquire knowledge on using LibCST to build automated refactoring tools for general Python code quality issues at scale and leveraging GitPython/PyGithub to automate the code review process.
Syllabus
Automated Refactoring Large Python Codebases - presented by Jimmy Lai
Taught by
EuroPython Conference