structurize 3.5.1__tar.gz → 3.5.2__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.
- {structurize-3.5.1/structurize.egg-info → structurize-3.5.2}/PKG-INFO +1 -1
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/_version.py +3 -3
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/structuretokusto.py +16 -0
- {structurize-3.5.1 → structurize-3.5.2/structurize.egg-info}/PKG-INFO +1 -1
- {structurize-3.5.1 → structurize-3.5.2}/.gitignore +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/LICENSE +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/MANIFEST.in +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/README.md +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/__init__.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/__main__.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/asn1toavro.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/avrotize.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/avrotocpp.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/avrotocsharp.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/avrotocsv.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/avrotodatapackage.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/avrotodb.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/avrotogo.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/avrotographql.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/avrotoiceberg.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/avrotojava.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/avrotojs.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/avrotojsons.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/avrotojstruct.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/avrotokusto.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/avrotomd.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/avrotools.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/avrotoparquet.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/avrotoproto.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/avrotopython.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/avrotorust.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/avrotots.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/avrotoxsd.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/avrovalidator.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/cddltostructure.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/choice_inference.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/commands.json +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/common.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/constants.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/csvtoavro.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/datapackagetoavro.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/dependencies/cpp/vcpkg/vcpkg.json +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/dependencies/typescript/node22/package.json +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/dependency_resolver.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/dependency_version.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/jsonstoavro.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/jsonstostructure.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/jsontoschema.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/jstructtoavro.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/kstructtoavro.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/kustotoavro.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/kustotojstruct.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/mcp_server.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/openapitostructure.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/parquettoavro.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/proto2parser.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/proto3parser.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/prototoavro.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/schema_inference.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/sqltoavro.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/structuretocddl.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/structuretocpp.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/structuretocsharp.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/structuretocsv.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/structuretodatapackage.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/structuretodb.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/structuretogo.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/structuretographql.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/structuretoiceberg.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/structuretojava.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/structuretojs.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/structuretojsons.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/structuretomd.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/structuretoproto.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/structuretopython.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/structuretorust.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/structuretots.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/structuretoxsd.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/validate.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/xmltoschema.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/avrotize/xsdtoavro.py +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/build.ps1 +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/build.sh +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/pyproject.toml +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/setup.cfg +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/structurize.egg-info/SOURCES.txt +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/structurize.egg-info/dependency_links.txt +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/structurize.egg-info/entry_points.txt +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/structurize.egg-info/requires.txt +0 -0
- {structurize-3.5.1 → structurize-3.5.2}/structurize.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: structurize
|
|
3
|
-
Version: 3.5.
|
|
3
|
+
Version: 3.5.2
|
|
4
4
|
Summary: Tools to convert from and to JSON Structure from various other schema languages.
|
|
5
5
|
Author-email: Clemens Vasters <clemensv@microsoft.com>
|
|
6
6
|
Classifier: Programming Language :: Python :: 3
|
|
@@ -18,7 +18,7 @@ version_tuple: tuple[int | str, ...]
|
|
|
18
18
|
commit_id: str | None
|
|
19
19
|
__commit_id__: str | None
|
|
20
20
|
|
|
21
|
-
__version__ = version = '3.5.
|
|
22
|
-
__version_tuple__ = version_tuple = (3, 5,
|
|
21
|
+
__version__ = version = '3.5.2'
|
|
22
|
+
__version_tuple__ = version_tuple = (3, 5, 2)
|
|
23
23
|
|
|
24
|
-
__commit_id__ = commit_id = '
|
|
24
|
+
__commit_id__ = commit_id = 'gff224504a'
|
|
@@ -120,6 +120,21 @@ class StructureToKusto:
|
|
|
120
120
|
"""Check if a type is concrete (not abstract)."""
|
|
121
121
|
return not schema.get('abstract', False)
|
|
122
122
|
|
|
123
|
+
def normalize_structure_type(self, structure_type: Union[str, dict, list]) -> Union[str, dict, list]:
|
|
124
|
+
"""Normalize wrapped type expressions into the shapes the converter expects."""
|
|
125
|
+
if isinstance(structure_type, list):
|
|
126
|
+
non_null_types = [t for t in structure_type if t != 'null']
|
|
127
|
+
if len(non_null_types) == 1:
|
|
128
|
+
return self.normalize_structure_type(non_null_types[0])
|
|
129
|
+
return structure_type
|
|
130
|
+
|
|
131
|
+
if isinstance(structure_type, dict) and 'type' in structure_type and '$ref' not in structure_type:
|
|
132
|
+
nested_type = structure_type['type']
|
|
133
|
+
if isinstance(nested_type, (dict, list)):
|
|
134
|
+
return self.normalize_structure_type(nested_type)
|
|
135
|
+
|
|
136
|
+
return structure_type
|
|
137
|
+
|
|
123
138
|
def find_all_object_types(self, schema: Dict, schema_doc: Dict) -> List[Dict]:
|
|
124
139
|
"""
|
|
125
140
|
Find all concrete object types in the schema, including those in definitions.
|
|
@@ -516,6 +531,7 @@ class StructureToKusto:
|
|
|
516
531
|
|
|
517
532
|
def convert_structure_type_to_kusto_type(self, structure_type: Union[str, dict, list], schema_doc: Optional[Dict] = None) -> str:
|
|
518
533
|
"""Converts a JSON Structure type to a Kusto type."""
|
|
534
|
+
structure_type = self.normalize_structure_type(structure_type)
|
|
519
535
|
if isinstance(structure_type, list):
|
|
520
536
|
# Handle type unions
|
|
521
537
|
non_null_types = [t for t in structure_type if t != 'null']
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: structurize
|
|
3
|
-
Version: 3.5.
|
|
3
|
+
Version: 3.5.2
|
|
4
4
|
Summary: Tools to convert from and to JSON Structure from various other schema languages.
|
|
5
5
|
Author-email: Clemens Vasters <clemensv@microsoft.com>
|
|
6
6
|
Classifier: Programming Language :: Python :: 3
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{structurize-3.5.1 → structurize-3.5.2}/avrotize/dependencies/typescript/node22/package.json
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|