diff --git a/CHANGELOG.md b/CHANGELOG.md index 55b497e..427e8dd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,9 +5,10 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## [0.2.2] - 2026-03-03 +## [0.2.3] - 2026-03-03 ### Fixed +- Remove OpenSSL dependency — use rustls exclusively (`default-features = false` on reqwest) - Install `cargo-zigbuild` for aarch64-linux cross-compilation in release workflow - Preserve existing release notes when attaching binary artifacts @@ -50,6 +51,7 @@ This is the first pure-Rust release. The project has been fully rewritten from T - CI now requires only `rust-ci` (cargo check, test, fmt, clippy) — old Node.js checks removed - Branch protection updated to enforce Rust CI instead of npm quality/test gates +[0.2.3]: https://github.com/raintree-technology/perps/compare/v0.2.2...v0.2.3 [0.2.2]: https://github.com/raintree-technology/perps/compare/v0.2.1...v0.2.2 [0.2.1]: https://github.com/raintree-technology/perps/compare/v0.2.0...v0.2.1 [0.2.0]: https://github.com/raintree-technology/perps/compare/v0.1.4...v0.2.0 diff --git a/Cargo.lock b/Cargo.lock index d5e62f3..2bf3368 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -380,16 +380,6 @@ version = "0.9.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" -[[package]] -name = "core-foundation" -version = "0.9.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" -dependencies = [ - "core-foundation-sys", - "libc", -] - [[package]] name = "core-foundation" version = "0.10.1" @@ -455,7 +445,7 @@ dependencies = [ "crossterm_winapi", "mio", "parking_lot", - "rustix 0.38.44", + "rustix", "signal-hook", "signal-hook-mio", "winapi", @@ -678,15 +668,6 @@ dependencies = [ "zeroize", ] -[[package]] -name = "encoding_rs" -version = "0.8.35" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75030f3c4f45dafd7586dd6780965a8c7e8e285a5ecb86713e63a79c5b2766f3" -dependencies = [ - "cfg-if", -] - [[package]] name = "equivalent" version = "1.0.2" @@ -725,12 +706,6 @@ dependencies = [ "pin-project-lite", ] -[[package]] -name = "fastrand" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" - [[package]] name = "ff" version = "0.13.1" @@ -764,33 +739,12 @@ dependencies = [ "spin", ] -[[package]] -name = "fnv" -version = "1.0.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" - [[package]] name = "foldhash" version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2" -[[package]] -name = "foreign-types" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" -dependencies = [ - "foreign-types-shared", -] - -[[package]] -name = "foreign-types-shared" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" - [[package]] name = "form_urlencoded" version = "1.2.2" @@ -961,25 +915,6 @@ dependencies = [ "subtle", ] -[[package]] -name = "h2" -version = "0.4.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f44da3a8150a6703ed5d34e164b875fd14c2cdab9af1252a9a1020bde2bdc54" -dependencies = [ - "atomic-waker", - "bytes", - "fnv", - "futures-core", - "futures-sink", - "http", - "indexmap", - "slab", - "tokio", - "tokio-util", - "tracing", -] - [[package]] name = "hashbrown" version = "0.15.5" @@ -1100,7 +1035,6 @@ dependencies = [ "bytes", "futures-channel", "futures-core", - "h2", "http", "http-body", "httparse", @@ -1130,22 +1064,6 @@ dependencies = [ "webpki-roots 1.0.6", ] -[[package]] -name = "hyper-tls" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0" -dependencies = [ - "bytes", - "http-body-util", - "hyper", - "hyper-util", - "native-tls", - "tokio", - "tokio-native-tls", - "tower-service", -] - [[package]] name = "hyper-util" version = "0.1.20" @@ -1164,11 +1082,9 @@ dependencies = [ "percent-encoding", "pin-project-lite", "socket2", - "system-configuration", "tokio", "tower-service", "tracing", - "windows-registry", ] [[package]] @@ -1469,12 +1385,6 @@ version = "0.4.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab" -[[package]] -name = "linux-raw-sys" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32a66949e030da00e8c7d4434b251670a91556f4144941d37452769c25d58a53" - [[package]] name = "litemap" version = "0.8.1" @@ -1560,23 +1470,6 @@ dependencies = [ "windows-sys 0.61.2", ] -[[package]] -name = "native-tls" -version = "0.2.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "465500e14ea162429d264d44189adc38b199b62b1c21eea9f69e4b73cb03bbf2" -dependencies = [ - "libc", - "log", - "openssl", - "openssl-probe", - "openssl-sys", - "schannel", - "security-framework", - "security-framework-sys", - "tempfile", -] - [[package]] name = "nu-ansi-term" version = "0.50.3" @@ -1644,50 +1537,12 @@ version = "1.70.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "384b8ab6d37215f3c5301a95a4accb5d64aa607f1fcb26a11b5303878451b4fe" -[[package]] -name = "openssl" -version = "0.10.75" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08838db121398ad17ab8531ce9de97b244589089e290a384c900cb9ff7434328" -dependencies = [ - "bitflags", - "cfg-if", - "foreign-types", - "libc", - "once_cell", - "openssl-macros", - "openssl-sys", -] - -[[package]] -name = "openssl-macros" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - [[package]] name = "openssl-probe" version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7c87def4c32ab89d880effc9e097653c8da5d6ef28e6b539d313baaacfbafcbe" -[[package]] -name = "openssl-sys" -version = "0.9.111" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82cab2d520aa75e3c58898289429321eb788c3106963d0dc886ec7a5f4adc321" -dependencies = [ - "cc", - "libc", - "pkg-config", - "vcpkg", -] - [[package]] name = "parking" version = "2.2.1" @@ -1740,7 +1595,7 @@ checksum = "9b4f627cb1b25917193a259e49bdad08f671f8d9708acfd5fe0a8c1455d87220" [[package]] name = "perps-app" -version = "0.2.1" +version = "0.2.2" dependencies = [ "anyhow", "chrono", @@ -1770,7 +1625,7 @@ dependencies = [ [[package]] name = "perps-cli" -version = "0.2.1" +version = "0.2.2" dependencies = [ "anyhow", "chrono", @@ -1790,7 +1645,7 @@ dependencies = [ [[package]] name = "perps-connector-api" -version = "0.2.1" +version = "0.2.2" dependencies = [ "anyhow", "async-trait", @@ -1805,7 +1660,7 @@ dependencies = [ [[package]] name = "perps-connectors-aevo" -version = "0.2.1" +version = "0.2.2" dependencies = [ "async-stream", "async-trait", @@ -1829,7 +1684,7 @@ dependencies = [ [[package]] name = "perps-connectors-ccxt" -version = "0.2.1" +version = "0.2.2" dependencies = [ "async-stream", "async-trait", @@ -1853,7 +1708,7 @@ dependencies = [ [[package]] name = "perps-connectors-decibel" -version = "0.2.1" +version = "0.2.2" dependencies = [ "async-stream", "async-trait", @@ -1874,7 +1729,7 @@ dependencies = [ [[package]] name = "perps-connectors-dydx" -version = "0.2.1" +version = "0.2.2" dependencies = [ "async-stream", "async-trait", @@ -1894,7 +1749,7 @@ dependencies = [ [[package]] name = "perps-connectors-gmx" -version = "0.2.1" +version = "0.2.2" dependencies = [ "async-trait", "chrono", @@ -1912,7 +1767,7 @@ dependencies = [ [[package]] name = "perps-connectors-hyperliquid" -version = "0.2.1" +version = "0.2.2" dependencies = [ "async-stream", "async-trait", @@ -1939,7 +1794,7 @@ dependencies = [ [[package]] name = "perps-connectors-orderly" -version = "0.2.1" +version = "0.2.2" dependencies = [ "async-stream", "async-trait", @@ -1962,7 +1817,7 @@ dependencies = [ [[package]] name = "perps-connectors-paradex" -version = "0.2.1" +version = "0.2.2" dependencies = [ "async-stream", "async-trait", @@ -1983,7 +1838,7 @@ dependencies = [ [[package]] name = "perps-connectors-vertex" -version = "0.2.1" +version = "0.2.2" dependencies = [ "async-stream", "async-trait", @@ -2003,7 +1858,7 @@ dependencies = [ [[package]] name = "perps-domain" -version = "0.2.1" +version = "0.2.2" dependencies = [ "chrono", "schemars", @@ -2015,7 +1870,7 @@ dependencies = [ [[package]] name = "perps-execution" -version = "0.2.1" +version = "0.2.2" dependencies = [ "anyhow", "async-trait", @@ -2029,7 +1884,7 @@ dependencies = [ [[package]] name = "perps-funding" -version = "0.2.1" +version = "0.2.2" dependencies = [ "chrono", "perps-domain", @@ -2039,7 +1894,7 @@ dependencies = [ [[package]] name = "perps-gateway" -version = "0.2.1" +version = "0.2.2" dependencies = [ "anyhow", "axum", @@ -2055,7 +1910,7 @@ dependencies = [ [[package]] name = "perps-market-graph" -version = "0.2.1" +version = "0.2.2" dependencies = [ "perps-domain", "schemars", @@ -2065,7 +1920,7 @@ dependencies = [ [[package]] name = "perps-observability" -version = "0.2.1" +version = "0.2.2" dependencies = [ "anyhow", "tracing", @@ -2074,7 +1929,7 @@ dependencies = [ [[package]] name = "perps-risk" -version = "0.2.1" +version = "0.2.2" dependencies = [ "chrono", "perps-domain", @@ -2083,7 +1938,7 @@ dependencies = [ [[package]] name = "perps-store" -version = "0.2.1" +version = "0.2.2" dependencies = [ "anyhow", "chrono", @@ -2096,7 +1951,7 @@ dependencies = [ [[package]] name = "perps-tui" -version = "0.2.1" +version = "0.2.2" dependencies = [ "anyhow", "chrono", @@ -2384,20 +2239,15 @@ checksum = "eddd3ca559203180a307f12d114c268abf583f59b03cb906fd0b3ff8646c1147" dependencies = [ "base64", "bytes", - "encoding_rs", "futures-core", - "h2", "http", "http-body", "http-body-util", "hyper", "hyper-rustls", - "hyper-tls", "hyper-util", "js-sys", "log", - "mime", - "native-tls", "percent-encoding", "pin-project-lite", "quinn", @@ -2408,7 +2258,6 @@ dependencies = [ "serde_urlencoded", "sync_wrapper", "tokio", - "tokio-native-tls", "tokio-rustls", "tower", "tower-http", @@ -2507,23 +2356,10 @@ dependencies = [ "bitflags", "errno", "libc", - "linux-raw-sys 0.4.15", + "linux-raw-sys", "windows-sys 0.59.0", ] -[[package]] -name = "rustix" -version = "1.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6fe4565b9518b83ef4f91bb47ce29620ca828bd32cb7e408f0062e9930ba190" -dependencies = [ - "bitflags", - "errno", - "libc", - "linux-raw-sys 0.12.1", - "windows-sys 0.61.2", -] - [[package]] name = "rustls" version = "0.23.37" @@ -2645,7 +2481,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b7f4bc775c73d9a02cde8bf7b2ec4c9d12743edf609006c7facc23998404cd1d" dependencies = [ "bitflags", - "core-foundation 0.10.1", + "core-foundation", "core-foundation-sys", "libc", "security-framework-sys", @@ -3162,40 +2998,6 @@ dependencies = [ "syn", ] -[[package]] -name = "system-configuration" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a13f3d0daba03132c0aa9767f98351b3488edc2c100cda2d2ec2b04f3d8d3c8b" -dependencies = [ - "bitflags", - "core-foundation 0.9.4", - "system-configuration-sys", -] - -[[package]] -name = "system-configuration-sys" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e1d1b10ced5ca923a1fcb8d03e96b8d3268065d724548c0211415ff6ac6bac4" -dependencies = [ - "core-foundation-sys", - "libc", -] - -[[package]] -name = "tempfile" -version = "3.26.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82a72c767771b47409d2345987fda8628641887d5466101319899796367354a0" -dependencies = [ - "fastrand", - "getrandom 0.4.1", - "once_cell", - "rustix 1.1.4", - "windows-sys 0.61.2", -] - [[package]] name = "thiserror" version = "2.0.18" @@ -3286,16 +3088,6 @@ dependencies = [ "syn", ] -[[package]] -name = "tokio-native-tls" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2" -dependencies = [ - "native-tls", - "tokio", -] - [[package]] name = "tokio-rustls" version = "0.26.4" @@ -3333,19 +3125,6 @@ dependencies = [ "tungstenite", ] -[[package]] -name = "tokio-util" -version = "0.7.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ae9cec805b01e8fc3fd2fe289f89149a9b66dd16786abd8b19cfa7b48cb0098" -dependencies = [ - "bytes", - "futures-core", - "futures-sink", - "pin-project-lite", - "tokio", -] - [[package]] name = "tower" version = "0.5.3" @@ -3869,17 +3648,6 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" -[[package]] -name = "windows-registry" -version = "0.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02752bf7fbdcce7f2a27a742f798510f3e5ad88dbe84871e5168e2120c3d5720" -dependencies = [ - "windows-link", - "windows-result", - "windows-strings", -] - [[package]] name = "windows-result" version = "0.4.1" diff --git a/Cargo.toml b/Cargo.toml index 44f89dd..35ad035 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -25,7 +25,7 @@ members = [ ] [workspace.package] -version = "0.2.2" +version = "0.2.3" edition = "2021" license = "MIT" authors = ["Raintree Technology"] @@ -42,7 +42,7 @@ crossterm = "0.28.1" futures = "0.3.31" rand = "0.9.0" ratatui = "0.29.0" -reqwest = { version = "0.12.15", features = ["json", "rustls-tls"] } +reqwest = { version = "0.12.15", default-features = false, features = ["json", "rustls-tls"] } schemars = { version = "0.8.22", features = ["chrono", "uuid1"] } serde = { version = "1.0.219", features = ["derive"] } serde_json = "1.0.140"