Skip to content

Releases: shadowsocks/shadowsocks-rust

v1.22.0

02 Jan 14:30
7e059ca
Compare
Choose a tag to compare

Features, Breaking Changes

  • ServerConfig::new returns a Result, fails if password doesn't match method's requirements
  • ConnectOpts::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 to meh/rust-tun
  • #1810 UdpSocket::bind
  • shadowsocks-rust binary crate "default" feature set to full

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 ...
Read more

v1.21.2

24 Oct 16:39
a03006a
Compare
Choose a tag to compare

Bug Fixes

  • #1730 local-http: HTTP Client removes Authority from Request URI only for HTTP/1.x

v1.21.1

24 Oct 13:07
dc672a2
Compare
Choose a tag to compare

Bug Fixes

  • #1730 local-http: The URI field in HTTP Request sent from sslocal should only contain path and query.

Miscellaneous

  • #1702 Debian package build removes dependency of pwgen

What's Changed

New Contributors

Full Changelog: v1.21.0...v1.21.1

v1.21.0

22 Sep 14:40
bd4efaa
Compare
Choose a tag to compare

Features

  • #1641 shadowsocks: ProxySocket supports generic I/O socket type
  • #1567 shadowsocks-service: Support OpenBSD Packet-Filter (pf)

What's Changed

New Contributors

Full Changelog: v1.20.4...v1.21.0

v1.20.4

15 Aug 16:18
c341c89
Compare
Choose a tag to compare

Features

Bug Fixes

  • #1612 server: Properly exit server instance if any of the sub-tasks exited

What's Changed

New Contributors

Full Changelog: v1.20.3...v1.20.4

v1.20.3

28 Jul 17:31
87ac738
Compare
Choose a tag to compare

Features

  • local: Ping Balancer scores replaced standard deviation with median absolute deviation, which should help focusing less on outlying observations in latency samples.

Bug Fixes

What's Changed

Full Changelog: v1.20.2...v1.20.3

v1.20.2

10 Jul 15:27
ab83dbb
Compare
Choose a tag to compare

Features

  • #1560 PingBalancer check Firefox portal allowing 200 HTTP status

What's Changed

Full Changelog: v1.20.1...v1.20.2

v1.20.1

19 Jun 16:03
5fb6944
Compare
Choose a tag to compare

Bug Fixes

  • local-online-config: SIP008 auto reload configuration task will add online servers without replacing the existed ones. This bug will eventually cause sslocal consumes too many memories and get OOM killed.

Users are encourage to update to this version if using 1.19.4 to 1.20.0.

Features

  • shadowsocks-service: Updated rustls to v0.23 with ring backend.
  • local-redir, server: Better approach to check current platform IP stack capabilities like Go (IPv4, IPv6, IPv4-mapped-IPv6 supports).
  • Explicitly enable dual-stack if listen addresses (server, local_address) are IPv4-mapped-IPv6, by setting IPV6_V6ONLY=0.

Full Changelog: v1.20.0...v1.20.1

v1.20.0

14 Jun 17:12
bc8cfee
Compare
Choose a tag to compare

Breaking Changes

  • #887 shadowsocks stream cipher (TABLE) doesn't need to make a derived key instead of using user's predefined key directly. This change will make shadowsocks-rust not going to be compatible with its older version. Users who are using TABLE cipher should upgrade all your local and server instances to the latest version of shadowsocks-rust. On the other hand, TABLE cipher is marked deprecated because it is vulnerable, users must migrate to other more secured methods immediately.

Full Changelog: v1.19.4...v1.20.0

v1.19.4

12 Jun 15:38
a5130ca
Compare
Choose a tag to compare

Features

  • local-online-config: Making HTTP requests with local-http's HttpClient implementation, mainly for supporting outbound_* socket configurations.

BUG Fixes

  • local-http: #1508 Fixed panic if remote target supports H2.

Miscellaneous

  • Fixed build failures on some platforms.

What's Changed

Full Changelog: v1.19.3...v1.19.4