fix: Disable warnings for model_* properties (#17066)

For model classes with model_something fields, pydantic raises a warning by default:
`Field "model_something" has conflict with protected namespace "model_".`.

These warnings make no sense here, because most users of the generator have established APIs
that they cannot change to conform to pydantic's safety rules.

Pydantic will raise an error if we ever conflict with a current attribute like `model_dump`.
This commit is contained in:
Robert Schweizer 2023-11-14 14:50:35 +01:00 committed by GitHub
parent 6be4d2e082
commit 61fde48501
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
167 changed files with 334 additions and 167 deletions

View File

@ -38,7 +38,8 @@ class {{classname}}({{#parent}}{{{.}}}{{/parent}}{{^parent}}BaseModel{{/parent}}
any_of_schemas: List[str] = Literal[{{#lambda.uppercase}}{{{classname}}}{{/lambda.uppercase}}_ANY_OF_SCHEMAS]
model_config = {
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}
{{#discriminator}}

View File

@ -82,7 +82,8 @@ class {{classname}}({{#parent}}{{{.}}}{{/parent}}{{^parent}}BaseModel{{/parent}}
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -34,7 +34,8 @@ class {{classname}}({{#parent}}{{{.}}}{{/parent}}{{^parent}}BaseModel{{/parent}}
one_of_schemas: List[str] = Literal[{{#oneOf}}"{{.}}"{{^-last}}, {{/-last}}{{/oneOf}}]
model_config = {
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}
{{#discriminator}}

View File

@ -36,7 +36,8 @@ class Bird(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -36,7 +36,8 @@ class Category(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -39,7 +39,8 @@ class DataQuery(Query):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -54,7 +54,8 @@ class DefaultValue(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -39,7 +39,8 @@ class NumberPropertiesOnly(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -53,7 +53,8 @@ class Pet(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -48,7 +48,8 @@ class Query(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -36,7 +36,8 @@ class Tag(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -38,7 +38,8 @@ class TestQueryStyleDeepObjectExplodeTrueObjectAllOfQueryObjectParameter(BaseMod
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -35,7 +35,8 @@ class TestQueryStyleFormExplodeTrueArrayStringQueryObjectParameter(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -36,7 +36,8 @@ class Bird(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -36,7 +36,8 @@ class Category(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -39,7 +39,8 @@ class DataQuery(Query):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -54,7 +54,8 @@ class DefaultValue(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -39,7 +39,8 @@ class NumberPropertiesOnly(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -53,7 +53,8 @@ class Pet(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -48,7 +48,8 @@ class Query(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -36,7 +36,8 @@ class Tag(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -38,7 +38,8 @@ class TestQueryStyleDeepObjectExplodeTrueObjectAllOfQueryObjectParameter(BaseMod
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -35,7 +35,8 @@ class TestQueryStyleFormExplodeTrueArrayStringQueryObjectParameter(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -35,7 +35,8 @@ class AdditionalPropertiesAnyType(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -35,7 +35,8 @@ class AdditionalPropertiesClass(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -35,7 +35,8 @@ class AdditionalPropertiesObject(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -35,7 +35,8 @@ class AdditionalPropertiesWithDescriptionOnly(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -37,7 +37,8 @@ class AllOfWithSingleRef(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -36,7 +36,8 @@ class Animal(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -50,7 +50,8 @@ class AnyOfColor(BaseModel):
any_of_schemas: List[str] = Literal[ANYOFCOLOR_ANY_OF_SCHEMAS]
model_config = {
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}
def __init__(self, *args, **kwargs) -> None:

View File

@ -48,7 +48,8 @@ class AnyOfPig(BaseModel):
any_of_schemas: List[str] = Literal[ANYOFPIG_ANY_OF_SCHEMAS]
model_config = {
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}
def __init__(self, *args, **kwargs) -> None:

View File

@ -36,7 +36,8 @@ class ApiResponse(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -35,7 +35,8 @@ class ArrayOfArrayOfModel(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -35,7 +35,8 @@ class ArrayOfArrayOfNumberOnly(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -35,7 +35,8 @@ class ArrayOfNumberOnly(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -39,7 +39,8 @@ class ArrayTest(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -36,7 +36,8 @@ class BasquePig(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -40,7 +40,8 @@ class Capitalization(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -35,7 +35,8 @@ class Cat(Animal):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -35,7 +35,8 @@ class Category(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -35,7 +35,8 @@ class CircularReferenceModel(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -35,7 +35,8 @@ class ClassModel(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -34,7 +34,8 @@ class Client(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -46,7 +46,8 @@ class Color(BaseModel):
one_of_schemas: List[str] = Literal["List[int]", "str"]
model_config = {
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -36,7 +36,8 @@ class Creature(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -34,7 +34,8 @@ class CreatureInfo(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -36,7 +36,8 @@ class DanishPig(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -34,7 +34,8 @@ class DeprecatedObject(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -35,7 +35,8 @@ class Dog(Animal):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -35,7 +35,8 @@ class DummyModel(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -56,7 +56,8 @@ class EnumArrays(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -94,7 +94,8 @@ class EnumTest(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -35,7 +35,8 @@ class File(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -36,7 +36,8 @@ class FileSchemaTestClass(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -35,7 +35,8 @@ class FirstRef(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -34,7 +34,8 @@ class Foo(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -35,7 +35,8 @@ class FooGetDefaultResponse(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -93,7 +93,8 @@ class FormatTest(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -35,7 +35,8 @@ class HasOnlyReadOnly(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -35,7 +35,8 @@ class HealthCheckResult(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -35,7 +35,8 @@ class InnerDictWithProperty(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -44,7 +44,8 @@ class IntOrString(BaseModel):
one_of_schemas: List[str] = Literal["int", "str"]
model_config = {
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -35,7 +35,8 @@ class ListClass(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -36,7 +36,8 @@ class MapOfArrayOfModel(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -47,7 +47,8 @@ class MapTest(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -38,7 +38,8 @@ class MixedPropertiesAndAdditionalPropertiesClass(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -36,7 +36,8 @@ class Model200Response(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -35,7 +35,8 @@ class ModelReturn(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -38,7 +38,8 @@ class Name(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -47,7 +47,8 @@ class NullableClass(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -47,7 +47,8 @@ class NullableProperty(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -35,7 +35,8 @@ class NumberOnly(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -35,7 +35,8 @@ class ObjectToTestAdditionalProperties(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -39,7 +39,8 @@ class ObjectWithDeprecatedFields(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -44,7 +44,8 @@ class OneOfEnumString(BaseModel):
one_of_schemas: List[str] = Literal["EnumString1", "EnumString2"]
model_config = {
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -50,7 +50,8 @@ class Order(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -36,7 +36,8 @@ class OuterComposite(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -37,7 +37,8 @@ class OuterObjectWithEnumProperty(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -36,7 +36,8 @@ class Parent(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -36,7 +36,8 @@ class ParentWithOptionalDict(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -53,7 +53,8 @@ class Pet(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -44,7 +44,8 @@ class Pig(BaseModel):
one_of_schemas: List[str] = Literal["BasquePig", "DanishPig"]
model_config = {
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -37,7 +37,8 @@ class PropertyNameCollision(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -35,7 +35,8 @@ class ReadOnlyFirst(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -35,7 +35,8 @@ class SecondRef(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -35,7 +35,8 @@ class SelfReferenceModel(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -35,7 +35,8 @@ class SpecialModelName(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -48,7 +48,8 @@ class SpecialName(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -35,7 +35,8 @@ class Tag(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -36,7 +36,8 @@ class TestInlineFreeformAdditionalPropertiesRequest(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -34,7 +34,8 @@ class Tiger(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -36,7 +36,8 @@ class UnnamedDictWithAdditionalModelListProperties(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -35,7 +35,8 @@ class UnnamedDictWithAdditionalStringListProperties(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -42,7 +42,8 @@ class User(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -38,7 +38,8 @@ class WithNestedOneOf(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -35,7 +35,8 @@ class AdditionalPropertiesAnyType(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -36,7 +36,8 @@ class AdditionalPropertiesClass(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -35,7 +35,8 @@ class AdditionalPropertiesObject(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -35,7 +35,8 @@ class AdditionalPropertiesWithDescriptionOnly(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

View File

@ -38,7 +38,8 @@ class AllOfWithSingleRef(BaseModel):
model_config = {
"populate_by_name": True,
"validate_assignment": True
"validate_assignment": True,
"protected_namespaces": (),
}

Some files were not shown because too many files have changed in this diff Show More