smithy-lang / smithy-rs

Code generation for the AWS SDK for Rust, as well as server and generic smithy client generation.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

`SigningSettings` doesn't implement `Clone`

avandesa-fw opened this issue · comments

https://docs.rs/aws-sigv4/latest/aws_sigv4/http_request/struct.SigningSettings.html doesn't implement Clone, even though it should. This makes it cumbersome to cache settings for repeated request signing, since signgin_params::Builder::settings takes ownership of the settings type. These fields also don't implement clone/copy:

  • PercentEncodingMode
  • PayloadChecksumKind
  • UriPathNormalizationMode
  • SessionTokenMode

I think the only concern could be excluded_headers, which is an Option<Vec<Cow<'_, str>>>, though

Happy to open a PR for this later, looks like it should be as simple as adding #[derive(Clone)] unless there's codegen stuff I'm not seeing.