Releases: Instagram/LibCST
Releases · Instagram/LibCST
v1.5.0
Added
- FullyQualifiedNameProvider: Optionally consider pyproject.toml files when determining a file's module name and package by @camillol in #1148
- Add validation for If node by @kiri11 in #1177
- include python 3.13 in build by @khameeteman in #1203
Fixed
- fix various Match statement visitation errors by @zsol in #1161
- Mention codemod -x flag in docs by @kiri11 in #1169
- Clear warnings for each file in codemod cli by @kiri11 in #1184
- Typo fix in codemods_tutorial.rst (trivial) by @wimglenn in #1208
- fix certain matchers breaking under multiprocessing by initializing them late by @kiri11 in #1204
Updated
- make libcst_native::tokenizer public by @zsol in #1182
- Use
license
instead oflicense-file
by @michel-slm in #1189 - Drop codecov from CI and readme by @amyreese in #1192
New Contributors
- @kiri11 made their first contribution in #1169
- @grievejia made their first contribution in #1174
- @michel-slm made their first contribution in #1189
- @wimglenn made their first contribution in #1208
- @khameeteman made their first contribution in #1203
Full Changelog: v1.4.0...v1.5.0
v1.4.0
Fixed
- Fix Literal parse error in RemoveImportsVisitor by @camillol in #1130
- Don't reset context.scratch between files by @zsol in #1151
- Various documentation fixes
Added
- Add helper functions for common ways of filtering nodes by @zaicruvoir1rominet in #1137
- Dump CST to .dot (graphviz) files by @zaicruvoir1rominet in #1147
- Implement PEP-696 by @thereversiblewheel in #1141
New Contributors
- @tiangolo made their first contribution in #1134
- @camillol made their first contribution in #1130
- @zaicruvoir1rominet made their first contribution in #1142
- @thereversiblewheel made their first contribution in #1141
Full Changelog: v1.3.1...v1.4.0
v1.3.1
v1.3.0
v1.2.0
Updated
- Support running LibCST on Python 3.12 and drop support for running it on 3.8
Added
Fixed
- Fix parsing list matchers without explicit brackets by @zsol in #1097
- installing rustc/cargo for mybinder demo by @aleivag in #1083
- fix filepathprovider generic type by @kinto0 in #1036
New Contributors
- @itamaro made their first contribution in #1039
- @kinto0 made their first contribution in #1036
- @dtolnay made their first contribution in #1063
- @anonymousdouble made their first contribution in #1082
- @aleivag made their first contribution in #1083
- @Wilfred made their first contribution in #1071
- @diliop made their first contribution in #1106
Full Changelog: v1.1.0...v1.2.0
v1.1.0
Added
- PEP 695 support
- PEP 701 support
- parser: Support files with mixed newlines #1007
- libcst is now published to crates.io
Fixed
- codemod/ApplyTypeAnnotationsVisitor: Do not annotate the same variable multiple times #956
- parser: Don't swallow trailing whitespace #976
- codemod/rename: Avoid duplicating import statements when the module name doesn't change #981
Updated
- cli: Don't gather dirs ending .py #994
- drop support for Python 3.7 #997
- A few parser performance improvements:
New Contributors
- @apbard made their first contribution in #957
- @orf made their first contribution in #995
- @MichaReiser made their first contribution in #1007
- @andrecsilva made their first contribution in #1024
Full Changelog: v1.0.1...v1.1.0
v1.0.1
Fixed
- Fix type of
evaluated_value
on string to allow bytes by @ljodal in #721 - Fix Sentinal typo by @kit1980 in #948
- Allow no whitespace after lambda body in certain cases by @zsol in #939
- Fix whitespace, fstring, walrus related parse errors (#939, #938, #937,
#936, #935, #934, #933, #932, #931) by @zsol in #940 - Codemod CLI: Print diff only when there is a change by @kit1980 in #945
New Contributors
Full Changelog: v1.0.0...v1.0.1
v1.0.0
The first major release of LibCST is essentially the same as 0.4.10, but using the
newer, Rust-based parser implementation by default. The old, pure Python parser is
scheduled for removal in the next (non-patch) release. Until then, it is available with
the LIBCST_PARSER_TYPE
environment variable set to pure
.
Updated
Full Changelog: v0.4.10...v1.0.0
v0.4.10
New Contributors
- @and-semakin made their first contribution in #816
- @carljm made their first contribution in #828
- @sagarbadiyani made their first contribution in #841
- @podtserkovskiy made their first contribution in #894
- @rchen152 made their first contribution in #903
- @Kludex made their first contribution in #913
- @jakkdl made their first contribution in #921
Added
- Add py3.11 classifier by @and-semakin in #816
- Script to regenerate test fixtures, upgrade to Pyre 0.9.10 by @amyreese in #872
- Allow FullyQualifiedNameProvider to work with absolute paths by @amyreese in #867
- Allow running codemods without configuring in YAML by @akx in #879
- Support PEP 604 in ApplyTypeAnnotationsVisitor by @hauntsaninja in #868
Fixed
- fix PEP 604 union annotations in decorators by @carljm in #828
- [AddImportsVisitor] Docstring Check Only for the Top Element of the Body by @sagarbadiyani in #841
- Fix #855 - fail to parse with statement by @stroxler in #861
- Add setuptools-rust to build requirements in setup.py by @amyreese in #873
- Relative imports from '' package are not allowed by @podtserkovskiy in #894
- Use subprocess.DEVNULL instead of opening os.devnull by hand by @akx in #897
- Ensure current Python interpreter is used for subprocesses by @akx in #898
- Fix ApplyTypeAnnotationsVisitor behavior on attribute assignments. by @rchen152 in #903
- Fix spelling and grammar in some comments by @stroxler in #908
- skip escaped backslash in rf-string by @jakkdl in #921
- relax validation rules on decorators by @jakkdl in #926
Full Changelog: v0.4.9...v0.4.10