Changes in version 0.6.0 - 2025-03-19:
- snowflake: Prevent a crash if OnEvent is not called
- meek: include Let's Encrypt root CI for old Android versions
- webtunnel: make http/socks proxies work

Changes in version 0.5.0 - 2024-11-07:
- Add snowflake transport to Lyrebird
- Add event logging support for all transports

Changes in version 0.4.0 - 2024-10-08:
- Use go 1.21

Changes in version 0.3.0 - 2024-08-07:
- report lyrebird version and implementation to Tor
- fix IPv6 support in webtunnel
- simplify copyloop

Changes in version 0.2.0 - 2024-03-27:
- Socks5 Support general improvement
- Fixed expected import path of package x25519ell2
- Add WebTunnel Client Support
- Updated dependencies

Changes in version 0.1.0 - 2023-05-31:
 - Rename the project to lyrebird
 - Bring back meek uTLS support

Changes in version 0.0.14 - 2022-09-04:
 - Fixed the incompete previous fix to the Elligator 2 subgroup issue (Thanks
   to David Fifield).

Changes in version 0.0.13 - 2022-02-04:
 - Stop using utls entirely for TLS signature normalization (meek_lite).
 - Stop pinning the certificate chain for default bridges (meek_lite).

Changes in version 0.0.12 - 2021-12-31:
 - Fix the long standing distinguishers associated with agl's Elligator2
   implementation (Thanks to Loup Vaillant).
 - Replace the extra25519 import with an internal package.
 - Update the Azure TLS certificate digest (Thanks to Philipp Winter).
 - Make the -unsafeLogging command line switch work.
 - Bump the version of the utls fork, add the Chrome 83 fingerprint.

Changes in version 0.0.11 - 2019-06-21:
 - Update my e-mail address.
 - Change the obfs4 behavior for handling handshake failure to be more
   uniform.  Thanks to Sergey Frolov for assistance.
 - Bump the version of the utls fork.

Changes in version 0.0.10 - 2019-04-12:
 - Disable behavior distinctive to crypto/tls when using utls.
 - Bump the version of the utls fork.

Changes in version 0.0.9 - 2019-02-05:
 - Various meek_lite code cleanups and bug fixes.
 - Bug 29077: uTLS for ClientHello camouflage (meek_lite).
 - More fixes to HTTP Basic auth.
 - (meek_lite) Pin the certificate chain public keys for the default
   Tor Browser Azure bridge (meek_lite).

Changes in version 0.0.8 - 2019-01-20:
 - Bug 24793: Send the correct authorization HTTP header for basic auth.
 - (meek_lite) Explicitly set Content-Length to zero when there is no data
   to send.
 - Added optional support for building as a Go 1.11 module.  Patch by mvdan.
 - Change the canonical upstream repo location to gitlab.

Changes in version 0.0.7 - 2016-11-15:
 - Support configuring the obfs4 IAT parameter as the sole
   ServerTransportOption on bridges, and correctly checkpoint the argument
   to the state file.
 - Correctly use the derived epoch hour when generating the server obfs4
   ntor handshake response to be more tollerant of clock skew.
 - Reuse the read buffer when consuming obfs4 frames over the network to
   reduce memory consumption.  Patch by oxtoacart.

Changes in version 0.0.6 - 2016-01-25:
 - Delay transport factory initialization till after logging has been
   initialized.
 - Add a meek client implementation (WARNING: Does not support using a
   helper to normalize TLS signatures).  The brave people that want to use
   it can do so as the "meek_lite" transport, with identical bridge lines
   to the real meek-client.

Changes in version 0.0.5 - 2015-04-15:
 - Go vet/fmt fixes, and misc. code cleanups.  Patches by mvdan.
 - Changed the go.net import path to the new location (golang.org/x/net).
 - Added limited support for detecting if the parent process crashes.
 - Support for tor feature #15335 (stdin based termination notification).
 - Moved the leveled logging wrappers into common/log so they are usable
   in transport implementations.
 - Added a DEBUG log level.
 - Use a bundled SOCKS 5 server instead of goptlib's SocksListener.

Changes in version 0.0.4 - 2015-02-17
 - Improve the runtime performance of the obfs4 handshake tests.
 - Changed the go.crypto import path to the new location (golang.org/x/crypto).
 - Added client only support for ScrambleSuit.

Changes in version 0.0.3 - 2014-10-01
 - Change the obfs4 bridge line format to use a "cert" argument instead of the
   previous "node-id" and "public-key" arguments.  The "cert" consists of the
   Base64 encoded concatenation of the node ID and public key, with the
   trailing padding removed.  Old style separated bridge lines are still valid,
   but the newer representation is slightly more compact.

Changes in version 0.0.2 - 2014-09-26
 - Write an example client bridge line suitable for use with the running obfs4
   server instance to "obfs4_bridgeline.txt" for the convenience of bridge
   operators.
 - Add a man page for obfs4proxy.

Changes in version 0.0.1 - 2014-09-03
 - Initial release.
