Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Features:
mappings
is taken on PyPI, rename the project intotyped_dict
.from_dataclass
function to convert a dataclass into a TypedDict at runtime.from_dataclass
.Chore:
The test coverage isn't 100% and the plugin doesn't support all features of dataclasses yet. The biggest struggle I have with the plugin is that the built-in mypy plugin for dataclasses kicks in earlier than our custom plugin if the dataclass is imported from another module but later if the dataclass is defined in the same module. So, I had to support both, and the latter is quite complicated. The official plugin for dataclass is huge and messy, and I don't think fully duplicating it here is a good idea.