./lang/py-libcst, Concrete syntax tree with AST-like properties for Python

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 1.3.1, Package name: py311-libcst-1.3.1, Maintainer: pkgsrc-users

LibCST parses Python 3.0 -> 3.11 source code as a CST tree that
keeps all formatting details (comments, whitespaces, parentheses,
etc). It's useful for building automated refactoring (codemod)
applications and linters.

LibCST creates a compromise between an Abstract Syntax Tree (AST)
and a traditional Concrete Syntax Tree (CST). By carefully reorganizing
and naming node types and fields, we've created a lossless CST that
looks and feels like an AST.


Master sites:

Filesize: 747.104 KB

Version history: (Expand)


CVS history: (Expand)


   2024-04-09 18:41:06 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-libcst: updated to 1.3.1

1.3.1 - 2024-04-03

Fixed
* ImportError due to missing `mypy_extensions` dependency

1.3.0 - 2024-04-03

Updated
* Removed dependencies on `typing_extensions` and `typing_inspect`
   2024-02-20 05:55:23 by Adam Ciarcinski | Files touched by this commit (4) | Package updated
Log message:
py-libcst: updated to 1.2.0

1.2.0 - 2024-02-19

Updated
* Support running LibCST on Python 3.12 and drop support for running it on 3.8
 * remove 3.8 support
 * Remove reference to distutils
 * Update pyproject.toml for Python 3.12 support

Added
* Allow `Element::codegen` to be used by external users

Fixed
* Fix parsing list matchers without explicit brackets
* installing rustc/cargo for mybinder demo
* fix filepathprovider generic type
   2023-12-13 18:39:07 by Amitai Schleier | Files touched by this commit (7)
Log message:
cargo.mk: centralize Darwin -install_name workaround.
   2023-10-07 22:14:31 by Adam Ciarcinski | Files touched by this commit (4) | Package updated
Log message:
py-libcst: updated to 1.1.0

1.1.0 - 2023-10-05

Added
* PEP 695 support
  * parser: PEP 695 - Type Parameter Syntax
  * Scope provider: support for type annotations
* PEP 701 support
  * parser: support arbitrarily nested f-strings
  * parser: Parse multiline expressions in f-strings
* parser: Support files with mixed newlines
* [libcst](https://crates.io/crates/libcst) is now published to crates.io

Fixed
* codemod/ApplyTypeAnnotationsVisitor: Do not annotate the same variable \ 
multiple times
* parser: Don't swallow trailing whitespace
* codemod/rename: Avoid duplicating import statements when the module name \ 
doesn't change

Updated
* cli: Don't gather dirs ending .py
* drop support for Python 3.7
* A few parser performance improvements:
  * Switch to using thread_local regular expressions to stop mutext contention
  * Remove need for regex in TextPosition::matches
  * Remove Regexes from whitespace parser
   2023-06-14 17:38:44 by Adam Ciarcinski | Files touched by this commit (2) | Package updated
Log message:
py-libcst: updated to 1.0.1

1.0.1

Fix type of evaluated_value on string to allow bytes
Fix Sentinal typo
Allow no whitespace after lambda body in certain cases
Fix whitespace, fstring, walrus related parse errors
Codemod CLI: Print diff only when there is a change
   2023-06-06 14:42:56 by Taylor R Campbell | Files touched by this commit (1319)
Log message:
Mass-change BUILD_DEPENDS to TOOL_DEPENDS outside mk/.

Almost all uses, if not all of them, are wrong, according to the
semantics of BUILD_DEPENDS (packages built for target available for
use _by_ tools at build-time) and TOOL_DEPEPNDS (packages built for
host available for use _as_ tools at build-time).

No change to BUILD_DEPENDS as used correctly inside buildlink3.

As proposed on tech-pkg:
https://mail-index.netbsd.org/tech-pkg/2023/06/03/msg027632.html
   2023-05-30 11:28:00 by Adam Ciarcinski | Files touched by this commit (4) | Package updated
Log message:
py-libcst: updated to 1.0.0

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

Switch the default parser implementation to native

v0.4.10

Added

Add py3.11 classifier
Script to regenerate test fixtures, upgrade to Pyre 0.9.10
Allow FullyQualifiedNameProvider to work with absolute paths
Allow running codemods without configuring in YAML
Support PEP 604 in ApplyTypeAnnotationsVisitor

Fixed

fix PEP 604 union annotations in decorators
[AddImportsVisitor] Docstring Check Only for the Top Element of the Body
Fix 855 - fail to parse with statement
Add setuptools-rust to build requirements in setup.py
Relative imports from '' package are not allowed
Use subprocess.DEVNULL instead of opening os.devnull by hand
Ensure current Python interpreter is used for subprocesses
Fix ApplyTypeAnnotationsVisitor behavior on attribute assignments.
Fix spelling and grammar in some comments
skip escaped backslash in rf-string
relax validation rules on decorators
   2022-11-11 12:26:10 by Adam Ciarcinski | Files touched by this commit (4) | Package updated
Log message:
py-libcst: updated to 0.4.9

0.4.9
Bump setuptools-rust version

0.4.8
Fixed

Fix parse error message for number parsing
Fix problematic doc build, due to the new builder image provided by readthedocs \ 
doesn't has the graphviz-dev package pre-installed any more
Fix docstring of FullRepoManager
Fix bug when TypeOf is one of options in OneOf / AllOf
Tighten the metadata type of ExpressionContextProvider
Fix the bug that the use of formatter in codemods has undetermined target Python \ 
version, resulting in hard-to-reason-with behavior

Added

Python 3.11 rutime support
test using python 3.11 beta versions
Python 3.11 wheels
Raise informative exception when metadata is unresolved in a metadata-based match
Add AccessorProvider