No project description provided
Project description
flake8-pydantic-fields
A flake8 plugin that checks that Pydantic models have default values which are Fields, and that those fields have descriptions. This encourages data documentation.
This package adds the following warnings:
PF001
: A Pydantic field which has no default.PF002
: A Pydantic field with a default that is not a Field.PF002
: A Pydantic field which has a Field default with no description.
There are no configuration options at this time.
This package uses heuristics to determine whether a class is a Pydantic model. While this could be accomplished by running the code, that is not in the spirit of static analyzers, and it would be considerably slower.
The heuristics are:
It is not a Pydantic model if:
- The class has no base classes.
- The class is annotated with
@dataclass
.
It is a Pydantic model if:
- The name of the base class is
BaseModel
orGenericModel
. - The class contains only annotated assignments.
- The class has at least one method decorated with
@validator
or@root_validator
. - The class contains an inner
Config
class. - The class contains only methods with no arguments other than
self
. These are assumed to be transformations on a data model. - The class contains an attribute annotated as a
ClassVar
.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Close
Hashes for flake8-pydantic-fields-0.1.10.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | d89d39fe9b03c1d8314df25f93bf55c490b3ae145356d2e3f25e5f85675656fd |
|
MD5 | c22194b34c6808f8a95cb491f466efee |
|
BLAKE2b-256 | 096d121cfbf7f01264adf560ceb941bd189a0c327c81d667237868e8b18626a9 |