From 35ff21b423fe7a7587112c7041c9478b9f05229f Mon Sep 17 00:00:00 2001 From: "Aode (lion)" Date: Tue, 1 Feb 2022 10:58:27 -0600 Subject: [PATCH] Actix Web rc 1 --- .cargo/config | 2 +- Cargo.lock | 79 +++++++++++++++++++++++++-------------------------- Cargo.toml | 22 +++++++++----- src/main.rs | 6 +++- 4 files changed, 60 insertions(+), 49 deletions(-) diff --git a/.cargo/config b/.cargo/config index bff29e6..5dbf2c8 100644 --- a/.cargo/config +++ b/.cargo/config @@ -1,2 +1,2 @@ [build] -rustflags = ["--cfg", "tokio_unstable"] +# rustflags = ["--cfg", "tokio_unstable"] diff --git a/Cargo.lock b/Cargo.lock index 9fce8f4..0218a9c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -21,9 +21,9 @@ dependencies = [ [[package]] name = "actix-http" -version = "3.0.0-beta.19" +version = "3.0.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae58d21721388ea9b2cd0d4c11756b0f34424cdcd6e5cc74c3ce37b4641c8af0" +checksum = "08aac516b88cb8cfbfa834c76b58607ffac75946d947dcb6a9ffc5673e1e875d" dependencies = [ "actix-codec", "actix-rt", @@ -65,9 +65,9 @@ dependencies = [ [[package]] name = "actix-router" -version = "0.5.0-rc.2" +version = "0.5.0-rc.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e0b59ad08167ffbb686ddb495846707231e96908b829b1fc218198ec581e2ad" +checksum = "cb6506dbef336634ff35d994d58daa0a412ea23751f15f9b4dcac4d594b1ed1f" dependencies = [ "bytestring", "firestorm", @@ -119,15 +119,14 @@ dependencies = [ [[package]] name = "actix-tls" -version = "3.0.1" +version = "3.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b161450ff646361005a300716e85856780ddc2fde569fd81335cc3c15b2e0933" +checksum = "a31ab31563b611fa822480b4255e8750cf0af9ce1b8b7bde298afe8447ef9333" dependencies = [ "actix-codec", "actix-rt", "actix-service", "actix-utils", - "derive_more", "futures-core", "http", "log", @@ -147,9 +146,9 @@ dependencies = [ [[package]] name = "actix-web" -version = "4.0.0-beta.21" +version = "4.0.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "606fc29a9bde2907243086ceb93ce56df7584276c2c46abc64a524f645c63c5e" +checksum = "d7bfa913583b6cfe5f0d1588e752bcf6b107556422624fefdaf99c40ba2b7f16" dependencies = [ "actix-codec", "actix-http", @@ -185,9 +184,9 @@ dependencies = [ [[package]] name = "actix-web-codegen" -version = "0.5.0-rc.1" +version = "0.5.0-rc.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "98a793e4a7bd059e06e1bc1bd9943b57a47f806de3599d2437441682292c333e" +checksum = "4d0976042e6ddc82c7d0dedd64d39959bc26d9bba098b2f6c32a73fbef784eaf" dependencies = [ "actix-router", "proc-macro2", @@ -293,9 +292,9 @@ checksum = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a" [[package]] name = "awc" -version = "3.0.0-beta.19" +version = "3.0.0-beta.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a4cf9b623ee9974723a10c77a3b8c1060ac2d6cfe6d3326512bbc50fe36fad8" +checksum = "4a64a95bbf4905fd057ea45b70fdfeeb9c7ae09f03f091642c4e66a16ebb3ad5" dependencies = [ "actix-codec", "actix-http", @@ -717,9 +716,9 @@ dependencies = [ [[package]] name = "h2" -version = "0.3.10" +version = "0.3.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c9de88456263e249e241fcd211d3954e2c9b0ef7ccfc235a444eb367cae3689" +checksum = "d9f1f717ddc7b2ba36df7e871fd88db79326551d3d6f1fc406fbfd28b582ff8e" dependencies = [ "bytes", "fnv", @@ -934,9 +933,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.113" +version = "0.2.116" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eef78b64d87775463c549fbd80e19249ef436ea3bf1de2a1eb7e717ec7fab1e9" +checksum = "565dbd88872dbe4cc8a46e527f26483c1d1f7afa6b884a3bd6cd893d4f98da74" [[package]] name = "local-channel" @@ -958,9 +957,9 @@ checksum = "902eb695eb0591864543cbfbf6d742510642a605a61fc5e97fe6ceb5a30ac4fb" [[package]] name = "lock_api" -version = "0.4.5" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "712a4d093c9976e24e7dbca41db895dabcbac38eb5f4045393d17a95bdfb1109" +checksum = "88943dd7ef4a2e5a4bfa2753aaab3013e34ce2533d1996fb18ef591e315e2b3b" dependencies = [ "scopeguard", ] @@ -1172,9 +1171,9 @@ dependencies = [ [[package]] name = "num_threads" -version = "0.1.2" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "71a1eb3a36534514077c1e079ada2fb170ef30c47d203aa6916138cf882ecd52" +checksum = "97ba99ba6393e2c3734791401b66902d981cb03bf190af674ca69949b6d5fb15" dependencies = [ "libc", ] @@ -1280,7 +1279,7 @@ dependencies = [ [[package]] name = "pict-rs-proxy" -version = "0.3.0-alpha.22" +version = "0.3.0-alpha.23" dependencies = [ "actix-rt", "actix-web", @@ -1642,18 +1641,18 @@ checksum = "568a8e6258aa33c13358f81fd834adb854c6f7c9468520910a9b1e8fac068012" [[package]] name = "serde" -version = "1.0.135" +version = "1.0.136" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2cf9235533494ea2ddcdb794665461814781c53f19d87b76e571a1c35acbad2b" +checksum = "ce31e24b01e1e524df96f1c2fdd054405f8d7376249a5110886fb4b658484789" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.135" +version = "1.0.136" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8dcde03d87d4c973c04be249e7d8f0b35db1c848c487bd43032808e59dd8328d" +checksum = "08597e7152fcd306f41838ed3e37be9eaeed2b61c42e2117266a554fab4662f9" dependencies = [ "proc-macro2", "quote", @@ -1726,9 +1725,9 @@ checksum = "f2dd574626839106c320a323308629dcb1acfc96e32a8cba364ddc61ac23ee83" [[package]] name = "socket2" -version = "0.4.3" +version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f82496b90c36d70af5fcd482edaa2e0bd16fade569de1330405fecbbdac736b" +checksum = "66d72b759436ae32898a2af0a14218dbf55efde3feeb170eb623637db85ee1e0" dependencies = [ "libc", "winapi", @@ -1841,9 +1840,9 @@ dependencies = [ [[package]] name = "time" -version = "0.3.6" +version = "0.3.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8d54b9298e05179c335de2b9645d061255bcd5155f843b3e328d2cfe0a5b413" +checksum = "004cbc98f30fa233c61a38bc77e96a9106e65c88f2d3bef182ae952027e5753d" dependencies = [ "itoa 1.0.1", "libc", @@ -1867,9 +1866,9 @@ checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c" [[package]] name = "tokio" -version = "1.15.0" +version = "1.16.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbbf1c778ec206785635ce8ad57fe52b3009ae9e0c9f574a728f3049d3e55838" +checksum = "0c27a64b625de6d309e8c57716ba93021dccf1b3b5c97edd6d3dd2d2135afc0a" dependencies = [ "bytes", "libc", @@ -2065,9 +2064,9 @@ dependencies = [ [[package]] name = "tracing-actix-web" -version = "0.5.0-beta.11" +version = "0.5.0-rc.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "71f2dfaaf009c5e9786e2f2dfbde63d5fa44409434d64190abfef5ade67d89b1" +checksum = "0066b8102bdd05325d02966fac8b5e360eafd8dcdf81006c4d30f3543f488714" dependencies = [ "actix-web", "opentelemetry", @@ -2091,9 +2090,9 @@ dependencies = [ [[package]] name = "tracing-awc" -version = "0.1.0-beta.20" +version = "0.1.0-beta.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff704c1995cdf9178e6252f560823147f51f1bb2f81de3941acfcb0827a6dd90" +checksum = "f6fbb546f391778848209c60f8e501e282fc00fa1dca1216fc2b947a49af485b" dependencies = [ "actix-http", "actix-service", @@ -2161,9 +2160,9 @@ dependencies = [ [[package]] name = "tracing-subscriber" -version = "0.3.6" +version = "0.3.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77be66445c4eeebb934a7340f227bfe7b338173d3f8c00a60a5a58005c9faecf" +checksum = "5312f325fe3588e277415f5a6cca1f4ccad0f248c4cd5a4bd33032d7286abc22" dependencies = [ "ansi_term", "lazy_static", @@ -2327,9 +2326,9 @@ checksum = "3d958d035c4438e28c70e4321a2911302f10135ce78a9c7834c0cab4123d06a2" [[package]] name = "which" -version = "4.2.2" +version = "4.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea187a8ef279bc014ec368c27a920da2024d2a711109bfbe3440585d5cf27ad9" +checksum = "2a5a7e487e921cf220206864a94a89b6c6905bfc19f1057fa26a4cb360e5c1d2" dependencies = [ "either", "lazy_static", diff --git a/Cargo.toml b/Cargo.toml index 2c30ad3..b3a6cfd 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,7 +1,7 @@ [package] name = "pict-rs-proxy" description = "A simple web frontend for pict-rs" -version = "0.3.0-alpha.22" +version = "0.3.0-alpha.23" authors = ["asonix "] license = "AGPL-3.0" readme = "README.md" @@ -10,14 +10,18 @@ edition = "2021" build = "src/build.rs" +[features] +console = ["console-subscriber"] +default = [] + # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] actix-rt = "2.6.0" -actix-web = { version = "4.0.0-beta.21", default-features = false } +actix-web = { version = "4.0.0-rc.1", default-features = false } anyhow = "1.0" -awc = { version = "3.0.0-beta.19", default-features = false } -console-subscriber = "0.1" +awc = { version = "3.0.0-beta.20", default-features = false } +console-subscriber = { version = "0.1", optional = true } dotenv = "0.15.0" mime = "0.3" minify-html = "0.8.0" @@ -32,16 +36,20 @@ tracing-error = "0.2" tracing-futures = "0.2" tracing-log = "0.1" tracing-opentelemetry = "0.16" -tracing-subscriber = { version = "0.3", features = ["ansi", "env-filter", "fmt"] } +tracing-subscriber = { version = "0.3", features = [ + "ansi", + "env-filter", + "fmt", +] } url = "2.1" [dependencies.tracing-actix-web] -version = "0.5.0-beta.10" +version = "0.5.0-rc.1" default-features = false features = ["emit_event_on_error", "opentelemetry_0_16"] [dependencies.tracing-awc] -version = "0.1.0-beta.19" +version = "0.1.0-beta.21" default-features = false features = ["emit_event_on_error", "opentelemetry_0_16"] diff --git a/src/main.rs b/src/main.rs index f2b5d15..e84be96 100644 --- a/src/main.rs +++ b/src/main.rs @@ -10,6 +10,7 @@ use actix_web::{ web, App, HttpRequest, HttpResponse, HttpResponseBuilder, HttpServer, ResponseError, }; use awc::Client; +#[cfg(feature = "console")] use console_subscriber::ConsoleLayer; use once_cell::sync::Lazy; use opentelemetry::{ @@ -626,6 +627,7 @@ fn init_tracing( .with_span_events(FmtSpan::NEW | FmtSpan::CLOSE) .with_filter(targets.clone()); + #[cfg(feature = "console")] let console_layer = ConsoleLayer::builder() .with_default_env() .server_addr(([0, 0, 0, 0], 6669)) @@ -633,10 +635,12 @@ fn init_tracing( .spawn(); let subscriber = Registry::default() - .with(console_layer) .with(format_layer) .with(ErrorLayer::default()); + #[cfg(feature = "console")] + let subscriber = subscriber.with(console_layer); + if let Some(url) = opentelemetry_url { let tracer = opentelemetry_otlp::new_pipeline()