Releases: leontoeides/google_maps
v3.8.3
-
2025-05-16: Removed
skip_serializing_if
serde attributes. Some binary formats such asrmp-serde
don't handle these attributes. -
2025-05-27: Correction to
google_maps::time_zone::response::mod.rs
-Pacific/Auckland
has a timezone offset of 43200, which is larger than ani16
.Thank you to tolfdog for reporting and correcting this issue!
What's Changed
New Contributors
Full Changelog: v3.8.2...v3.8.3
v3.8.2
3.8.2
-
2025-04-27: Reverted back to
serde_json
fromsimd-json
.Seemingly, there were issues with some Google Maps API JSON responses. Some responses failed validation according to jsonlint.com. The issue appears to be related to polyline strings.
simd-json
was not able to parse this JSON.serde_json
seems to be more robust in handling this allegedly invalid JSON. -
2025-04-27: Ensured that all serde
skip_serializing_if
attributes have a matchingdefault
attribute. -
2025-04-27: Dependencies bumps.
Full Changelog: v3.8.1...v3.8.2
v3.8.1
- 2024-01-10: A debug
println!
was accidentally left in theClient
get_request
method. This has been removed.
Full Changelog: v3.8.0...v3.8.1
v3.8.0
-
Important note: This release some changes that are theoretically breaking changes. This would apply to users who are tapping into the more internal functions and destructuring
structs
. However, I don't believe most crate end-users will notice a difference. -
2024-01-10: Implemented Google Maps Address Validation API.
Basic example:
use google_maps::prelude::*;
let google_maps_client = google_maps::Client::try_new("YOUR_API_KEY_HERE")?;
let postal_address = PostalAddress::builder()
.region_code(&Country::UnitedStates)
.address_lines(vec![
"1600 Amphitheatre Pkwy",
"Mountain View, CA, 94043"
])
.build();
let response = google_maps_client
.validate_address()
.address(postal_address)
.build()
.execute()
.await?;
google_maps_client
.provide_validation_feedback()
.conclusion(ValidationConclusion::Unused)
.response_id(response.response_id())
.build()
.execute()
.await?;
// Dump entire response:
println!("{response:#?}");
-
2025-01-04: Implemented a generic
get
method that covers all of the Google Maps APIs and handles the requests, responses, and errors. -
2025-01-01: Updated several dependencies.
-
2024-12-29: Switched from the currently unmaintained backoff crate to Xuanwo's backon crate for an exponential back-off retry implementation.
Thank you to Dan Groshev for reporting this issue!
backon
is not a drop-in replacement forbackoff
. During the transition, some much needed internal clean-up was done.
Full Changelog: v3.7.4...v3.8.0
v3.7.4
3.7.4
- 2024-12-12: Merged PR to correct validations for directions requests. Thank you ARBaart and congrats on your first single character PR!
What's Changed
New Contributors
Full Changelog: v3.7.3...v3.7.4
v3.7.3
3.7.3
- 2024-11-07: Merged a patch for
GeocoderStatsu
to allow for round-tripping. Thank you for the PR xyres137
What's Changed
New Contributors
Full Changelog: v3.7.2...v3.7.3
v3.7.2
3.7.2
-
2024-11-07: Corrected issue with
Status
enums not round-tripping through de-serialisation and re-serialisation. -
2024-11-07: Dependency bumps.
Full Changelog: v3.7.1...v3.7.2
v3.7.1
3.7.1
- 2024-10-15: Small tweaks to the features. Put back
enable-reqwest
.
3.7.0
-
2024-10-05: If your crate directly references the
enable-reqwest
feature in this crate, it has been renamed toreqwest
as of version 3.7.0. -
2024-10-05: Many features have been added, some features have been renamed. Please see the Cargo.toml for a complete list of available features. The default features have changed a bit (for example,
reqwest/http2
had been accidentally left out but is now enabled). No negative effect is expected. -
2024-10-05: Moved crate from using serde_json for JSON parsing over to simd-json.
Full Changelog: v3.6.0...v3.7.1
v3.6.0
- 2024-09-21: Bump dependencies.
Full Changelog: v3.5.5...v3.6.0
v3.5.5
- 2024-07-25: Added additional conversion traits between
Location
&Waypoint
andLatLng
for improved ergonomics.
Full Changelog: v3.5.4...v3.5.5