Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 4 additions & 2 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,12 @@ unused_qualifications = "warn"

[workspace.lints.clippy]
# Restrictions
unimplemented = "warn"
panic_in_result_fn = "warn"
panic = "warn"
panic_in_result_fn = "warn"
todo = "warn"
unimplemented = "warn"
unused_trait_names = "warn"

# Pedantics without being too noisy
pedantic = { level = "warn", priority = -1 }
derive_partial_eq_without_eq = "allow"
Expand Down
2 changes: 1 addition & 1 deletion martin-core/examples/pmtiles-tileserver.rs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
use actix_web::{App, HttpResponse, HttpServer, Result as ActixResult, web};
use martin_core::tiles::pmtiles::{PmtCache, PmtCacheInstance, PmtilesSource};
use martin_core::tiles::{Source, UrlQuery};
use martin_core::tiles::{Source as _, UrlQuery};
use martin_tile_utils::TileCoord;
use serde::Deserialize;

Expand Down
2 changes: 1 addition & 1 deletion martin-core/src/config/env.rs
Original file line number Diff line number Diff line change
Expand Up @@ -110,7 +110,7 @@ mod tests {
#[cfg(unix)]
fn test_bad_os_str() {
use std::ffi::OsStr;
use std::os::unix::ffi::OsStrExt;
use std::os::unix::ffi::OsStrExt as _;

let bad_utf8 = [0x66, 0x6f, 0x80, 0x6f];
let os_str = OsStr::from_bytes(&bad_utf8[..]);
Expand Down
2 changes: 1 addition & 1 deletion martin-core/src/resources/fonts/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ use bit_set::BitSet;
use dashmap::{DashMap, Entry};
use itertools::Itertools as _;
use pbf_font_tools::freetype::{Face, Library};
use pbf_font_tools::prost::Message;
use pbf_font_tools::prost::Message as _;
use pbf_font_tools::{Fontstack, Glyphs, render_sdf_glyph};
use regex::Regex;
use serde::{Deserialize, Serialize};
Expand Down
2 changes: 1 addition & 1 deletion martin-core/src/resources/sprites/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ use serde::{Deserialize, Serialize};
pub use spreet::Spritesheet;
use spreet::resvg::usvg::{Options, Tree};
use spreet::{Sprite, SpritesheetBuilder, get_svg_input_paths, sprite_name};
use tokio::io::AsyncReadExt;
use tokio::io::AsyncReadExt as _;
use tracing::{info, warn};

use self::SpriteError::{SpriteInstError, SpriteParsingError, SpriteProcessingError};
Expand Down
2 changes: 1 addition & 1 deletion martin-core/src/tiles/postgres/tls.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ use std::fs::File;
use std::io;
use std::io::BufReader;
use std::path::PathBuf;
use std::str::FromStr;
use std::str::FromStr as _;

use deadpool_postgres::tokio_postgres::Config;
use deadpool_postgres::tokio_postgres::config::SslMode;
Expand Down
2 changes: 1 addition & 1 deletion martin-core/src/tiles/tile.rs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
use base64::Engine;
use base64::Engine as _;
use base64::engine::general_purpose::URL_SAFE_NO_PAD;
use martin_tile_utils::{TileData, TileInfo};

Expand Down
4 changes: 2 additions & 2 deletions martin-core/tests/pmtiles_test.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
use std::path::PathBuf;
use std::sync::atomic::{AtomicUsize, Ordering};

use martin_core::tiles::Source;
use martin_core::tiles::Source as _;
use martin_core::tiles::pmtiles::{PmtCache, PmtCacheInstance, PmtilesError, PmtilesSource};
use martin_tile_utils::{Encoding, Format, TileCoord};
use object_store::local::LocalFileSystem;
Expand Down Expand Up @@ -479,7 +479,7 @@ async fn shared_cache_with_unique_instance_ids_can_fetch_same_tile() {

#[tokio::test]
async fn cache_invalidation_clears_entries() {
use pmtiles::DirectoryCache;
use pmtiles::DirectoryCache as _;

let cache = test_cache_bytes(CACHE_SIZE_10MB);
let tile_id = pmtiles::TileId::new(1).unwrap();
Expand Down
6 changes: 3 additions & 3 deletions martin-tile-utils/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -509,7 +509,7 @@ mod tests {

#[test]
fn test_compressed_json_zlib() {
use std::io::Write;
use std::io::Write as _;

use flate2::write::ZlibEncoder;

Expand All @@ -533,7 +533,7 @@ mod tests {

#[test]
fn test_compressed_mlt_zlib() {
use std::io::Write;
use std::io::Write as _;

use flate2::write::ZlibEncoder;

Expand All @@ -558,7 +558,7 @@ mod tests {

#[test]
fn test_compressed_mvt_zlib_fallback() {
use std::io::Write;
use std::io::Write as _;

use flate2::write::ZlibEncoder;

Expand Down
4 changes: 2 additions & 2 deletions martin/benches/postgres_discovery.rs
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ use martin::config::file::init_aws_lc_tls;
use martin::config::file::postgres::{PostgresAutoDiscoveryBuilder, PostgresConfig};
use martin_core::config::IdResolver;
use testcontainers_modules::postgres::Postgres;
use testcontainers_modules::testcontainers::ImageExt;
use testcontainers_modules::testcontainers::runners::SyncRunner;
use testcontainers_modules::testcontainers::ImageExt as _;
use testcontainers_modules::testcontainers::runners::SyncRunner as _;

// Benchmark sizes
const SIZES: &[usize] = &[10, 100, 200];
Expand Down
8 changes: 4 additions & 4 deletions martin/src/bin/martin-cp.rs
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@ use actix_web::http::header::{ACCEPT_ENCODING, AcceptEncoding, Header as _};
use clap::Parser;
use clap::builder::Styles;
use clap::builder::styling::AnsiColor;
use futures::TryStreamExt;
use futures::stream::{self, StreamExt};
use futures::TryStreamExt as _;
use futures::stream::{self, StreamExt as _};
use martin::config::args::{Args, ExtraArgs, MetaArgs, SrvArgs};
use martin::config::file::{Config, ServerState, read_config};
use martin::logging::{ensure_martin_core_log_level_matches, init_tracing};
Expand Down Expand Up @@ -639,7 +639,7 @@ async fn main() {

#[cfg(test)]
mod tests {
use std::str::FromStr;
use std::str::FromStr as _;

use async_trait::async_trait;
use insta::assert_yaml_snapshot;
Expand Down Expand Up @@ -790,7 +790,7 @@ mod tests {
#[case("-120.0,-90.0,-110.0,40.0", Err("latitude".to_string()))]
#[case("-120.0,30.0,-110.0,90.0", Err("latitude".to_string()))]
fn test_check_bboxes(#[case] bbox_str: &str, #[case] expected: Result<String, String>) {
use std::str::FromStr;
use std::str::FromStr as _;

let bbox_vec = if bbox_str.is_empty() {
vec![]
Expand Down
2 changes: 1 addition & 1 deletion martin/src/bin/martin.rs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
use std::env;

use clap::Parser;
use clap::Parser as _;
use martin::MartinResult;
use martin::config::args::Args;
use martin::config::file::{Config, read_config};
Expand Down
2 changes: 1 addition & 1 deletion martin/src/config/file/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ use crate::config::file::FileConfigEnum;
#[cfg(any(feature = "_tiles", feature = "sprites", feature = "fonts"))]
use crate::config::file::cache::CacheConfig;
use crate::config::file::{
ConfigFileError, ConfigFileResult, ConfigurationLivecycleHooks, UnrecognizedKeys,
ConfigFileError, ConfigFileResult, ConfigurationLivecycleHooks as _, UnrecognizedKeys,
UnrecognizedValues, copy_unrecognized_keys_from_config,
};
#[cfg(feature = "_tiles")]
Expand Down
2 changes: 1 addition & 1 deletion martin/src/config/file/tiles/mbtiles.rs
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ mod tests {

use crate::config::file::mbtiles::MbtConfig;
use crate::config::file::{
ConfigurationLivecycleHooks, FileConfigEnum, FileConfigSource, FileConfigSrc,
ConfigurationLivecycleHooks as _, FileConfigEnum, FileConfigSource, FileConfigSrc,
};

#[test]
Expand Down
2 changes: 1 addition & 1 deletion martin/src/config/file/tiles/pmtiles.rs
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
use std::collections::HashMap;
use std::env;
use std::path::PathBuf;
use std::str::FromStr;
use std::str::FromStr as _;

use martin_core::tiles::BoxedSource;
use martin_core::tiles::pmtiles::{PmtCache, PmtCacheInstance, PmtilesSource};
Expand Down
4 changes: 2 additions & 2 deletions martin/src/config/file/tiles/postgres/builder.rs
Original file line number Diff line number Diff line change
Expand Up @@ -767,8 +767,8 @@ mod tests {
#[tracing_test::traced_test]
async fn test_nonexistent_tables_functions_generate_warning() {
use testcontainers_modules::postgres::Postgres;
use testcontainers_modules::testcontainers::ImageExt;
use testcontainers_modules::testcontainers::runners::AsyncRunner;
use testcontainers_modules::testcontainers::ImageExt as _;
use testcontainers_modules::testcontainers::runners::AsyncRunner as _;

let container = Postgres::default()
.with_name("postgis/postgis")
Expand Down
2 changes: 1 addition & 1 deletion martin/src/config/file/tiles/postgres/config.rs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
use std::ops::Add;
use std::ops::Add as _;
use std::time::Duration;

use futures::future::try_join;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ use tokio::time::timeout;
use tracing::{debug, warn};

use crate::config::args::{BoundsCalcType, DEFAULT_BOUNDS_TIMEOUT};
use crate::config::file::postgres::{PostgresInfo, TableInfo};
use crate::config::file::postgres::{PostgresInfo as _, TableInfo};

/// Map of `PostgreSQL` tables organized by schema, table, and geometry column.
pub type SqlTableInfoMapMapMap = BTreeMap<String, BTreeMap<String, BTreeMap<String, TableInfo>>>;
Expand Down Expand Up @@ -281,7 +281,7 @@ FROM {schema}.{table};

#[must_use]
pub fn polygon_to_bbox(polygon: &ewkb::Polygon) -> Option<Bounds> {
use postgis::{LineString, Point, Polygon};
use postgis::{LineString as _, Point as _, Polygon as _};

polygon.rings().next().and_then(|linestring| {
let mut points = linestring.points();
Expand Down
2 changes: 1 addition & 1 deletion martin/src/config/file/tiles/postgres/utils.rs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
use std::collections::BTreeMap;

use itertools::Itertools;
use itertools::Itertools as _;
use tilejson::TileJSON;
use tracing::{error, info};

Expand Down
2 changes: 1 addition & 1 deletion martin/src/srv/fonts.rs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
use std::string::ToString;
use std::string::ToString as _;

use actix_middleware_etag::Etag;
use actix_web::error::{ErrorBadRequest, ErrorNotFound};
Expand Down
4 changes: 2 additions & 2 deletions martin/src/srv/server.rs
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
use std::future::Future;
use std::pin::Pin;
use std::string::ToString;
use std::string::ToString as _;
use std::time::Duration;

use actix_web::http::header::CACHE_CONTROL;
use actix_web::middleware::{NormalizePath, TrailingSlash};
use actix_web::web::Data;
use actix_web::{App, HttpResponse, HttpServer, Responder, middleware, route, web};
use futures::TryFutureExt;
use futures::TryFutureExt as _;
#[cfg(feature = "lambda")]
use lambda_web::{is_running_on_lambda, run_actix_on_lambda};
use tracing_actix_web::TracingLogger;
Expand Down
2 changes: 1 addition & 1 deletion martin/src/srv/sprites.rs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
use std::string::ToString;
use std::string::ToString as _;

use actix_middleware_etag::Etag;
use actix_web::error::ErrorNotFound;
Expand Down
4 changes: 2 additions & 2 deletions martin/src/srv/tiles/content.rs
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ use actix_web::http::header::{
Preference,
};
use actix_web::web::{Data, Path, Query};
use actix_web::{HttpMessage, HttpRequest, HttpResponse, Result as ActixResult, route};
use actix_web::{HttpMessage as _, HttpRequest, HttpResponse, Result as ActixResult, route};
use futures::future::try_join_all;
use martin_core::tiles::{BoxedSource, OptTileCache, Tile, TileCache, UrlQuery};
use martin_tile_utils::{
Expand Down Expand Up @@ -323,7 +323,7 @@ pub fn to_encoding(val: ContentEncoding) -> Option<Encoding> {

#[cfg(test)]
mod tests {
use actix_http::header::TryIntoHeaderValue;
use actix_http::header::TryIntoHeaderValue as _;
use rstest::rstest;
use tilejson::tilejson;

Expand Down
2 changes: 1 addition & 1 deletion martin/src/srv/tiles/metadata.rs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
use std::string::ToString;
use std::string::ToString as _;

use actix_middleware_etag::Etag;
use actix_web::error::ErrorBadRequest;
Expand Down
2 changes: 1 addition & 1 deletion mbtiles/src/bin/mbtiles.rs
Original file line number Diff line number Diff line change
Expand Up @@ -368,7 +368,7 @@ async fn meta_set_value(file: &Path, key: &str, value: Option<&str>) -> MbtResul
mod tests {
use std::path::PathBuf;

use clap::Parser;
use clap::Parser as _;
use clap::error::ErrorKind;
use mbtiles::CopyDuplicateMode;

Expand Down
4 changes: 2 additions & 2 deletions mbtiles/src/bindiff.rs
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,12 @@ use std::time::Instant;

use enum_display::EnumDisplay;
use flume::{Receiver, Sender, bounded};
use futures::TryStreamExt;
use futures::TryStreamExt as _;
use log::{debug, error, info};
use martin_tile_utils::{TileCoord, decode_brotli, decode_gzip, encode_brotli, encode_gzip};
use serde::{Deserialize, Serialize};
use sqlite_compressions::{BsdiffRawDiffer, Differ as _};
use sqlx::{Executor, Row, SqliteConnection, query};
use sqlx::{Executor as _, Row as _, SqliteConnection, query};
use xxhash_rust::xxh3::xxh3_64;

use crate::MbtType::{Flat, FlatWithHash, Normalized};
Expand Down
2 changes: 1 addition & 1 deletion mbtiles/src/copier.rs
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ use log::{debug, info, trace, warn};
use martin_tile_utils::{MAX_ZOOM, bbox_to_xyz};
use serde::{Deserialize, Serialize};
use sqlite_hashes::rusqlite::Connection;
use sqlx::{Connection as _, Executor as _, Row, SqliteConnection, query};
use sqlx::{Connection as _, Executor as _, Row as _, SqliteConnection, query};
use tilejson::Bounds;

use crate::AggHashType::Verify;
Expand Down
9 changes: 6 additions & 3 deletions mbtiles/src/mbtiles.rs
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,10 @@ use serde::{Deserialize, Serialize};
use sqlite_compressions::{register_bsdiffraw_functions, register_gzip_functions};
use sqlite_hashes::register_md5_functions;
use sqlx::sqlite::SqliteConnectOptions;
use sqlx::{Connection as _, Executor, Row, SqliteConnection, SqliteExecutor, Statement, query};
use sqlx::{
Connection as _, Executor as _, Row as _, SqliteConnection, SqliteExecutor, Statement as _,
query,
};

use crate::bindiff::PatchType;
use crate::errors::{MbtError, MbtResult};
Expand Down Expand Up @@ -334,7 +337,7 @@ impl Mbtiles {
where
&'e mut T: SqliteExecutor<'e>,
{
use futures::StreamExt;
use futures::StreamExt as _;

let query = query! {"SELECT zoom_level, tile_column, tile_row FROM tiles"};
let stream = query.fetch(conn);
Expand Down Expand Up @@ -381,7 +384,7 @@ impl Mbtiles {
where
&'e mut T: SqliteExecutor<'e>,
{
use futures::StreamExt;
use futures::StreamExt as _;

let query = query! {"SELECT zoom_level, tile_column, tile_row, tile_data FROM tiles"};
let stream = query.fetch(conn);
Expand Down
4 changes: 2 additions & 2 deletions mbtiles/src/metadata.rs
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
use std::fmt::Display;
use std::path::PathBuf;
use std::str::FromStr;
use std::str::FromStr as _;

use futures::TryStreamExt;
use futures::TryStreamExt as _;
use log::{info, warn};
use serde::Serialize;
use serde_json::{Value as JSONValue, Value, json};
Expand Down
2 changes: 1 addition & 1 deletion mbtiles/src/queries.rs
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
use log::debug;
use martin_tile_utils::MAX_ZOOM;
use sqlite_compressions::rusqlite::Connection;
use sqlx::{Executor as _, Row, SqliteConnection, SqliteExecutor, query};
use sqlx::{Executor as _, Row as _, SqliteConnection, SqliteExecutor, query};

use crate::MbtError::InvalidZoomValue;
use crate::MbtType;
Expand Down
2 changes: 1 addition & 1 deletion mbtiles/src/summary.rs
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

use std::fmt::{Display, Formatter};
use std::path::PathBuf;
use std::str::FromStr;
use std::str::FromStr as _;

use martin_tile_utils::{get_zoom_precision, xyz_to_bbox};
use serde::Serialize;
Expand Down
2 changes: 1 addition & 1 deletion mbtiles/src/validation.rs
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ use martin_tile_utils::{Format, MAX_ZOOM, TileInfo};
use serde::Serialize;
use serde_json::Value;
use sqlx::sqlite::SqliteRow;
use sqlx::{Row, SqliteConnection, SqliteExecutor, query};
use sqlx::{Row as _, SqliteConnection, SqliteExecutor, query};
use tilejson::TileJSON;

use crate::MbtError::{
Expand Down
2 changes: 1 addition & 1 deletion mbtiles/tests/copy.rs
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ use mbtiles::{
use pretty_assertions::assert_eq as pretty_assert_eq;
use rstest::{fixture, rstest};
use serde::Serialize;
use sqlx::{Executor as _, Row, SqliteConnection, query, query_as};
use sqlx::{Executor as _, Row as _, SqliteConnection, query, query_as};
use tokio::runtime::Handle;

const GZIP_TILES: &str = "UPDATE tiles SET tile_data = gzip(tile_data);";
Expand Down
2 changes: 1 addition & 1 deletion mbtiles/tests/streams.rs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
use futures::{StreamExt, TryStreamExt};
use futures::{StreamExt as _, TryStreamExt as _};
use martin_tile_utils::{Tile, TileCoord};
use mbtiles::{MbtError, Mbtiles, create_metadata_table};
use sqlx::{Executor as _, SqliteConnection, query};
Expand Down
Loading