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.11.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1c3f1662f67af9cccccb46cd233d95bec43a0bd6e0a34ae0a6230813bbdbf1eb |
|
MD5 | 395daf9070d1be11ea60d8b1efbce66a |
|
BLAKE2b-256 | e1a4eab6745280e387badff127ddb003242cb06c0fb5e7515d9924f9811bf5ef |