Skip to content

Releases: Jigsaw-Code/outline-sdk

v0.0.17 SOCKS5 UDP Client support

20 Sep 22:00
f65586c
Compare
Choose a tag to compare

We're excited to announce that our SOCKS5 client library now supports UDP! You can now utilize SOCKS5 proxies to measure the performance of DNS, QUIC, and other UDP-based protocols, which was only possible over Shadowsocks before. This will open up the possibilities for remote testing.

This improvement (#257) was made possible thanks to the valuable contributions of @amircybersec as part of his OTF ICFP Fellowship.

Full Changelog: v0.0.16...v0.0.17

v0.0.16 Bug fix and TLS Record Fragmentation optimization

08 May 17:00
2e2d2af
Compare
Choose a tag to compare

This is a minor release that fixes an important bug in the duplexConn.ReadFrom. Please upgrade.

If also introduces an optimized version of the TLS Record Fragmentation writer

What's Changed

  • feat: add tlsfrag.RecordLenFuncWriter without waiting for the entire record by @jyyi1 in #207
  • fix: duplexConn ReadFrom and connect handler initial data coalescing by @fortuna in #229

Full Changelog: v0.0.15...v0.0.16

v0.0.15 SOCKS5 client with username/password authentication

25 Mar 20:46
212ef96
Compare
Choose a tag to compare

Our SOCKS5 client library now supports basic username/password authentication via socks5.StreamDialer.SetCredentials(username, password).

This makes SOCKS5 suitable for public proxy usage when paired with secure transports like TLS. The Outline SDK provides the necessary libraries for both SOCKS5-over-TLS and SOCKS5-over-Shadowsocks transport.

Thanks @amircybersec for the contribution: #189

Full Changelog: v0.0.14...v0.0.15

v0.0.14 Streamline use of DNS resolvers, Enhanced Reliability

15 Mar 15:04
cf06e52
Compare
Choose a tag to compare

Effortless Custom DNS with dns.NewStreamDialer

Configuring custom DNS resolvers within StreamDialers is straightforward now. Introducing dns.NewStreamDialer: provide your DNS resolver and a base dialer, and it handles Happy Eyeballs resolution and selection for optimized connectivity.

Fixed Connection Leaks

We've addressed connection leaks in error scenarios. This is an important upgrade for maintaining application stability.

Changelog

  • feat: create dns.NewStreamDialer by @fortuna in #180
  • fix: prevent conn leakage in transport, tls and tlsfrag by @jyyi1 in #195

Full Changelog: v0.0.13...v0.0.14

v0.0.13: Faster, More Resilient Connections with Happy Eyeballs v2

14 Feb 16:56
3694a32
Compare
Choose a tag to compare

We're excited to introduce Happy Eyeballs v2 support in the Outline SDK! This updated algorithm streamlines network connections, providing a smoother and more reliable experience for your users.

Key benefits of Happy Eyeballs v2

  • Snappier Connections: Addresses are resolved and connection attempts start concurrently, minimizing delays caused by slow networks or unresponsive servers.
  • Improved Resilience: Offers built-in connection fallback logic. Great for dealing with network interference or using hard-coded IPs.
  • Beyond Go's Default: Surpasses the limitations of Go's built-in networking library (which uses Happy Eyeballs v1).

How it works

Happy Eyeballs v2 intelligently initiates connection attempts across IPv4 and IPv6 in parallel. This significantly reduces wait times, especially in less-than-ideal network conditions.

Get Started

Upgrade to Outline SDK v.0.0.13 and utilize the transport.HappyEyeballsStreamDialer to make your applications faster and more reliable.

Let us know how Happy Eyeballs v2 is improving your application's connectivity!

Changelog

Full Changelog: v0.0.12...v.0.0.13

v0.0.12 BREAKING: Renamed core transport methods and types

19 Jan 00:07
2395ae2
Compare
Choose a tag to compare

Be aware that this release breaks backwards-compatibility. This was discussed on #150

To migrate, rename:

  • StreamDialer.Dial -> StreamDialer.DialStream
  • PacketDialer.Dial -> PacketDialer.DialPacket
  • StreamEndpoint.Connect -> StreamEndpoint.ConnectStream
  • PacketEndpoint.Connect -> PacketEndpoint.ConnectPacket
  • TCPStreamDialer -> TCPDialer
  • UDPStreamDialer -> UDPDialer

What's Changed

  • BREAKING: Cleanup core transport library by @fortuna in #165

Full Changelog: v0.0.11...v0.0.12

v0.0.11 - DNS Library and Function Endpoint and Dialer

09 Jan 04:09
525beac
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.0.10...v0.0.11