Migrate to axum 0.8
This commit is contained in:
parent
055a81e6f9
commit
466bbf5cf3
6 changed files with 97 additions and 105 deletions
142
Cargo.lock
generated
142
Cargo.lock
generated
|
@ -1,6 +1,6 @@
|
|||
# This file is automatically @generated by Cargo.
|
||||
# It is not intended for manual editing.
|
||||
version = 3
|
||||
version = 4
|
||||
|
||||
[[package]]
|
||||
name = "addr2line"
|
||||
|
@ -65,6 +65,16 @@ version = "0.7.4"
|
|||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711"
|
||||
|
||||
[[package]]
|
||||
name = "assert-json-diff"
|
||||
version = "2.0.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "47e4f2b81832e72834d7518d8487a0396a28cc408186a2e8854c0f98011faf12"
|
||||
dependencies = [
|
||||
"serde",
|
||||
"serde_json",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "async-compression"
|
||||
version = "0.4.12"
|
||||
|
@ -78,17 +88,6 @@ dependencies = [
|
|||
"tokio",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "async-trait"
|
||||
version = "0.1.81"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "6e0c28dcc82d7c8ead5cb13beb15405b57b8546e93215673ff8ca0349a028107"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
"syn 2.0.72",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "auto-future"
|
||||
version = "1.0.0"
|
||||
|
@ -103,15 +102,15 @@ checksum = "0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0"
|
|||
|
||||
[[package]]
|
||||
name = "axum"
|
||||
version = "0.7.5"
|
||||
version = "0.8.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "3a6c9af12842a67734c9a2e355436e5d03b22383ed60cf13cd0c18fbfe3dcbcf"
|
||||
checksum = "6d6fd624c75e18b3b4c6b9caf42b1afe24437daaee904069137d8bab077be8b8"
|
||||
dependencies = [
|
||||
"async-trait",
|
||||
"axum-core",
|
||||
"bytes",
|
||||
"form_urlencoded",
|
||||
"futures-util",
|
||||
"http 1.1.0",
|
||||
"http 1.2.0",
|
||||
"http-body",
|
||||
"http-body-util",
|
||||
"hyper",
|
||||
|
@ -127,9 +126,9 @@ dependencies = [
|
|||
"serde_json",
|
||||
"serde_path_to_error",
|
||||
"serde_urlencoded",
|
||||
"sync_wrapper 1.0.1",
|
||||
"sync_wrapper",
|
||||
"tokio",
|
||||
"tower 0.4.13",
|
||||
"tower 0.5.2",
|
||||
"tower-layer",
|
||||
"tower-service",
|
||||
"tracing",
|
||||
|
@ -137,20 +136,19 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "axum-core"
|
||||
version = "0.4.3"
|
||||
version = "0.5.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "a15c63fd72d41492dc4f497196f5da1fb04fb7529e631d73630d1b491e47a2e3"
|
||||
checksum = "df1362f362fd16024ae199c1970ce98f9661bf5ef94b9808fee734bc3698b733"
|
||||
dependencies = [
|
||||
"async-trait",
|
||||
"bytes",
|
||||
"futures-util",
|
||||
"http 1.1.0",
|
||||
"http 1.2.0",
|
||||
"http-body",
|
||||
"http-body-util",
|
||||
"mime",
|
||||
"pin-project-lite",
|
||||
"rustversion",
|
||||
"sync_wrapper 0.1.2",
|
||||
"sync_wrapper",
|
||||
"tower-layer",
|
||||
"tower-service",
|
||||
"tracing",
|
||||
|
@ -158,32 +156,30 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "axum-extra"
|
||||
version = "0.9.3"
|
||||
version = "0.10.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "0be6ea09c9b96cb5076af0de2e383bd2bc0c18f827cf1967bdd353e0b910d733"
|
||||
checksum = "460fc6f625a1f7705c6cf62d0d070794e94668988b1c38111baeec177c715f7b"
|
||||
dependencies = [
|
||||
"axum",
|
||||
"axum-core",
|
||||
"bytes",
|
||||
"futures-util",
|
||||
"headers",
|
||||
"http 1.1.0",
|
||||
"http 1.2.0",
|
||||
"http-body",
|
||||
"http-body-util",
|
||||
"mime",
|
||||
"pin-project-lite",
|
||||
"serde",
|
||||
"tower 0.4.13",
|
||||
"tower 0.5.2",
|
||||
"tower-layer",
|
||||
"tower-service",
|
||||
"tracing",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "axum-range"
|
||||
version = "0.4.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "b1c30398a7f716ebdd7f3c8a4f7a7a6df48a30e002007fd57b2a7a00fac864bd"
|
||||
version = "0.5.0"
|
||||
source = "git+https://github.com/agersant/axum-range?branch=axum-0.8#71028e28d09a10b9c85fa4db16ae96dc299f68f4"
|
||||
dependencies = [
|
||||
"axum",
|
||||
"axum-extra",
|
||||
|
@ -196,16 +192,18 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "axum-test"
|
||||
version = "15.7.0"
|
||||
version = "17.0.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "6c13fee69ea6d727350c4fcb5f9100fda3b6b73bfae33da6b4acd3b6934f6e73"
|
||||
checksum = "fb67e8e9ef63a57d8f494ce291b92a215413ab9752a12bbf7de4969acb7b8cdd"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"assert-json-diff",
|
||||
"auto-future",
|
||||
"axum",
|
||||
"bytes",
|
||||
"bytesize",
|
||||
"cookie",
|
||||
"http 1.1.0",
|
||||
"http 1.2.0",
|
||||
"http-body-util",
|
||||
"hyper",
|
||||
"hyper-util",
|
||||
|
@ -218,7 +216,7 @@ dependencies = [
|
|||
"serde_urlencoded",
|
||||
"smallvec",
|
||||
"tokio",
|
||||
"tower 0.5.0",
|
||||
"tower 0.5.2",
|
||||
"url",
|
||||
]
|
||||
|
||||
|
@ -352,9 +350,15 @@ checksum = "8f1fe948ff07f4bd06c30984e69f5b4899c516a3ef74f34df92a2df2ab535495"
|
|||
|
||||
[[package]]
|
||||
name = "bytes"
|
||||
version = "1.7.1"
|
||||
version = "1.9.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "8318a53db07bb3f8dca91a600466bdb3f2eaadeedfdbcf02e1accbad9271ba50"
|
||||
checksum = "325918d6fe32f23b19878fe4b34794ae41fc19ddbe53b10571a4874d44ffd39b"
|
||||
|
||||
[[package]]
|
||||
name = "bytesize"
|
||||
version = "1.3.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "a3e368af43e418a04d52505cf3dbc23dda4e3407ae2fa99fd0e4f308ce546acc"
|
||||
|
||||
[[package]]
|
||||
name = "camino"
|
||||
|
@ -870,7 +874,7 @@ dependencies = [
|
|||
"base64 0.21.7",
|
||||
"bytes",
|
||||
"headers-core",
|
||||
"http 1.1.0",
|
||||
"http 1.2.0",
|
||||
"httpdate",
|
||||
"mime",
|
||||
"sha1",
|
||||
|
@ -882,7 +886,7 @@ version = "0.3.0"
|
|||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "54b4a22553d4242c49fddb9ba998a99962b5cc6f22cb5a3482bec22522403ce4"
|
||||
dependencies = [
|
||||
"http 1.1.0",
|
||||
"http 1.2.0",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
|
@ -919,9 +923,9 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "http"
|
||||
version = "1.1.0"
|
||||
version = "1.2.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258"
|
||||
checksum = "f16ca2af56261c99fba8bac40a10251ce8188205a4c448fbb745a2e4daa76fea"
|
||||
dependencies = [
|
||||
"bytes",
|
||||
"fnv",
|
||||
|
@ -935,7 +939,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
|||
checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184"
|
||||
dependencies = [
|
||||
"bytes",
|
||||
"http 1.1.0",
|
||||
"http 1.2.0",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
|
@ -946,7 +950,7 @@ checksum = "793429d76616a256bcb62c2a2ec2bed781c8307e797e2598c50010f2bee2544f"
|
|||
dependencies = [
|
||||
"bytes",
|
||||
"futures-util",
|
||||
"http 1.1.0",
|
||||
"http 1.2.0",
|
||||
"http-body",
|
||||
"pin-project-lite",
|
||||
]
|
||||
|
@ -971,14 +975,14 @@ checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9"
|
|||
|
||||
[[package]]
|
||||
name = "hyper"
|
||||
version = "1.4.1"
|
||||
version = "1.5.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "50dfd22e0e76d0f662d429a5f80fcaf3855009297eab6a0a9f8543834744ba05"
|
||||
checksum = "256fb8d4bd6413123cc9d91832d78325c48ff41677595be797d90f42969beae0"
|
||||
dependencies = [
|
||||
"bytes",
|
||||
"futures-channel",
|
||||
"futures-util",
|
||||
"http 1.1.0",
|
||||
"http 1.2.0",
|
||||
"http-body",
|
||||
"httparse",
|
||||
"httpdate",
|
||||
|
@ -998,7 +1002,7 @@ dependencies = [
|
|||
"bytes",
|
||||
"futures-channel",
|
||||
"futures-util",
|
||||
"http 1.1.0",
|
||||
"http 1.2.0",
|
||||
"http-body",
|
||||
"hyper",
|
||||
"pin-project-lite",
|
||||
|
@ -1274,9 +1278,9 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "libc"
|
||||
version = "0.2.155"
|
||||
version = "0.2.169"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c"
|
||||
checksum = "b5aba8db14291edd000dfcc4d620c7ebfb122c613afb886ca8803fa4e128a20a"
|
||||
|
||||
[[package]]
|
||||
name = "libredox"
|
||||
|
@ -1340,9 +1344,9 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "matchit"
|
||||
version = "0.7.3"
|
||||
version = "0.8.4"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "0e7465ac9959cc2b1404e8e2367b43684a6d13790fe23056cc8c6c5a6b7bcb94"
|
||||
checksum = "47e1ffaa40ddd1f3ed91f717a33c8c0ee23fff369e3aa8772b9605cc1d22f4c3"
|
||||
|
||||
[[package]]
|
||||
name = "memchr"
|
||||
|
@ -1764,7 +1768,7 @@ dependencies = [
|
|||
"enum-map",
|
||||
"getopts",
|
||||
"headers",
|
||||
"http 1.1.0",
|
||||
"http 1.2.0",
|
||||
"icu_collator",
|
||||
"id3",
|
||||
"image",
|
||||
|
@ -1800,7 +1804,7 @@ dependencies = [
|
|||
"tokio",
|
||||
"tokio-util",
|
||||
"toml 0.8.19",
|
||||
"tower 0.5.0",
|
||||
"tower 0.5.2",
|
||||
"tower-http",
|
||||
"trie-rs",
|
||||
"unicase",
|
||||
|
@ -2564,12 +2568,6 @@ dependencies = [
|
|||
"unicode-ident",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "sync_wrapper"
|
||||
version = "0.1.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160"
|
||||
|
||||
[[package]]
|
||||
name = "sync_wrapper"
|
||||
version = "1.0.1"
|
||||
|
@ -2690,9 +2688,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
|
|||
|
||||
[[package]]
|
||||
name = "tokio"
|
||||
version = "1.40.0"
|
||||
version = "1.43.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "e2b070231665d27ad9ec9b8df639893f46727666c6767db40317fbe920a5d998"
|
||||
checksum = "3d61fa4ffa3de412bfea335c6ecff681de2b609ba3c77ef3e00e521813a9ed9e"
|
||||
dependencies = [
|
||||
"backtrace",
|
||||
"bytes",
|
||||
|
@ -2706,9 +2704,9 @@ dependencies = [
|
|||
|
||||
[[package]]
|
||||
name = "tokio-macros"
|
||||
version = "2.4.0"
|
||||
version = "2.5.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752"
|
||||
checksum = "6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8"
|
||||
dependencies = [
|
||||
"proc-macro2",
|
||||
"quote",
|
||||
|
@ -2784,36 +2782,36 @@ dependencies = [
|
|||
"tokio",
|
||||
"tower-layer",
|
||||
"tower-service",
|
||||
"tracing",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "tower"
|
||||
version = "0.5.0"
|
||||
version = "0.5.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "36b837f86b25d7c0d7988f00a54e74739be6477f2aac6201b8f429a7569991b7"
|
||||
checksum = "d039ad9159c98b70ecfd540b2573b97f7f52c3e8d9f8ad57a24b916a536975f9"
|
||||
dependencies = [
|
||||
"futures-core",
|
||||
"futures-util",
|
||||
"pin-project-lite",
|
||||
"sync_wrapper 0.1.2",
|
||||
"sync_wrapper",
|
||||
"tokio",
|
||||
"tower-layer",
|
||||
"tower-service",
|
||||
"tracing",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "tower-http"
|
||||
version = "0.5.2"
|
||||
version = "0.6.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "1e9cd434a998747dd2c4276bc96ee2e0c7a2eadf3cae88e52be55a05fa9053f5"
|
||||
checksum = "403fa3b783d4b626a8ad51d766ab03cb6d2dbfc46b1c5d4448395e6628dc9697"
|
||||
dependencies = [
|
||||
"async-compression",
|
||||
"bitflags 2.6.0",
|
||||
"bytes",
|
||||
"futures-core",
|
||||
"futures-util",
|
||||
"http 1.1.0",
|
||||
"http 1.2.0",
|
||||
"http-body",
|
||||
"http-body-util",
|
||||
"http-range-header",
|
||||
|
@ -2837,9 +2835,9 @@ checksum = "121c2a6cda46980bb0fcd1647ffaf6cd3fc79a013de288782836f6df9c48780e"
|
|||
|
||||
[[package]]
|
||||
name = "tower-service"
|
||||
version = "0.3.2"
|
||||
version = "0.3.3"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52"
|
||||
checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3"
|
||||
|
||||
[[package]]
|
||||
name = "tracing"
|
||||
|
|
12
Cargo.toml
12
Cargo.toml
|
@ -13,8 +13,8 @@ lto = "thin"
|
|||
|
||||
[dependencies]
|
||||
ape = "0.5"
|
||||
axum-extra = { version = "0.9.3", features = ["typed-header"] }
|
||||
axum-range = "0.4.0"
|
||||
axum-extra = { version = "0.10.0", features = ["typed-header"] }
|
||||
axum-range = { git = "https://github.com/agersant/axum-range", branch = "axum-0.8" }
|
||||
bitcode = { version = "0.6.3", features = ["serde"] }
|
||||
branca = "0.10.1"
|
||||
chumsky = "0.9.3"
|
||||
|
@ -56,8 +56,8 @@ thiserror = "1.0.62"
|
|||
tokio = { version = "1.39", features = ["macros", "rt-multi-thread"] }
|
||||
tokio-util = { version = "0.7.11", features = ["io"] }
|
||||
toml = "0.8.19"
|
||||
tower = { version = "0.5.0" }
|
||||
tower-http = { version = "0.5.2", features = [
|
||||
tower = { version = "0.5.2" }
|
||||
tower-http = { version = "0.6.2", features = [
|
||||
"compression-gzip",
|
||||
"fs",
|
||||
"normalize-path",
|
||||
|
@ -67,7 +67,7 @@ unicase = "2.7.0"
|
|||
ureq = { version = "2.10.0", default-features = false, features = ["tls"] }
|
||||
|
||||
[dependencies.axum]
|
||||
version = "0.7.5"
|
||||
version = "0.8.1"
|
||||
default-features = false
|
||||
features = ["http1", "json", "tokio", "tower-log", "query"]
|
||||
|
||||
|
@ -95,6 +95,6 @@ embed-resource = "2.4.2"
|
|||
winres = "0.1"
|
||||
|
||||
[dev-dependencies]
|
||||
axum-test = "15.7"
|
||||
axum-test = "17.0"
|
||||
bytes = "1.7.1"
|
||||
percent-encoding = "2.2"
|
||||
|
|
|
@ -21,14 +21,14 @@ pub fn make_router(app: App) -> NormalizePath<Router> {
|
|||
let swagger = ServeDir::new(&app.swagger_dir_path);
|
||||
|
||||
let static_files = Router::new()
|
||||
.nest_service("/", ServeDir::new(&app.web_dir_path))
|
||||
.fallback_service(ServeDir::new(&app.web_dir_path))
|
||||
.layer(CompressionLayer::new());
|
||||
|
||||
let router = Router::new()
|
||||
.nest("/api", api::router())
|
||||
.with_state(app.clone())
|
||||
.nest_service("/swagger", swagger)
|
||||
.nest("/", static_files)
|
||||
.fallback_service(static_files)
|
||||
.layer(logger::LogLayer::new());
|
||||
|
||||
NormalizePathLayer::trim_trailing_slash().layer(router)
|
||||
|
|
|
@ -37,44 +37,44 @@ pub fn router() -> Router<App> {
|
|||
.route("/index_status", get(get_index_status))
|
||||
// User management
|
||||
.route("/user", post(post_user))
|
||||
.route("/user/:name", delete(delete_user))
|
||||
.route("/user/:name", put(put_user))
|
||||
.route("/user/{name}", delete(delete_user))
|
||||
.route("/user/{name}", put(put_user))
|
||||
.route("/users", get(get_users))
|
||||
// File browser
|
||||
.route("/browse", get(get_browse_root))
|
||||
.route("/browse/*path", get(get_browse))
|
||||
.route("/browse/{*path}", get(get_browse))
|
||||
.route("/flatten", get(get_flatten_root))
|
||||
.route("/flatten/*path", get(get_flatten))
|
||||
.route("/flatten/{*path}", get(get_flatten))
|
||||
// Semantic
|
||||
.route("/albums", get(get_albums))
|
||||
.route("/albums/recent", get(get_recent_albums))
|
||||
.route("/albums/random", get(get_random_albums))
|
||||
.route("/artists", get(get_artists))
|
||||
.route("/artists/:artist", get(get_artist))
|
||||
.route("/artists/:artists/albums/:name", get(get_album))
|
||||
.route("/artists/{artist}", get(get_artist))
|
||||
.route("/artists/{artists}/albums/{name}", get(get_album))
|
||||
.route("/genres", get(get_genres))
|
||||
.route("/genres/:genre", get(get_genre))
|
||||
.route("/genres/:genre/albums", get(get_genre_albums))
|
||||
.route("/genres/:genre/artists", get(get_genre_artists))
|
||||
.route("/genres/:genre/songs", get(get_genre_songs))
|
||||
.route("/genres/{genre}", get(get_genre))
|
||||
.route("/genres/{genre}/albums", get(get_genre_albums))
|
||||
.route("/genres/{genre}/artists", get(get_genre_artists))
|
||||
.route("/genres/{genre}/songs", get(get_genre_songs))
|
||||
.route("/random", get(get_random_albums)) // Deprecated
|
||||
.route("/recent", get(get_recent_albums)) // Deprecated
|
||||
// Search
|
||||
.route("/search/*query", get(get_search))
|
||||
.route("/search/{*query}", get(get_search))
|
||||
// Playlist management
|
||||
.route("/playlists", get(get_playlists))
|
||||
.route("/playlist/:name", put(put_playlist))
|
||||
.route("/playlist/:name", get(get_playlist))
|
||||
.route("/playlist/:name", delete(delete_playlist))
|
||||
.route("/playlist/{name}", put(put_playlist))
|
||||
.route("/playlist/{name}", get(get_playlist))
|
||||
.route("/playlist/{name}", delete(delete_playlist))
|
||||
// Media
|
||||
.route("/songs", post(get_songs)) // post because of https://github.com/whatwg/fetch/issues/551
|
||||
.route("/peaks/*path", get(get_peaks))
|
||||
.route("/thumbnail/*path", get(get_thumbnail))
|
||||
.route("/peaks/{*path}", get(get_peaks))
|
||||
.route("/thumbnail/{*path}", get(get_thumbnail))
|
||||
// Layers
|
||||
.layer(CompressionLayer::new().quality(CompressionLevel::Fastest))
|
||||
.layer(DefaultBodyLimit::max(10 * 1024 * 1024)) // 10MB
|
||||
// Uncompressed
|
||||
.route("/audio/*path", get(get_audio))
|
||||
.route("/audio/{*path}", get(get_audio))
|
||||
}
|
||||
|
||||
async fn get_version() -> Json<dto::Version> {
|
||||
|
|
|
@ -1,7 +1,4 @@
|
|||
use axum::{
|
||||
async_trait,
|
||||
extract::{FromRef, FromRequestParts, Query},
|
||||
};
|
||||
use axum::extract::{FromRef, FromRequestParts, Query};
|
||||
use headers::authorization::{Bearer, Credentials};
|
||||
use http::request::Parts;
|
||||
|
||||
|
@ -21,7 +18,6 @@ impl Auth {
|
|||
}
|
||||
}
|
||||
|
||||
#[async_trait]
|
||||
impl<S> FromRequestParts<S> for Auth
|
||||
where
|
||||
config::Manager: FromRef<S>,
|
||||
|
@ -67,7 +63,6 @@ impl AdminRights {
|
|||
}
|
||||
}
|
||||
|
||||
#[async_trait]
|
||||
impl<S> FromRequestParts<S> for AdminRights
|
||||
where
|
||||
config::Manager: FromRef<S>,
|
||||
|
|
|
@ -1,9 +1,8 @@
|
|||
use axum::{async_trait, extract::FromRequestParts};
|
||||
use axum::extract::FromRequestParts;
|
||||
use http::request::Parts;
|
||||
|
||||
use crate::server::{error::APIError, APIMajorVersion};
|
||||
|
||||
#[async_trait]
|
||||
impl<S> FromRequestParts<S> for APIMajorVersion
|
||||
where
|
||||
S: Send + Sync,
|
||||
|
|
Loading…
Add table
Reference in a new issue