moose-lib 0.4.219__tar.gz → 0.4.220__tar.gz

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.
Files changed (39) hide show
  1. {moose_lib-0.4.219 → moose_lib-0.4.220}/PKG-INFO +1 -1
  2. {moose_lib-0.4.219 → moose_lib-0.4.220}/moose_lib/data_models.py +15 -1
  3. {moose_lib-0.4.219 → moose_lib-0.4.220}/moose_lib.egg-info/PKG-INFO +1 -1
  4. {moose_lib-0.4.219 → moose_lib-0.4.220}/README.md +0 -0
  5. {moose_lib-0.4.219 → moose_lib-0.4.220}/moose_lib/__init__.py +0 -0
  6. {moose_lib-0.4.219 → moose_lib-0.4.220}/moose_lib/blocks.py +0 -0
  7. {moose_lib-0.4.219 → moose_lib-0.4.220}/moose_lib/clients/__init__.py +0 -0
  8. {moose_lib-0.4.219 → moose_lib-0.4.220}/moose_lib/clients/redis_client.py +0 -0
  9. {moose_lib-0.4.219 → moose_lib-0.4.220}/moose_lib/commons.py +0 -0
  10. {moose_lib-0.4.219 → moose_lib-0.4.220}/moose_lib/dmv2/__init__.py +0 -0
  11. {moose_lib-0.4.219 → moose_lib-0.4.220}/moose_lib/dmv2/_registry.py +0 -0
  12. {moose_lib-0.4.219 → moose_lib-0.4.220}/moose_lib/dmv2/consumption.py +0 -0
  13. {moose_lib-0.4.219 → moose_lib-0.4.220}/moose_lib/dmv2/ingest_api.py +0 -0
  14. {moose_lib-0.4.219 → moose_lib-0.4.220}/moose_lib/dmv2/ingest_pipeline.py +0 -0
  15. {moose_lib-0.4.219 → moose_lib-0.4.220}/moose_lib/dmv2/materialized_view.py +0 -0
  16. {moose_lib-0.4.219 → moose_lib-0.4.220}/moose_lib/dmv2/olap_table.py +0 -0
  17. {moose_lib-0.4.219 → moose_lib-0.4.220}/moose_lib/dmv2/registry.py +0 -0
  18. {moose_lib-0.4.219 → moose_lib-0.4.220}/moose_lib/dmv2/sql_resource.py +0 -0
  19. {moose_lib-0.4.219 → moose_lib-0.4.220}/moose_lib/dmv2/stream.py +0 -0
  20. {moose_lib-0.4.219 → moose_lib-0.4.220}/moose_lib/dmv2/types.py +0 -0
  21. {moose_lib-0.4.219 → moose_lib-0.4.220}/moose_lib/dmv2/view.py +0 -0
  22. {moose_lib-0.4.219 → moose_lib-0.4.220}/moose_lib/dmv2/workflow.py +0 -0
  23. {moose_lib-0.4.219 → moose_lib-0.4.220}/moose_lib/dmv2-serializer.py +0 -0
  24. {moose_lib-0.4.219 → moose_lib-0.4.220}/moose_lib/internal.py +0 -0
  25. {moose_lib-0.4.219 → moose_lib-0.4.220}/moose_lib/main.py +0 -0
  26. {moose_lib-0.4.219 → moose_lib-0.4.220}/moose_lib/query_param.py +0 -0
  27. {moose_lib-0.4.219 → moose_lib-0.4.220}/moose_lib/streaming/__init__.py +0 -0
  28. {moose_lib-0.4.219 → moose_lib-0.4.220}/moose_lib/streaming/streaming_function_runner.py +0 -0
  29. {moose_lib-0.4.219 → moose_lib-0.4.220}/moose_lib/tasks.py +0 -0
  30. {moose_lib-0.4.219 → moose_lib-0.4.220}/moose_lib.egg-info/SOURCES.txt +0 -0
  31. {moose_lib-0.4.219 → moose_lib-0.4.220}/moose_lib.egg-info/dependency_links.txt +0 -0
  32. {moose_lib-0.4.219 → moose_lib-0.4.220}/moose_lib.egg-info/requires.txt +0 -0
  33. {moose_lib-0.4.219 → moose_lib-0.4.220}/moose_lib.egg-info/top_level.txt +0 -0
  34. {moose_lib-0.4.219 → moose_lib-0.4.220}/setup.cfg +0 -0
  35. {moose_lib-0.4.219 → moose_lib-0.4.220}/setup.py +0 -0
  36. {moose_lib-0.4.219 → moose_lib-0.4.220}/tests/__init__.py +0 -0
  37. {moose_lib-0.4.219 → moose_lib-0.4.220}/tests/conftest.py +0 -0
  38. {moose_lib-0.4.219 → moose_lib-0.4.220}/tests/test_moose.py +0 -0
  39. {moose_lib-0.4.219 → moose_lib-0.4.220}/tests/test_redis_client.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: moose_lib
3
- Version: 0.4.219
3
+ Version: 0.4.220
4
4
  Home-page: https://www.fiveonefour.com/moose
5
5
  Author: Fiveonefour Labs Inc.
6
6
  Author-email: support@fiveonefour.com
@@ -87,7 +87,12 @@ class NamedTupleType(BaseModel):
87
87
  fields: list[tuple[str, "DataType"]]
88
88
 
89
89
 
90
- type DataType = str | DataEnum | ArrayType | Nested | NamedTupleType
90
+ class MapType(BaseModel):
91
+ key_type: "DataType"
92
+ value_type: "DataType"
93
+
94
+
95
+ type DataType = str | DataEnum | ArrayType | Nested | NamedTupleType | MapType
91
96
 
92
97
 
93
98
  def handle_jwt(field_type: type) -> Tuple[bool, type]:
@@ -185,6 +190,15 @@ def py_type_to_column_type(t: type, mds: list[Any]) -> Tuple[bool, list[Any], Da
185
190
  elif get_origin(t) is list:
186
191
  inner_optional, _, inner_type = py_type_to_column_type(get_args(t)[0], [])
187
192
  data_type = ArrayType(element_type=inner_type, element_nullable=inner_optional)
193
+ elif get_origin(t) is dict:
194
+ args = get_args(t)
195
+ if len(args) == 2:
196
+ key_optional, _, key_type = py_type_to_column_type(args[0], [])
197
+ value_optional, _, value_type = py_type_to_column_type(args[1], [])
198
+ # For dict types, we assume keys are required and values match their type
199
+ data_type = MapType(key_type=key_type, value_type=value_type)
200
+ else:
201
+ raise ValueError(f"Dict type must have exactly 2 type arguments, got {len(args)}")
188
202
  elif t is UUID:
189
203
  data_type = "UUID"
190
204
  elif t is Any:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: moose_lib
3
- Version: 0.4.219
3
+ Version: 0.4.220
4
4
  Home-page: https://www.fiveonefour.com/moose
5
5
  Author: Fiveonefour Labs Inc.
6
6
  Author-email: support@fiveonefour.com
File without changes
File without changes
File without changes