pydantic-avro 0.7.1__py3-none-any.whl → 0.7.2__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -56,10 +56,19 @@ def logical_type_handler(t: dict) -> str:
56
56
 
57
57
  def enum_type_handler(t: dict) -> str:
58
58
  """Gets the enum type of a given Avro enum type and adds it to the class registry"""
59
- name = t["type"].get("name")
59
+ if t["type"] == "enum":
60
+ # comes from a unioned enum (e.g. ["null", "enum"])
61
+ type_info = t
62
+ else:
63
+ # comes from a direct enum
64
+ type_info = t["type"]
65
+
66
+ name = type_info["name"]
67
+ symbols = type_info["symbols"]
68
+
60
69
  if not ClassRegistry().has_class(name):
61
70
  enum_class = f"class {name}(str, Enum):\n"
62
- for s in t["type"].get("symbols"):
71
+ for s in symbols:
63
72
  enum_class += f' {s} = "{s}"\n'
64
73
  ClassRegistry().add_class(name, enum_class)
65
74
  return name
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: pydantic-avro
3
- Version: 0.7.1
3
+ Version: 0.7.2
4
4
  Summary: Converting pydantic classes to avro schemas
5
5
  Home-page: https://github.com/godatadriven/pydantic-avro
6
6
  License: MIT
@@ -5,14 +5,14 @@ pydantic_avro/base.py,sha256=i1wco_T6FXFdtlxzbzXt3Jv93TmTzTfJ493KCfZh1dc,78
5
5
  pydantic_avro/from_avro/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
6
6
  pydantic_avro/from_avro/avro_to_pydantic.py,sha256=FOEd_6TqoHSlLALgyveb456B3f7TEPGw2ByRgRcigqc,1356
7
7
  pydantic_avro/from_avro/class_registery.py,sha256=n_8yELp-Eux9bAs4CJOV78bQ061VV_-2FuvowOQpWCg,864
8
- pydantic_avro/from_avro/types.py,sha256=yMpUXHr-06VQwECr3zwVITy9RzNbtVrs7oNbcXYQF7M,4663
8
+ pydantic_avro/from_avro/types.py,sha256=OIvadvTZJEbUDbTn2To6CqRpJhV8Un_jNqG5NKhqnkY,4864
9
9
  pydantic_avro/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10
10
  pydantic_avro/to_avro/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
11
11
  pydantic_avro/to_avro/base.py,sha256=Y8QOGTpXO3BwJ6arrRK-k2JniK5kLTvlDpQ0PyZojmg,1409
12
12
  pydantic_avro/to_avro/config.py,sha256=R9HLkWiXs7YZ02te8CQt5Kf2rbsE8Fx-hjqv3tBSFJU,152
13
13
  pydantic_avro/to_avro/types.py,sha256=gY-4ay0IF1dDIxtVsLyzH-AkzcE_dHpnyCrd00cj3TE,7755
14
- pydantic_avro-0.7.1.dist-info/entry_points.txt,sha256=gwHiQfbGLO8Np2sa1bZ_bpxU7sEufx6IachViBE_Fnw,66
15
- pydantic_avro-0.7.1.dist-info/LICENSE,sha256=gBlYCG1yxb0vGlsmek0lMPVOK5YDxQope4F54jzeqoY,1069
16
- pydantic_avro-0.7.1.dist-info/WHEEL,sha256=vxFmldFsRN_Hx10GDvsdv1wroKq8r5Lzvjp6GZ4OO8c,88
17
- pydantic_avro-0.7.1.dist-info/METADATA,sha256=61FXueogn8guvvq5Of_UdSv88e9xibKsYSkrbxkL7vw,2571
18
- pydantic_avro-0.7.1.dist-info/RECORD,,
14
+ pydantic_avro-0.7.2.dist-info/entry_points.txt,sha256=gwHiQfbGLO8Np2sa1bZ_bpxU7sEufx6IachViBE_Fnw,66
15
+ pydantic_avro-0.7.2.dist-info/LICENSE,sha256=gBlYCG1yxb0vGlsmek0lMPVOK5YDxQope4F54jzeqoY,1069
16
+ pydantic_avro-0.7.2.dist-info/WHEEL,sha256=vxFmldFsRN_Hx10GDvsdv1wroKq8r5Lzvjp6GZ4OO8c,88
17
+ pydantic_avro-0.7.2.dist-info/METADATA,sha256=uy2VasYG9obxrtyy8AEyDuv_rMOiKQ64oRsiue3bt4g,2571
18
+ pydantic_avro-0.7.2.dist-info/RECORD,,