Philip Dubé
0fca3a944a
base64 0.22, serde_with 3, url 2
...
url v2 no longer exports percent_encoding, add percent-encoding v2 as explicit dependency
percent-encoding v2 no longer includes predefined encoding sets
2024-04-26 01:23:12 +00:00
Sebastian Thiel
36f78cdebf
fix lints by avoiding deprecated methods with latest chrono
2024-03-11 10:13:22 +01:00
Yotam Tanay
a8d7356282
Use Cow for reading base64 strings
2024-02-03 11:15:45 +02:00
Yotam Tanay
f990fd0589
Add failing test case for reading base64 string via reader
2024-02-03 11:10:45 +02:00
andrew
d09893e921
Add docstring
2024-01-06 18:57:31 +09:00
andrew
157b45f606
Add FieldMask new method instead of making internals public
2024-01-06 17:42:03 +09:00
andrew
1ee401408c
Make field mask inner public
2024-01-06 13:17:16 +09:00
Eugene Marcotte
ee4ed07af1
Attempt to add 'standard' base64 bytes support
...
https://github.com/Byron/google-apis-rs/issues/442 flags an issue where
some APIs respond with non-valid base64 bytes values for the "URL safe"
flavor of configuration.
This adds support for a "standard" wrapper adjacent to the URL safe one
with the intention of finding a way to flag which structures should use
which configuration.
2023-09-26 17:56:57 -04:00
Sebastian Thiel
6e0caa3b22
replace a few unwraps() with ? where possible
2023-02-22 09:21:23 +01:00
Sebastian Thiel
ad51cb96a5
fix clippy
2023-02-22 09:20:25 +01:00
Gary Coady
c6039c085d
Update yup-oauth2 to 8.0.0.
2022-11-29 19:10:51 +01:00
philippeitis
4bdd77a52f
cargo fmt
2022-10-19 20:42:56 -07:00
philippeitis
9285942f3d
impl std::fmt::Display for FieldMask
2022-10-19 20:42:47 -07:00
philippeitis
f4317a2968
cargo clippy --fix google-clis-common
2022-10-19 20:39:45 -07:00
philippeitis
4cca633f92
Apply cargo clippy --fix
2022-10-19 20:31:31 -07:00
philippeitis
63793b55a6
Add FromStr impl for FieldMask
...
This improves compatibility with the CLI crates
2022-10-19 20:29:39 -07:00
philippeitis
0ad3b1258f
Refactor Params into external struct
...
Reduces file size of generated library:
```
cargo build --release
Compiling google-compute1 v5.0.1+20220224 (/home/philippe/PycharmProjects/google-apis-rs/gen/compute1)
Finished release [optimized] target(s) in 35.15s
```
164 MB resulting lib (4MB reduction)
2022-10-19 17:10:24 -07:00
philippeitis
cfa6958aa0
Add UploadProtocol enum to remove string types
2022-10-19 15:13:20 -07:00
philippeitis
f6b195df4f
Make MultiPartReader::mime_type associated fn
2022-10-18 16:58:26 -07:00
philippeitis
616b324a77
Update mime
2022-10-18 16:25:08 -07:00
philippeitis
7a114a6d1c
Update documentation
2022-10-16 21:57:25 -07:00
philippeitis
4d30072c91
docs: min 1 try + retries in example
2022-10-16 21:29:10 -07:00
philippeitis
a375b710b1
Use Result<Option<_>, _>
2022-10-16 21:26:21 -07:00
philippeitis
1132b542d2
More correct GetToken docs
2022-10-16 17:28:29 -07:00
philippeitis
7ca7f1cafd
Make yup-oauth2 optional
2022-10-16 17:19:10 -07:00
philippeitis
50dd53a877
Document auth.rs
2022-10-16 17:04:20 -07:00
philippeitis
32110d6970
Return Option<String> from GetToken::get_token instead of Result<...>
2022-10-16 16:35:34 -07:00
philippeitis
1c04f662d1
Use correct string impls for http headers
2022-10-09 00:04:30 -07:00
philippeitis
f6cced9605
Support serde for arbitrary field types
...
This introduces the `serde_with` dependency and `rust_type.py`, to allow supporting arbitrary types for serialization.
Since fields may have arbitrary types (eg. `HashMap<_, chrono::Duration>`) which need deserialization, it is necessary to
use type-based serialization to avoid implementing (de)serialization for every permutation of types that require special serialization.
However, `serde` does not let you (de)serialize one type as another (eg. `chrono::Duration` as `Wrapper`) - thus necessitating `serde_with`, which does. `rust_type.py` introduces the `RustType` class, which makes it easy to describe the (de)serialization type used by `serde_with`
2022-10-08 23:01:30 -07:00
philippeitis
8cc2707563
Fix cargo check w.r.t. FieldMask
...
The serde traits are now directly implemented for FieldMask - this helps address potential serde issues with wrapper types, and simplifies the serde process somewhat.
2022-10-08 19:59:23 -07:00
philippeitis
ddac761e06
Add #[serde(default)] for Option parsing
...
If using #[serde(with = ...)] with an Option type, serde will expect all marked fields to be present. Adding #[serde(default)] restores expected behaviour - if no Option value is present, None will be used.
2022-10-08 15:50:47 -07:00
philippeitis
8809ec4807
Add base64 round trip test
2022-10-08 12:56:30 -07:00
philippeitis
afb96bd264
Add FieldMask and serde impl
2022-10-08 03:22:08 -07:00
philippeitis
928c6027e6
Add serde test cases
2022-10-08 02:03:39 -07:00
philippeitis
76627413a3
serde cleanup
2022-10-08 00:58:37 -07:00
philippeitis
5398dc6f79
refactor serde functionality into separate module
2022-10-08 00:51:59 -07:00
philippeitis
477be5d76c
Fix type signatures
2022-10-07 20:40:47 -07:00
philippeitis
05df68de32
Use chrono::Duration directly with serde attributes
2022-10-07 20:34:40 -07:00
philippeitis
444b610ddc
Add proper error handling for parsing Duration
2022-10-07 14:06:04 -07:00
philippeitis
fc780014d4
Clean up duration parsing code
2022-10-07 13:49:22 -07:00
philippeitis
29aa8df15b
Use appropriate types for date-time, duration, bytes
2022-10-07 13:36:03 -07:00
philippeitis
66c535e4d6
Add support for duration and base64 serde
2022-10-07 02:14:26 -07:00
Sebastian Thiel
fe1e97299f
Merge branch 'patch-2'
2022-10-01 09:43:31 +08:00
philippeitis
811ed3d016
Replace std: 🧵 :sleep with tokio: 🧵 :sleep
2022-09-30 07:42:11 +00:00
philippeitis
276324ae09
Make remove_json_null_values O(n) instead of O(n^2)
2022-09-30 07:35:55 +00:00
philippeitis
dad761d3f8
Add additional send/sync bounds
2022-09-29 21:33:57 -07:00
philippeitis
5a5d476317
Update lib.rs
2022-09-29 06:39:11 +00:00
philippeitis
b10bddab08
Add Send bound to GetToken
2022-09-29 06:34:47 +00:00
Sebastian Thiel
3b4fae994e
fix compile warnings
2022-09-29 09:06:56 +08:00
philippeitis
9142859612
Move client.rs to common dependency
2022-09-27 21:48:31 -07:00