From 714e4c90ceb64066f2e3a604ac71410e8f48108d Mon Sep 17 00:00:00 2001 From: Estelle Soulard Date: Thu, 26 Mar 2026 17:45:50 +0100 Subject: [PATCH] chore(domain): handle deprecated_optional fields --- .../scaleway_async/domain/v2beta1/api.py | 15 +++----- .../domain/v2beta1/marshalling.py | 16 ++++---- .../scaleway_async/domain/v2beta1/types.py | 38 +++++++++---------- scaleway/scaleway/domain/v2beta1/api.py | 15 +++----- .../scaleway/domain/v2beta1/marshalling.py | 28 +++++++------- scaleway/scaleway/domain/v2beta1/types.py | 38 +++++++++---------- 6 files changed, 72 insertions(+), 78 deletions(-) diff --git a/scaleway-async/scaleway_async/domain/v2beta1/api.py b/scaleway-async/scaleway_async/domain/v2beta1/api.py index 21f1b2a22..8b30d6189 100644 --- a/scaleway-async/scaleway_async/domain/v2beta1/api.py +++ b/scaleway-async/scaleway_async/domain/v2beta1/api.py @@ -189,12 +189,12 @@ async def list_dns_zones( self, *, domain: str, - dns_zone: str, organization_id: Optional[str] = None, project_id: Optional[str] = None, order_by: Optional[ListDNSZonesRequestOrderBy] = None, page: Optional[int] = None, page_size: Optional[int] = None, + dns_zone: Optional[str] = None, dns_zones: Optional[list[str]] = None, created_after: Optional[datetime] = None, created_before: Optional[datetime] = None, @@ -205,12 +205,12 @@ async def list_dns_zones( List DNS zones. Retrieve the list of DNS zones you can manage and filter DNS zones associated with specific domain names. :param domain: Domain on which to filter the returned DNS zones. - :param dns_zone: DNS zone on which to filter the returned DNS zones. :param organization_id: Organization ID on which to filter the returned DNS zones. :param project_id: Project ID on which to filter the returned DNS zones. :param order_by: Sort order of the returned DNS zones. :param page: Page number to return, from the paginated results. :param page_size: Maximum number of DNS zones to return per page. + :param dns_zone: DNS zone on which to filter the returned DNS zones. :param dns_zones: DNS zones on which to filter the returned DNS zones. :param created_after: Only list DNS zones created after this date. :param created_before: Only list DNS zones created before this date. @@ -223,7 +223,6 @@ async def list_dns_zones( result = await api.list_dns_zones( domain="example", - dns_zone="example", ) """ @@ -254,12 +253,12 @@ async def list_dns_zones_all( self, *, domain: str, - dns_zone: str, organization_id: Optional[str] = None, project_id: Optional[str] = None, order_by: Optional[ListDNSZonesRequestOrderBy] = None, page: Optional[int] = None, page_size: Optional[int] = None, + dns_zone: Optional[str] = None, dns_zones: Optional[list[str]] = None, created_after: Optional[datetime] = None, created_before: Optional[datetime] = None, @@ -270,12 +269,12 @@ async def list_dns_zones_all( List DNS zones. Retrieve the list of DNS zones you can manage and filter DNS zones associated with specific domain names. :param domain: Domain on which to filter the returned DNS zones. - :param dns_zone: DNS zone on which to filter the returned DNS zones. :param organization_id: Organization ID on which to filter the returned DNS zones. :param project_id: Project ID on which to filter the returned DNS zones. :param order_by: Sort order of the returned DNS zones. :param page: Page number to return, from the paginated results. :param page_size: Maximum number of DNS zones to return per page. + :param dns_zone: DNS zone on which to filter the returned DNS zones. :param dns_zones: DNS zones on which to filter the returned DNS zones. :param created_after: Only list DNS zones created after this date. :param created_before: Only list DNS zones created before this date. @@ -288,7 +287,6 @@ async def list_dns_zones_all( result = await api.list_dns_zones_all( domain="example", - dns_zone="example", ) """ @@ -298,12 +296,12 @@ async def list_dns_zones_all( fetcher=self.list_dns_zones, args={ "domain": domain, - "dns_zone": dns_zone, "organization_id": organization_id, "project_id": project_id, "order_by": order_by, "page": page, "page_size": page_size, + "dns_zone": dns_zone, "dns_zones": dns_zones, "created_after": created_after, "created_before": created_before, @@ -776,7 +774,7 @@ async def import_raw_dns_zone( self, *, dns_zone: str, - content: str, + content: Optional[str] = None, project_id: Optional[str] = None, format: Optional[RawFormat] = None, bind_source: Optional[ImportRawDNSZoneRequestBindSource] = None, @@ -800,7 +798,6 @@ async def import_raw_dns_zone( result = await api.import_raw_dns_zone( dns_zone="example", - content="example", ) """ diff --git a/scaleway-async/scaleway_async/domain/v2beta1/marshalling.py b/scaleway-async/scaleway_async/domain/v2beta1/marshalling.py index b1df52ff7..c8dc1d65f 100644 --- a/scaleway-async/scaleway_async/domain/v2beta1/marshalling.py +++ b/scaleway-async/scaleway_async/domain/v2beta1/marshalling.py @@ -535,14 +535,6 @@ def unmarshal_Contact(data: Any) -> Contact: else: args["status"] = ContactStatus.STATUS_UNKNOWN - field = data.get("questions", None) - if field is not None: - args["questions"] = ( - [unmarshal_ContactQuestion(v) for v in field] if field is not None else None - ) - else: - args["questions"] = [] - field = data.get("extension_nl", None) if field is not None: args["extension_nl"] = unmarshal_ContactExtensionNL(field) @@ -555,6 +547,14 @@ def unmarshal_Contact(data: Any) -> Contact: else: args["extension_it"] = None + field = data.get("questions", None) + if field is not None: + args["questions"] = ( + [unmarshal_ContactQuestion(v) for v in field] if field is not None else None + ) + else: + args["questions"] = None + return Contact(**args) diff --git a/scaleway-async/scaleway_async/domain/v2beta1/types.py b/scaleway-async/scaleway_async/domain/v2beta1/types.py index b2a53529d..7cd3bad78 100644 --- a/scaleway-async/scaleway_async/domain/v2beta1/types.py +++ b/scaleway-async/scaleway_async/domain/v2beta1/types.py @@ -518,16 +518,6 @@ class ContactExtensionFR: @dataclass class ContactExtensionIT: - european_citizenship: str - """ - This option is useless anymore. - """ - - tax_code: str - """ - Tax_code is renamed to pin. - """ - pin: str """ Domain name registrant's Taxcode (mandatory / only optional when the trustee is used) @@ -538,6 +528,16 @@ class ContactExtensionIT: * 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. """ + european_citizenship: Optional[str] = None + """ + This option is useless anymore. + """ + + tax_code: Optional[str] = None + """ + Tax_code is renamed to pin. + """ + @dataclass class ContactExtensionNL: @@ -623,11 +623,11 @@ class Contact: email_status: ContactEmailStatus state: str status: ContactStatus - questions: list[ContactQuestion] extension_fr: Optional[ContactExtensionFR] = None extension_eu: Optional[ContactExtensionEU] = None extension_nl: Optional[ContactExtensionNL] = None extension_it: Optional[ContactExtensionIT] = None + questions: Optional[list[ContactQuestion]] = field(default_factory=list) @dataclass @@ -674,7 +674,6 @@ class NewContact: lang: StdLanguageCode resale: bool whois_opt_in: bool - questions: list[ContactQuestion] company_name: Optional[str] = None email_alt: Optional[str] = None fax_number: Optional[str] = None @@ -686,6 +685,7 @@ class NewContact: state: Optional[str] = None extension_nl: Optional[ContactExtensionNL] = None extension_it: Optional[ContactExtensionIT] = None + questions: Optional[list[ContactQuestion]] = field(default_factory=list) @dataclass @@ -1187,9 +1187,9 @@ class ImportRawDNSZoneRequest: DNS zone to import. """ - content: str + content: Optional[str] = None project_id: Optional[str] = None - format: Optional[RawFormat] = RawFormat.UNKNOWN_RAW_FORMAT + format: Optional[RawFormat] = None bind_source: Optional[ImportRawDNSZoneRequestBindSource] = None axfr_source: Optional[ImportRawDNSZoneRequestAXFRSource] = None @@ -1340,11 +1340,6 @@ class ListDNSZonesRequest: Domain on which to filter the returned DNS zones. """ - dns_zone: str - """ - DNS zone on which to filter the returned DNS zones. - """ - organization_id: Optional[str] = None """ Organization ID on which to filter the returned DNS zones. @@ -1372,6 +1367,11 @@ class ListDNSZonesRequest: Maximum number of DNS zones to return per page. """ + dns_zone: Optional[str] = None + """ + DNS zone on which to filter the returned DNS zones. + """ + dns_zones: Optional[list[str]] = field(default_factory=list) """ DNS zones on which to filter the returned DNS zones. diff --git a/scaleway/scaleway/domain/v2beta1/api.py b/scaleway/scaleway/domain/v2beta1/api.py index f011b87ff..48bacf667 100644 --- a/scaleway/scaleway/domain/v2beta1/api.py +++ b/scaleway/scaleway/domain/v2beta1/api.py @@ -189,12 +189,12 @@ def list_dns_zones( self, *, domain: str, - dns_zone: str, organization_id: Optional[str] = None, project_id: Optional[str] = None, order_by: Optional[ListDNSZonesRequestOrderBy] = None, page: Optional[int] = None, page_size: Optional[int] = None, + dns_zone: Optional[str] = None, dns_zones: Optional[list[str]] = None, created_after: Optional[datetime] = None, created_before: Optional[datetime] = None, @@ -205,12 +205,12 @@ def list_dns_zones( List DNS zones. Retrieve the list of DNS zones you can manage and filter DNS zones associated with specific domain names. :param domain: Domain on which to filter the returned DNS zones. - :param dns_zone: DNS zone on which to filter the returned DNS zones. :param organization_id: Organization ID on which to filter the returned DNS zones. :param project_id: Project ID on which to filter the returned DNS zones. :param order_by: Sort order of the returned DNS zones. :param page: Page number to return, from the paginated results. :param page_size: Maximum number of DNS zones to return per page. + :param dns_zone: DNS zone on which to filter the returned DNS zones. :param dns_zones: DNS zones on which to filter the returned DNS zones. :param created_after: Only list DNS zones created after this date. :param created_before: Only list DNS zones created before this date. @@ -223,7 +223,6 @@ def list_dns_zones( result = api.list_dns_zones( domain="example", - dns_zone="example", ) """ @@ -254,12 +253,12 @@ def list_dns_zones_all( self, *, domain: str, - dns_zone: str, organization_id: Optional[str] = None, project_id: Optional[str] = None, order_by: Optional[ListDNSZonesRequestOrderBy] = None, page: Optional[int] = None, page_size: Optional[int] = None, + dns_zone: Optional[str] = None, dns_zones: Optional[list[str]] = None, created_after: Optional[datetime] = None, created_before: Optional[datetime] = None, @@ -270,12 +269,12 @@ def list_dns_zones_all( List DNS zones. Retrieve the list of DNS zones you can manage and filter DNS zones associated with specific domain names. :param domain: Domain on which to filter the returned DNS zones. - :param dns_zone: DNS zone on which to filter the returned DNS zones. :param organization_id: Organization ID on which to filter the returned DNS zones. :param project_id: Project ID on which to filter the returned DNS zones. :param order_by: Sort order of the returned DNS zones. :param page: Page number to return, from the paginated results. :param page_size: Maximum number of DNS zones to return per page. + :param dns_zone: DNS zone on which to filter the returned DNS zones. :param dns_zones: DNS zones on which to filter the returned DNS zones. :param created_after: Only list DNS zones created after this date. :param created_before: Only list DNS zones created before this date. @@ -288,7 +287,6 @@ def list_dns_zones_all( result = api.list_dns_zones_all( domain="example", - dns_zone="example", ) """ @@ -298,12 +296,12 @@ def list_dns_zones_all( fetcher=self.list_dns_zones, args={ "domain": domain, - "dns_zone": dns_zone, "organization_id": organization_id, "project_id": project_id, "order_by": order_by, "page": page, "page_size": page_size, + "dns_zone": dns_zone, "dns_zones": dns_zones, "created_after": created_after, "created_before": created_before, @@ -776,7 +774,7 @@ def import_raw_dns_zone( self, *, dns_zone: str, - content: str, + content: Optional[str] = None, project_id: Optional[str] = None, format: Optional[RawFormat] = None, bind_source: Optional[ImportRawDNSZoneRequestBindSource] = None, @@ -800,7 +798,6 @@ def import_raw_dns_zone( result = api.import_raw_dns_zone( dns_zone="example", - content="example", ) """ diff --git a/scaleway/scaleway/domain/v2beta1/marshalling.py b/scaleway/scaleway/domain/v2beta1/marshalling.py index c9b811602..c8dc1d65f 100644 --- a/scaleway/scaleway/domain/v2beta1/marshalling.py +++ b/scaleway/scaleway/domain/v2beta1/marshalling.py @@ -316,6 +316,12 @@ def unmarshal_ContactExtensionIT(data: Any) -> ContactExtensionIT: args: dict[str, Any] = {} + field = data.get("pin", None) + if field is not None: + args["pin"] = field + else: + args["pin"] = None + field = data.get("european_citizenship", None) if field is not None: args["european_citizenship"] = field @@ -328,12 +334,6 @@ def unmarshal_ContactExtensionIT(data: Any) -> ContactExtensionIT: else: args["tax_code"] = None - field = data.get("pin", None) - if field is not None: - args["pin"] = field - else: - args["pin"] = None - return ContactExtensionIT(**args) @@ -535,14 +535,6 @@ def unmarshal_Contact(data: Any) -> Contact: else: args["status"] = ContactStatus.STATUS_UNKNOWN - field = data.get("questions", None) - if field is not None: - args["questions"] = ( - [unmarshal_ContactQuestion(v) for v in field] if field is not None else None - ) - else: - args["questions"] = [] - field = data.get("extension_nl", None) if field is not None: args["extension_nl"] = unmarshal_ContactExtensionNL(field) @@ -555,6 +547,14 @@ def unmarshal_Contact(data: Any) -> Contact: else: args["extension_it"] = None + field = data.get("questions", None) + if field is not None: + args["questions"] = ( + [unmarshal_ContactQuestion(v) for v in field] if field is not None else None + ) + else: + args["questions"] = None + return Contact(**args) diff --git a/scaleway/scaleway/domain/v2beta1/types.py b/scaleway/scaleway/domain/v2beta1/types.py index b2a53529d..7cd3bad78 100644 --- a/scaleway/scaleway/domain/v2beta1/types.py +++ b/scaleway/scaleway/domain/v2beta1/types.py @@ -518,16 +518,6 @@ class ContactExtensionFR: @dataclass class ContactExtensionIT: - european_citizenship: str - """ - This option is useless anymore. - """ - - tax_code: str - """ - Tax_code is renamed to pin. - """ - pin: str """ Domain name registrant's Taxcode (mandatory / only optional when the trustee is used) @@ -538,6 +528,16 @@ class ContactExtensionIT: * 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. """ + european_citizenship: Optional[str] = None + """ + This option is useless anymore. + """ + + tax_code: Optional[str] = None + """ + Tax_code is renamed to pin. + """ + @dataclass class ContactExtensionNL: @@ -623,11 +623,11 @@ class Contact: email_status: ContactEmailStatus state: str status: ContactStatus - questions: list[ContactQuestion] extension_fr: Optional[ContactExtensionFR] = None extension_eu: Optional[ContactExtensionEU] = None extension_nl: Optional[ContactExtensionNL] = None extension_it: Optional[ContactExtensionIT] = None + questions: Optional[list[ContactQuestion]] = field(default_factory=list) @dataclass @@ -674,7 +674,6 @@ class NewContact: lang: StdLanguageCode resale: bool whois_opt_in: bool - questions: list[ContactQuestion] company_name: Optional[str] = None email_alt: Optional[str] = None fax_number: Optional[str] = None @@ -686,6 +685,7 @@ class NewContact: state: Optional[str] = None extension_nl: Optional[ContactExtensionNL] = None extension_it: Optional[ContactExtensionIT] = None + questions: Optional[list[ContactQuestion]] = field(default_factory=list) @dataclass @@ -1187,9 +1187,9 @@ class ImportRawDNSZoneRequest: DNS zone to import. """ - content: str + content: Optional[str] = None project_id: Optional[str] = None - format: Optional[RawFormat] = RawFormat.UNKNOWN_RAW_FORMAT + format: Optional[RawFormat] = None bind_source: Optional[ImportRawDNSZoneRequestBindSource] = None axfr_source: Optional[ImportRawDNSZoneRequestAXFRSource] = None @@ -1340,11 +1340,6 @@ class ListDNSZonesRequest: Domain on which to filter the returned DNS zones. """ - dns_zone: str - """ - DNS zone on which to filter the returned DNS zones. - """ - organization_id: Optional[str] = None """ Organization ID on which to filter the returned DNS zones. @@ -1372,6 +1367,11 @@ class ListDNSZonesRequest: Maximum number of DNS zones to return per page. """ + dns_zone: Optional[str] = None + """ + DNS zone on which to filter the returned DNS zones. + """ + dns_zones: Optional[list[str]] = field(default_factory=list) """ DNS zones on which to filter the returned DNS zones.