adcp 2.0.0__py3-none-any.whl → 2.2.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.
adcp/__init__.py CHANGED
@@ -50,8 +50,81 @@ from adcp.testing import (
50
50
  )
51
51
 
52
52
  # Import all generated types - users can import what they need from adcp.types.generated
53
- from adcp.types import generated
53
+ from adcp.types import aliases, generated
54
+
55
+ # Re-export semantic type aliases for better ergonomics
56
+ from adcp.types.aliases import (
57
+ ActivateSignalErrorResponse,
58
+ ActivateSignalSuccessResponse,
59
+ BothPreviewRender,
60
+ BuildCreativeErrorResponse,
61
+ BuildCreativeSuccessResponse,
62
+ CreateMediaBuyErrorResponse,
63
+ CreateMediaBuySuccessResponse,
64
+ HtmlPreviewRender,
65
+ InlineDaastAsset,
66
+ InlineVastAsset,
67
+ MediaSubAsset,
68
+ PreviewCreativeFormatRequest,
69
+ PreviewCreativeInteractiveResponse,
70
+ PreviewCreativeManifestRequest,
71
+ PreviewCreativeStaticResponse,
72
+ PropertyIdActivationKey,
73
+ PropertyTagActivationKey,
74
+ ProvidePerformanceFeedbackErrorResponse,
75
+ ProvidePerformanceFeedbackSuccessResponse,
76
+ SyncCreativesErrorResponse,
77
+ SyncCreativesSuccessResponse,
78
+ TextSubAsset,
79
+ UpdateMediaBuyErrorResponse,
80
+ UpdateMediaBuyPackagesRequest,
81
+ UpdateMediaBuyPropertiesRequest,
82
+ UpdateMediaBuySuccessResponse,
83
+ UrlDaastAsset,
84
+ UrlPreviewRender,
85
+ UrlVastAsset,
86
+ )
54
87
  from adcp.types.core import AgentConfig, Protocol, TaskResult, TaskStatus, WebhookMetadata
88
+
89
+ # Re-export commonly-used request/response types for convenience
90
+ # Users should import from main package (e.g., `from adcp import GetProductsRequest`)
91
+ # rather than internal modules for better API stability
92
+ from adcp.types.generated import (
93
+ # Audience & Targeting
94
+ ActivateSignalRequest,
95
+ ActivateSignalResponse,
96
+ # Creative Operations
97
+ BuildCreativeRequest,
98
+ BuildCreativeResponse,
99
+ # Media Buy Operations
100
+ CreateMediaBuyRequest,
101
+ CreateMediaBuyResponse,
102
+ # Common data types
103
+ Error,
104
+ Format,
105
+ GetMediaBuyDeliveryRequest,
106
+ GetMediaBuyDeliveryResponse,
107
+ GetProductsRequest,
108
+ GetProductsResponse,
109
+ GetSignalsRequest,
110
+ GetSignalsResponse,
111
+ ListAuthorizedPropertiesRequest,
112
+ ListAuthorizedPropertiesResponse,
113
+ ListCreativeFormatsRequest,
114
+ ListCreativeFormatsResponse,
115
+ ListCreativesRequest,
116
+ ListCreativesResponse,
117
+ PreviewCreativeRequest,
118
+ PreviewCreativeResponse,
119
+ Product,
120
+ Property,
121
+ ProvidePerformanceFeedbackRequest,
122
+ ProvidePerformanceFeedbackResponse,
123
+ SyncCreativesRequest,
124
+ SyncCreativesResponse,
125
+ UpdateMediaBuyRequest,
126
+ UpdateMediaBuyResponse,
127
+ )
55
128
  from adcp.types.generated import TaskStatus as GeneratedTaskStatus
56
129
  from adcp.validation import (
57
130
  ValidationError,
@@ -61,7 +134,7 @@ from adcp.validation import (
61
134
  validate_publisher_properties_item,
62
135
  )
63
136
 
64
- __version__ = "2.0.0"
137
+ __version__ = "2.2.0"
65
138
 
66
139
  __all__ = [
67
140
  # Client classes
@@ -73,6 +146,37 @@ __all__ = [
73
146
  "TaskResult",
74
147
  "TaskStatus",
75
148
  "WebhookMetadata",
149
+ # Common request/response types (re-exported for convenience)
150
+ "CreateMediaBuyRequest",
151
+ "CreateMediaBuyResponse",
152
+ "GetMediaBuyDeliveryRequest",
153
+ "GetMediaBuyDeliveryResponse",
154
+ "GetProductsRequest",
155
+ "GetProductsResponse",
156
+ "UpdateMediaBuyRequest",
157
+ "UpdateMediaBuyResponse",
158
+ "BuildCreativeRequest",
159
+ "BuildCreativeResponse",
160
+ "ListCreativeFormatsRequest",
161
+ "ListCreativeFormatsResponse",
162
+ "ListCreativesRequest",
163
+ "ListCreativesResponse",
164
+ "PreviewCreativeRequest",
165
+ "PreviewCreativeResponse",
166
+ "SyncCreativesRequest",
167
+ "SyncCreativesResponse",
168
+ "ActivateSignalRequest",
169
+ "ActivateSignalResponse",
170
+ "GetSignalsRequest",
171
+ "GetSignalsResponse",
172
+ "ListAuthorizedPropertiesRequest",
173
+ "ListAuthorizedPropertiesResponse",
174
+ "ProvidePerformanceFeedbackRequest",
175
+ "ProvidePerformanceFeedbackResponse",
176
+ "Error",
177
+ "Format",
178
+ "Product",
179
+ "Property",
76
180
  # Adagents validation
77
181
  "fetch_adagents",
78
182
  "verify_agent_authorization",
@@ -114,7 +218,38 @@ __all__ = [
114
218
  "validate_agent_authorization",
115
219
  "validate_product",
116
220
  "validate_publisher_properties_item",
117
- # Generated types module
221
+ # Generated types modules
118
222
  "generated",
223
+ "aliases",
119
224
  "GeneratedTaskStatus",
225
+ # Semantic type aliases (for better API ergonomics)
226
+ "ActivateSignalSuccessResponse",
227
+ "ActivateSignalErrorResponse",
228
+ "BothPreviewRender",
229
+ "BuildCreativeSuccessResponse",
230
+ "BuildCreativeErrorResponse",
231
+ "CreateMediaBuySuccessResponse",
232
+ "CreateMediaBuyErrorResponse",
233
+ "HtmlPreviewRender",
234
+ "InlineDaastAsset",
235
+ "InlineVastAsset",
236
+ "MediaSubAsset",
237
+ "PreviewCreativeFormatRequest",
238
+ "PreviewCreativeManifestRequest",
239
+ "PreviewCreativeStaticResponse",
240
+ "PreviewCreativeInteractiveResponse",
241
+ "PropertyIdActivationKey",
242
+ "PropertyTagActivationKey",
243
+ "ProvidePerformanceFeedbackSuccessResponse",
244
+ "ProvidePerformanceFeedbackErrorResponse",
245
+ "SyncCreativesSuccessResponse",
246
+ "SyncCreativesErrorResponse",
247
+ "TextSubAsset",
248
+ "UpdateMediaBuySuccessResponse",
249
+ "UpdateMediaBuyErrorResponse",
250
+ "UpdateMediaBuyPackagesRequest",
251
+ "UpdateMediaBuyPropertiesRequest",
252
+ "UrlDaastAsset",
253
+ "UrlPreviewRender",
254
+ "UrlVastAsset",
120
255
  ]
adcp/py.typed ADDED
File without changes
adcp/types/__init__.py CHANGED
@@ -2,6 +2,17 @@ from __future__ import annotations
2
2
 
3
3
  """Type definitions for AdCP client."""
4
4
 
5
+ from adcp.types.aliases import (
6
+ BothPreviewRender,
7
+ HtmlPreviewRender,
8
+ InlineDaastAsset,
9
+ InlineVastAsset,
10
+ MediaSubAsset,
11
+ TextSubAsset,
12
+ UrlDaastAsset,
13
+ UrlPreviewRender,
14
+ UrlVastAsset,
15
+ )
5
16
  from adcp.types.base import AdCPBaseModel
6
17
  from adcp.types.core import (
7
18
  Activity,
@@ -24,4 +35,14 @@ __all__ = [
24
35
  "Activity",
25
36
  "ActivityType",
26
37
  "DebugInfo",
38
+ # Semantic aliases for discriminated unions
39
+ "BothPreviewRender",
40
+ "HtmlPreviewRender",
41
+ "InlineDaastAsset",
42
+ "InlineVastAsset",
43
+ "MediaSubAsset",
44
+ "TextSubAsset",
45
+ "UrlDaastAsset",
46
+ "UrlPreviewRender",
47
+ "UrlVastAsset",
27
48
  ]
adcp/types/aliases.py ADDED
@@ -0,0 +1,249 @@
1
+ """Semantic type aliases for generated AdCP types.
2
+
3
+ This module provides user-friendly aliases for generated types where the
4
+ auto-generated names don't match user expectations from reading the spec.
5
+
6
+ The code generator (datamodel-code-generator) creates numbered suffixes for
7
+ discriminated union variants (e.g., Response1, Response2), but users expect
8
+ semantic names (e.g., SuccessResponse, ErrorResponse).
9
+
10
+ Categories of aliases:
11
+
12
+ 1. Discriminated Union Response Variants
13
+ - Success/Error cases for API responses
14
+ - Named to match the semantic meaning from the spec
15
+
16
+ 2. Preview/Render Types
17
+ - Input/Output/Request/Response variants
18
+ - Numbered types mapped to their semantic purpose
19
+
20
+ 3. Activation Keys
21
+ - Signal activation key variants
22
+
23
+ DO NOT EDIT the generated types directly - they are regenerated from schemas.
24
+ Add aliases here for any types where the generated name is unclear.
25
+
26
+ Validation:
27
+ This module will raise ImportError at import time if any of the referenced
28
+ generated types do not exist. This ensures that schema changes are caught
29
+ immediately rather than at runtime when users try to use the aliases.
30
+ """
31
+
32
+ from __future__ import annotations
33
+
34
+ # Import all generated types that need semantic aliases
35
+ from adcp.types.generated import (
36
+ # Activation responses
37
+ ActivateSignalResponse1,
38
+ ActivateSignalResponse2,
39
+ # Activation keys
40
+ ActivationKey1,
41
+ ActivationKey2,
42
+ # Build creative responses
43
+ BuildCreativeResponse1,
44
+ BuildCreativeResponse2,
45
+ # Create media buy responses
46
+ CreateMediaBuyResponse1,
47
+ CreateMediaBuyResponse2,
48
+ # DAAST assets
49
+ DaastAsset1,
50
+ DaastAsset2,
51
+ # Preview creative requests
52
+ PreviewCreativeRequest1,
53
+ PreviewCreativeRequest2,
54
+ # Preview creative responses
55
+ PreviewCreativeResponse1,
56
+ PreviewCreativeResponse2,
57
+ # Preview renders
58
+ PreviewRender1,
59
+ PreviewRender2,
60
+ PreviewRender3,
61
+ # Performance feedback responses
62
+ ProvidePerformanceFeedbackResponse1,
63
+ ProvidePerformanceFeedbackResponse2,
64
+ # SubAssets
65
+ SubAsset1,
66
+ SubAsset2,
67
+ # Sync creatives responses
68
+ SyncCreativesResponse1,
69
+ SyncCreativesResponse2,
70
+ # Update media buy requests
71
+ UpdateMediaBuyRequest1,
72
+ UpdateMediaBuyRequest2,
73
+ # Update media buy responses
74
+ UpdateMediaBuyResponse1,
75
+ UpdateMediaBuyResponse2,
76
+ # VAST assets
77
+ VastAsset1,
78
+ VastAsset2,
79
+ )
80
+
81
+ # ============================================================================
82
+ # RESPONSE TYPE ALIASES - Success/Error Discriminated Unions
83
+ # ============================================================================
84
+ # These are atomic operations where the response is EITHER success OR error,
85
+ # never both. The numbered suffixes from the generator don't convey this
86
+ # critical semantic distinction.
87
+
88
+ # Activate Signal Response Variants
89
+ ActivateSignalSuccessResponse = ActivateSignalResponse1
90
+ """Success response - signal activation succeeded."""
91
+
92
+ ActivateSignalErrorResponse = ActivateSignalResponse2
93
+ """Error response - signal activation failed."""
94
+
95
+ # Build Creative Response Variants
96
+ BuildCreativeSuccessResponse = BuildCreativeResponse1
97
+ """Success response - creative built successfully, manifest returned."""
98
+
99
+ BuildCreativeErrorResponse = BuildCreativeResponse2
100
+ """Error response - creative build failed, no manifest created."""
101
+
102
+ # Create Media Buy Response Variants
103
+ CreateMediaBuySuccessResponse = CreateMediaBuyResponse1
104
+ """Success response - media buy created successfully with media_buy_id."""
105
+
106
+ CreateMediaBuyErrorResponse = CreateMediaBuyResponse2
107
+ """Error response - media buy creation failed, no media buy created."""
108
+
109
+ # Performance Feedback Response Variants
110
+ ProvidePerformanceFeedbackSuccessResponse = ProvidePerformanceFeedbackResponse1
111
+ """Success response - performance feedback accepted."""
112
+
113
+ ProvidePerformanceFeedbackErrorResponse = ProvidePerformanceFeedbackResponse2
114
+ """Error response - performance feedback rejected."""
115
+
116
+ # Sync Creatives Response Variants
117
+ SyncCreativesSuccessResponse = SyncCreativesResponse1
118
+ """Success response - sync operation processed creatives."""
119
+
120
+ SyncCreativesErrorResponse = SyncCreativesResponse2
121
+ """Error response - sync operation failed."""
122
+
123
+ # Update Media Buy Response Variants
124
+ UpdateMediaBuySuccessResponse = UpdateMediaBuyResponse1
125
+ """Success response - media buy updated successfully."""
126
+
127
+ UpdateMediaBuyErrorResponse = UpdateMediaBuyResponse2
128
+ """Error response - media buy update failed, no changes applied."""
129
+
130
+ # ============================================================================
131
+ # REQUEST TYPE ALIASES - Operation Variants
132
+ # ============================================================================
133
+
134
+ # Preview Creative Request Variants
135
+ PreviewCreativeFormatRequest = PreviewCreativeRequest1
136
+ """Preview request using format_id to identify creative format."""
137
+
138
+ PreviewCreativeManifestRequest = PreviewCreativeRequest2
139
+ """Preview request using creative_manifest_url to identify creative."""
140
+
141
+ # Update Media Buy Request Variants
142
+ UpdateMediaBuyPackagesRequest = UpdateMediaBuyRequest1
143
+ """Update request modifying packages in the media buy."""
144
+
145
+ UpdateMediaBuyPropertiesRequest = UpdateMediaBuyRequest2
146
+ """Update request modifying media buy properties (not packages)."""
147
+
148
+ # ============================================================================
149
+ # ACTIVATION KEY ALIASES
150
+ # ============================================================================
151
+
152
+ PropertyIdActivationKey = ActivationKey1
153
+ """Activation key using property_id for identification."""
154
+
155
+ PropertyTagActivationKey = ActivationKey2
156
+ """Activation key using property_tags for identification."""
157
+
158
+ # ============================================================================
159
+ # PREVIEW/RENDER TYPE ALIASES
160
+ # ============================================================================
161
+
162
+ # Preview Creative Response Variants
163
+ PreviewCreativeStaticResponse = PreviewCreativeResponse1
164
+ """Preview response with static renders (image/HTML snapshots)."""
165
+
166
+ PreviewCreativeInteractiveResponse = PreviewCreativeResponse2
167
+ """Preview response with interactive renders (iframe embedding)."""
168
+
169
+ # Preview Render Variants (discriminated by output_format)
170
+ UrlPreviewRender = PreviewRender1
171
+ """Preview render with output_format='url' - provides preview_url for iframe embedding."""
172
+
173
+ HtmlPreviewRender = PreviewRender2
174
+ """Preview render with output_format='html' - provides preview_html for direct embedding."""
175
+
176
+ BothPreviewRender = PreviewRender3
177
+ """Preview render with output_format='both' - provides both preview_url and preview_html."""
178
+
179
+ # ============================================================================
180
+ # ASSET TYPE ALIASES - Delivery & Kind Discriminated Unions
181
+ # ============================================================================
182
+
183
+ # VAST Asset Variants (discriminated by delivery_type)
184
+ UrlVastAsset = VastAsset1
185
+ """VAST asset delivered via URL endpoint - delivery_type='url'."""
186
+
187
+ InlineVastAsset = VastAsset2
188
+ """VAST asset with inline XML content - delivery_type='inline'."""
189
+
190
+ # DAAST Asset Variants (discriminated by delivery_type)
191
+ UrlDaastAsset = DaastAsset1
192
+ """DAAST asset delivered via URL endpoint - delivery_type='url'."""
193
+
194
+ InlineDaastAsset = DaastAsset2
195
+ """DAAST asset with inline XML content - delivery_type='inline'."""
196
+
197
+ # SubAsset Variants (discriminated by asset_kind)
198
+ MediaSubAsset = SubAsset1
199
+ """SubAsset for media content (images, videos) - asset_kind='media', provides content_uri."""
200
+
201
+ TextSubAsset = SubAsset2
202
+ """SubAsset for text content (headlines, body text) - asset_kind='text', provides content."""
203
+
204
+ # ============================================================================
205
+ # EXPORTS
206
+ # ============================================================================
207
+
208
+ __all__ = [
209
+ # Activation responses
210
+ "ActivateSignalSuccessResponse",
211
+ "ActivateSignalErrorResponse",
212
+ # Activation keys
213
+ "PropertyIdActivationKey",
214
+ "PropertyTagActivationKey",
215
+ # Asset type aliases
216
+ "BothPreviewRender",
217
+ "HtmlPreviewRender",
218
+ "InlineDaastAsset",
219
+ "InlineVastAsset",
220
+ "MediaSubAsset",
221
+ "TextSubAsset",
222
+ "UrlDaastAsset",
223
+ "UrlPreviewRender",
224
+ "UrlVastAsset",
225
+ # Build creative responses
226
+ "BuildCreativeSuccessResponse",
227
+ "BuildCreativeErrorResponse",
228
+ # Create media buy responses
229
+ "CreateMediaBuySuccessResponse",
230
+ "CreateMediaBuyErrorResponse",
231
+ # Performance feedback responses
232
+ "ProvidePerformanceFeedbackSuccessResponse",
233
+ "ProvidePerformanceFeedbackErrorResponse",
234
+ # Preview creative requests
235
+ "PreviewCreativeFormatRequest",
236
+ "PreviewCreativeManifestRequest",
237
+ # Preview creative responses
238
+ "PreviewCreativeStaticResponse",
239
+ "PreviewCreativeInteractiveResponse",
240
+ # Sync creatives responses
241
+ "SyncCreativesSuccessResponse",
242
+ "SyncCreativesErrorResponse",
243
+ # Update media buy requests
244
+ "UpdateMediaBuyPackagesRequest",
245
+ "UpdateMediaBuyPropertiesRequest",
246
+ # Update media buy responses
247
+ "UpdateMediaBuySuccessResponse",
248
+ "UpdateMediaBuyErrorResponse",
249
+ ]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: adcp
3
- Version: 2.0.0
3
+ Version: 2.2.0
4
4
  Summary: Official Python client for the Ad Context Protocol (AdCP)
5
5
  Author-email: AdCP Community <maintainers@adcontextprotocol.org>
6
6
  License: Apache-2.0
@@ -94,7 +94,7 @@ print(products.products[0].name)
94
94
  **Standard API** (`client.*`) - Recommended for production:
95
95
  ```python
96
96
  from adcp.testing import test_agent
97
- from adcp.types.generated import GetProductsRequest
97
+ from adcp import GetProductsRequest
98
98
 
99
99
  # Explicit request objects and TaskResult wrapper
100
100
  request = GetProductsRequest(brief='Coffee brands')
@@ -124,6 +124,8 @@ Pre-configured agents (all include `.simple` accessor):
124
124
 
125
125
  See [examples/simple_api_demo.py](examples/simple_api_demo.py) for a complete comparison.
126
126
 
127
+ > **Tip**: Import types from the main `adcp` package (e.g., `from adcp import GetProductsRequest`) rather than `adcp.types.generated` for better API stability.
128
+
127
129
  ## Quick Start: Distributed Operations
128
130
 
129
131
  For production use, configure your own agents:
@@ -187,7 +189,7 @@ from adcp.testing import (
187
189
  test_agent_no_auth, test_agent_a2a_no_auth,
188
190
  creative_agent, test_agent_client, create_test_agent
189
191
  )
190
- from adcp.types.generated import GetProductsRequest, PreviewCreativeRequest
192
+ from adcp import GetProductsRequest, PreviewCreativeRequest
191
193
 
192
194
  # 1. Single agent with authentication (MCP)
193
195
  result = await test_agent.get_products(
@@ -243,6 +245,7 @@ client = ADCPClient(config)
243
245
  - **Auto-detection**: Automatically detect which protocol an agent uses
244
246
 
245
247
  ### Type Safety
248
+
246
249
  Full type hints with Pydantic validation and auto-generated types from the AdCP spec:
247
250
 
248
251
  ```python
@@ -258,6 +261,40 @@ if result.success:
258
261
  print(product.name, product.pricing_options) # Full IDE autocomplete!
259
262
  ```
260
263
 
264
+ #### Semantic Type Aliases
265
+
266
+ For discriminated union types (success/error responses), use semantic aliases for clearer code:
267
+
268
+ ```python
269
+ from adcp import (
270
+ CreateMediaBuySuccessResponse, # Clear: this is the success case
271
+ CreateMediaBuyErrorResponse, # Clear: this is the error case
272
+ )
273
+
274
+ def handle_response(
275
+ response: CreateMediaBuySuccessResponse | CreateMediaBuyErrorResponse
276
+ ) -> None:
277
+ if isinstance(response, CreateMediaBuySuccessResponse):
278
+ print(f"✅ Media buy created: {response.media_buy_id}")
279
+ else:
280
+ print(f"❌ Errors: {response.errors}")
281
+ ```
282
+
283
+ **Available semantic aliases:**
284
+ - Response types: `*SuccessResponse` / `*ErrorResponse` (e.g., `CreateMediaBuySuccessResponse`)
285
+ - Request variants: `*FormatRequest` / `*ManifestRequest` (e.g., `PreviewCreativeFormatRequest`)
286
+ - Preview renders: `PreviewRenderImage` / `PreviewRenderHtml` / `PreviewRenderIframe`
287
+ - Activation keys: `PropertyIdActivationKey` / `PropertyTagActivationKey`
288
+
289
+ See `examples/type_aliases_demo.py` for more examples.
290
+
291
+ **Import guidelines:**
292
+ - ✅ **DO**: Import from main package: `from adcp import GetProductsRequest`
293
+ - ✅ **DO**: Use semantic aliases: `from adcp import CreateMediaBuySuccessResponse`
294
+ - ⚠️ **AVOID**: Import from internal modules: `from adcp.types.generated import CreateMediaBuyResponse1`
295
+
296
+ The main package exports provide a stable API while internal generated types may change.
297
+
261
298
  ### Multi-Agent Operations
262
299
  Execute across multiple agents simultaneously:
263
300
 
@@ -1,9 +1,10 @@
1
- adcp/__init__.py,sha256=Nq8t8rsMy1_ZYCrLY1vyPAVpuHiyL0UdAfXwKHBTd2w,3000
1
+ adcp/__init__.py,sha256=mDoTsi0Y6GDfXN5NDZeWw1KcN-pCK8hQlIk43t_MFZQ,7106
2
2
  adcp/__main__.py,sha256=Avy_C71rruh2lOuojvuXDj09tkFOaek74nJ-dbx25Sw,12838
3
3
  adcp/adagents.py,sha256=NjtK_3FmvikG4vlCGPxQwFYl-iOML09uIdtqT2lAWEA,17669
4
4
  adcp/client.py,sha256=KFsNaHNYuapMLpjfqMbycDkEc147gEpxpwXzVuZ1y2o,28802
5
5
  adcp/config.py,sha256=Vsy7ZPOI8G3fB_i5Nk-CHbC7wdasCUWuKlos0fwA0kY,2017
6
6
  adcp/exceptions.py,sha256=1aZEWpaM92OxD2jl9yKsqJp5ReSWaj0S0DFhxChhLlA,6732
7
+ adcp/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
7
8
  adcp/simple.py,sha256=FgPYWT32BNXkQz07r2x2gXgOmOikWLi88SzN5UIVSiU,10440
8
9
  adcp/validation.py,sha256=NsTwTQbLmd1Z1bMcztR1llJB21ai1xuw5aVrca7LoE8,6793
9
10
  adcp/protocols/__init__.py,sha256=6UFwACQ0QadBUzy17wUROHqsJDp8ztPW2jzyl53Zh_g,262
@@ -12,7 +13,8 @@ adcp/protocols/base.py,sha256=vBHD23Fzl_CCk_Gy9nvSbBYopcJlYkYyzoz-rhI8wHg,5214
12
13
  adcp/protocols/mcp.py,sha256=d9uSpGd0BKvQ0JxztkfDvHwoDrDYhuiw5oivpYOAbmM,16647
13
14
  adcp/testing/__init__.py,sha256=ZWp_floWjVZfy8RBG5v_FUXQ8YbN7xjXvVcX-_zl_HU,1416
14
15
  adcp/testing/test_helpers.py,sha256=4n8fZYy1cVpjZpFW2SxBzpC8fmY-MBFrzY4tIPqe4rQ,10028
15
- adcp/types/__init__.py,sha256=FXm4210pkzOIQQEgpe-EeLLd7mxofzEgKLGl1r8fj4o,465
16
+ adcp/types/__init__.py,sha256=sPYsBc__XT4aa3JZGOVs-b9H9jWncQKHIV5LZnkczds,936
17
+ adcp/types/aliases.py,sha256=bekwR6ZGqduVhIWjaICOzh8K6Jk_gq5dGIIi8AKv9Mk,9012
16
18
  adcp/types/base.py,sha256=QoEuVfI4yzefup0dc2KN11AcJTbcGxRep7xOw5hXfs8,837
17
19
  adcp/types/core.py,sha256=RXkKCWCXS9BVJTNpe3Opm5O1I_LaQPMUuVwa-ipvS1Q,4839
18
20
  adcp/types/generated.py,sha256=EGwfnyTr5bgLGRS0TAdsoipX__BPMEwPfxto8quPbYw,17218
@@ -122,9 +124,9 @@ adcp/utils/__init__.py,sha256=uetvSJB19CjQbtwEYZiTnumJG11GsafQmXm5eR3hL7E,153
122
124
  adcp/utils/operation_id.py,sha256=wQX9Bb5epXzRq23xoeYPTqzu5yLuhshg7lKJZihcM2k,294
123
125
  adcp/utils/preview_cache.py,sha256=HbYgHMLIvDddFD6HSupGUze9YLsNOBPlbwlyogUOMcs,18498
124
126
  adcp/utils/response_parser.py,sha256=uPk2vIH-RYZmq7y3i8lC4HTMQ3FfKdlgXKTjgJ1955M,6253
125
- adcp-2.0.0.dist-info/licenses/LICENSE,sha256=PF39NR3Ae8PLgBhg3Uxw6ju7iGVIf8hfv9LRWQdii_U,629
126
- adcp-2.0.0.dist-info/METADATA,sha256=fi0wIyLnQ8mtKdYB9G6n4ABuOfsnCyx2_D2kbdj5_o8,21469
127
- adcp-2.0.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
128
- adcp-2.0.0.dist-info/entry_points.txt,sha256=DQKpcGsJX8DtVI_SGApQ7tNvqUB4zkTLaTAEpFgmi3U,44
129
- adcp-2.0.0.dist-info/top_level.txt,sha256=T1_NF0GefncFU9v_k56oDwKSJREyCqIM8lAwNZf0EOs,5
130
- adcp-2.0.0.dist-info/RECORD,,
127
+ adcp-2.2.0.dist-info/licenses/LICENSE,sha256=PF39NR3Ae8PLgBhg3Uxw6ju7iGVIf8hfv9LRWQdii_U,629
128
+ adcp-2.2.0.dist-info/METADATA,sha256=Soj0JCMNkPiQX-djRIxHWr4BMIEfiXcvHatHRWKEGus,23017
129
+ adcp-2.2.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
130
+ adcp-2.2.0.dist-info/entry_points.txt,sha256=DQKpcGsJX8DtVI_SGApQ7tNvqUB4zkTLaTAEpFgmi3U,44
131
+ adcp-2.2.0.dist-info/top_level.txt,sha256=T1_NF0GefncFU9v_k56oDwKSJREyCqIM8lAwNZf0EOs,5
132
+ adcp-2.2.0.dist-info/RECORD,,
File without changes