From: Stefan Hanreich <s.hanreich@proxmox.com>
To: pbs-devel@lists.proxmox.com
Subject: Re: [pbs-devel] [PATCH proxmox-api-types 1/2] generator: use proxmox_serde for perl helpers
Date: Tue, 13 May 2025 13:44:11 +0200 [thread overview]
Message-ID: <83eed3d4-43b8-44e7-a562-4c2e50891c0e@proxmox.com> (raw)
In-Reply-To: <20250513101459.122641-5-s.hanreich@proxmox.com>
Since the patch #2 didn't go through due to size:
pve-api-types would need to be re-generated after this patch.
On 5/13/25 12:14, Stefan Hanreich wrote:
> The helpers for parsing perl values have been moved to proxmox_serde,
> update all references to proxmox_login. No functional changes.
>
> Signed-off-by: Stefan Hanreich <s.hanreich@proxmox.com>
> ---
> Cargo.toml | 2 +-
> pve-api-types/Cargo.toml | 2 +-
> pve-api-types/generator-lib/Schema2Rust.pm | 26 +++++++++++-----------
> 3 files changed, 15 insertions(+), 15 deletions(-)
>
> diff --git a/Cargo.toml b/Cargo.toml
> index 1bbdd01..1e119d3 100644
> --- a/Cargo.toml
> +++ b/Cargo.toml
> @@ -22,7 +22,7 @@ serde_plain = "1"
> serde_json = "1"
>
> proxmox-api-macro = "1.3"
> -proxmox-login = "0.2"
> +proxmox-serde = "0.1.2"
> proxmox-schema = "4"
>
> proxmox-client = "0.5"
> diff --git a/pve-api-types/Cargo.toml b/pve-api-types/Cargo.toml
> index 73cd3ef..e388cac 100644
> --- a/pve-api-types/Cargo.toml
> +++ b/pve-api-types/Cargo.toml
> @@ -18,7 +18,7 @@ serde_json.workspace = true
> serde_plain.workspace = true
> #
> proxmox-api-macro.workspace = true
> -proxmox-login.workspace = true
> +proxmox-serde = { workspace = true, features = [ "perl" ] }
> proxmox-schema = { workspace = true, features = [ "api-types", "api-macro" ] }
>
> # For the client feature:
> diff --git a/pve-api-types/generator-lib/Schema2Rust.pm b/pve-api-types/generator-lib/Schema2Rust.pm
> index 009cf13..99a8fd6 100644
> --- a/pve-api-types/generator-lib/Schema2Rust.pm
> +++ b/pve-api-types/generator-lib/Schema2Rust.pm
> @@ -1127,18 +1127,18 @@ my sub array_type : prototype($$$) {
> }
>
> my %serde_num = (
> - usize => '#[serde(deserialize_with = "proxmox_login::parse::deserialize_usize")]',
> - isize => '#[serde(deserialize_with = "proxmox_login::parse::deserialize_isize")]',
> - u8 => '#[serde(deserialize_with = "proxmox_login::parse::deserialize_u8")]',
> - u16 => '#[serde(deserialize_with = "proxmox_login::parse::deserialize_u16")]',
> - u32 => '#[serde(deserialize_with = "proxmox_login::parse::deserialize_u32")]',
> - u64 => '#[serde(deserialize_with = "proxmox_login::parse::deserialize_u64")]',
> - i8 => '#[serde(deserialize_with = "proxmox_login::parse::deserialize_i8")]',
> - i16 => '#[serde(deserialize_with = "proxmox_login::parse::deserialize_i16")]',
> - i32 => '#[serde(deserialize_with = "proxmox_login::parse::deserialize_i32")]',
> - i64 => '#[serde(deserialize_with = "proxmox_login::parse::deserialize_i64")]',
> - f32 => '#[serde(deserialize_with = "proxmox_login::parse::deserialize_f32")]',
> - f64 => '#[serde(deserialize_with = "proxmox_login::parse::deserialize_f64")]',
> + usize => '#[serde(deserialize_with = "proxmox_serde::perl::deserialize_usize")]',
> + isize => '#[serde(deserialize_with = "proxmox_serde::perl::deserialize_isize")]',
> + u8 => '#[serde(deserialize_with = "proxmox_serde::perl::deserialize_u8")]',
> + u16 => '#[serde(deserialize_with = "proxmox_serde::perl::deserialize_u16")]',
> + u32 => '#[serde(deserialize_with = "proxmox_serde::perl::deserialize_u32")]',
> + u64 => '#[serde(deserialize_with = "proxmox_serde::perl::deserialize_u64")]',
> + i8 => '#[serde(deserialize_with = "proxmox_serde::perl::deserialize_i8")]',
> + i16 => '#[serde(deserialize_with = "proxmox_serde::perl::deserialize_i16")]',
> + i32 => '#[serde(deserialize_with = "proxmox_serde::perl::deserialize_i32")]',
> + i64 => '#[serde(deserialize_with = "proxmox_serde::perl::deserialize_i64")]',
> + f32 => '#[serde(deserialize_with = "proxmox_serde::perl::deserialize_f32")]',
> + f64 => '#[serde(deserialize_with = "proxmox_serde::perl::deserialize_f64")]',
> );
>
> sub handle_def : prototype($$$) {
> @@ -1169,7 +1169,7 @@ sub handle_def : prototype($$$) {
> } elsif ($type eq 'boolean') {
> $def->{type} = 'bool';
> push $def->{attrs}->@*,
> - "#[serde(deserialize_with = \"proxmox_login::parse::deserialize_bool\")]";
> + "#[serde(deserialize_with = \"proxmox_serde::perl::deserialize_bool\")]";
> $def->{api}->{default} = bool(delete $schema->{default});
> } elsif ($type eq 'number') {
> $def->{api}->{default} = delete $schema->{default};
_______________________________________________
pbs-devel mailing list
pbs-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pbs-devel
next prev parent reply other threads:[~2025-05-13 11:43 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-05-13 10:14 [pbs-devel] [PATCH proxmox{, -api-types, -ve-rs} 0/6] Move perl deserializers from proxmox-login to proxmox-serde Stefan Hanreich
2025-05-13 10:14 ` [pbs-devel] [PATCH proxmox 1/3] serde: add parsing helpers for perl Stefan Hanreich
2025-05-13 10:14 ` [pbs-devel] [PATCH proxmox 2/3] login: move parse module to proxmox-serde Stefan Hanreich
2025-05-13 10:14 ` [pbs-devel] [PATCH proxmox 3/3] client: move to proxmox_serde perl helpers Stefan Hanreich
2025-05-13 10:14 ` [pbs-devel] [PATCH proxmox-api-types 1/2] generator: use proxmox_serde for " Stefan Hanreich
2025-05-13 11:44 ` Stefan Hanreich [this message]
2025-05-13 10:14 ` [pbs-devel] [PATCH proxmox-ve-rs 1/1] config: use proxmox_serde " Stefan Hanreich
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=83eed3d4-43b8-44e7-a562-4c2e50891c0e@proxmox.com \
--to=s.hanreich@proxmox.com \
--cc=pbs-devel@lists.proxmox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal