Skip to content

Commit 2e8432d

Browse files
chore(domain): handle deprecated_optional fields (scaleway#1683)
1 parent 8e0d7e5 commit 2e8432d

6 files changed

Lines changed: 72 additions & 78 deletions

File tree

scaleway-async/scaleway_async/domain/v2beta1/api.py

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -189,12 +189,12 @@ async def list_dns_zones(
189189
self,
190190
*,
191191
domain: str,
192-
dns_zone: str,
193192
organization_id: Optional[str] = None,
194193
project_id: Optional[str] = None,
195194
order_by: Optional[ListDNSZonesRequestOrderBy] = None,
196195
page: Optional[int] = None,
197196
page_size: Optional[int] = None,
197+
dns_zone: Optional[str] = None,
198198
dns_zones: Optional[list[str]] = None,
199199
created_after: Optional[datetime] = None,
200200
created_before: Optional[datetime] = None,
@@ -205,12 +205,12 @@ async def list_dns_zones(
205205
List DNS zones.
206206
Retrieve the list of DNS zones you can manage and filter DNS zones associated with specific domain names.
207207
:param domain: Domain on which to filter the returned DNS zones.
208-
:param dns_zone: DNS zone on which to filter the returned DNS zones.
209208
:param organization_id: Organization ID on which to filter the returned DNS zones.
210209
:param project_id: Project ID on which to filter the returned DNS zones.
211210
:param order_by: Sort order of the returned DNS zones.
212211
:param page: Page number to return, from the paginated results.
213212
:param page_size: Maximum number of DNS zones to return per page.
213+
:param dns_zone: DNS zone on which to filter the returned DNS zones.
214214
:param dns_zones: DNS zones on which to filter the returned DNS zones.
215215
:param created_after: Only list DNS zones created after this date.
216216
:param created_before: Only list DNS zones created before this date.
@@ -223,7 +223,6 @@ async def list_dns_zones(
223223
224224
result = await api.list_dns_zones(
225225
domain="example",
226-
dns_zone="example",
227226
)
228227
"""
229228

@@ -254,12 +253,12 @@ async def list_dns_zones_all(
254253
self,
255254
*,
256255
domain: str,
257-
dns_zone: str,
258256
organization_id: Optional[str] = None,
259257
project_id: Optional[str] = None,
260258
order_by: Optional[ListDNSZonesRequestOrderBy] = None,
261259
page: Optional[int] = None,
262260
page_size: Optional[int] = None,
261+
dns_zone: Optional[str] = None,
263262
dns_zones: Optional[list[str]] = None,
264263
created_after: Optional[datetime] = None,
265264
created_before: Optional[datetime] = None,
@@ -270,12 +269,12 @@ async def list_dns_zones_all(
270269
List DNS zones.
271270
Retrieve the list of DNS zones you can manage and filter DNS zones associated with specific domain names.
272271
:param domain: Domain on which to filter the returned DNS zones.
273-
:param dns_zone: DNS zone on which to filter the returned DNS zones.
274272
:param organization_id: Organization ID on which to filter the returned DNS zones.
275273
:param project_id: Project ID on which to filter the returned DNS zones.
276274
:param order_by: Sort order of the returned DNS zones.
277275
:param page: Page number to return, from the paginated results.
278276
:param page_size: Maximum number of DNS zones to return per page.
277+
:param dns_zone: DNS zone on which to filter the returned DNS zones.
279278
:param dns_zones: DNS zones on which to filter the returned DNS zones.
280279
:param created_after: Only list DNS zones created after this date.
281280
:param created_before: Only list DNS zones created before this date.
@@ -288,7 +287,6 @@ async def list_dns_zones_all(
288287
289288
result = await api.list_dns_zones_all(
290289
domain="example",
291-
dns_zone="example",
292290
)
293291
"""
294292

@@ -298,12 +296,12 @@ async def list_dns_zones_all(
298296
fetcher=self.list_dns_zones,
299297
args={
300298
"domain": domain,
301-
"dns_zone": dns_zone,
302299
"organization_id": organization_id,
303300
"project_id": project_id,
304301
"order_by": order_by,
305302
"page": page,
306303
"page_size": page_size,
304+
"dns_zone": dns_zone,
307305
"dns_zones": dns_zones,
308306
"created_after": created_after,
309307
"created_before": created_before,
@@ -776,7 +774,7 @@ async def import_raw_dns_zone(
776774
self,
777775
*,
778776
dns_zone: str,
779-
content: str,
777+
content: Optional[str] = None,
780778
project_id: Optional[str] = None,
781779
format: Optional[RawFormat] = None,
782780
bind_source: Optional[ImportRawDNSZoneRequestBindSource] = None,
@@ -800,7 +798,6 @@ async def import_raw_dns_zone(
800798
801799
result = await api.import_raw_dns_zone(
802800
dns_zone="example",
803-
content="example",
804801
)
805802
"""
806803

scaleway-async/scaleway_async/domain/v2beta1/marshalling.py

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -535,14 +535,6 @@ def unmarshal_Contact(data: Any) -> Contact:
535535
else:
536536
args["status"] = ContactStatus.STATUS_UNKNOWN
537537

538-
field = data.get("questions", None)
539-
if field is not None:
540-
args["questions"] = (
541-
[unmarshal_ContactQuestion(v) for v in field] if field is not None else None
542-
)
543-
else:
544-
args["questions"] = []
545-
546538
field = data.get("extension_nl", None)
547539
if field is not None:
548540
args["extension_nl"] = unmarshal_ContactExtensionNL(field)
@@ -555,6 +547,14 @@ def unmarshal_Contact(data: Any) -> Contact:
555547
else:
556548
args["extension_it"] = None
557549

550+
field = data.get("questions", None)
551+
if field is not None:
552+
args["questions"] = (
553+
[unmarshal_ContactQuestion(v) for v in field] if field is not None else None
554+
)
555+
else:
556+
args["questions"] = None
557+
558558
return Contact(**args)
559559

560560

scaleway-async/scaleway_async/domain/v2beta1/types.py

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -518,16 +518,6 @@ class ContactExtensionFR:
518518

519519
@dataclass
520520
class ContactExtensionIT:
521-
european_citizenship: str
522-
"""
523-
This option is useless anymore.
524-
"""
525-
526-
tax_code: str
527-
"""
528-
Tax_code is renamed to pin.
529-
"""
530-
531521
pin: str
532522
"""
533523
Domain name registrant's Taxcode (mandatory / only optional when the trustee is used)
@@ -538,6 +528,16 @@ class ContactExtensionIT:
538528
* In all other cases it must be equal to VAT number (in the 16 characters format if nationality is IT) or the numeric Codice Fiscale.
539529
"""
540530

531+
european_citizenship: Optional[str] = None
532+
"""
533+
This option is useless anymore.
534+
"""
535+
536+
tax_code: Optional[str] = None
537+
"""
538+
Tax_code is renamed to pin.
539+
"""
540+
541541

542542
@dataclass
543543
class ContactExtensionNL:
@@ -623,11 +623,11 @@ class Contact:
623623
email_status: ContactEmailStatus
624624
state: str
625625
status: ContactStatus
626-
questions: list[ContactQuestion]
627626
extension_fr: Optional[ContactExtensionFR] = None
628627
extension_eu: Optional[ContactExtensionEU] = None
629628
extension_nl: Optional[ContactExtensionNL] = None
630629
extension_it: Optional[ContactExtensionIT] = None
630+
questions: Optional[list[ContactQuestion]] = field(default_factory=list)
631631

632632

633633
@dataclass
@@ -674,7 +674,6 @@ class NewContact:
674674
lang: StdLanguageCode
675675
resale: bool
676676
whois_opt_in: bool
677-
questions: list[ContactQuestion]
678677
company_name: Optional[str] = None
679678
email_alt: Optional[str] = None
680679
fax_number: Optional[str] = None
@@ -686,6 +685,7 @@ class NewContact:
686685
state: Optional[str] = None
687686
extension_nl: Optional[ContactExtensionNL] = None
688687
extension_it: Optional[ContactExtensionIT] = None
688+
questions: Optional[list[ContactQuestion]] = field(default_factory=list)
689689

690690

691691
@dataclass
@@ -1187,9 +1187,9 @@ class ImportRawDNSZoneRequest:
11871187
DNS zone to import.
11881188
"""
11891189

1190-
content: str
1190+
content: Optional[str] = None
11911191
project_id: Optional[str] = None
1192-
format: Optional[RawFormat] = RawFormat.UNKNOWN_RAW_FORMAT
1192+
format: Optional[RawFormat] = None
11931193
bind_source: Optional[ImportRawDNSZoneRequestBindSource] = None
11941194

11951195
axfr_source: Optional[ImportRawDNSZoneRequestAXFRSource] = None
@@ -1340,11 +1340,6 @@ class ListDNSZonesRequest:
13401340
Domain on which to filter the returned DNS zones.
13411341
"""
13421342

1343-
dns_zone: str
1344-
"""
1345-
DNS zone on which to filter the returned DNS zones.
1346-
"""
1347-
13481343
organization_id: Optional[str] = None
13491344
"""
13501345
Organization ID on which to filter the returned DNS zones.
@@ -1372,6 +1367,11 @@ class ListDNSZonesRequest:
13721367
Maximum number of DNS zones to return per page.
13731368
"""
13741369

1370+
dns_zone: Optional[str] = None
1371+
"""
1372+
DNS zone on which to filter the returned DNS zones.
1373+
"""
1374+
13751375
dns_zones: Optional[list[str]] = field(default_factory=list)
13761376
"""
13771377
DNS zones on which to filter the returned DNS zones.

scaleway/scaleway/domain/v2beta1/api.py

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -189,12 +189,12 @@ def list_dns_zones(
189189
self,
190190
*,
191191
domain: str,
192-
dns_zone: str,
193192
organization_id: Optional[str] = None,
194193
project_id: Optional[str] = None,
195194
order_by: Optional[ListDNSZonesRequestOrderBy] = None,
196195
page: Optional[int] = None,
197196
page_size: Optional[int] = None,
197+
dns_zone: Optional[str] = None,
198198
dns_zones: Optional[list[str]] = None,
199199
created_after: Optional[datetime] = None,
200200
created_before: Optional[datetime] = None,
@@ -205,12 +205,12 @@ def list_dns_zones(
205205
List DNS zones.
206206
Retrieve the list of DNS zones you can manage and filter DNS zones associated with specific domain names.
207207
:param domain: Domain on which to filter the returned DNS zones.
208-
:param dns_zone: DNS zone on which to filter the returned DNS zones.
209208
:param organization_id: Organization ID on which to filter the returned DNS zones.
210209
:param project_id: Project ID on which to filter the returned DNS zones.
211210
:param order_by: Sort order of the returned DNS zones.
212211
:param page: Page number to return, from the paginated results.
213212
:param page_size: Maximum number of DNS zones to return per page.
213+
:param dns_zone: DNS zone on which to filter the returned DNS zones.
214214
:param dns_zones: DNS zones on which to filter the returned DNS zones.
215215
:param created_after: Only list DNS zones created after this date.
216216
:param created_before: Only list DNS zones created before this date.
@@ -223,7 +223,6 @@ def list_dns_zones(
223223
224224
result = api.list_dns_zones(
225225
domain="example",
226-
dns_zone="example",
227226
)
228227
"""
229228

@@ -254,12 +253,12 @@ def list_dns_zones_all(
254253
self,
255254
*,
256255
domain: str,
257-
dns_zone: str,
258256
organization_id: Optional[str] = None,
259257
project_id: Optional[str] = None,
260258
order_by: Optional[ListDNSZonesRequestOrderBy] = None,
261259
page: Optional[int] = None,
262260
page_size: Optional[int] = None,
261+
dns_zone: Optional[str] = None,
263262
dns_zones: Optional[list[str]] = None,
264263
created_after: Optional[datetime] = None,
265264
created_before: Optional[datetime] = None,
@@ -270,12 +269,12 @@ def list_dns_zones_all(
270269
List DNS zones.
271270
Retrieve the list of DNS zones you can manage and filter DNS zones associated with specific domain names.
272271
:param domain: Domain on which to filter the returned DNS zones.
273-
:param dns_zone: DNS zone on which to filter the returned DNS zones.
274272
:param organization_id: Organization ID on which to filter the returned DNS zones.
275273
:param project_id: Project ID on which to filter the returned DNS zones.
276274
:param order_by: Sort order of the returned DNS zones.
277275
:param page: Page number to return, from the paginated results.
278276
:param page_size: Maximum number of DNS zones to return per page.
277+
:param dns_zone: DNS zone on which to filter the returned DNS zones.
279278
:param dns_zones: DNS zones on which to filter the returned DNS zones.
280279
:param created_after: Only list DNS zones created after this date.
281280
:param created_before: Only list DNS zones created before this date.
@@ -288,7 +287,6 @@ def list_dns_zones_all(
288287
289288
result = api.list_dns_zones_all(
290289
domain="example",
291-
dns_zone="example",
292290
)
293291
"""
294292

@@ -298,12 +296,12 @@ def list_dns_zones_all(
298296
fetcher=self.list_dns_zones,
299297
args={
300298
"domain": domain,
301-
"dns_zone": dns_zone,
302299
"organization_id": organization_id,
303300
"project_id": project_id,
304301
"order_by": order_by,
305302
"page": page,
306303
"page_size": page_size,
304+
"dns_zone": dns_zone,
307305
"dns_zones": dns_zones,
308306
"created_after": created_after,
309307
"created_before": created_before,
@@ -776,7 +774,7 @@ def import_raw_dns_zone(
776774
self,
777775
*,
778776
dns_zone: str,
779-
content: str,
777+
content: Optional[str] = None,
780778
project_id: Optional[str] = None,
781779
format: Optional[RawFormat] = None,
782780
bind_source: Optional[ImportRawDNSZoneRequestBindSource] = None,
@@ -800,7 +798,6 @@ def import_raw_dns_zone(
800798
801799
result = api.import_raw_dns_zone(
802800
dns_zone="example",
803-
content="example",
804801
)
805802
"""
806803

scaleway/scaleway/domain/v2beta1/marshalling.py

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -316,6 +316,12 @@ def unmarshal_ContactExtensionIT(data: Any) -> ContactExtensionIT:
316316

317317
args: dict[str, Any] = {}
318318

319+
field = data.get("pin", None)
320+
if field is not None:
321+
args["pin"] = field
322+
else:
323+
args["pin"] = None
324+
319325
field = data.get("european_citizenship", None)
320326
if field is not None:
321327
args["european_citizenship"] = field
@@ -328,12 +334,6 @@ def unmarshal_ContactExtensionIT(data: Any) -> ContactExtensionIT:
328334
else:
329335
args["tax_code"] = None
330336

331-
field = data.get("pin", None)
332-
if field is not None:
333-
args["pin"] = field
334-
else:
335-
args["pin"] = None
336-
337337
return ContactExtensionIT(**args)
338338

339339

@@ -535,14 +535,6 @@ def unmarshal_Contact(data: Any) -> Contact:
535535
else:
536536
args["status"] = ContactStatus.STATUS_UNKNOWN
537537

538-
field = data.get("questions", None)
539-
if field is not None:
540-
args["questions"] = (
541-
[unmarshal_ContactQuestion(v) for v in field] if field is not None else None
542-
)
543-
else:
544-
args["questions"] = []
545-
546538
field = data.get("extension_nl", None)
547539
if field is not None:
548540
args["extension_nl"] = unmarshal_ContactExtensionNL(field)
@@ -555,6 +547,14 @@ def unmarshal_Contact(data: Any) -> Contact:
555547
else:
556548
args["extension_it"] = None
557549

550+
field = data.get("questions", None)
551+
if field is not None:
552+
args["questions"] = (
553+
[unmarshal_ContactQuestion(v) for v in field] if field is not None else None
554+
)
555+
else:
556+
args["questions"] = None
557+
558558
return Contact(**args)
559559

560560

0 commit comments

Comments
 (0)