superposition-sdk 0.90.0__py3-none-any.whl → 0.91.0__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.

Potentially problematic release.


This version of superposition-sdk might be problematic. Click here for more details.

@@ -1649,6 +1649,23 @@ OBJECT = Schema.collection(
1649
1649
  }
1650
1650
  )
1651
1651
 
1652
+ DIMENSION_DATA = Schema.collection(
1653
+ id=ShapeID("io.superposition#DimensionData"),
1654
+ shape_type=ShapeType.MAP,
1655
+ members={
1656
+ "key": {
1657
+ "target": STRING,
1658
+ "index": 0,
1659
+ },
1660
+
1661
+ "value": {
1662
+ "target": DOCUMENT,
1663
+ "index": 1,
1664
+ },
1665
+
1666
+ }
1667
+ )
1668
+
1652
1669
  OVERRIDES_MAP = Schema.collection(
1653
1670
  id=ShapeID("io.superposition#OverridesMap"),
1654
1671
  shape_type=ShapeType.MAP,
@@ -1701,9 +1718,18 @@ GET_CONFIG_OUTPUT = Schema.collection(
1701
1718
  ],
1702
1719
  },
1703
1720
 
1721
+ "dimensions": {
1722
+ "target": DIMENSION_DATA,
1723
+ "index": 3,
1724
+ "traits": [
1725
+ Trait.new(id=ShapeID("smithy.api#notProperty")),
1726
+
1727
+ ],
1728
+ },
1729
+
1704
1730
  "version": {
1705
1731
  "target": STRING,
1706
- "index": 3,
1732
+ "index": 4,
1707
1733
  "traits": [
1708
1734
  Trait.new(id=ShapeID("smithy.api#httpHeader"), value="x-config-version"),
1709
1735
 
@@ -1712,7 +1738,7 @@ GET_CONFIG_OUTPUT = Schema.collection(
1712
1738
 
1713
1739
  "last_modified": {
1714
1740
  "target": DATE_TIME,
1715
- "index": 4,
1741
+ "index": 5,
1716
1742
  "traits": [
1717
1743
  Trait.new(id=ShapeID("smithy.api#httpHeader"), value="last-modified"),
1718
1744
 
@@ -1721,7 +1747,7 @@ GET_CONFIG_OUTPUT = Schema.collection(
1721
1747
 
1722
1748
  "audit_id": {
1723
1749
  "target": STRING,
1724
- "index": 5,
1750
+ "index": 6,
1725
1751
  "traits": [
1726
1752
  Trait.new(id=ShapeID("smithy.api#httpHeader"), value="x-audit-id"),
1727
1753
  Trait.new(id=ShapeID("smithy.api#notProperty")),
@@ -3564,15 +3590,25 @@ CREATE_DEFAULT_CONFIG = Schema(
3564
3590
 
3565
3591
  )
3566
3592
 
3567
- DEPENDENCIES = Schema.collection(
3568
- id=ShapeID("io.superposition#Dependencies"),
3569
- shape_type=ShapeType.LIST,
3593
+ DIMENSION_TYPE = Schema.collection(
3594
+ id=ShapeID("io.superposition#DimensionType"),
3595
+ shape_type=ShapeType.UNION,
3570
3596
  members={
3571
- "member": {
3572
- "target": STRING,
3597
+ "REGULAR": {
3598
+ "target": UNIT,
3573
3599
  "index": 0,
3574
3600
  },
3575
3601
 
3602
+ "LOCAL_COHORT": {
3603
+ "target": STRING,
3604
+ "index": 1,
3605
+ },
3606
+
3607
+ "REMOTE_COHORT": {
3608
+ "target": STRING,
3609
+ "index": 2,
3610
+ },
3611
+
3576
3612
  }
3577
3613
  )
3578
3614
 
@@ -3637,14 +3673,9 @@ CREATE_DIMENSION_INPUT = Schema.collection(
3637
3673
  "index": 5,
3638
3674
  },
3639
3675
 
3640
- "dependencies": {
3641
- "target": DEPENDENCIES,
3642
- "index": 6,
3643
- },
3644
-
3645
3676
  "description": {
3646
3677
  "target": STRING,
3647
- "index": 7,
3678
+ "index": 6,
3648
3679
  "traits": [
3649
3680
  Trait.new(id=ShapeID("smithy.api#required")),
3650
3681
 
@@ -3653,28 +3684,21 @@ CREATE_DIMENSION_INPUT = Schema.collection(
3653
3684
 
3654
3685
  "change_reason": {
3655
3686
  "target": STRING,
3656
- "index": 8,
3687
+ "index": 7,
3657
3688
  "traits": [
3658
3689
  Trait.new(id=ShapeID("smithy.api#required")),
3659
3690
 
3660
3691
  ],
3661
3692
  },
3662
3693
 
3663
- "autocomplete_function_name": {
3664
- "target": STRING,
3665
- "index": 9,
3694
+ "dimension_type": {
3695
+ "target": DIMENSION_TYPE,
3696
+ "index": 8,
3666
3697
  },
3667
3698
 
3668
- }
3669
- )
3670
-
3671
- DEPENDENTS = Schema.collection(
3672
- id=ShapeID("io.superposition#Dependents"),
3673
- shape_type=ShapeType.LIST,
3674
- members={
3675
- "member": {
3699
+ "autocomplete_function_name": {
3676
3700
  "target": STRING,
3677
- "index": 0,
3701
+ "index": 9,
3678
3702
  },
3679
3703
 
3680
3704
  }
@@ -3775,8 +3799,8 @@ CREATE_DIMENSION_OUTPUT = Schema.collection(
3775
3799
  ],
3776
3800
  },
3777
3801
 
3778
- "dependencies": {
3779
- "target": DEPENDENCIES,
3802
+ "dependency_graph": {
3803
+ "target": OBJECT,
3780
3804
  "index": 10,
3781
3805
  "traits": [
3782
3806
  Trait.new(id=ShapeID("smithy.api#required")),
@@ -3784,8 +3808,8 @@ CREATE_DIMENSION_OUTPUT = Schema.collection(
3784
3808
  ],
3785
3809
  },
3786
3810
 
3787
- "dependents": {
3788
- "target": DEPENDENTS,
3811
+ "dimension_type": {
3812
+ "target": DIMENSION_TYPE,
3789
3813
  "index": 11,
3790
3814
  "traits": [
3791
3815
  Trait.new(id=ShapeID("smithy.api#required")),
@@ -3793,23 +3817,14 @@ CREATE_DIMENSION_OUTPUT = Schema.collection(
3793
3817
  ],
3794
3818
  },
3795
3819
 
3796
- "dependency_graph": {
3797
- "target": OBJECT,
3798
- "index": 12,
3799
- "traits": [
3800
- Trait.new(id=ShapeID("smithy.api#required")),
3801
-
3802
- ],
3803
- },
3804
-
3805
3820
  "autocomplete_function_name": {
3806
3821
  "target": STRING,
3807
- "index": 13,
3822
+ "index": 12,
3808
3823
  },
3809
3824
 
3810
3825
  "mandatory": {
3811
3826
  "target": BOOLEAN,
3812
- "index": 14,
3827
+ "index": 13,
3813
3828
  "traits": [
3814
3829
  Trait.new(id=ShapeID("smithy.api#notProperty")),
3815
3830
 
@@ -6680,8 +6695,8 @@ GET_DIMENSION_OUTPUT = Schema.collection(
6680
6695
  ],
6681
6696
  },
6682
6697
 
6683
- "dependencies": {
6684
- "target": DEPENDENCIES,
6698
+ "dependency_graph": {
6699
+ "target": OBJECT,
6685
6700
  "index": 10,
6686
6701
  "traits": [
6687
6702
  Trait.new(id=ShapeID("smithy.api#required")),
@@ -6689,8 +6704,8 @@ GET_DIMENSION_OUTPUT = Schema.collection(
6689
6704
  ],
6690
6705
  },
6691
6706
 
6692
- "dependents": {
6693
- "target": DEPENDENTS,
6707
+ "dimension_type": {
6708
+ "target": DIMENSION_TYPE,
6694
6709
  "index": 11,
6695
6710
  "traits": [
6696
6711
  Trait.new(id=ShapeID("smithy.api#required")),
@@ -6698,23 +6713,14 @@ GET_DIMENSION_OUTPUT = Schema.collection(
6698
6713
  ],
6699
6714
  },
6700
6715
 
6701
- "dependency_graph": {
6702
- "target": OBJECT,
6703
- "index": 12,
6704
- "traits": [
6705
- Trait.new(id=ShapeID("smithy.api#required")),
6706
-
6707
- ],
6708
- },
6709
-
6710
6716
  "autocomplete_function_name": {
6711
6717
  "target": STRING,
6712
- "index": 13,
6718
+ "index": 12,
6713
6719
  },
6714
6720
 
6715
6721
  "mandatory": {
6716
6722
  "target": BOOLEAN,
6717
- "index": 14,
6723
+ "index": 13,
6718
6724
  "traits": [
6719
6725
  Trait.new(id=ShapeID("smithy.api#notProperty")),
6720
6726
 
@@ -6886,8 +6892,8 @@ DIMENSION_EXT = Schema.collection(
6886
6892
  ],
6887
6893
  },
6888
6894
 
6889
- "dependencies": {
6890
- "target": DEPENDENCIES,
6895
+ "dependency_graph": {
6896
+ "target": OBJECT,
6891
6897
  "index": 10,
6892
6898
  "traits": [
6893
6899
  Trait.new(id=ShapeID("smithy.api#required")),
@@ -6895,8 +6901,8 @@ DIMENSION_EXT = Schema.collection(
6895
6901
  ],
6896
6902
  },
6897
6903
 
6898
- "dependents": {
6899
- "target": DEPENDENTS,
6904
+ "dimension_type": {
6905
+ "target": DIMENSION_TYPE,
6900
6906
  "index": 11,
6901
6907
  "traits": [
6902
6908
  Trait.new(id=ShapeID("smithy.api#required")),
@@ -6904,23 +6910,14 @@ DIMENSION_EXT = Schema.collection(
6904
6910
  ],
6905
6911
  },
6906
6912
 
6907
- "dependency_graph": {
6908
- "target": OBJECT,
6909
- "index": 12,
6910
- "traits": [
6911
- Trait.new(id=ShapeID("smithy.api#required")),
6912
-
6913
- ],
6914
- },
6915
-
6916
6913
  "autocomplete_function_name": {
6917
6914
  "target": STRING,
6918
- "index": 13,
6915
+ "index": 12,
6919
6916
  },
6920
6917
 
6921
6918
  "mandatory": {
6922
6919
  "target": BOOLEAN,
6923
- "index": 14,
6920
+ "index": 13,
6924
6921
  "traits": [
6925
6922
  Trait.new(id=ShapeID("smithy.api#notProperty")),
6926
6923
 
@@ -7041,14 +7038,9 @@ UPDATE_DIMENSION_INPUT = Schema.collection(
7041
7038
  "index": 6,
7042
7039
  },
7043
7040
 
7044
- "dependencies": {
7045
- "target": DEPENDENCIES,
7046
- "index": 7,
7047
- },
7048
-
7049
7041
  "change_reason": {
7050
7042
  "target": STRING,
7051
- "index": 8,
7043
+ "index": 7,
7052
7044
  "traits": [
7053
7045
  Trait.new(id=ShapeID("smithy.api#required")),
7054
7046
 
@@ -7057,7 +7049,7 @@ UPDATE_DIMENSION_INPUT = Schema.collection(
7057
7049
 
7058
7050
  "autocomplete_function_name": {
7059
7051
  "target": STRING,
7060
- "index": 9,
7052
+ "index": 8,
7061
7053
  },
7062
7054
 
7063
7055
  }
@@ -7158,8 +7150,8 @@ UPDATE_DIMENSION_OUTPUT = Schema.collection(
7158
7150
  ],
7159
7151
  },
7160
7152
 
7161
- "dependencies": {
7162
- "target": DEPENDENCIES,
7153
+ "dependency_graph": {
7154
+ "target": OBJECT,
7163
7155
  "index": 10,
7164
7156
  "traits": [
7165
7157
  Trait.new(id=ShapeID("smithy.api#required")),
@@ -7167,8 +7159,8 @@ UPDATE_DIMENSION_OUTPUT = Schema.collection(
7167
7159
  ],
7168
7160
  },
7169
7161
 
7170
- "dependents": {
7171
- "target": DEPENDENTS,
7162
+ "dimension_type": {
7163
+ "target": DIMENSION_TYPE,
7172
7164
  "index": 11,
7173
7165
  "traits": [
7174
7166
  Trait.new(id=ShapeID("smithy.api#required")),
@@ -7176,23 +7168,14 @@ UPDATE_DIMENSION_OUTPUT = Schema.collection(
7176
7168
  ],
7177
7169
  },
7178
7170
 
7179
- "dependency_graph": {
7180
- "target": OBJECT,
7181
- "index": 12,
7182
- "traits": [
7183
- Trait.new(id=ShapeID("smithy.api#required")),
7184
-
7185
- ],
7186
- },
7187
-
7188
7171
  "autocomplete_function_name": {
7189
7172
  "target": STRING,
7190
- "index": 13,
7173
+ "index": 12,
7191
7174
  },
7192
7175
 
7193
7176
  "mandatory": {
7194
7177
  "target": BOOLEAN,
7195
- "index": 14,
7178
+ "index": 13,
7196
7179
  "traits": [
7197
7180
  Trait.new(id=ShapeID("smithy.api#notProperty")),
7198
7181
 
@@ -1060,7 +1060,7 @@ class Superposition:
1060
1060
  async def get_dimension(self, input: GetDimensionInput, plugins: list[Plugin] | None = None) -> GetDimensionOutput:
1061
1061
  """
1062
1062
  Retrieves detailed information about a specific dimension, including its schema,
1063
- dependencies, and configuration metadata.
1063
+ cohort dependency graph, and configuration metadata.
1064
1064
 
1065
1065
  :param input: The operation's input.
1066
1066
 
@@ -9,6 +9,7 @@ from typing import Any, ClassVar, Literal, Self, Union
9
9
  from smithy_core.deserializers import ShapeDeserializer
10
10
  from smithy_core.documents import Document, TypeRegistry
11
11
  from smithy_core.exceptions import SmithyException
12
+ from smithy_core.prelude import UNIT as _SCHEMA_UNIT
12
13
  from smithy_core.schemas import APIOperation, Schema
13
14
  from smithy_core.serializers import ShapeSerializer
14
15
  from smithy_core.shapes import ShapeID
@@ -88,6 +89,7 @@ from ._private.schemas import (
88
89
  DELETE_TYPE_TEMPLATES_INPUT as _SCHEMA_DELETE_TYPE_TEMPLATES_INPUT,
89
90
  DELETE_TYPE_TEMPLATES_OUTPUT as _SCHEMA_DELETE_TYPE_TEMPLATES_OUTPUT,
90
91
  DIMENSION_EXT as _SCHEMA_DIMENSION_EXT,
92
+ DIMENSION_TYPE as _SCHEMA_DIMENSION_TYPE,
91
93
  DISCARD_EXPERIMENT as _SCHEMA_DISCARD_EXPERIMENT,
92
94
  DISCARD_EXPERIMENT_INPUT as _SCHEMA_DISCARD_EXPERIMENT_INPUT,
93
95
  DISCARD_EXPERIMENT_OUTPUT as _SCHEMA_DISCARD_EXPERIMENT_OUTPUT,
@@ -2325,6 +2327,24 @@ def _deserialize_object(deserializer: ShapeDeserializer, schema: Schema) -> dict
2325
2327
  deserializer.read_map(schema, _read_value)
2326
2328
  return result
2327
2329
 
2330
+ def _serialize_dimension_data(serializer: ShapeSerializer, schema: Schema, value: dict[str, Document]) -> None:
2331
+ with serializer.begin_map(schema, len(value)) as m:
2332
+ value_schema = schema.members["value"]
2333
+ for k, v in value.items():
2334
+ m.entry(k, lambda vs: vs.write_document(value_schema, v))
2335
+
2336
+ def _deserialize_dimension_data(deserializer: ShapeDeserializer, schema: Schema) -> dict[str, Document]:
2337
+ result: dict[str, Document] = {}
2338
+ value_schema = schema.members["value"]
2339
+ def _read_value(k: str, d: ShapeDeserializer):
2340
+ if d.is_null():
2341
+ d.read_null()
2342
+
2343
+ else:
2344
+ result[k] = d.read_document(value_schema)
2345
+ deserializer.read_map(schema, _read_value)
2346
+ return result
2347
+
2328
2348
  def _serialize_overrides_map(serializer: ShapeSerializer, schema: Schema, value: dict[str, dict[str, Document]]) -> None:
2329
2349
  with serializer.begin_map(schema, len(value)) as m:
2330
2350
  value_schema = schema.members["value"]
@@ -2356,6 +2376,7 @@ class GetConfigOutput:
2356
2376
  contexts: list[ContextPartial] | None = None
2357
2377
  overrides: dict[str, dict[str, Document]] | None = None
2358
2378
  default_configs: dict[str, Document] | None = None
2379
+ dimensions: dict[str, Document] | None = None
2359
2380
  version: str | None = None
2360
2381
  last_modified: datetime | None = None
2361
2382
  audit_id: str | None = None
@@ -2373,6 +2394,9 @@ class GetConfigOutput:
2373
2394
  if self.default_configs is not None:
2374
2395
  _serialize_object(serializer, _SCHEMA_GET_CONFIG_OUTPUT.members["default_configs"], self.default_configs)
2375
2396
 
2397
+ if self.dimensions is not None:
2398
+ _serialize_dimension_data(serializer, _SCHEMA_GET_CONFIG_OUTPUT.members["dimensions"], self.dimensions)
2399
+
2376
2400
  @classmethod
2377
2401
  def deserialize(cls, deserializer: ShapeDeserializer) -> Self:
2378
2402
  return cls(**cls.deserialize_kwargs(deserializer))
@@ -2393,12 +2417,15 @@ class GetConfigOutput:
2393
2417
  kwargs["default_configs"] = _deserialize_object(de, _SCHEMA_GET_CONFIG_OUTPUT.members["default_configs"])
2394
2418
 
2395
2419
  case 3:
2396
- kwargs["version"] = de.read_string(_SCHEMA_GET_CONFIG_OUTPUT.members["version"])
2420
+ kwargs["dimensions"] = _deserialize_dimension_data(de, _SCHEMA_GET_CONFIG_OUTPUT.members["dimensions"])
2397
2421
 
2398
2422
  case 4:
2399
- kwargs["last_modified"] = de.read_timestamp(_SCHEMA_GET_CONFIG_OUTPUT.members["last_modified"])
2423
+ kwargs["version"] = de.read_string(_SCHEMA_GET_CONFIG_OUTPUT.members["version"])
2400
2424
 
2401
2425
  case 5:
2426
+ kwargs["last_modified"] = de.read_timestamp(_SCHEMA_GET_CONFIG_OUTPUT.members["last_modified"])
2427
+
2428
+ case 6:
2402
2429
  kwargs["audit_id"] = de.read_string(_SCHEMA_GET_CONFIG_OUTPUT.members["audit_id"])
2403
2430
 
2404
2431
  case _:
@@ -4365,23 +4392,131 @@ CREATE_DEFAULT_CONFIG = APIOperation(
4365
4392
  ]
4366
4393
  )
4367
4394
 
4368
- def _serialize_dependencies(serializer: ShapeSerializer, schema: Schema, value: list[str]) -> None:
4369
- member_schema = schema.members["member"]
4370
- with serializer.begin_list(schema, len(value)) as ls:
4371
- for e in value:
4372
- ls.write_string(member_schema, e)
4395
+ @dataclass(kw_only=True)
4396
+ class Unit:
4373
4397
 
4374
- def _deserialize_dependencies(deserializer: ShapeDeserializer, schema: Schema) -> list[str]:
4375
- result: list[str] = []
4376
- member_schema = schema.members["member"]
4377
- def _read_value(d: ShapeDeserializer):
4378
- if d.is_null():
4379
- d.read_null()
4398
+ def serialize(self, serializer: ShapeSerializer):
4399
+ serializer.write_struct(_SCHEMA_UNIT, self)
4380
4400
 
4381
- else:
4382
- result.append(d.read_string(member_schema))
4383
- deserializer.read_list(schema, _read_value)
4384
- return result
4401
+ def serialize_members(self, serializer: ShapeSerializer):
4402
+ pass
4403
+
4404
+ @classmethod
4405
+ def deserialize(cls, deserializer: ShapeDeserializer) -> Self:
4406
+ return cls(**cls.deserialize_kwargs(deserializer))
4407
+
4408
+ @classmethod
4409
+ def deserialize_kwargs(cls, deserializer: ShapeDeserializer) -> dict[str, Any]:
4410
+ kwargs: dict[str, Any] = {}
4411
+
4412
+ def _consumer(schema: Schema, de: ShapeDeserializer) -> None:
4413
+ match schema.expect_member_index():
4414
+
4415
+ case _:
4416
+ logger.debug("Unexpected member schema: %s", schema)
4417
+
4418
+ deserializer.read_struct(_SCHEMA_UNIT, consumer=_consumer)
4419
+ return kwargs
4420
+
4421
+ @dataclass
4422
+ class DimensionTypeREGULAR:
4423
+
4424
+ value: Unit
4425
+
4426
+ def serialize(self, serializer: ShapeSerializer):
4427
+ serializer.write_struct(_SCHEMA_DIMENSION_TYPE, self)
4428
+
4429
+ def serialize_members(self, serializer: ShapeSerializer):
4430
+ serializer.write_struct(_SCHEMA_DIMENSION_TYPE.members["REGULAR"], self.value)
4431
+
4432
+ @classmethod
4433
+ def deserialize(cls, deserializer: ShapeDeserializer) -> Self:
4434
+ return cls(value=Unit.deserialize(deserializer))
4435
+
4436
+ @dataclass
4437
+ class DimensionTypeLOCAL_COHORT:
4438
+
4439
+ value: str
4440
+
4441
+ def serialize(self, serializer: ShapeSerializer):
4442
+ serializer.write_struct(_SCHEMA_DIMENSION_TYPE, self)
4443
+
4444
+ def serialize_members(self, serializer: ShapeSerializer):
4445
+ serializer.write_string(_SCHEMA_DIMENSION_TYPE.members["LOCAL_COHORT"], self.value)
4446
+
4447
+ @classmethod
4448
+ def deserialize(cls, deserializer: ShapeDeserializer) -> Self:
4449
+ return cls(value=deserializer.read_string(_SCHEMA_DIMENSION_TYPE.members["LOCAL_COHORT"]))
4450
+
4451
+ @dataclass
4452
+ class DimensionTypeREMOTE_COHORT:
4453
+
4454
+ value: str
4455
+
4456
+ def serialize(self, serializer: ShapeSerializer):
4457
+ serializer.write_struct(_SCHEMA_DIMENSION_TYPE, self)
4458
+
4459
+ def serialize_members(self, serializer: ShapeSerializer):
4460
+ serializer.write_string(_SCHEMA_DIMENSION_TYPE.members["REMOTE_COHORT"], self.value)
4461
+
4462
+ @classmethod
4463
+ def deserialize(cls, deserializer: ShapeDeserializer) -> Self:
4464
+ return cls(value=deserializer.read_string(_SCHEMA_DIMENSION_TYPE.members["REMOTE_COHORT"]))
4465
+
4466
+ @dataclass
4467
+ class DimensionTypeUnknown:
4468
+ """Represents an unknown variant.
4469
+
4470
+ If you receive this value, you will need to update your library to receive the
4471
+ parsed value.
4472
+
4473
+ This value may not be deliberately sent.
4474
+ """
4475
+
4476
+ tag: str
4477
+
4478
+ def serialize(self, serializer: ShapeSerializer):
4479
+ raise SmithyException("Unknown union variants may not be serialized.")
4480
+
4481
+ def serialize_members(self, serializer: ShapeSerializer):
4482
+ raise SmithyException("Unknown union variants may not be serialized.")
4483
+
4484
+ @classmethod
4485
+ def deserialize(cls, deserializer: ShapeDeserializer) -> Self:
4486
+ raise NotImplementedError()
4487
+
4488
+ DimensionType = Union[DimensionTypeREGULAR | DimensionTypeLOCAL_COHORT | DimensionTypeREMOTE_COHORT | DimensionTypeUnknown]
4489
+
4490
+ class _DimensionTypeDeserializer:
4491
+ _result: DimensionType | None = None
4492
+
4493
+ def deserialize(self, deserializer: ShapeDeserializer) -> DimensionType:
4494
+ self._result = None
4495
+ deserializer.read_struct(_SCHEMA_DIMENSION_TYPE, self._consumer)
4496
+
4497
+ if self._result is None:
4498
+ raise SmithyException("Unions must have exactly one value, but found none.")
4499
+
4500
+ return self._result
4501
+
4502
+ def _consumer(self, schema: Schema, de: ShapeDeserializer) -> None:
4503
+ match schema.expect_member_index():
4504
+ case 0:
4505
+ self._set_result(DimensionTypeREGULAR.deserialize(de))
4506
+
4507
+ case 1:
4508
+ self._set_result(DimensionTypeLOCAL_COHORT.deserialize(de))
4509
+
4510
+ case 2:
4511
+ self._set_result(DimensionTypeREMOTE_COHORT.deserialize(de))
4512
+
4513
+ case _:
4514
+ logger.debug("Unexpected member schema: %s", schema)
4515
+
4516
+ def _set_result(self, value: DimensionType) -> None:
4517
+ if self._result is not None:
4518
+ raise SmithyException("Unions must have exactly one value, but found more than one.")
4519
+ self._result = value
4385
4520
 
4386
4521
  @dataclass(kw_only=True)
4387
4522
  class CreateDimensionInput:
@@ -4392,9 +4527,9 @@ class CreateDimensionInput:
4392
4527
  position: int | None = None
4393
4528
  schema: Document | None = None
4394
4529
  function_name: str | None = None
4395
- dependencies: list[str] | None = None
4396
4530
  description: str | None = None
4397
4531
  change_reason: str | None = None
4532
+ dimension_type: DimensionType | None = None
4398
4533
  autocomplete_function_name: str | None = None
4399
4534
 
4400
4535
  def serialize(self, serializer: ShapeSerializer):
@@ -4413,15 +4548,15 @@ class CreateDimensionInput:
4413
4548
  if self.function_name is not None:
4414
4549
  serializer.write_string(_SCHEMA_CREATE_DIMENSION_INPUT.members["function_name"], self.function_name)
4415
4550
 
4416
- if self.dependencies is not None:
4417
- _serialize_dependencies(serializer, _SCHEMA_CREATE_DIMENSION_INPUT.members["dependencies"], self.dependencies)
4418
-
4419
4551
  if self.description is not None:
4420
4552
  serializer.write_string(_SCHEMA_CREATE_DIMENSION_INPUT.members["description"], self.description)
4421
4553
 
4422
4554
  if self.change_reason is not None:
4423
4555
  serializer.write_string(_SCHEMA_CREATE_DIMENSION_INPUT.members["change_reason"], self.change_reason)
4424
4556
 
4557
+ if self.dimension_type is not None:
4558
+ serializer.write_struct(_SCHEMA_CREATE_DIMENSION_INPUT.members["dimension_type"], self.dimension_type)
4559
+
4425
4560
  if self.autocomplete_function_name is not None:
4426
4561
  serializer.write_string(_SCHEMA_CREATE_DIMENSION_INPUT.members["autocomplete_function_name"], self.autocomplete_function_name)
4427
4562
 
@@ -4454,13 +4589,13 @@ class CreateDimensionInput:
4454
4589
  kwargs["function_name"] = de.read_string(_SCHEMA_CREATE_DIMENSION_INPUT.members["function_name"])
4455
4590
 
4456
4591
  case 6:
4457
- kwargs["dependencies"] = _deserialize_dependencies(de, _SCHEMA_CREATE_DIMENSION_INPUT.members["dependencies"])
4592
+ kwargs["description"] = de.read_string(_SCHEMA_CREATE_DIMENSION_INPUT.members["description"])
4458
4593
 
4459
4594
  case 7:
4460
- kwargs["description"] = de.read_string(_SCHEMA_CREATE_DIMENSION_INPUT.members["description"])
4595
+ kwargs["change_reason"] = de.read_string(_SCHEMA_CREATE_DIMENSION_INPUT.members["change_reason"])
4461
4596
 
4462
4597
  case 8:
4463
- kwargs["change_reason"] = de.read_string(_SCHEMA_CREATE_DIMENSION_INPUT.members["change_reason"])
4598
+ kwargs["dimension_type"] = _DimensionTypeDeserializer().deserialize(de)
4464
4599
 
4465
4600
  case 9:
4466
4601
  kwargs["autocomplete_function_name"] = de.read_string(_SCHEMA_CREATE_DIMENSION_INPUT.members["autocomplete_function_name"])
@@ -4471,24 +4606,6 @@ class CreateDimensionInput:
4471
4606
  deserializer.read_struct(_SCHEMA_CREATE_DIMENSION_INPUT, consumer=_consumer)
4472
4607
  return kwargs
4473
4608
 
4474
- def _serialize_dependents(serializer: ShapeSerializer, schema: Schema, value: list[str]) -> None:
4475
- member_schema = schema.members["member"]
4476
- with serializer.begin_list(schema, len(value)) as ls:
4477
- for e in value:
4478
- ls.write_string(member_schema, e)
4479
-
4480
- def _deserialize_dependents(deserializer: ShapeDeserializer, schema: Schema) -> list[str]:
4481
- result: list[str] = []
4482
- member_schema = schema.members["member"]
4483
- def _read_value(d: ShapeDeserializer):
4484
- if d.is_null():
4485
- d.read_null()
4486
-
4487
- else:
4488
- result.append(d.read_string(member_schema))
4489
- deserializer.read_list(schema, _read_value)
4490
- return result
4491
-
4492
4609
  @dataclass(kw_only=True)
4493
4610
  class CreateDimensionOutput:
4494
4611
  """
@@ -4517,12 +4634,10 @@ class CreateDimensionOutput:
4517
4634
 
4518
4635
  created_by: str
4519
4636
 
4520
- dependencies: list[str]
4521
-
4522
- dependents: list[str]
4523
-
4524
4637
  dependency_graph: dict[str, Document]
4525
4638
 
4639
+ dimension_type: DimensionType
4640
+
4526
4641
  function_name: str | None = None
4527
4642
  autocomplete_function_name: str | None = None
4528
4643
  mandatory: bool | None = None
@@ -4543,9 +4658,8 @@ class CreateDimensionOutput:
4543
4658
  serializer.write_string(_SCHEMA_CREATE_DIMENSION_OUTPUT.members["last_modified_by"], self.last_modified_by)
4544
4659
  serializer.write_timestamp(_SCHEMA_CREATE_DIMENSION_OUTPUT.members["created_at"], self.created_at)
4545
4660
  serializer.write_string(_SCHEMA_CREATE_DIMENSION_OUTPUT.members["created_by"], self.created_by)
4546
- _serialize_dependencies(serializer, _SCHEMA_CREATE_DIMENSION_OUTPUT.members["dependencies"], self.dependencies)
4547
- _serialize_dependents(serializer, _SCHEMA_CREATE_DIMENSION_OUTPUT.members["dependents"], self.dependents)
4548
4661
  _serialize_object(serializer, _SCHEMA_CREATE_DIMENSION_OUTPUT.members["dependency_graph"], self.dependency_graph)
4662
+ serializer.write_struct(_SCHEMA_CREATE_DIMENSION_OUTPUT.members["dimension_type"], self.dimension_type)
4549
4663
  if self.autocomplete_function_name is not None:
4550
4664
  serializer.write_string(_SCHEMA_CREATE_DIMENSION_OUTPUT.members["autocomplete_function_name"], self.autocomplete_function_name)
4551
4665
 
@@ -4593,18 +4707,15 @@ class CreateDimensionOutput:
4593
4707
  kwargs["created_by"] = de.read_string(_SCHEMA_CREATE_DIMENSION_OUTPUT.members["created_by"])
4594
4708
 
4595
4709
  case 10:
4596
- kwargs["dependencies"] = _deserialize_dependencies(de, _SCHEMA_CREATE_DIMENSION_OUTPUT.members["dependencies"])
4710
+ kwargs["dependency_graph"] = _deserialize_object(de, _SCHEMA_CREATE_DIMENSION_OUTPUT.members["dependency_graph"])
4597
4711
 
4598
4712
  case 11:
4599
- kwargs["dependents"] = _deserialize_dependents(de, _SCHEMA_CREATE_DIMENSION_OUTPUT.members["dependents"])
4713
+ kwargs["dimension_type"] = _DimensionTypeDeserializer().deserialize(de)
4600
4714
 
4601
4715
  case 12:
4602
- kwargs["dependency_graph"] = _deserialize_object(de, _SCHEMA_CREATE_DIMENSION_OUTPUT.members["dependency_graph"])
4603
-
4604
- case 13:
4605
4716
  kwargs["autocomplete_function_name"] = de.read_string(_SCHEMA_CREATE_DIMENSION_OUTPUT.members["autocomplete_function_name"])
4606
4717
 
4607
- case 14:
4718
+ case 13:
4608
4719
  kwargs["mandatory"] = de.read_boolean(_SCHEMA_CREATE_DIMENSION_OUTPUT.members["mandatory"])
4609
4720
 
4610
4721
  case _:
@@ -7227,12 +7338,10 @@ class GetDimensionOutput:
7227
7338
 
7228
7339
  created_by: str
7229
7340
 
7230
- dependencies: list[str]
7231
-
7232
- dependents: list[str]
7233
-
7234
7341
  dependency_graph: dict[str, Document]
7235
7342
 
7343
+ dimension_type: DimensionType
7344
+
7236
7345
  function_name: str | None = None
7237
7346
  autocomplete_function_name: str | None = None
7238
7347
  mandatory: bool | None = None
@@ -7253,9 +7362,8 @@ class GetDimensionOutput:
7253
7362
  serializer.write_string(_SCHEMA_GET_DIMENSION_OUTPUT.members["last_modified_by"], self.last_modified_by)
7254
7363
  serializer.write_timestamp(_SCHEMA_GET_DIMENSION_OUTPUT.members["created_at"], self.created_at)
7255
7364
  serializer.write_string(_SCHEMA_GET_DIMENSION_OUTPUT.members["created_by"], self.created_by)
7256
- _serialize_dependencies(serializer, _SCHEMA_GET_DIMENSION_OUTPUT.members["dependencies"], self.dependencies)
7257
- _serialize_dependents(serializer, _SCHEMA_GET_DIMENSION_OUTPUT.members["dependents"], self.dependents)
7258
7365
  _serialize_object(serializer, _SCHEMA_GET_DIMENSION_OUTPUT.members["dependency_graph"], self.dependency_graph)
7366
+ serializer.write_struct(_SCHEMA_GET_DIMENSION_OUTPUT.members["dimension_type"], self.dimension_type)
7259
7367
  if self.autocomplete_function_name is not None:
7260
7368
  serializer.write_string(_SCHEMA_GET_DIMENSION_OUTPUT.members["autocomplete_function_name"], self.autocomplete_function_name)
7261
7369
 
@@ -7303,18 +7411,15 @@ class GetDimensionOutput:
7303
7411
  kwargs["created_by"] = de.read_string(_SCHEMA_GET_DIMENSION_OUTPUT.members["created_by"])
7304
7412
 
7305
7413
  case 10:
7306
- kwargs["dependencies"] = _deserialize_dependencies(de, _SCHEMA_GET_DIMENSION_OUTPUT.members["dependencies"])
7414
+ kwargs["dependency_graph"] = _deserialize_object(de, _SCHEMA_GET_DIMENSION_OUTPUT.members["dependency_graph"])
7307
7415
 
7308
7416
  case 11:
7309
- kwargs["dependents"] = _deserialize_dependents(de, _SCHEMA_GET_DIMENSION_OUTPUT.members["dependents"])
7417
+ kwargs["dimension_type"] = _DimensionTypeDeserializer().deserialize(de)
7310
7418
 
7311
7419
  case 12:
7312
- kwargs["dependency_graph"] = _deserialize_object(de, _SCHEMA_GET_DIMENSION_OUTPUT.members["dependency_graph"])
7313
-
7314
- case 13:
7315
7420
  kwargs["autocomplete_function_name"] = de.read_string(_SCHEMA_GET_DIMENSION_OUTPUT.members["autocomplete_function_name"])
7316
7421
 
7317
- case 14:
7422
+ case 13:
7318
7423
  kwargs["mandatory"] = de.read_boolean(_SCHEMA_GET_DIMENSION_OUTPUT.members["mandatory"])
7319
7424
 
7320
7425
  case _:
@@ -7412,12 +7517,10 @@ class DimensionExt:
7412
7517
 
7413
7518
  created_by: str
7414
7519
 
7415
- dependencies: list[str]
7416
-
7417
- dependents: list[str]
7418
-
7419
7520
  dependency_graph: dict[str, Document]
7420
7521
 
7522
+ dimension_type: DimensionType
7523
+
7421
7524
  function_name: str | None = None
7422
7525
  autocomplete_function_name: str | None = None
7423
7526
  mandatory: bool | None = None
@@ -7438,9 +7541,8 @@ class DimensionExt:
7438
7541
  serializer.write_string(_SCHEMA_DIMENSION_EXT.members["last_modified_by"], self.last_modified_by)
7439
7542
  serializer.write_timestamp(_SCHEMA_DIMENSION_EXT.members["created_at"], self.created_at)
7440
7543
  serializer.write_string(_SCHEMA_DIMENSION_EXT.members["created_by"], self.created_by)
7441
- _serialize_dependencies(serializer, _SCHEMA_DIMENSION_EXT.members["dependencies"], self.dependencies)
7442
- _serialize_dependents(serializer, _SCHEMA_DIMENSION_EXT.members["dependents"], self.dependents)
7443
7544
  _serialize_object(serializer, _SCHEMA_DIMENSION_EXT.members["dependency_graph"], self.dependency_graph)
7545
+ serializer.write_struct(_SCHEMA_DIMENSION_EXT.members["dimension_type"], self.dimension_type)
7444
7546
  if self.autocomplete_function_name is not None:
7445
7547
  serializer.write_string(_SCHEMA_DIMENSION_EXT.members["autocomplete_function_name"], self.autocomplete_function_name)
7446
7548
 
@@ -7488,18 +7590,15 @@ class DimensionExt:
7488
7590
  kwargs["created_by"] = de.read_string(_SCHEMA_DIMENSION_EXT.members["created_by"])
7489
7591
 
7490
7592
  case 10:
7491
- kwargs["dependencies"] = _deserialize_dependencies(de, _SCHEMA_DIMENSION_EXT.members["dependencies"])
7593
+ kwargs["dependency_graph"] = _deserialize_object(de, _SCHEMA_DIMENSION_EXT.members["dependency_graph"])
7492
7594
 
7493
7595
  case 11:
7494
- kwargs["dependents"] = _deserialize_dependents(de, _SCHEMA_DIMENSION_EXT.members["dependents"])
7596
+ kwargs["dimension_type"] = _DimensionTypeDeserializer().deserialize(de)
7495
7597
 
7496
7598
  case 12:
7497
- kwargs["dependency_graph"] = _deserialize_object(de, _SCHEMA_DIMENSION_EXT.members["dependency_graph"])
7498
-
7499
- case 13:
7500
7599
  kwargs["autocomplete_function_name"] = de.read_string(_SCHEMA_DIMENSION_EXT.members["autocomplete_function_name"])
7501
7600
 
7502
- case 14:
7601
+ case 13:
7503
7602
  kwargs["mandatory"] = de.read_boolean(_SCHEMA_DIMENSION_EXT.members["mandatory"])
7504
7603
 
7505
7604
  case _:
@@ -7594,7 +7693,6 @@ class UpdateDimensionInput:
7594
7693
  position: int | None = None
7595
7694
  function_name: str | None = None
7596
7695
  description: str | None = None
7597
- dependencies: list[str] | None = None
7598
7696
  change_reason: str | None = None
7599
7697
  autocomplete_function_name: str | None = None
7600
7698
 
@@ -7614,9 +7712,6 @@ class UpdateDimensionInput:
7614
7712
  if self.description is not None:
7615
7713
  serializer.write_string(_SCHEMA_UPDATE_DIMENSION_INPUT.members["description"], self.description)
7616
7714
 
7617
- if self.dependencies is not None:
7618
- _serialize_dependencies(serializer, _SCHEMA_UPDATE_DIMENSION_INPUT.members["dependencies"], self.dependencies)
7619
-
7620
7715
  if self.change_reason is not None:
7621
7716
  serializer.write_string(_SCHEMA_UPDATE_DIMENSION_INPUT.members["change_reason"], self.change_reason)
7622
7717
 
@@ -7655,12 +7750,9 @@ class UpdateDimensionInput:
7655
7750
  kwargs["description"] = de.read_string(_SCHEMA_UPDATE_DIMENSION_INPUT.members["description"])
7656
7751
 
7657
7752
  case 7:
7658
- kwargs["dependencies"] = _deserialize_dependencies(de, _SCHEMA_UPDATE_DIMENSION_INPUT.members["dependencies"])
7659
-
7660
- case 8:
7661
7753
  kwargs["change_reason"] = de.read_string(_SCHEMA_UPDATE_DIMENSION_INPUT.members["change_reason"])
7662
7754
 
7663
- case 9:
7755
+ case 8:
7664
7756
  kwargs["autocomplete_function_name"] = de.read_string(_SCHEMA_UPDATE_DIMENSION_INPUT.members["autocomplete_function_name"])
7665
7757
 
7666
7758
  case _:
@@ -7697,12 +7789,10 @@ class UpdateDimensionOutput:
7697
7789
 
7698
7790
  created_by: str
7699
7791
 
7700
- dependencies: list[str]
7701
-
7702
- dependents: list[str]
7703
-
7704
7792
  dependency_graph: dict[str, Document]
7705
7793
 
7794
+ dimension_type: DimensionType
7795
+
7706
7796
  function_name: str | None = None
7707
7797
  autocomplete_function_name: str | None = None
7708
7798
  mandatory: bool | None = None
@@ -7723,9 +7813,8 @@ class UpdateDimensionOutput:
7723
7813
  serializer.write_string(_SCHEMA_UPDATE_DIMENSION_OUTPUT.members["last_modified_by"], self.last_modified_by)
7724
7814
  serializer.write_timestamp(_SCHEMA_UPDATE_DIMENSION_OUTPUT.members["created_at"], self.created_at)
7725
7815
  serializer.write_string(_SCHEMA_UPDATE_DIMENSION_OUTPUT.members["created_by"], self.created_by)
7726
- _serialize_dependencies(serializer, _SCHEMA_UPDATE_DIMENSION_OUTPUT.members["dependencies"], self.dependencies)
7727
- _serialize_dependents(serializer, _SCHEMA_UPDATE_DIMENSION_OUTPUT.members["dependents"], self.dependents)
7728
7816
  _serialize_object(serializer, _SCHEMA_UPDATE_DIMENSION_OUTPUT.members["dependency_graph"], self.dependency_graph)
7817
+ serializer.write_struct(_SCHEMA_UPDATE_DIMENSION_OUTPUT.members["dimension_type"], self.dimension_type)
7729
7818
  if self.autocomplete_function_name is not None:
7730
7819
  serializer.write_string(_SCHEMA_UPDATE_DIMENSION_OUTPUT.members["autocomplete_function_name"], self.autocomplete_function_name)
7731
7820
 
@@ -7773,18 +7862,15 @@ class UpdateDimensionOutput:
7773
7862
  kwargs["created_by"] = de.read_string(_SCHEMA_UPDATE_DIMENSION_OUTPUT.members["created_by"])
7774
7863
 
7775
7864
  case 10:
7776
- kwargs["dependencies"] = _deserialize_dependencies(de, _SCHEMA_UPDATE_DIMENSION_OUTPUT.members["dependencies"])
7865
+ kwargs["dependency_graph"] = _deserialize_object(de, _SCHEMA_UPDATE_DIMENSION_OUTPUT.members["dependency_graph"])
7777
7866
 
7778
7867
  case 11:
7779
- kwargs["dependents"] = _deserialize_dependents(de, _SCHEMA_UPDATE_DIMENSION_OUTPUT.members["dependents"])
7868
+ kwargs["dimension_type"] = _DimensionTypeDeserializer().deserialize(de)
7780
7869
 
7781
7870
  case 12:
7782
- kwargs["dependency_graph"] = _deserialize_object(de, _SCHEMA_UPDATE_DIMENSION_OUTPUT.members["dependency_graph"])
7783
-
7784
- case 13:
7785
7871
  kwargs["autocomplete_function_name"] = de.read_string(_SCHEMA_UPDATE_DIMENSION_OUTPUT.members["autocomplete_function_name"])
7786
7872
 
7787
- case 14:
7873
+ case 13:
7788
7874
  kwargs["mandatory"] = de.read_boolean(_SCHEMA_UPDATE_DIMENSION_OUTPUT.members["mandatory"])
7789
7875
 
7790
7876
  case _:
@@ -0,0 +1,31 @@
1
+ Metadata-Version: 2.4
2
+ Name: superposition_sdk
3
+ Version: 0.91.0
4
+ Summary: superposition_sdk client
5
+ License: Apache-2.0
6
+ Keywords: smithy,superposition_sdk
7
+ Classifier: Development Status :: 2 - Pre-Alpha
8
+ Classifier: Intended Audience :: Developers
9
+ Classifier: Intended Audience :: System Administrators
10
+ Classifier: License :: OSI Approved :: Apache Software License
11
+ Classifier: Natural Language :: English
12
+ Classifier: Programming Language :: Python
13
+ Classifier: Programming Language :: Python :: 3
14
+ Classifier: Programming Language :: Python :: 3 :: Only
15
+ Classifier: Programming Language :: Python :: 3.12
16
+ Classifier: Programming Language :: Python :: 3.13
17
+ Requires-Python: >=3.12
18
+ Requires-Dist: smithy-core==0.0.1
19
+ Requires-Dist: smithy-http[aiohttp]==0.0.1
20
+ Requires-Dist: smithy-json==0.0.1
21
+ Provides-Extra: docs
22
+ Requires-Dist: pydata-sphinx-theme>=0.16.1; extra == 'docs'
23
+ Requires-Dist: sphinx>=8.2.3; extra == 'docs'
24
+ Provides-Extra: tests
25
+ Requires-Dist: pytest-asyncio<0.21.0,>=0.20.3; extra == 'tests'
26
+ Requires-Dist: pytest<8.0.0,>=7.2.0; extra == 'tests'
27
+ Description-Content-Type: text/markdown
28
+
29
+ ## Superposition Client
30
+
31
+ superposition_sdk client
@@ -1,12 +1,12 @@
1
1
  superposition_sdk/__init__.py,sha256=Inc_oe2U1CzZ_ZxsNVbU96RGaAlD-6M5xt1ZcW5hGUo,83
2
2
  superposition_sdk/auth.py,sha256=U9D3FmOH8TX0cjibGy_CRnAkTnFEavAek0Jw1YUhN2g,404
3
- superposition_sdk/client.py,sha256=SICMUtPJo3H_xYFXcofHZVZoRiYq_zFO7sMZP9Z5BHs,94384
3
+ superposition_sdk/client.py,sha256=kG44iiz2qtuS4I8MYDkzUxrAbzFUbyPymyPrbuZpMSc,94395
4
4
  superposition_sdk/config.py,sha256=elPULtcHP7am9Wk7VqIpzPMNlcQIdH1Do9gNeAkqdHM,11425
5
5
  superposition_sdk/deserialize.py,sha256=fVUcHo_BtWwtINcbBWGXDVo0GmSPT0pEyDwEB6Jf82Y,77499
6
- superposition_sdk/models.py,sha256=nCXDv7TbHlkpgGa2QVyrpQO4OeWG7B2Gvdyti8S6KyM,558282
6
+ superposition_sdk/models.py,sha256=yZFgjI5fQtablUD5qbGYEvR0yBN5a-4kWp-Fax3Yv9U,560644
7
7
  superposition_sdk/serialize.py,sha256=aaQOAoA-_HaFl0Zl5cC2JSPebG4oE0OH1Izj1wy3p78,73276
8
8
  superposition_sdk/_private/__init__.py,sha256=DxsJq42a0KfQv9zzLrqT0JVpoXrR-IDIYFGuJe4g1Gc,55
9
- superposition_sdk/_private/schemas.py,sha256=yYRHmaV4cGcS5Uhl5Bd9E-_F6DOqVpZAcEuXF5c8htA,304873
10
- superposition_sdk-0.90.0.dist-info/METADATA,sha256=GN3aALrIX1Tk2Rpkp31BFHNarYjXkpFD-skgm11E59M,2280
11
- superposition_sdk-0.90.0.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
12
- superposition_sdk-0.90.0.dist-info/RECORD,,
9
+ superposition_sdk/_private/schemas.py,sha256=Xtl1rkGslxdknASI1qwKd62WA6F68UqVRaPIjmeKH5c,304488
10
+ superposition_sdk-0.91.0.dist-info/METADATA,sha256=kZL_K_ZQYM1FjhCOUzQb-VoPKef5008sZG-t0W_mKgA,1143
11
+ superposition_sdk-0.91.0.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
12
+ superposition_sdk-0.91.0.dist-info/RECORD,,
@@ -1,64 +0,0 @@
1
- Metadata-Version: 2.4
2
- Name: superposition_sdk
3
- Version: 0.90.0
4
- Summary: superposition_sdk client
5
- License: Apache-2.0
6
- Keywords: smithy,superposition_sdk
7
- Classifier: Development Status :: 2 - Pre-Alpha
8
- Classifier: Intended Audience :: Developers
9
- Classifier: Intended Audience :: System Administrators
10
- Classifier: License :: OSI Approved :: Apache Software License
11
- Classifier: Natural Language :: English
12
- Classifier: Programming Language :: Python
13
- Classifier: Programming Language :: Python :: 3
14
- Classifier: Programming Language :: Python :: 3 :: Only
15
- Classifier: Programming Language :: Python :: 3.12
16
- Classifier: Programming Language :: Python :: 3.13
17
- Requires-Python: >=3.12
18
- Requires-Dist: smithy-core==0.0.1
19
- Requires-Dist: smithy-http[aiohttp]==0.0.1
20
- Requires-Dist: smithy-json==0.0.1
21
- Provides-Extra: docs
22
- Requires-Dist: pydata-sphinx-theme>=0.16.1; extra == 'docs'
23
- Requires-Dist: sphinx>=8.2.3; extra == 'docs'
24
- Provides-Extra: tests
25
- Requires-Dist: pytest-asyncio<0.21.0,>=0.20.3; extra == 'tests'
26
- Requires-Dist: pytest<8.0.0,>=7.2.0; extra == 'tests'
27
- Description-Content-Type: text/markdown
28
-
29
- ## Superposition SDK
30
-
31
- Superposition SDK is a Python client for the Superposition platform, designed to facilitate programmatic integration of all Superposition's API capabilities in Python applications. Read the complete documentation at [Superposition SDK Documentation](https://juspay.io/superposition/docs).
32
-
33
- ## Installation
34
-
35
- Install the Superposition SDK using pip:
36
-
37
- ```bash
38
- pip install superposition-sdk
39
- ```
40
-
41
- ## Initialization
42
-
43
- ```python
44
- from superposition_sdk.client import Config, Superposition
45
- client = Superposition(Config(endpoint_uri="http://localhost:8080"))
46
- ```
47
-
48
- ## Usage
49
-
50
- The SDK provides commands for every API call that Superposition supports. Below is an example of how to use the SDK to list default configs.
51
-
52
- ```python
53
- import asyncio
54
- from superposition_sdk.client import Config, ListDefaultConfigsInput, Superposition
55
- from pprint import pprint
56
-
57
- async def list_configs():
58
- client = Superposition(Config(endpoint_uri="http://localhost:8080"))
59
- list_configs = ListDefaultConfigsInput(workspace_id="upi", org_id="orgid162145664241766405", all=True)
60
- response = await client.list_default_configs(list_configs)
61
- pprint(response)
62
-
63
- asyncio.run(list_configs())
64
- ```