ramosbugs / openidconnect-rs

OpenID Connect Library for Rust
MIT License
371 stars 98 forks source link

Use `Into<String>` or `ToString::to_string` rather than requiring owned `Strings` up front. #168

Open gibbz00 opened 2 months ago

gibbz00 commented 2 months ago

Partly a question if there's any reason why the API requires owned strings for constructors and such.

.add_scope(Scope::new("read".to_string()))
.add_scope(Scope::new("write".to_string()))

Could then become:

.add_scope(Scope::new("read"))
.add_scope(Scope::new("write"))

And the method signature would still make it clear that an allocation will take place.

This also applies to the oath2 crate.

ramosbugs commented 2 months ago

See ramosbugs/oauth2-rs#248. I'd be open to the constructor methods accepting impl Into<String> in both crates for better ergonomics.

gibbz00 commented 2 months ago

Cool cool :) Might take a look at it when I have the time.