diff --git a/.github/Dockerfile b/.github/Dockerfile index 96f73216..0489df22 100644 --- a/.github/Dockerfile +++ b/.github/Dockerfile @@ -10,7 +10,7 @@ WORKDIR /app/tuic RUN if [ "$DOCKER_PLATFORM" = "amd64" ]; then \ echo "Setting RUSTFLAGS for x86_64" && \ - export RUSTFLAGS="-Ctarget-feature=+sse2,+sse3,+avx" ; \ + export RUSTFLAGS="-Ctarget-cpu=sandybridge" ; \ else \ export RUSTFLAGS="" ; \ fi diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 1a717fe4..aa44213e 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -41,7 +41,7 @@ jobs: target: x86_64-unknown-linux-gnu release-name: x86_64-linux cross: true - rustflags: "-Ctarget-feature=+sse2,+sse3,+avx" + rustflags: "-Ctarget-cpu=sandybridge" - os: ubuntu-latest target: i686-unknown-linux-gnu release-name: i686-linux @@ -51,7 +51,7 @@ jobs: target: x86_64-unknown-linux-musl release-name: x86_64-linux-musl cross: true - rustflags: "-Ctarget-feature=+sse2,+sse3,+avx" + rustflags: "-Ctarget-cpu=sandybridge" - os: ubuntu-latest target: i686-unknown-linux-musl release-name: i686-linux-musl @@ -88,7 +88,7 @@ jobs: release-name: x86_64-windows cross: false postfix: ".exe" - rustflags: "-Ctarget-feature=+sse2,+sse3,+avx" + rustflags: "-Ctarget-cpu=sandybridge" - os: windows-latest target: i686-pc-windows-msvc release-name: i686-windows @@ -100,7 +100,7 @@ jobs: target: x86_64-apple-darwin release-name: x86_64-darwin cross: false - rustflags: "-Ctarget-feature=+sse2,+sse3,+avx" + rustflags: "-Ctarget-cpu=sandybridge" - os: macos-14 target: aarch64-apple-darwin release-name: aarch64-darwin diff --git a/Cargo.lock b/Cargo.lock index bd6c9cf4..0713ccfa 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -19,9 +19,9 @@ checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" [[package]] name = "anyhow" -version = "1.0.82" +version = "1.0.86" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f538837af36e6f6a9be0faa67f9a314f8119e4e4b5867c6ab40ed60360142519" +checksum = "b3d1d046238990b9cf5bcde22a3fb3584ee5cf65fb2765f454ed428c7a0063da" [[package]] name = "async-trait" @@ -36,9 +36,9 @@ dependencies = [ [[package]] name = "autocfg" -version = "1.2.0" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1fdabc7756949593fe60f30ec81974b613357de856987752631dea1e3394c80" +checksum = "0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0" [[package]] name = "backtrace" @@ -57,15 +57,15 @@ dependencies = [ [[package]] name = "base64" -version = "0.22.0" +version = "0.22.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9475866fec1451be56a3c2400fd081ff546538961565ccb5b7142cbd22bc7a51" +checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" [[package]] name = "bitflags" -version = "1.3.2" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" +checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1" [[package]] name = "byteorder" @@ -81,9 +81,9 @@ checksum = "514de17de45fdb8dc022b1a7975556c53c86f9f0aa5f534b98977b171857c2c9" [[package]] name = "cc" -version = "1.0.95" +version = "1.0.98" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d32a725bc159af97c3e629873bb9f88fb8cf8a4867175f76dc987815ea07c83b" +checksum = "41c270e7540d725e65ac7f1b212ac8ce349719624d7bcff99f8e2e488e8cf03f" [[package]] name = "cfg-if" @@ -109,9 +109,9 @@ checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f" [[package]] name = "crossbeam-utils" -version = "0.8.19" +version = "0.8.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345" +checksum = "22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80" [[package]] name = "env_filter" @@ -174,9 +174,9 @@ dependencies = [ [[package]] name = "getrandom" -version = "0.2.14" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94b22e06ecb0110981051723910cbf0b5f5e09a2062dd7663334ee79a9d1286c" +checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" dependencies = [ "cfg-if", "libc", @@ -215,15 +215,15 @@ checksum = "baff4b617f7df3d896f97fe922b64817f6cd9a756bb81d40f8883f2f66dcb401" [[package]] name = "libc" -version = "0.2.153" +version = "0.2.155" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c198f91728a82281a64e1f4f9eeb25d82cb32a5de251c6bd1b5154d63a8e7bd" +checksum = "97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c" [[package]] name = "lock_api" -version = "0.4.11" +version = "0.4.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45" +checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17" dependencies = [ "autocfg", "scopeguard", @@ -246,9 +246,9 @@ checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d" [[package]] name = "miniz_oxide" -version = "0.7.2" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d811f3e15f28568be3407c8e7fdb6514c1cda3cb30683f15b6a1a1dc4ea14a7" +checksum = "87dfd01fe195c66b572b37921ad8803d010623c0aca821bea2302239d155cdae" dependencies = [ "adler", ] @@ -300,9 +300,9 @@ checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" [[package]] name = "parking_lot" -version = "0.12.1" +version = "0.12.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" +checksum = "7e4af0ca4f6caed20e900d564c242b8e5d4903fdacf31d3daf527b66fe6f42fb" dependencies = [ "lock_api", "parking_lot_core", @@ -310,15 +310,15 @@ dependencies = [ [[package]] name = "parking_lot_core" -version = "0.9.9" +version = "0.9.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e" +checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8" dependencies = [ "cfg-if", "libc", "redox_syscall", "smallvec", - "windows-targets 0.48.5", + "windows-targets 0.52.5", ] [[package]] @@ -341,9 +341,9 @@ checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" [[package]] name = "proc-macro2" -version = "1.0.81" +version = "1.0.83" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d1597b0c024618f09a9c3b8655b7e430397a36d23fdafec26d6965e9eec3eba" +checksum = "0b33eb56c327dec362a9e55b3ad14f9d2f0904fb5a5b03b513ab5465399e9f43" dependencies = [ "unicode-ident", ] @@ -437,9 +437,9 @@ dependencies = [ [[package]] name = "redox_syscall" -version = "0.4.1" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa" +checksum = "469052894dcb553421e483e4209ee581a45100d31b4018de03e5a7ad86374a7e" dependencies = [ "bitflags", ] @@ -467,9 +467,9 @@ dependencies = [ [[package]] name = "rustc-demangle" -version = "0.1.23" +version = "0.1.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" +checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" [[package]] name = "rustc-hash" @@ -479,9 +479,9 @@ checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" [[package]] name = "rustls" -version = "0.23.5" +version = "0.23.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "afabcee0551bd1aa3e18e5adbf2c0544722014b899adb31bd186ec638d3da97e" +checksum = "ebbbdb961df0ad3f2652da8f3fdc4b36122f568f968f45ad3316f26c025c677b" dependencies = [ "once_cell", "ring", @@ -516,15 +516,15 @@ dependencies = [ [[package]] name = "rustls-pki-types" -version = "1.4.1" +version = "1.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ecd36cc4259e3e4514335c4a138c6b43171a8d61d8f5c9348f9fc7529416f247" +checksum = "976295e77ce332211c0d24d92c0e83e50f5c5f046d11082cea19f3df13a3562d" [[package]] name = "rustls-webpki" -version = "0.102.2" +version = "0.102.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "faaa0a62740bedb9b2ef5afa303da42764c012f743917351dc9a237ea1663610" +checksum = "ff448f7e92e913c4b7d4c6d8e4540a1724b319b4152b8aef6d4cf8339712b33e" dependencies = [ "ring", "rustls-pki-types", @@ -533,9 +533,9 @@ dependencies = [ [[package]] name = "ryu" -version = "1.0.17" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1" +checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" [[package]] name = "schannel" @@ -554,9 +554,9 @@ checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" [[package]] name = "security-framework" -version = "2.10.0" +version = "2.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "770452e37cad93e0a50d5abc3990d2bc351c36d0328f86cefec2f2fb206eaef6" +checksum = "c627723fd09706bacdb5cf41499e95098555af3c3c29d014dc3c458ef6be11c0" dependencies = [ "bitflags", "core-foundation", @@ -567,9 +567,9 @@ dependencies = [ [[package]] name = "security-framework-sys" -version = "2.10.0" +version = "2.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41f3cc463c0ef97e11c3461a9d3787412d30e8e7eb907c79180c4a57bf7c04ef" +checksum = "317936bbbd05227752583946b9e66d7ce3b489f84e11a94a510b4437fef407d7" dependencies = [ "core-foundation-sys", "libc", @@ -577,18 +577,18 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.198" +version = "1.0.202" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9846a40c979031340571da2545a4e5b7c4163bdae79b301d5f86d03979451fcc" +checksum = "226b61a0d411b2ba5ff6d7f73a476ac4f8bb900373459cd00fab8512828ba395" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.198" +version = "1.0.202" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e88edab869b01783ba905e7d0153f9fc1a6505a96e4ad3018011eedb838566d9" +checksum = "6048858004bcff69094cd972ed40a32500f153bd3be9f716b2eed2e8217c4838" dependencies = [ "proc-macro2", "quote", @@ -597,9 +597,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.116" +version = "1.0.117" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e17db7126d17feb94eb3fad46bf1a96b034e8aacbc2e775fe81505f8b0b2813" +checksum = "455182ea6142b14f93f4bc5320a2b31c1f266b66a4a5c858b013302a5d8cbfc3" dependencies = [ "itoa", "ryu", @@ -623,9 +623,9 @@ checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" [[package]] name = "socket2" -version = "0.5.6" +version = "0.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05ffd9c0a93b7543e062e759284fcf5f5e3b098501104bfbdde4d404db792871" +checksum = "ce305eb0b4296696835b71df73eb912e0f1ffd2556a501fcede6e0c50349191c" dependencies = [ "libc", "windows-sys 0.52.0", @@ -668,9 +668,9 @@ checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc" [[package]] name = "syn" -version = "2.0.60" +version = "2.0.65" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "909518bc7b1c9b779f1bbf07f2929d35af9f0f37e47c6e9ef7f9dddc1e1821f3" +checksum = "d2863d96a84c6439701d7a38f9de935ec562c8832cc55d1dde0f513b52fad106" dependencies = [ "proc-macro2", "quote", @@ -679,18 +679,18 @@ dependencies = [ [[package]] name = "thiserror" -version = "1.0.59" +version = "1.0.61" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0126ad08bff79f29fc3ae6a55cc72352056dfff61e3ff8bb7129476d44b23aa" +checksum = "c546c80d6be4bc6a00c0f01730c08df82eaa7a7a61f11d656526506112cc1709" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.59" +version = "1.0.61" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1cd413b5d558b4c5bf3680e324a6fa5014e7b7c067a51e69dbdf47eb7148b66" +checksum = "46c3384250002a6d5af4d114f2845d37b57521033f30d5c3f46c4d70e1197533" dependencies = [ "proc-macro2", "quote", @@ -743,9 +743,9 @@ dependencies = [ [[package]] name = "tokio-util" -version = "0.7.10" +version = "0.7.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5419f34732d9eb6ee4c3578b7989078579b7f039cbbb9ca2c4da015749371e15" +checksum = "9cf6b47b3771c49ac75ad09a6162f53ad4b8088b76ac60e8ec1455b31a189fe1" dependencies = [ "bytes", "futures-core", @@ -802,7 +802,7 @@ dependencies = [ [[package]] name = "tuic-client" -version = "1.0.3" +version = "1.0.4" dependencies = [ "anyhow", "bytes", @@ -844,7 +844,7 @@ dependencies = [ [[package]] name = "tuic-server" -version = "1.0.3" +version = "1.0.4" dependencies = [ "anyhow", "bytes", diff --git a/Cargo.toml b/Cargo.toml index 87b78138..3970bce9 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -2,6 +2,15 @@ members = ["tuic", "tuic-quinn", "tuic-server", "tuic-client"] resolver = "2" +[workspace.package] +authors = ["EAimTY "] +version = "1.0.4" +rust-version = "1.65.0" +edition = "2021" +readme = "README.md" +license = "GPL-3.0-or-later" +repository = "https://github.com/EAimTY/tuic" + [profile.release] opt-level = 3 debug = 1 diff --git a/tuic-client/Cargo.toml b/tuic-client/Cargo.toml index 296a9541..db96b803 100644 --- a/tuic-client/Cargo.toml +++ b/tuic-client/Cargo.toml @@ -1,15 +1,15 @@ [package] name = "tuic-client" -version = "1.0.3" -authors = ["EAimTY "] +version.workspace = true +authors.workspace = true description = "Minimalistic TUIC client implementation as a reference" categories = ["network-programming"] keywords = ["network", "proxy", "quic", "tuic"] -edition = "2021" -rust-version = "1.65.0" -readme = "README.md" -license = "GPL-3.0-or-later" -repository = "https://github.com/EAimTY/tuic" +edition.workspace = true +rust-version.workspace = true +readme.workspace = true +license.workspace = true +repository.workspace = true [dependencies] bytes = { version = "1", default-features = false, features = ["std"] } diff --git a/tuic-quinn/Cargo.toml b/tuic-quinn/Cargo.toml index 2a8df7ec..6394e12e 100644 --- a/tuic-quinn/Cargo.toml +++ b/tuic-quinn/Cargo.toml @@ -1,15 +1,15 @@ [package] name = "tuic-quinn" version = "0.1.0" -authors = ["EAimTY "] +authors.workspace = true description = "A thin layer on top of quinn to provide functions for TUIC" categories = ["network-programming"] keywords = ["network", "proxy", "quic", "tuic"] -edition = "2021" -rust-version = "1.65.0" -readme = "README.md" -license = "GPL-3.0-or-later" -repository = "https://github.com/EAimTY/tuic" +edition.workspace = true +rust-version.workspace = true +readme.workspace = true +license.workspace = true +repository.workspace = true [dependencies] bytes = { version = "1", default-features = false, features = ["std"] } diff --git a/tuic-server/Cargo.toml b/tuic-server/Cargo.toml index bf7a4272..61e74006 100644 --- a/tuic-server/Cargo.toml +++ b/tuic-server/Cargo.toml @@ -1,15 +1,15 @@ [package] name = "tuic-server" -version = "1.0.3" -authors = ["EAimTY "] +version.workspace = true +authors.workspace = true description = "Minimalistic TUIC server implementation as a reference" categories = ["network-programming"] keywords = ["network", "proxy", "quic", "tuic"] -edition = "2021" -rust-version = "1.65.0" -readme = "README.md" -license = "GPL-3.0-or-later" -repository = "https://github.com/EAimTY/tuic" +edition.workspace = true +rust-version.workspace = true +readme.workspace = true +license.workspace = true +repository.workspace = true [dependencies] diff --git a/tuic/Cargo.toml b/tuic/Cargo.toml index 5fe78cb6..00655977 100644 --- a/tuic/Cargo.toml +++ b/tuic/Cargo.toml @@ -1,15 +1,15 @@ [package] name = "tuic" version = "5.0.0" -authors = ["EAimTY "] +authors.workspace = true description = "Delicately-TUICed 0-RTT proxy protocol" categories = ["network-programming"] keywords = ["network", "proxy", "quic", "tuic"] -edition = "2021" -rust-version = "1.65.0" -readme = "README.md" -license = "GPL-3.0-or-later" -repository = "https://github.com/EAimTY/tuic" +edition.workspace = true +rust-version.workspace = true +readme.workspace = true +license.workspace = true +repository.workspace = true [features] async_marshal = ["bytes", "futures-util", "thiserror"]