Releases: shadowsocks/shadowsocks-rust
Releases · shadowsocks/shadowsocks-rust
v1.23.4
Bug Fixes
- shadowsocks/shadowsocks-android#3185
local-dns
: Fixed skipping remote resolver for remote servers' names
What's Changed
Full Changelog: v1.23.3...v1.23.4
v1.23.3
Features
- #1943
online-config
: SIP008 online configuration supports adding plugin whitelist (see README for details)
Bug Fixes
- Build feature
--full
won't report errors for targets that are not supported bylocal-tun
andlocal-redir
.
What's Changed
- fix(deps): update rust crate webpki-roots to v0.26.9 by @renovate in #1942
- fix(deps): update rust crate tun to v0.7.19 by @renovate in #1945
- fix(deps): update rust crate nix to 0.30 by @renovate in #1944
- fix(deps): update rust crate nix to 0.30 by @renovate in #1946
- fix(deps): update rust crate xdg to v3 by @renovate in #1950
- fix(deps): update rust crate webpki-roots to v1 by @renovate in #1951
- fix(deps): update rust crate tokio to v1.45.0 by @zonyitoo in #1952
Full Changelog: v1.23.2...v1.23.3
v1.23.2
v1.23.1
Features
- #1922
local-tun
: Enable congestion control algorithm for TCP connections - #1923
local-tun
: Disable TCP package receive checksum for improving performance local-tun
: Buffer for receiving/sending packets from/totun
device are cached globally
Bug Fixes
- #1929
outbound_bind_addr
for UDP sockets failed tobind()
if it is an IPv4 address - Double check IPSK key length (AEAD-2022) when reading from configuration file
What's Changed
- fix(deps): update rust crate time to v0.3.41 by @renovate in #1924
- Apply outbound_bind_addr to UDP traffic in ssserver by @luujenn in #1929
- chore(deps): bump openssl from 0.10.71 to 0.10.72 in the cargo group by @dependabot in #1931
- chore: clippy fix by @AaronChen0 in #1933
- fix(deps): update rust crate tokio to v1.44.2 by @renovate in #1932
- chore(deps): bump crossbeam-channel from 0.5.14 to 0.5.15 in the cargo group by @dependabot in #1935
- fix: fixed build on android by @AaronChen0 in #1936
- fix(deps): update rust crate clap to v4.5.36 by @renovate in #1937
- fix(deps): update rust crate brotli to v8 by @renovate in #1939
New Contributors
Full Changelog: v1.23.0...v1.23.1
v1.23.0
Features, Breaking Changes
- MSRV bumps to v1.85, Rust language edition upgraded to
2024
rand
crate upgraded to v0.9, which may be incompatible with other older crateslocal-fake-dns
switched storage engine fromsled
torocksdb
, users should delete the old database file and letsslocal
recreate it ageainlocal-fake-dns
is moved fromfull
tofull-extra
feature because its still unstable
Bug fixes
- #1832 Fixes FreeBSD build error
- #1833 Fixes
sswinservice.exe
file paths in Powershell build script mips-*
targets cross build reenabled
Miscellaneous
- #1834 Shadowsocks entrance APIs has strongly typed errors
What's Changed
- fix freebsd build error by @AaronChen0 in #1832
- fix: file path in powershell script by @amorphobia in #1833
- fix(deps): update rust crate pin-project to v1.1.8 by @renovate in #1835
- fix(deps): update rust crate serde_json to v1.0.135 by @renovate in #1836
- refactor: change error handling to be strongly-typed by @ClaytonKnittel in #1834
- fix(deps): update rust crate clap to v4.5.24 by @renovate in #1839
- fix(deps): update rust crate tokio to v1.43.0 by @renovate in #1840
- fix(deps): update rust crate thiserror to v2.0.10 by @renovate in #1841
- fix(deps): update rust crate clap to v4.5.25 by @renovate in #1842
- fix(deps): update rust crate clap to v4.5.26 by @renovate in #1844
- fix(deps): update rust crate log to v0.4.24 by @renovate in #1847
- fix: mips-* reenabled, moka automatically switches to a fallback impl for AtomicU64 by @tatsuya6502 in #1845
- fix(deps): update rust crate notify to v8 by @renovate in #1846
- fix(deps): update rust crate thiserror to v2.0.11 by @renovate in #1848
- chore: clippy fix by @AaronChen0 in #1849
- fix(deps): update rust crate native-tls to v0.2.13 by @renovate in #1858
- fix(deps): update rust crate hickory-resolver to v0.25.0-alpha.5 by @renovate in #1870
- fix(deps): update rust crate directories to v6 by @renovate in #1850
- fix(deps): update rust crate shadowsocks-crypto to 0.6.0 by @renovate in #1872
- fix(deps): update rust crate ipnet to v2.11.0 by @renovate in #1855
- fix(deps): update rust crate hyper to v1.6.0 by @renovate in #1861
- fix(deps): update rust crate httparse to v1.10.0 by @renovate in #1860
- fix(deps): update rust crate bytes to v1.10.0 by @renovate in #1864
- chore(deps): update dependency windows to v5.1.0 by @renovate in #1867
- fix(deps): update rust crate webpki-roots to v0.26.8 by @renovate in #1862
- fix(deps): update rust crate tun to v0.7.11 by @renovate in #1857
- fix(deps): update rust crate snmalloc-rs to v0.3.8 by @renovate in #1868
- fix(deps): update rust crate serde_json to v1.0.138 by @renovate in #1854
- fix(deps): update rust crate pin-project to v1.1.9 by @renovate in #1863
- fix(deps): update rust crate once_cell to v1.20.3 by @renovate in #1869
- fix(deps): update rust crate log to v0.4.25 by @renovate in #1852
- fix(deps): update rust crate dynosaur to v0.1.3 by @renovate in #1871
- fix(deps): update rust crate clap to v4.5.29 by @renovate in #1856
- fix(deps): update rust crate tun to v0.7.13 by @renovate in #1874
- fix(deps): update rust crate blake3 to v1.6.0 by @renovate in #1878
- fix(deps): update rust crate clap to v4.5.30 by @renovate in #1877
- fix(deps): update rust crate windows-service to 0.8 by @renovate in #1879
- fix(deps): update rust crate native-tls to v0.2.14 by @renovate in #1880
- fix(deps): update rust crate serde_json to v1.0.139 by @renovate in #1881
- fix(deps): update rust crate serde to v1.0.218 by @renovate in #1882
- fix(deps): update rust crate zstd to v0.13.3 by @renovate in #1883
- fix(deps): update rust crate log to v0.4.26 by @renovate in #1884
- fix(deps): update rust crate libc to v0.2.170 by @renovate in #1886
- fix(deps): update rust crate flate2 to v1.1.0 by @renovate in #1887
- chore: clippy fix by @AaronChen0 in #1890
- fix(deps): update rust crate rand to 0.9 by @renovate in #1859
- fix(deps): update rust crate etherparse to 0.17 by @AaronChen0 in #1889
- fix(deps): update rust crate blake3 to v1.6.1 by @renovate in #1893
- fix(deps): update rust crate clap to v4.5.31 by @renovate in #1888
- fix(deps): update rust crate tokio-rustls to v0.26.2 by @renovate in #1894
- fix(deps): update rust crate thiserror to v2.0.12 by @renovate in #1896
- fix(deps): update rust crate serde_json to v1.0.140 by @renovate in #1897
- fix(deps): update rust crate httparse to v1.10.1 by @renovate in #1898
- fix(deps): update rust crate pin-project to v1.1.10 by @renovate in #1899
- fix(deps): update rust crate time to v0.3.38 by @renovate in #1900
- fix(deps): update rust crate bytes to v1.10.1 by @renovate in #1901
- fix(deps): update rust crate time to v0.3.39 by @renovate in #1903
- chore(deps): update rust crate env_logger to v0.11.7 by @renovate in #1908
- chore(deps): bump ring from 0.17.8 to 0.17.13 in the cargo group by @dependabot in #1904
- chore: clippy fix by @AaronChen0 in #1916
- fix(deps): update rust crate clap to v4.5.32 by @renovate in #1910
- fix(deps): update rust crate http-body-util to v0.1.3 by @renovate in #1913
- fix(deps): update rust crate reqwest to v0.12.14 by @renovate in #1914
- fix(deps): update rust crate libc to v0.2.171 by @renovate in #1911
- fix(deps): update rust crate serde to v1.0.219 by @renovate in #1907
- fix(deps): update rust crate bson to v2.14.0 by @renovate in #1917
- fix(deps): update rust crate http to v1.3.1 by @renovate in #1912
- fix(deps): update rust crate tokio to v1.44.1 by @renovate in #1905
- fix(deps): update rust crate sysexits to 0.9 by @renovate in #1891
- fix(deps): update rust crate once_cell to v1.21.1 by @renovate in #1909
- chore: free ubuntu-latest spaces by @AaronChen0 in #1920
New Contributors
- @ClaytonKnittel made their first contribution in #1834
- @tatsuya6502 made their first contribution in #1845
Full Changelog: v1.22.0...v1.23.0
v1.22.0
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 ...
v1.21.2
v1.21.1
Bug Fixes
- #1730
local-http
: The URI field in HTTP Request sent fromsslocal
should only contain path and query.
Miscellaneous
- #1702 Debian package build removes dependency of
pwgen
What's Changed
- chore(deps): bump thiserror from 1.0.63 to 1.0.64 by @dependabot in #1666
- chore(deps): bump libc from 0.2.158 to 0.2.159 by @dependabot in #1669
- chore(deps): bump async-trait from 0.1.82 to 0.1.83 by @dependabot in #1668
- chore(deps): bump tun2 from 3.1.4 to 3.1.5 by @dependabot in #1673
- chore(deps): bump flate2 from 1.0.33 to 1.0.34 by @dependabot in #1672
- chore: Configure Renovate by @renovate in #1680
- chore(deps): update dependency windows to v2.4.1 by @renovate in #1681
- fix(deps): update rust crate httparse to v1.9.5 by @renovate in #1682
- chore: clippy fix by @AaronChen0 in #1695
- chore(deps): update alpine docker tag to v3.20 by @renovate in #1685
- fix(deps): update rust crate reqwest to v0.12.8 by @renovate in #1684
- chore(deps): update circleci/golang docker tag to v1.17 by @renovate in #1686
- fix(deps): update rust crate regex to v1.11.0 by @renovate in #1688
- chore(deps): update dependency windows to v5 by @renovate in #1689
- chore(deps): update docker/setup-buildx-action action to v3 by @renovate in #1693
- chore(deps): update softprops/action-gh-release action to v2 by @renovate in #1694
- chore(deps): update docker/metadata-action action to v5 by @renovate in #1692
- chore(deps): update docker/login-action action to v3 by @renovate in #1691
- chore(deps): update docker/build-push-action action to v6 by @renovate in #1690
- fix(deps): update rust crate once_cell to v1.20.1 by @renovate in #1687
- fix(deps): update rust crate tun2 to v3.1.7 by @renovate in #1699
- fix(deps): update rust crate ipnet to v2.10.1 by @renovate in #1701
- fix(deps): update rust crate clap to v4.5.19 by @renovate in #1696
- fix(deps): update rust crate brotli to v7 by @renovate in #1698
- Remove dependency on pwgen by @marek22k in #1702
- fix(deps): update rust crate once_cell to v1.20.2 by @renovate in #1707
- fix(deps): update rust crate futures to v0.3.31 by @renovate in #1703
- fix(deps): update rust crate pin-project to v1.1.6 by @renovate in #1704
- chore: clippy fix by @AaronChen0 in #1706
- fix(deps): update rust crate clap to v4.5.20 by @renovate in #1710
- fix(deps): update rust crate hyper to v1.5.0 by @renovate in #1714
- fix(deps): update rust crate libc to v0.2.160 by @renovate in #1716
- fix(deps): update rust crate serde_json to v1.0.129 by @renovate in #1717
- fix(deps): update rust crate libc to v0.2.161 by @renovate in #1718
- chore: suppress a clippy warning by @AaronChen0 in #1719
- fix(deps): update rust crate serde_json to v1.0.131 by @renovate in #1720
- fix(deps): update rust crate serde_json to v1.0.132 by @renovate in #1721
- debian: fixup debian packaging build scripts by @mesher2024 in #1722
- fix(deps): update rust crate bytes to v1.8.0 by @renovate in #1724
- fix(deps): update rust crate serde to v1.0.211 by @renovate in #1725
- fix(deps): update rust crate tun2 to v3.1.8 by @renovate in #1726
- fix(deps): update rust crate tokio to v1.41.0 by @renovate in #1727
- fix(deps): update rust crate serde to v1.0.213 by @renovate in #1728
- fix(deps): update rust crate thiserror to v1.0.65 by @renovate in #1729
- fix(deps): update rust crate pin-project to v1.1.7 by @renovate in #1732
New Contributors
- @renovate made their first contribution in #1680
- @marek22k made their first contribution in #1702
- @mesher2024 made their first contribution in #1722
Full Changelog: v1.21.0...v1.21.1
v1.21.0
Features
- #1641
shadowsocks
:ProxySocket
supports generic I/O socket type - #1567
shadowsocks-service
: Support OpenBSD Packet-Filter (pf)
What's Changed
- chore(deps): bump rustls-native-certs from 0.7.1 to 0.7.2 by @dependabot in #1620
- chore(deps): bump tun2 from 2.0.5 to 2.0.6 by @dependabot in #1621
- chore(deps): bump serde_json from 1.0.124 to 1.0.125 by @dependabot in #1622
- chore(deps): bump clap from 4.5.15 to 4.5.16 by @dependabot in #1623
- chore(deps): bump reqwest from 0.12.5 to 0.12.7 by @dependabot in #1631
- chore(deps): bump serde_json from 1.0.125 to 1.0.127 by @dependabot in #1630
- chore(deps): bump blake3 from 1.5.3 to 1.5.4 by @dependabot in #1629
- chore(deps): bump flate2 from 1.0.31 to 1.0.33 by @dependabot in #1628
- chore(deps): bump tun2 from 2.0.6 to 2.0.8 by @dependabot in #1627
- Add
ProxySocket::as_raw_fd
by @dlon in #1625 - chore(deps): bump webpki-roots from 0.26.3 to 0.26.5 by @dependabot in #1638
- chore(deps): bump async-trait from 0.1.81 to 0.1.82 by @dependabot in #1637
- chore(deps): bump rustls-native-certs from 0.7.2 to 0.8.0 by @dependabot in #1639
- chore(deps): bump tun2 from 2.0.8 to 3.1.0 by @dependabot in #1640
- chore(deps): bump ipnet from 2.9.0 to 2.10.0 by @dependabot in #1646
- chore(deps): bump bson from 2.11.0 to 2.12.0 by @dependabot in #1654
- chore(deps): bump tun2 from 3.1.2 to 3.1.4 by @dependabot in #1653
- feat(shadowsocks): add more Debug implementations by @link2xt in #1656
- add support for OpenBSD/pf by @ge9 in #1567
- take arbitrary IO for udp proxy by @ibigbug in #1641
- feat: dependabot allow opening 50 PRs by @zonyitoo in #1663
- chore(deps): bump bytes from 1.7.1 to 1.7.2 by @dependabot in #1664
- chore(deps): bump serde from 1.0.209 to 1.0.210 by @dependabot in #1659
- chore(deps): bump etherparse from 0.15.0 to 0.16.0 by @dependabot in #1660
- chore(deps): bump webpki-roots from 0.26.5 to 0.26.6 by @dependabot in #1662
- chore(deps): bump bson from 2.12.0 to 2.13.0 by @dependabot in #1658
- chore(deps): bump clap from 4.5.17 to 4.5.18 by @dependabot in #1661
New Contributors
Full Changelog: v1.20.4...v1.21.0
v1.20.4
Features
- #1616
local
: Allow configuring SOCKS5UDP_ASSOCIATE
address - #1607 Published in MacPorts: https://ports.macports.org/port/shadowsocks-rust/
- #1613
ProxyServerStream::from_stream
made public
Bug Fixes
- #1612
server
: Properly exit server instance if any of the sub-tasks exited
What's Changed
- chore(deps): bump serde_json from 1.0.120 to 1.0.121 by @dependabot in #1597
- chore(deps): bump bytes from 1.6.1 to 1.7.1 by @dependabot in #1605
- chore(deps): bump flate2 from 1.0.30 to 1.0.31 by @dependabot in #1603
- chore(deps): bump serde_json from 1.0.121 to 1.0.122 by @dependabot in #1601
- chore(deps): bump windows-sys from 0.52.0 to 0.59.0 by @dependabot in #1604
- chore(deps): bump clap from 4.5.11 to 4.5.13 by @dependabot in #1602
- fix(net) losing the raw file descriptor may leak resources by @peterwillcn in #1606
- chore: fix some comments by @drawdrop in #1611
- chore(deps): bump clap from 4.5.13 to 4.5.15 by @dependabot in #1610
- chore(deps): bump serde_json from 1.0.122 to 1.0.124 by @dependabot in #1609
- feat(local): Allow configuring udp associate addr by @vvilhonen in #1616
New Contributors
- @peterwillcn made their first contribution in #1606
- @drawdrop made their first contribution in #1611
- @vvilhonen made their first contribution in #1616
Full Changelog: v1.20.3...v1.20.4