Features, Breaking Changes
ServerConfig::new
returns aResult
, fails ifpassword
doesn't matchmethod
's requirementsConnectOpts::bind_local_addr
supports binding to a specific port- Uses
async
in trait, bump MSRV to v1.75 - #1790
outbound_udp_allow_fragmentation
new option for allowing UDP outbound sockets to enable IP fragmentation tun2
has been merged back tomeh/rust-tun
- #1810
UdpSocket::bind
shadowsocks-rust
binary crate "default" feature set tofull
Bug Fixes
- Method
none
(plain
) skips key derivation process. - #1762 Do not crash in
ServerConfig::from_url()
on unknown method - #1759 Flush
local-tun
tcp writer half before close - #1765 Disallow HTTP/SOCKS4a in
socks
protocol handler when authentication is required ConnectOpts
's per-server options should not be shared globally- #1814
local-dns
upstream udp packet buffer size 256
Miscellaneous
- Make cryptographic dependencies optional in default build of
shadowsocks
crate.
What's Changed
- fix(deps): update rust crate notify to v7 by @renovate in #1735
- fix(deps): update rust crate bloomfilter to v1.0.15 by @renovate in #1739
- fix(deps): update rust crate reqwest to v0.12.9 by @renovate in #1740
- fix(deps): update rust crate serde to v1.0.214 by @renovate in #1741
- fix(deps): update rust crate tun2 to v4 by @renovate in #1738
- fix(deps): update rust crate sysexits to v0.8.3 by @renovate in #1743
- fix(deps): update rust crate sysexits to v0.8.4 by @renovate in #1744
- fix(deps): update rust crate thiserror to v1.0.66 by @renovate in #1745
- chore(deps): update embarkstudios/cargo-deny-action action to v2 by @renovate in #1748
- chore(deps): update actions/checkout action to v4 by @renovate in #1747
- fix(deps): update rust crate thiserror to v1.0.67 by @renovate in #1749
- fix(deps): update rust crate idna to v1.0.3 by @renovate in #1750
- fix(deps): update rust crate thiserror to v1.0.68 by @renovate in #1751
- fix(deps): update rust crate url to v2.5.3 by @renovate in #1752
- fix(deps): update rust crate bloomfilter to v1.0.16 by @renovate in #1753
- Introducing shadowsocks Guru on Gurubase.io by @kursataktas in #1755
- fix(deps): update rust crate bloomfilter to v2 by @renovate in #1754
- fix(deps): update rust crate tokio to v1.41.1 by @renovate in #1758
- fix(deps): update rust crate libc to v0.2.162 by @renovate in #1757
- fix(deps): update rust crate sysexits to v0.8.5 by @renovate in #1761
- fix: do not crash in ServerConfig::from_url() on unknown method by @link2xt in #1762
- fix: flush local-tun tcp writer half before close by @AzazKamaz in #1759
- fix(deps): update rust crate thiserror to v1.0.69 by @renovate in #1763
- fix(deps): update rust crate serde to v1.0.215 by @renovate in #1766
- fix(sslocal): disallow HTTP/SOCKS4 proxying when authentication required by @alaz in #1765
- fix(deps): update rust crate clap to v4.5.21 by @renovate in #1767
- fix(deps): update rust crate flate2 to v1.0.35 by @renovate in #1768
- fix(deps): update rust crate libc to v0.2.164 by @renovate in #1769
- fix(deps): update rust crate thiserror to v2 by @renovate in #1756
- fix(deps): update rust crate serde_json to v1.0.133 by @renovate in #1771
- fix unknown variable error by @AaronChen0 in #1772
- fix(deps): update rust crate hyper to v1.5.1 by @renovate in #1773
- fix(deps): update rust crate rustls-native-certs to v0.8.1 by @renovate in #1776
- fix(deps): update rust crate webpki-roots to v0.26.7 by @renovate in #1777
- fix(deps): update rust crate url to v2.5.4 by @renovate in #1779
- fix(deps): update rust crate libc to v0.2.165 by @renovate in #1781
- fix(deps): update rust crate libc to v0.2.166 by @renovate in #1782
- fix(deps): update rust crate blake3 to v1.5.5 by @renovate in #1783
- fix(deps): update rust crate tracing to v0.1.41 by @renovate in #1784
- fix(deps): update rust crate socket2 to v0.5.8 by @renovate in #1786
- fix(deps): update rust crate bytes to v1.9.0 by @renovate in #1787
- fix(deps): update rust crate smoltcp to 0.12 by @renovate in #1785
- fix(deps): update rust crate hickory-resolver to v0.25.0-alpha.4 by @renovate in #1788
- fix(deps): update rust crate snmalloc-rs to v0.3.7 by @renovate in #1789
- fix(deps): update rust crate libc to v0.2.167 by @renovate in #1791
- fix(deps): update rust crate tracing-subscriber to v0.3.19 by @renovate in #1792
- Allow IP fragmentation for outbound UDP sockets by @tom-ryan in #1790
- fix(deps): update rust crate time to v0.3.37 by @renovate in #1797
- fix(deps): update rust crate bloomfilter to v3 by @renovate in #1795
- fix(deps): update rust crate tokio to v1.42.0 by @renovate in #1798
- fix(deps): update rust crate thiserror to v2.0.4 by @renovate in #1799
- fix(deps): update rust crate http to v1.2.0 by @renovate in #1800
- fix(deps): update rust crate clap to v4.5.22 by @renovate in #1801
- fix(deps): update rust crate tokio-rustls to v0.26.1 by @renovate in #1802
- fix(deps): update rust crate clap to v4.5.23 by @renovate in #1803
- chore(deps): update alpine docker tag to v3.21 by @renovate in #1804
- fix(deps): update rust crate thiserror to v2.0.5 by @renovate in #1806
- fix(deps): update rust crate thiserror to v2.0.6 by @renovate in #1807
- refactor: replace static with const for constants by @Integral-Tech in #1805
- fix(deps): update rust crate libc to v0.2.168 by @renovate in #1808
- Add
UdpSocket::bind
by @MarkusPettersson98 in #1810 - fix(deps): update rust crate serde to v1.0.216 by @renovate in #1811
- fix(deps): update rust crate thiserror to v2.0.7 by @renovate in #1813
- bugfix: local dns upstream udp packet buffer size 256 by @chuxi in #1814
- fix(deps): update rust crate hyper to v1.5.2 by @renovate in #1815
- fix(deps): update rust crate thiserror to v2.0.8 by @renovate in #1816
- fix(deps): update rust crate libc to v0.2.169 by @renovate in #1817
- chore(deps): update rust crate env_logger to v0.11.6 by @renovate in #1818
- fix(deps): update rust crate tun to v0.7.6 by @renovate in #1819
- fix(deps): update rust crate thiserror to v2.0.9 by @renovate in #1822
- fix(deps): update rust crate serde_json to v1.0.134 by @renovate in #1821
- fix(deps): update rust crate reqwest to v0.12.10 by @renovate in #1824
- fix(deps): update rust crate tun to v0.7.9 by @renovate in #1825
- fix(deps): update rust crate reqwest to v0.12.11 by @renovate in #1826
- fix(deps): update rust crate serde to v1.0.217 by @renovate in #1827
- fix(deps): update rust crate tun to v0.7.10 by @renovate in #1828
- fix(deps): update rust crate reqwest to v0.12.12 by @renovate in #1830
New Contributors
- @kursataktas made their first contribution in #1755
- @alaz made their first contribution in #1765
- @tom-ryan made their first contribution in #1790
- @Integral-Tech made their first contribution in #1805
- @MarkusPettersson98 made their first contribution in #1810
Full Changelog: v1.21.2...v1.22.0