v5.1.0 User Preview
v5.1.0 User Preview
New Features
- Jsonv5 New configuration format. This enables support for automatic component recognition.
- ZH Document is work in progress.
- EN Document is work in progress.
- Thanks @AkinoKaede, @kslr, @mzz2017.
- VLite UDP P2P focused proxy protocol with Full Cone, Forward Error Correction, Self-Healing Connection(Connection Stabilization) support.
- UDP PacketAddr UDP endpoint independent mapping(aka Full Cone) support.
- SocksOpt Add KeepAlive Support. Thanks @ValdikSS .
- SocksOpt Add BindToDevice Support. Thanks @database64128 .
- SocksOpt Add Rx/TxBuf Size Support.
- Burst Observatory Measure connection quality to a significant amount of outbound at the same time. Thanks @qjebbs.
- Multi Observatory Run more than one Observatory at the same time.
- Router Load balancing strategy LeastLoad. Thanks @qjebbs.
- Jsonv4 Additional representation format for Jsonv4 configure file format. This includes YAML, TOML. Thanks @qjebbs.
- Jsonv4 General purpose merger for all configure formats. Thanks @qjebbs.
- Shadowsocks Reduced IV Head Entropy Experiment. Thanks GFWReport and other collaborators.
- CLI Reworked command line Interface. Thanks @qjebbs.
- Developer Assistance Protobuf configure format reverse engineering.
- Asset Search for assets in xdg data directories on non-windows platforms #1578 Thanks @NickCao.
- DNS Feat: refine find IPs logic for DoH. Thanks @AkinoKaede .
- gRPC Feat: make gRPC dialer accept socket config #1697 Thanks @dyhkwong
- JSONv5 Feat: add JSONC support to v5 configuration #1778 Thanks @AkinoKaede
- DNS Change the default port of Dns over Quic #1834 Thanks @simpleandstupid @AkinoKaede
- DNS feat: change ALPN of DNS over QUIC Thanks @AkinoKaede
- UDP Feat: increase idle timeout to 300s for udp split #1903 Thanks @AkinoKaede
- Feat: refine cipher and network config #1436 Thanks @AkinoKaede
- Feat: refine the logic of security type AUTO #1913 Thanks @H1JK
Fixes
- Router Fixed a memory leak bug caused by requiring component.
- FakeDNS Fix a concurrency issue in fakedns #1666 Thanks @yuhan6665 .
- Jsonv5 Fix: context of DNS simplified config #1665 Thanks @AkinoKaede .
- DNS Fix: fix failure of cache expired DNS record querying over DoH #1706 Thanks @KujouRinka.
- DNS Fix: failure of cache expired DNS record querying over DoQ. Thanks @AkinoKaede .
- Fix client dialer log #1568 Thanks @yuhan6665 @AkinoKaede @kslr.
- Fix: net.Address type checking #1629 Thanks @1ocalhost
- Fix "disable quit on connection interrupt" #1763 Thanks @dyhkwong
- Fix TLS Client Certificate Verify Not Applied
- Fix: proxy/http: Avoid getting stuck when using server-first protocols #1517 Thanks @lrh2000
- Fix: correct a type assertion of dokodemo simplified config #1771 Thanks @EHfive
- Fix: build routing condition for geo domain #1772 Thanks @EHfive
- Fix: correct TCP keepalive sockopt names for darwin #1777 Thanks @EHfive
- Fix ticker usage Thanks @nekohasekai
- Fix: load auto format config with io.Reader #1773 Thanks @AkinoKaede
- Fix: V5 config register #1879 Thanks @AkinoKaede
- Fix: length of DNS over QUIC #1888 Thanks @AkinoKaede
Chores
- Test: Add statistics in conn testing #1444 Thanks @yuhan6665 @kslr .
- Chore: bump github.com/lucas-clemente/quic-go to 0.27.0 Thanks @AkinoKaede .
- Fix: lint setting for revive #1758 Thanks @Loyalsoldier
- Fix: gci command for formatting code #1757 Thanks @Loyalsoldier
- Refactor strmatcher.ACAutomationMatcherGroup #1363 Thanks @Vigilans
- Fix TestUserValidator #1381 Thanks @yuhan6665
- Fix lint Thanks @nekohasekai
- Chore: use Go v1.19 Thanks @AkinoKaede
- Chore: normalized generated protobuf files.