Skip to content

Releases: marcosschroh/dataclasses-avroschema

0.60.0

29 May 10:19
Compare
Choose a tag to compare

0.60.0 (2024-05-29)

Feat

  • missing dacite hooks added in order to parse_obj in a proper way. Related to #638 (#643)

[master 4add153] bump: version 0.59.1 → 0.60.0
2 files changed, 8 insertions(+), 2 deletions(-)

0.59.1

24 May 11:00
Compare
Choose a tag to compare

0.59.1 (2024-05-24)

Fix

  • generate proper python identifiers when generating model from schemas. Related to #628 (#639)

[master 3bb297a] bump: version 0.59.0 → 0.59.1
2 files changed, 8 insertions(+), 2 deletions(-)

0.59.0

19 Apr 15:22
Compare
Choose a tag to compare

0.59.0 (2024-04-19)

Feat

  • convert_literal_to_enum option added. Closes #596 (#608)

[master f9edf1f] bump: version 0.58.2 → 0.59.0
2 files changed, 8 insertions(+), 2 deletions(-)

0.58.2

12 Apr 21:29
Compare
Choose a tag to compare

0.58.2 (2024-04-12)

Fix

  • custom types with extra annotation. Closes #598 (#601)

[master 258cc6f] bump: version 0.58.1 → 0.58.2
2 files changed, 8 insertions(+), 2 deletions(-)

0.58.1

11 Apr 21:50
Compare
Choose a tag to compare

0.58.1 (2024-04-11)

Fix

  • add Enum symbol validation (#599)

[master 9bd8b45] bump: version 0.58.0 → 0.58.1
2 files changed, 8 insertions(+), 2 deletions(-)

0.58.0

28 Mar 15:48
Compare
Choose a tag to compare

0.58.0 (2024-03-28)

Feat

  • Support for Pydantic field alias and serialization_alias (#583). Closes #293

[master 6d5d3b2] bump: version 0.57.5 → 0.58.0
2 files changed, 8 insertions(+), 2 deletions(-)

0.57.5

26 Mar 23:28
Compare
Choose a tag to compare

0.57.5 (2024-03-26)

Fix

  • improve pydantic model translation (#582)

[master 1ef6e7c] bump: version 0.57.4 → 0.57.5
2 files changed, 8 insertions(+), 2 deletions(-)

0.57.4

15 Mar 16:50
Compare
Choose a tag to compare

0.57.4 (2024-03-15)

Fix

  • do not force pascalcase for enum names. Closes #544 (#571)

[master f159516] bump: version 0.57.3 → 0.57.4
2 files changed, 36 insertions(+), 30 deletions(-)

0.57.3

14 Mar 15:01
Compare
Choose a tag to compare

0.57.3 (2024-03-14)

Fix

  • add inner names suppor for complex types. Closes #534 and related to #544 (#570)

0.57.2 (2024-03-11)

Fix

  • model generator refactored (#569)

0.57.1 (2024-02-22)

Fix

  • pass to fastavro all schemas in a single call (#553)

0.57.0 (2024-02-16)

Feat

  • Possibility for original schema string in objects Meta class. (#545)

0.56.2 (2024-02-12)

Fix

  • Install typing-extensions when using Python > 3.8 (#541)

0.56.1 (2024-01-30)

Fix

  • Optional[Literal] type fixed. Closes #518 (#528)

0.56.0 (2024-01-19)

Feat

  • support for pydantic date and datetime added (#517)

0.55.1 (2024-01-16)

Fix

  • bump inflector version for python3.12 support (#519)

0.55.0 (2024-01-16)

Feat

  • exclude_default option added in metadata. Closes #400 (#513)

0.54.2 (2023-12-12)

Fix

  • kwarg typing in AvroModel (#488)

0.54.1 (2023-12-07)

Fix

  • syntax warning in FakeStub docstring (#486)

0.54.0 (2023-12-01)

Feat

  • property extra_allowed_default_types added to Field. Closes #457 (#481)

0.53.1 (2023-11-15)

Fix

  • simplify faker stub code (#471)

0.53.0 (2023-11-03)

Feat

  • add pydantic v2 support. Closes #415 (#455)

0.52.1 (2023-10-09)

Fix

  • add fake() support to Literal field type (#451)

0.52.0 (2023-09-28)

Feat

  • add support for typing.Literal (#435).

0.51.0 (2023-09-20)

Feat

  • pydantic-v2: First steps to support pydantic v2. Namespace dataclasses_avroschame.pydantic added. All AvroModel fields now are private (#427)

0.50.2 (2023-09-19)

Fix

  • Add typing-extensions to python 3.8 (#432)

0.50.1 (2023-09-19)

Fix

  • Resolve issues with raw None annotation (#433). Closes #424

0.50.0 (2023-09-13)

Feat

  • add support for pydantic custom classes as fields (#420)

0.49.0 (2023-09-12)

Feat

  • option to exclude fields on the output schema added. (#423)

0.48.1 (2023-09-12)

Fix

  • respect enum symbols order when generating models from schemas. Related to #413 (#422)

0.48.0 (2023-09-11)

BREAKING CHANGE

  • drop python 3.7 support (#414)

0.47.3 (2023-09-06)

Fix

  • Model/code generator when enum has namespaces. Closes #406 (#410)

0.47.2 (2023-08-30)

Fix

  • field ordering when field has metadata but not a default value. Closes #401 (#403)

0.47.1 (2023-08-30)

Fix

  • do not uppercase enums keys when the key already exist. Closes #399 (#402)

0.47.0 (2023-08-28)

Feat

  • Make Faker an optional dependency. (#391)

0.46.3 (2023-08-25)

Fix

  • dependencies updated (#393)

0.46.2 (2023-08-15)

Fix

  • record fields avro schema creation (#382) (#383)

0.46.1 (2023-08-14)

Fix

  • schema generation with optional Enum fields (#386)

0.46.0 (2023-08-14)

Feat

  • support pydantic constrained int fields (#379)

0.45.1 (2023-07-27)

Fix

  • default factory in order to get proper default values. Closes #365

0.45.0 (2023-07-18)

Feat

  • field_order property added to class Meta. Closes #345 (#369)

0.44.0 (2023-07-06)

Feat

  • pydantic fields added. Closes #328

0.43.10 (2023-06-29)

Fix

  • model generator when fields have metadata. Closes #348 (#355)

0.43.9 (2023-06-19)

Fix

  • pydantic nested schema serialization (#346)

0.43.8 (2023-06-15)

Fix

  • stringcase replaced by casefy. Closes #341 (#347)

0.43.7 (2023-06-13)

Fix

  • Fix typo in kwargs typehint for AvroBaseModel.fake (#340)

0.43.6 (2023-05-30)

Fix

0.43.5 (2023-05-30)

Fix

  • update dependencies and bump version (#334)

0.43.4 (2023-05-26)

Fix

  • proper schema generation when primitive types are defined types. Closes #330 (#332)

0.43.3 (2023-05-25)

Fix

  • dict conversion of AvroBaseModel. Closes #324 (#331)

0.43.2 (2023-05-25)

Fix

  • deserialization with more than tow layers. Closes #326 (#329)

0.43.1 (2023-05-19)

Fix

  • excluded pydantic.Fields should be used on avro serialization. Closes #314 (#322)

0.43.0 (2023-04-26)

Feat

  • AvroRecord added in order to make simpler faust usage. Closes #281 (#303)

0.42.2 (2023-04-24)

Fix

  • pydantic and faust-streaming optional dependencies. Remove pytz as dependency. Closes #292 (#297)

0.42.1 (2023-04-24)

Fix

  • typing: incorrect type annotations in avrodantic.py (#302)

0.42.0 (2023-04-21)

Feat

  • TupleField added in order to deserialize typing.Tuple as tuples rather than list. Closes #291 (#296)

0.41.2 (2023-04-20)

Fix

  • dev dependencies updated (#294)

0.41.1 (2023-04-06)

Fix

  • dependencies updated. Model generator documentation updated (#285)

0.41.0 (2023-04-06)

BREAKING CHANGE

  • types.Decimal has been replaced by condecimal (Annotated[decimal.Decimal]). Closes #260 (#282)

0.40.0 (2023-03-29)

Fix

  • correctly generate enum default values (#275)
  • correctly generate type annotations

fix: do not generate default dataclass docstrings

fix: datetime model generation

the previous implementation did not roundtrip

feat: render docstrings in generated classes

fix: correct union and optional conversion

test: add avsc -> python -> avsc roundtrip test

fix: properly handle aliases in the model generator

tests: add coverage for single-type unions model generation

Co-authored-by: Maximilian Hils git@maximilianhils.com

0.39.3 (2023-03-29)

Fix

  • include matadata when using pydantic.Field with AvroBaseMode. Closes #263 (#274)

0.39.2 (2023-03-28)

Fix

  • use extras in a correct way. Closes #272 (#273)

0.39.1 (2023-03-27)

Fix

  • dependencies updated. Closes #270 (#271)

0.39.0 (2023-03-24)

Feat

  • support for typing.Annotated added (#264)

0.38.1 (2023-03-22)

Fix

  • dc-avro dependency (#262)

0.38.0 (2023-03-22)

v0.37.5 (2023-03-17)

Fix

  • avro schema generation should always return the same result. Close #254 (#255)

v0.37.4 (2023-03-06)

Fix

  • release v0.37.3 -> v0.37.4
  • exception NameSpaceRequiredException removed. Close #246 (#253)

v0.37.3 (2023-03-06)

Fix

  • dependencies and documentation (#252)

v0.37.2 (2023-03-02)

Fix

  • use UUID type instead of function uuid4 (#251)

v0.37.1 (2023-02-24)

Fix

  • use pydantic UUID4 when generating pydantic models. (#247)

v0.37.0 (2023-02-22)

Feat

  • dacite custom config added to class Meta. Closes #242 (#245)

v0.36.3 (2023-02-16)

Fix

  • ListField fake generation when it contains Optional. Closes #232 (#244)

v0.36.2 (2023-02-14)

Fix

  • do not persist the schema when the parent class is not an AvroModel. Closes #241 (#243)

Perf

  • ruff added in order to replace isort and flake8 (#238)

v0.36.1 (2023-01-19)

Fix

  • use pydantic condecimal when generating pydantic models. Closes #234 (#237)
  • model generator with only decimal fields. Closes #233 (#236)

v0.36.0 (2023-01-18)

Feat

  • Generate a Python module from multiple schemas (#235)

v0.35.0 (2023-01-10)

Feat

  • model generator added (#227)
  • self relationship schema generation

feat: logicalTypes model generation

feat: logical types model generator

fix: field order, pascal case for class names

fix: add class Meta support

Co-authored-by: Marcos Schroh marcos.schroh@kpn.com

v0.34.6 (2023-01-06)

Fix

  • use namespaces when an enum is used multiple times in a class. Cases should not apply to enum names. Closes #221 (#231)

v0.34.5 (2023-01-06)

Fix

  • schema generation with optional enum when using pydantic. Closes #229 (#230)

v0.34.4 (2023-01-04)

Fix

  • fake generation with optional user defined types (#228)

v0.34.3 (2022-12-15)

Fix

  • serialize decimal fields. Closes #222 (#224)

v0.34.2 (2022-11-18)

Fix

  • pydantic fake and nested json serialization (#219)

v0.34.1 (2022-11-11)

Fix

  • include field metadata when using faust records. Closes #217 (#218)

v0.34.0 (2022-11-01)

Feat

  • types.UnionType support added (#213)

v0.33.0 (2022-11-01)

v0.32.3 (2022-10-31)

Fix

  • update to latest fastavro. logical types fixed (#214)

v0.32.2 (2022-10-25)

Fix

  • nested enums serialization. Closes #208 (#211)

v0.32.1 (2022-10-13)

Perf

  • use python slots (#206)

v0.32.0 (2022-10-13)

Feat

  • provide data to the fake functionality (#205)

v0.31.3 (2022-10-07)

Fix

  • utils refactor. @DataClass decorator included in all code examples. Inheritance example added. Closes #202 (#204)

v0.31.2 (2022-10-03)

Fix

  • UnknownType on serialization with intermediates schemas. Closes #199 (#201)

v0.31.1 (2022-09-30)

Fix

  • name collision on splittes schema usage. Close #196 (#198)

v0.31.0 (2022-09-23)

Feat

  • micro precision added to time and datetime types (#197)

v0.30.3 (2022-08-05)

Fix

  • mypy issues (#186)

v0.30.2 (2022-08-04)

Fix

  • Do not use name and type from metadata in avro schema (#188) (#189)

v0.30.1 (2022-08-02)

Fix

  • fastavro dependency updated. Close #184 (#187)

v0.30.0 (2022-05-18)

v0.29.2 (2022-05-06)

v0.29.1 (2022-04-15)

Fix

  • nested metadata not respected. closes #171 (#172)

v0.29.0 (2022-04-08)

Fix

  • create nested schema resolution directly from dictionaries (#170)

v0.28.1 (2022-04-05)

Fix

  • alias for nested items (#169)

v0.28.0 (2022-03-23)

Feat

  • pydantic support added (#163)

v0.27.2 (2022-03-23)

Fix

  • rebuild cache (#164)

v0.27.1 (2022-03-22)

v0.27.0 (2022-02-18)

Feat

  • add enum support (#153)

v0.26.1 (2021-12-07)

Feat

  • manual job trigger (#146)

Fix

  • use root reference to generate valid schemas in multiple inheritance levels (#148)
  • cache and release expresion (#147)

v0.26.0 (2021-12-06)

Feat

  • validate method added (#144)

Fix

  • some type checks (#143)
  • mkdocs styles (#141)

v0.25.3 (2021-11-26)

Fix...

Read more

0.57.2

11 Mar 15:48
Compare
Choose a tag to compare

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.

0.57.2 (2024-03-11)

Fix

  • model generator refactored (#569)

0.57.1 (2024-02-22)

Fix

  • pass to fastavro all schemas in a single call (#553)

0.57.0 (2024-02-16)

Feat

  • Possibility for original schema string in objects Meta class. (#545)

0.56.2 (2024-02-12)

Fix

  • Install typing-extensions when using Python > 3.8 (#541)

0.56.1 (2024-01-30)

Fix

  • Optional[Literal] type fixed. Closes #518 (#528)

0.56.0 (2024-01-19)

Feat

  • support for pydantic date and datetime added (#517)

0.55.1 (2024-01-16)

Fix

  • bump inflector version for python3.12 support (#519)

0.55.0 (2024-01-16)

Feat

  • exclude_default option added in metadata. Closes #400 (#513)

0.54.2 (2023-12-12)

Fix

  • kwarg typing in AvroModel (#488)

0.54.1 (2023-12-07)

Fix

  • syntax warning in FakeStub docstring (#486)

0.54.0 (2023-12-01)

Feat

  • property extra_allowed_default_types added to Field. Closes #457 (#481)

0.53.1 (2023-11-15)

Fix

  • simplify faker stub code (#471)

0.53.0 (2023-11-03)

Feat

  • add pydantic v2 support. Closes #415 (#455)

0.52.1 (2023-10-09)

Fix

  • add fake() support to Literal field type (#451)

0.52.0 (2023-09-28)

Feat

  • add support for typing.Literal (#435).

0.51.0 (2023-09-20)

BREAKING CHANGE

  • pydantic-v2: First steps to support pydantic v2. Namespace dataclasses_avroschame.pydantic added. All AvroModel fields now are private (#427)

Migration guide for pydantic users: https://marcosschroh.github.io/dataclasses-avroschema/migration_guide/#migration-from-previous-versions-to-0510

0.50.2 (2023-09-19)

Fix

  • Add typing-extensions to python 3.8 (#432)

0.50.1 (2023-09-19)

Fix

  • Resolve issues with raw None annotation (#433). Closes #424

0.50.0 (2023-09-13)

Feat

  • add support for pydantic custom classes as fields (#420)

0.49.0 (2023-09-12)

Feat

  • option to exclude fields on the output schema added. (#423)

0.48.1 (2023-09-12)

Fix

  • respect enum symbols order when generating models from schemas. Related to #413 (#422)

0.48.0 (2023-09-11)

BREAKING CHANGE

  • drop python 3.7 support (#414)

0.47.3 (2023-09-06)

Fix

  • Model/code generator when enum has namespaces. Closes #406 (#410)

0.47.2 (2023-08-30)

Fix

  • field ordering when field has metadata but not a default value. Closes #401 (#403)

0.47.1 (2023-08-30)

Fix

  • do not uppercase enums keys when the key already exist. Closes #399 (#402)

0.47.0 (2023-08-28)

Feat

  • Make Faker an optional dependency. (#391)

0.46.3 (2023-08-25)

Fix

  • dependencies updated (#393)

0.46.2 (2023-08-15)

Fix

  • record fields avro schema creation (#382) (#383)

0.46.1 (2023-08-14)

Fix

  • schema generation with optional Enum fields (#386)

0.46.0 (2023-08-14)

Feat

  • support pydantic constrained int fields (#379)

0.45.1 (2023-07-27)

Fix

  • default factory in order to get proper default values. Closes #365

0.45.0 (2023-07-18)

Feat

  • field_order property added to class Meta. Closes #345 (#369)

0.44.0 (2023-07-06)

Feat

  • pydantic fields added. Closes #328

0.43.10 (2023-06-29)

Fix

  • model generator when fields have metadata. Closes #348 (#355)

0.43.9 (2023-06-19)

Fix

  • pydantic nested schema serialization (#346)

0.43.8 (2023-06-15)

Fix

  • stringcase replaced by casefy. Closes #341 (#347)

0.43.7 (2023-06-13)

Fix

  • Fix typo in kwargs typehint for AvroBaseModel.fake (#340)

0.43.6 (2023-05-30)

Fix

0.43.5 (2023-05-30)

Fix

  • update dependencies and bump version (#334)

0.43.4 (2023-05-26)

Fix

  • proper schema generation when primitive types are defined types. Closes #330 (#332)

0.43.3 (2023-05-25)

Fix

  • dict conversion of AvroBaseModel. Closes #324 (#331)

0.43.2 (2023-05-25)

Fix

  • deserialization with more than tow layers. Closes #326 (#329)

0.43.1 (2023-05-19)

Fix

  • excluded pydantic.Fields should be used on avro serialization. Closes #314 (#322)

0.43.0 (2023-04-26)

Feat

  • AvroRecord added in order to make simpler faust usage. Closes #281 (#303)

0.42.2 (2023-04-24)

Fix

  • pydantic and faust-streaming optional dependencies. Remove pytz as dependency. Closes #292 (#297)

0.42.1 (2023-04-24)

Fix

  • typing: incorrect type annotations in avrodantic.py (#302)

0.42.0 (2023-04-21)

Feat

  • TupleField added in order to deserialize typing.Tuple as tuples rather than list. Closes #291 (#296)

0.41.2 (2023-04-20)

Fix

  • dev dependencies updated (#294)

0.41.1 (2023-04-06)

Fix

  • dependencies updated. Model generator documentation updated (#285)

0.41.0 (2023-04-06)

BREAKING CHANGE

  • types.Decimal has been replaced by condecimal (Annotated[decimal.Decimal]). Closes #260 (#282)

0.40.0 (2023-03-29)

Fix

  • correctly generate enum default values (#275)
  • correctly generate type annotations

fix: do not generate default dataclass docstrings

fix: datetime model generation

the previous implementation did not roundtrip

feat: render docstrings in generated classes

fix: correct union and optional conversion

test: add avsc -> python -> avsc roundtrip test

fix: properly handle aliases in the model generator

tests: add coverage for single-type unions model generation

Co-authored-by: Maximilian Hils git@maximilianhils.com

0.39.3 (2023-03-29)

Fix

  • include matadata when using pydantic.Field with AvroBaseMode. Closes #263 (#274)

0.39.2 (2023-03-28)

Fix

  • use extras in a correct way. Closes #272 (#273)

0.39.1 (2023-03-27)

Fix

  • dependencies updated. Closes #270 (#271)

0.39.0 (2023-03-24)

Feat

  • support for typing.Annotated added (#264)

0.38.1 (2023-03-22)

Fix

  • dc-avro dependency (#262)

0.38.0 (2023-03-22)

  • First release added with commitizen

[0.37.5] - 2023-03-17

  • Avro schema generation should always return the same result. Close #254 (#255)

Fixed

[0.37.4] - 2023-03-06

  • Exception NameSpaceRequiredException removed. Close #246 (#253)

Fixed

[0.37.3] - 2023-03-06

  • Dependencies and documentation (#252)

Fixed

[0.37.2] - 2023-03-02

  • Use UUID type instead of function uuid4 on model generation (#251)

Fixed

[0.37.1] - 2023-02-24

  • Use pydantic UUID4 when generating pydantic models. (#247)

Added

[0.37.0] - 2023-02-22

  • Dacite custom config added to class Meta. Closes #242 (#245)

Fixed

[0.36.3] - 2023-02-16

  • ListField fake generation when it contains Optional. Closes #232 (#244)

Fixed

[0.36.2] - 2023-02-14

  • Do not persist the schema when the parent class is not an AvroModel. Closes #241

Fixed

[0.36.1] - 2023-01-19

  • Model generator with only decimal fields.
  • Use pydantic.condecimal instead of the custom Decimal as default value when generate pydantic models

Added

[0.36.0] - 2023-01-18

  • Generate a Python module from multiple schemas 235

Added

[0.35.0] - 2023-01-10

  • Convert python models from avsc schemas 227

Fixed

[0.34.6] - 2023-01-06

  • Use namespaces when an enum is used multiple times in a class. Cases should not apply to enum names. Closes 221

Fixed

[0.34.5] - 2023-01-06

  • Schema generation with optional enum when using pydantic. Closes 229

Fixed

[0.34.4] - 2023-01-04

  • Fake generation with optional user defined types 228

Fixed

[0.34.3] - 2022-12-15

  • Decimal fields serialization 222

Fixed

[0.34.2] - 2022-11-18

  • pydantic fake and nested json serialization 219

Fixed

[0.34.1] - 2022-11-11

  • include field metadata when using faust records 218

Added

[0.34.0] - 2022-11-01

  • typing.UnionType support added 212

Added

[0.33.0] - 2022-11-01

  • python 3.11 support added 215

Fixed

[0.32.3] - 2022-10-31

  • Logial types fixed. Update to fastavro 1.7.0 214

Fixed

[0.32.2] - 2022-10-25

  • Nested enums serialization 211

Fixed

[0.32.1] - 2022-10-13

  • Use python slots

Added

[0.32.0] - 2022-10-13

  • Provide data to the fake functionality 205

Fixed

[0.31.3] - 2022-10-07

  • utils refactor. @DataClass decorator included in all code examples. Inheritance example added.

Fixed

[0.31.2] - 2022-10-03

  • UnknownType on serialization with intermediates schemas 201

Fixed

[0.31.1] - 2022-09-30

  • Name collision on splittes schema usage 198.

Added

[0.31.0] - 2022-09-23

  • Micro precision added to time and datetime 197. TimeMicro...
Read more