Repository navigation
v0.17.1
A maintenance release. No public API changed in any crate, and no numerical
output moved. The one behavioural change is the TLS trust store used by the
optional Binance HTTPS client, which is why nanobook-broker takes a minor
bump while everything else is a patch.
Breaking (nanobook-broker 0.7.2 → 0.8.0):
- The
rustlsTLS backend now uses the OS trust store, not a bundled one.
reqwest0.13 renamed itsrustls-tlsfeature torustlsand changed what
it pulls in:rustls-platform-verifier(system trust anchors) andaws-lc-rs
replace the previously vendoredwebpki-rootsandring. The
nanobook-brokerfeature names (rustls,native-tls) are unchanged, so no
manifest edit is needed — but a minimal container image that ships no CA
bundle will now fail the TLS handshake to Binance where it previously
succeeded. Installca-certificates, or selectnative-tlsinstead. Only
affects builds with thebinancefeature enabled;nanobook-riskand
nanobook-rebalancerdo not enable it.
Changed
- MSRV raised from 1.85 to 1.86.
criterion0.8 requires rustc 1.86, and
holding the benchmark harness three majors back to preserve 1.85 was the worse
trade. The library itself uses no 1.86-only features, so this is a floor
change rather than a code change; let-chains still need 1.88 and remain
written out longhand. Cargo's resolver has been MSRV-aware since 1.84, so a
toolchain still on 1.85 resolves to 0.17.0 rather than failing to build. - Dependencies brought current — GitHub Actions:
checkout7.0.1,
setup-python7.0.0,setup-uv9.0.0,action-gh-release3.0.2,
gh-action-pypi-publish1.14.1. Cargo:serde1.0.229,criterion0.8,
toml1.1,dialoguer0.12,nix0.31,signal-hook0.4,
tokio-tungstenite0.30,reqwest0.13, andsha20.11 withhmac0.13
(the digest 0.11 generation —new_from_slicemoved fromMacto
KeyInit). Binance request signing is unchanged; the known-signature vector
still matches. rand0.8 → 0.10 (withrand_chacha0.3 → 0.10 andrand_distr0.4 →
0.6). The only affected call site is theseed=Nonehelper in
scenarios; seeded Monte Carlo output was compared before and after the
upgrade for a fixed seed and is bit-identical to 17 significant digits.- Patch versions:
nanobookandnanobook-pythonto 0.17.1,
nanobook-riskto 0.6.3,nanobook-rebalancerto 0.8.3.ibapistays on
the 2.x line deliberately; the 3.x migration changes disconnect-detection
semantics in live order placement and is scoped as its own change.