LibCST VS tbpatch

Compare LibCST vs tbpatch and see what are their differences.

LibCST

A concrete syntax tree parser and serializer library for Python that preserves many aspects of Python's abstract syntax tree (by Instagram)

tbpatch

Token-based patch experiments (by ayourtch)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
LibCST tbpatch
9 1
1,428 0
2.4% -
8.5 0.0
2 days ago almost 3 years ago
Python Rust
GNU General Public License v3.0 or later MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

LibCST

Posts with mentions or reviews of LibCST. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-01-23.

tbpatch

Posts with mentions or reviews of tbpatch. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-06-07.
  • Our Engineering Team Used Python's AST to Patch 100,000s of Lines of Code
    9 projects | news.ycombinator.com | 7 Jun 2021
    I had a problem of applying patches to the files that got indented differently meantime.

    So I wrote a tool that takes a context diff, rebuilds the before and after text, then parses both as vectors of (leading whitespaces, token), then creates a diff of those vectors ignoring the whitespaces, parses the target file as a similar vector, and applies this diff to such a vector (again with ignoring/copying whitespaces) - after which it reconstructs the text.

    The results are surprisingly robust, despite the relatively naive tokenization heuristic.

    https://github.com/ayourtch/tbpatch

What are some alternatives?

When comparing LibCST and tbpatch you can also consider the following projects:

RedBaron - Bottom-up approach to refactoring in python

pasta - Library to refactor python code through AST manipulation.

Bowler - Safe code refactoring for modern Python.

black - The uncompromising Python code formatter

lib3to6 - Build universally compatible python packages from a substantial subset of Python 3.8.

ufmt - Safe, atomic formatting with black and µsort

instaviz - Instant visualization of Python AST and Code Objects

ruff - An extremely fast Python linter and code formatter, written in Rust.