4.8 (May 2026)
* Prometheus /metrics endpoint on the existing metrics port, exposing HTTP request rate/duration/size histograms, HTTPS CONNECT counters + handshake duration, SSH tunnel state and reconnects, active connections, error counters, and bundled JVM/process metrics
* New --metrics-auth user:password flag (and TESTINGBOT_METRICS_AUTH env var) for optional HTTP Basic auth on /metrics
* Environment variable alternatives for credential-bearing flags to keep secrets out of ps: TESTINGBOT_AUTH, TESTINGBOT_PROXY_USERPWD, TESTINGBOT_METRICS_AUTH
* Strip sensitive headers from debug logging
* Improve basic auth handling
* Improve logging
* Update dependencies

4.7 (March 2026)
* Fix issue with Websocket proxying

4.6 (January 2026)
* Fix issue with --debug

4.5 (January 2026)
* Update dependencies
* Introduce `-s` or `--shared` flag to indicate you want to share the tunnel with colleagues on TestingBot. By default, a tunnel is *not shared*.
* Code improvements

4.4 (October 2025)
* Update dependencies
* Improve `--proxy` and `--proxy-userpwd` handling

4.3 (August 2025)
* Update dependencies (Jetty + SSH lib)
* Improve monitoring + retry mechanisms
* Drop support for JDK 8
* Improve `--doctor` checks

4.0 (December 2024)
* Update dependencies (Jetty 11)
* Websocket + Server Sent Events support
* Introduced --nobump argument to disable SSL bumping

3.5 (May 2023)
* Updated dependencies
* Upgraded secure connection cipher

3.2 (February 2021)
* Updated dependencies

3.1 (February 2020)
* Updated dependencies
* Don't poll tunnel indefinitely
* Built with JDK8
* Code cleanup

3.0 (September 2019)
* Minor fixes (updated dependencies)

2.9
* Various minor fixes (timeouts, doctor checks, ..)

2.8
* Fix NPE in CONNECT handling

2.7
* Rename jettyport option to localport
* If started with --nocache, send to API for Manual Testing
* Implemented upstream proxying for HTTPs via CONNECT (--proxy)
* Updated pom.xml depndencies
* No more hardcoded ports to listen to

2.6
* Update pom.xml dependencies
* Remove incorrect Java version check
* Remove deprecated features: --boost and --ssl
* Add option to supply extra HTTP headers during requests
* Add option to supply basic auth credentials for various hosts, which the tunnel will automatically use
* Make the --nocache option clearer: Do not cache any HTTP requests

2.5
* Send Tunnel version to TestingBot
* Add Proxy PAC support

2.4
* Add --tunnel-identifier to identify different tunnels for the same account
* Improved logging (formatting, log to file, debug levels, ...)
* Improved handling of connection errors (re-establish connection to tunnel VM upon connection failures)
* Added option where you can specify a local directory to be set up as a webserver, for example to test static files
* Added an embedded statistics REST api to fetch details about the running instance, by default runs on port 8003

2.3
* Add --doctor to troubleshoot misconfigurations
* Update pom.xml dependencies
* Debugmode will now output HTTP headers
* Cleanup: remove unused imports and code

2.2
* Fix the fast-fail domain blacklist feature to work with the new Jetty 9 proxies

1.14
* remove region
* update dependencies

1.11
* ssh compression (zlib)

1.10
* switch to using blowfish tunnel encryption which should be faster
* improved error logging
* display how long each proxied request takes in ms
* add rabbIT support

1.9
* remove readyfile when tunnel is stopped
* cleanup code
* re-try establishing SSH connection when it fails
* test forwarding + tunnel upon starting, will show a warning message if something is not working properly.

1.8:
* Improved error handling, updated Jetty from 7.4.5.v20110725 to 8.1.9.v20130131, which fixes an issue where a HTTP method would sometimes be wrongly proxied.

1.7:
* Added region support, use -r to specify if you want the tunnel to be used on our US or EU cloud.

1.6:
* Added support for running multiple tunnels under the same account.
  This allows for spreading the load across multiple machines when running a high number of simultaneous tests.
