Skip to content

Commit 1132976

Browse files
authored
Merge pull request #63 from georust/clippy
Fix CI and Clippy lints
2 parents b35e109 + 64a01f3 commit 1132976

File tree

6 files changed

+59
-42
lines changed

6 files changed

+59
-42
lines changed

.github/workflows/test.yml

Lines changed: 20 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -35,15 +35,28 @@ jobs:
3535
# giving us about 6 months of coverage.
3636
#
3737
# Minimum supported rust version (MSRV)
38-
- "georust/geo-ci:proj-9.2.1-rust-1.70"
39-
# Two most recent releases - we omit older ones for expedient CI
40-
- "georust/geo-ci:proj-9.2.1-rust-1.71"
41-
- "georust/geo-ci:proj-9.2.1-rust-1.72"
38+
- "georust/geo-ci:proj-9.4.0-rust-1.75"
39+
# Two most recent releases - we omit older ones for expedient CI (TBD)
4240
container:
4341
image: ${{ matrix.container_image }}
4442
steps:
43+
- name: Install clippy and rustfmt
44+
run: rustup component add clippy rustfmt
4545
- name: Checkout repository
4646
uses: actions/checkout@v3
47-
- run: cargo install cargo-all-features
48-
- run: cargo build-all-features
49-
- run: cargo test-all-features
47+
- name: Check formatting
48+
run: cargo fmt --check
49+
- name: Build (--no-default-features)
50+
run: cargo build --no-default-features
51+
- name: Test (--no-default-features)
52+
run: cargo test --no-default-features
53+
- name: Build (default features)
54+
run: cargo build
55+
- name: Test (default features)
56+
run: cargo test
57+
- name: Build (--all-features)
58+
run: cargo build --all-features
59+
- name: Test (--all-features)
60+
run: cargo test --all-features
61+
- name: Clippy
62+
run: cargo clippy --all-features --all-targets

Cargo.toml

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,15 +8,19 @@ repository = "https://github.com/georust/geocoding"
88
keywords = ["gecoding", "geo", "gis", "geospatial"]
99
readme = "README.md"
1010
edition = "2018"
11-
rust-version = "1.69"
11+
rust-version = "1.75"
1212

1313
[dependencies]
1414
thiserror = "1.0"
1515
geo-types = "0.7.8"
1616
num-traits = "0.2"
1717
serde = { version = "1.0", features = ["derive"] }
1818
serde_json = "1.0"
19-
reqwest = { version = "0.11", default-features = false, features = ["default-tls", "blocking", "json"] }
19+
reqwest = { version = "0.11", default-features = false, features = [
20+
"default-tls",
21+
"blocking",
22+
"json",
23+
] }
2024
hyper = "0.14.11"
2125

2226
[features]

src/geoadmin.rs

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -176,7 +176,7 @@ impl GeoAdmin {
176176
];
177177

178178
if let Some(bb) = params.bbox.cloned().as_mut() {
179-
if vec!["4326", "3857"].contains(&self.sr.as_str()) {
179+
if ["4326", "3857"].contains(&self.sr.as_str()) {
180180
*bb = InputBounds::new(
181181
wgs84_to_lv03(&bb.minimum_lonlat),
182182
wgs84_to_lv03(&bb.maximum_lonlat),
@@ -193,7 +193,7 @@ impl GeoAdmin {
193193

194194
let resp = self
195195
.client
196-
.get(&format!("{}SearchServer", self.endpoint))
196+
.get(format!("{}SearchServer", self.endpoint))
197197
.query(&query)
198198
.send()?
199199
.error_for_status()?;
@@ -229,7 +229,7 @@ where
229229
fn forward(&self, place: &str) -> Result<Vec<Point<T>>, GeocodingError> {
230230
let resp = self
231231
.client
232-
.get(&format!("{}SearchServer", self.endpoint))
232+
.get(format!("{}SearchServer", self.endpoint))
233233
.query(&[
234234
("searchText", place),
235235
("type", "locations"),
@@ -242,7 +242,7 @@ where
242242
.error_for_status()?;
243243
let res: GeoAdminForwardResponse<T> = resp.json()?;
244244
// return easting & northing consistent
245-
let results = if vec!["2056", "21781"].contains(&self.sr.as_str()) {
245+
let results = if ["2056", "21781"].contains(&self.sr.as_str()) {
246246
res.features
247247
.iter()
248248
.map(|feature| Point::new(feature.properties.y, feature.properties.x)) // y = west-east, x = north-south
@@ -269,7 +269,7 @@ where
269269
fn reverse(&self, point: &Point<T>) -> Result<Option<String>, GeocodingError> {
270270
let resp = self
271271
.client
272-
.get(&format!("{}MapServer/identify", self.endpoint))
272+
.get(format!("{}MapServer/identify", self.endpoint))
273273
.query(&[
274274
(
275275
"geometry",
@@ -453,7 +453,7 @@ mod test {
453453
fn new_with_sr_forward_test() {
454454
let geoadmin = GeoAdmin::new().with_sr("2056");
455455
let address = "Seftigenstrasse 264, 3084 Wabern";
456-
let res = geoadmin.forward(&address);
456+
let res = geoadmin.forward(address);
457457
assert_eq!(res.unwrap(), vec![Point::new(2_600_968.75, 1_197_427.0)]);
458458
}
459459

@@ -462,7 +462,7 @@ mod test {
462462
let geoadmin =
463463
GeoAdmin::new().with_endpoint("https://api3.geo.admin.ch/rest/services/api/");
464464
let address = "Seftigenstrasse 264, 3084 Wabern";
465-
let res = geoadmin.forward(&address);
465+
let res = geoadmin.forward(address);
466466
assert_eq!(
467467
res.unwrap(),
468468
vec![Point::new(7.451352119445801, 46.92793655395508)]
@@ -473,7 +473,7 @@ mod test {
473473
fn with_sr_forward_full_test() {
474474
let geoadmin = GeoAdmin::new().with_sr("2056");
475475
let bbox = InputBounds::new((2_600_967.75, 1_197_426.0), (2_600_969.75, 1_197_428.0));
476-
let params = GeoAdminParams::new(&"Seftigenstrasse Bern")
476+
let params = GeoAdminParams::new("Seftigenstrasse Bern")
477477
.with_origins("address")
478478
.with_bbox(&bbox)
479479
.build();
@@ -489,7 +489,7 @@ mod test {
489489
fn forward_full_test() {
490490
let geoadmin = GeoAdmin::new();
491491
let bbox = InputBounds::new((7.4513398, 46.92792859), (7.4513662, 46.9279467));
492-
let params = GeoAdminParams::new(&"Seftigenstrasse Bern")
492+
let params = GeoAdminParams::new("Seftigenstrasse Bern")
493493
.with_origins("address")
494494
.with_bbox(&bbox)
495495
.build();
@@ -505,7 +505,7 @@ mod test {
505505
fn forward_test() {
506506
let geoadmin = GeoAdmin::new();
507507
let address = "Seftigenstrasse 264, 3084 Wabern";
508-
let res = geoadmin.forward(&address);
508+
let res = geoadmin.forward(address);
509509
assert_eq!(
510510
res.unwrap(),
511511
vec![Point::new(7.451352119445801, 46.92793655395508)]

src/lib.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ pub enum GeocodingError {
8080
/// let res = oc.reverse(&p).unwrap();
8181
/// assert_eq!(
8282
/// res,
83-
/// Some("Carrer de Calatrava, 68, 08017 Barcelona, Spain".to_string())
83+
/// Some("Carrer de Calatrava, 64, 08017 Barcelona, Spain".to_string())
8484
/// );
8585
/// ```
8686
pub trait Reverse<T>

src/opencage.rs

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
//! oc.parameters.language = Some("fr");
2222
//! let p = Point::new(2.12870, 41.40139);
2323
//! let res = oc.reverse(&p);
24-
//! // "Carrer de Calatrava, 68, 08017 Barcelone, Espagne"
24+
//! // "Carrer de Calatrava, 64, 08017 Barcelone, Espagne"
2525
//! println!("{:?}", res.unwrap());
2626
//! ```
2727
use crate::DeserializeOwned;
@@ -96,7 +96,7 @@ pub struct Opencage<'a> {
9696
remaining: Arc<Mutex<Option<i32>>>,
9797
}
9898

99-
impl<'a> Opencage<'a> {
99+
impl Opencage<'_> {
100100
/// Create a new OpenCage geocoding instance
101101
pub fn new(api_key: String) -> Self {
102102
let mut headers = HeaderMap::new();
@@ -288,7 +288,7 @@ impl<'a> Opencage<'a> {
288288
}
289289
}
290290

291-
impl<'a, T> Reverse<T> for Opencage<'a>
291+
impl<T> Reverse<T> for Opencage<'_>
292292
where
293293
T: Float + DeserializeOwned + Debug,
294294
{
@@ -333,7 +333,7 @@ where
333333
}
334334
}
335335

336-
impl<'a, T> Forward<T> for Opencage<'a>
336+
impl<T> Forward<T> for Opencage<'_>
337337
where
338338
T: Float + DeserializeOwned + Debug,
339339
{
@@ -476,15 +476,15 @@ where
476476
/// "country": "Spain",
477477
/// "country_code": "es",
478478
/// "county": "BCN",
479-
/// "house_number": "68",
479+
/// "house_number": "64",
480480
/// "political_union": "European Union",
481481
/// "postcode": "08017",
482482
/// "road": "Carrer de Calatrava",
483483
/// "state": "Catalonia",
484484
/// "suburb": "les Tres Torres"
485485
/// },
486486
/// "confidence": 10,
487-
/// "formatted": "Carrer de Calatrava, 68, 08017 Barcelona, Spain",
487+
/// "formatted": "Carrer de Calatrava, 64, 08017 Barcelona, Spain",
488488
/// "geometry": {
489489
/// "lat": 41.4014067,
490490
/// "lng": 2.1287224
@@ -644,7 +644,7 @@ mod test {
644644
let res = oc.reverse(&p);
645645
assert_eq!(
646646
res.unwrap(),
647-
Some("Carrer de Calatrava, 68, 08017 Barcelona, Spain".to_string())
647+
Some("Carrer de Calatrava, 64, 08017 Barcelona, Spain".to_string())
648648
);
649649
}
650650

@@ -656,15 +656,15 @@ mod test {
656656
let res = oc.reverse(&p);
657657
assert_eq!(
658658
res.unwrap(),
659-
Some("Carrer de Calatrava, 68, 08017 Barcelone, Espagne".to_string())
659+
Some("Carrer de Calatrava, 64, 08017 Barcelone, Espagne".to_string())
660660
);
661661
}
662662
#[test]
663663
#[allow(deprecated)]
664664
fn forward_test() {
665665
let oc = Opencage::new("dcdbf0d783374909b3debee728c7cc10".to_string());
666666
let address = "Schwabing, München";
667-
let res = oc.forward(&address);
667+
let res = oc.forward(address);
668668
assert_eq!(
669669
res.unwrap(),
670670
vec![Point(Coord {
@@ -690,7 +690,7 @@ mod test {
690690
minimum_lonlat: Point::new(-0.13806939125061035, 51.51989264641164),
691691
maximum_lonlat: Point::new(-0.13427138328552246, 51.52319711775629),
692692
};
693-
let res = oc.forward_full(&address, bbox).unwrap();
693+
let res = oc.forward_full(address, bbox).unwrap();
694694
let first_result = &res.results[0];
695695
assert!(first_result.formatted.contains("UCL"));
696696
}
@@ -702,7 +702,7 @@ mod test {
702702
Point::new(-0.13806939125061035, 51.51989264641164),
703703
Point::new(-0.13427138328552246, 51.52319711775629),
704704
);
705-
let res = oc.forward_full(&address, bbox).unwrap();
705+
let res = oc.forward_full(address, bbox).unwrap();
706706
let first_result = &res.results[0];
707707
assert!(
708708
first_result.formatted.contains("UCL")
@@ -717,7 +717,7 @@ mod test {
717717
Point::from((-0.13806939125061035, 51.51989264641164)),
718718
Point::from((-0.13427138328552246, 51.52319711775629)),
719719
);
720-
let res = oc.forward_full(&address, bbox).unwrap();
720+
let res = oc.forward_full(address, bbox).unwrap();
721721
let first_result = &res.results[0];
722722
assert!(
723723
first_result.formatted.contains("UCL")
@@ -732,7 +732,7 @@ mod test {
732732
(-0.13806939125061035, 51.51989264641164),
733733
(-0.13427138328552246, 51.52319711775629),
734734
);
735-
let res = oc.forward_full(&address, bbox).unwrap();
735+
let res = oc.forward_full(address, bbox).unwrap();
736736
let first_result = &res.results[0];
737737
assert!(first_result
738738
.formatted
@@ -742,7 +742,7 @@ mod test {
742742
fn forward_full_test_nobox() {
743743
let oc = Opencage::new("dcdbf0d783374909b3debee728c7cc10".to_string());
744744
let address = "Moabit, Berlin, Germany";
745-
let res = oc.forward_full(&address, NOBOX).unwrap();
745+
let res = oc.forward_full(address, NOBOX).unwrap();
746746
let first_result = &res.results[0];
747747
assert_eq!(first_result.formatted, "Moabit, Berlin, Germany");
748748
}

src/openstreetmap.rs

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -166,7 +166,7 @@ impl Openstreetmap {
166166

167167
let resp = self
168168
.client
169-
.get(&format!("{}search", self.endpoint))
169+
.get(format!("{}search", self.endpoint))
170170
.query(&query)
171171
.send()?
172172
.error_for_status()?;
@@ -192,7 +192,7 @@ where
192192
fn forward(&self, place: &str) -> Result<Vec<Point<T>>, GeocodingError> {
193193
let resp = self
194194
.client
195-
.get(&format!("{}search", self.endpoint))
195+
.get(format!("{}search", self.endpoint))
196196
.query(&[(&"q", place), (&"format", &String::from("geojson"))])
197197
.send()?
198198
.error_for_status()?;
@@ -217,7 +217,7 @@ where
217217
fn reverse(&self, point: &Point<T>) -> Result<Option<String>, GeocodingError> {
218218
let resp = self
219219
.client
220-
.get(&format!("{}reverse", self.endpoint))
220+
.get(format!("{}reverse", self.endpoint))
221221
.query(&[
222222
(&"lon", &point.x().to_f64().unwrap().to_string()),
223223
(&"lat", &point.y().to_f64().unwrap().to_string()),
@@ -246,13 +246,13 @@ where
246246
/// "place_id": 263681481,
247247
/// "osm_type": "way",
248248
/// "osm_id": 355421084,
249-
/// "display_name": "68, Carrer de Calatrava, les Tres Torres, Sarrià - Sant Gervasi, Barcelona, BCN, Catalonia, 08017, Spain",
249+
/// "display_name": "64, Carrer de Calatrava, les Tres Torres, Sarrià - Sant Gervasi, Barcelona, BCN, Catalonia, 08017, Spain",
250250
/// "place_rank": 30,
251251
/// "category": "building",
252252
/// "type": "apartments",
253253
/// "importance": 0.7409999999999999,
254254
/// "address": {
255-
/// "house_number": "68",
255+
/// "house_number": "64",
256256
/// "road": "Carrer de Calatrava",
257257
/// "suburb": "les Tres Torres",
258258
/// "city_district": "Sarrià - Sant Gervasi",
@@ -355,7 +355,7 @@ mod test {
355355
let osm =
356356
Openstreetmap::new_with_endpoint("https://nominatim.openstreetmap.org/".to_string());
357357
let address = "Schwabing, München";
358-
let res = osm.forward(&address);
358+
let res = osm.forward(address);
359359
assert_eq!(res.unwrap(), vec![Point::new(11.5884858, 48.1700887)]);
360360
}
361361

@@ -366,7 +366,7 @@ mod test {
366366
(-0.13806939125061035, 51.51989264641164),
367367
(-0.13427138328552246, 51.52319711775629),
368368
);
369-
let params = OpenstreetmapParams::new(&"UCL Centre for Advanced Spatial Analysis")
369+
let params = OpenstreetmapParams::new("UCL Centre for Advanced Spatial Analysis")
370370
.with_addressdetails(true)
371371
.with_viewbox(&viewbox)
372372
.build();
@@ -380,7 +380,7 @@ mod test {
380380
fn forward_test() {
381381
let osm = Openstreetmap::new();
382382
let address = "Schwabing, München";
383-
let res = osm.forward(&address);
383+
let res = osm.forward(address);
384384
assert_eq!(res.unwrap(), vec![Point::new(11.5884858, 48.1700887)]);
385385
}
386386

0 commit comments

Comments
 (0)