LibCST/libcst
Zsolt Dollenstein f5b7027a45
Add a codemod for dataclass changes in 3.11
Python 3.11 changed the field default mutability check for dataclasses to only allow defaults which are hashable.

This codemod helps with the migration by changing all default values that aren't obviously hashable to use `default_factory` instead.

Note: it's impossible to accurately determine if a particular expression produces a hashable value in a codemod, so the codemod significantly over-approximates what's unhashable.
2024-12-07 21:31:40 +00:00
..
_nodes Bump black from 23.12.1 to 24.8.0 (#1186) 2024-08-22 16:46:01 -07:00
_parser Bump black from 23.12.1 to 24.8.0 (#1186) 2024-08-22 16:46:01 -07:00
codegen remove typing dependencies (#1126) 2024-04-03 19:50:14 +01:00
codemod Add a codemod for dataclass changes in 3.11 2024-12-07 21:31:40 +00:00
display Add the ability to dump CST to .dot (graphviz) files (#1147) 2024-05-20 11:25:13 -04:00
helpers FullyQualifiedNameProvider: Optionally consider pyproject.toml files when determining a file's module name and package (#1148) 2024-06-12 10:36:50 +01:00
matchers fix certain matchers breaking under multiprocessing by initializing them late (#1204) 2024-09-25 11:29:54 +01:00
metadata Bump black from 23.12.1 to 24.8.0 (#1186) 2024-08-22 16:46:01 -07:00
testing Bump black from 22.12.0 to 23.1.0 (#860) 2023-03-15 11:53:50 +00:00
tests Remove uses of # pyre-placeholder-stub (#1174) 2024-07-20 09:04:25 +01:00
__init__.py PEP 695 - Type Parameter Syntax (#1004) 2023-08-28 22:07:22 +01:00
_add_slots.py drop support for Python 3.7 (#997) 2023-08-26 12:42:12 +01:00
_batched_visitor.py Fix license headers (#560) 2021-12-28 11:55:18 +00:00
_exceptions.py remove typing dependencies (#1126) 2024-04-03 19:50:14 +01:00
_flatten_sentinel.py Fix license headers (#560) 2021-12-28 11:55:18 +00:00
_maybe_sentinel.py Fix license headers (#560) 2021-12-28 11:55:18 +00:00
_metadata_dependent.py Implement lazy loading mechanism for QualifiedNameProvider (#720) 2022-07-09 08:34:29 +01:00
_position.py Bump black from 23.12.1 to 24.8.0 (#1186) 2024-08-22 16:46:01 -07:00
_removal_sentinel.py Fix license headers (#560) 2021-12-28 11:55:18 +00:00
_tabs.py Fix license headers (#560) 2021-12-28 11:55:18 +00:00
_type_enforce.py remove typing dependencies (#1126) 2024-04-03 19:50:14 +01:00
_typed_visitor.py Bump black from 23.12.1 to 24.8.0 (#1186) 2024-08-22 16:46:01 -07:00
_typed_visitor_base.py Several trivial refactors (#770) 2022-09-14 14:33:45 +01:00
_types.py Pass root path to FullyQualifiedNameProvider (#867) 2023-02-22 14:36:10 -08:00
_visitors.py Fix license headers (#560) 2021-12-28 11:55:18 +00:00
py.typed support mypy using py.typed 2019-09-16 13:49:08 -07:00
tool.py Bump black from 23.12.1 to 24.8.0 (#1186) 2024-08-22 16:46:01 -07:00