All notable changes to this project will be documented in this file.
This project adheres to Semantic Versioning.
2.3.4 - 2024-12-13
- Test improvements.
- Permission for installed binary to limit execute to user.
2.3.3 - 2024-11-10
- Documentation improvements.
2.3.2 - 2024-11-08
- Documentation improvements.
- NgrokProcess.ProcessMonitor.stop() is now public (it was already documented as such).
2.3.1 - 2024-11-04
- Documentation improvements update links to
ngrok
's documentation. - Test improvements.
2.3.0 - 2024-04-08
- Support for
domain
configuration when building CreateTunnel. - Support for
user_agent_filter
configuration when building CreateTunnel. - Support for
policy
configuration when building CreateTunnel. us-cal-1
to Region.- Test cases for TLS tunnels.
- Build improvements.
ngrok
config valueip_restriction
was incorrectly plural in previous versions ofjava-ngrok
. Value is now interpreted as singular to align with thengrok
docs, and classes and methods associated with it, like TunnelIPRestriction, have been renamed.
2.2.16 - 2024-03-24
- Build and stability improvements.
2.2.15 - 2024-03-08
obj
parsing inNgrokLog
.throws
for unchecked exceptions to documentation.- Documentation improvements.
- Build and stability improvements.
- Minor bugs, including a typo in the name of JavaNgrokConfig.getStartupTimeout().
2.2.14 - 2024-03-06
- Build and stability improvements.
- Documentation and style improvements.
2.2.13 - 2024-02-26
- Build improvements.
- Documentation improvements.
2.2.12 - 2024-02-18
- Build and stability improvements.
2.2.10 - 2024-02-15
- Moved evaluation of HTTP
GET
retry logic fromDefaultHttpClient
' sgetInputStream()
toget()
. - Build and stability improvements.
2.2.9 - 2024-02-14
- Stability improvements.
2.2.8 - 2024-01-08
- Support for Java 21.
- Build improvements.
2.2.7 - 2023-12-30
- Test improvements, suite now respects
NGROK_AUTHTOKEN
for all necessary tests (skipped if not set, rather than tests failing).
2.2.6 - 2023-12-27
- If a value for
authToken
is not set inJavaNgrokConfig
, it will attempt to use the environment variableNGROK_AUTHTOKEN
if it is set. - Build improvements.
2.2.5 - 2023-12-01
java-ngrok
to no longer install the config file in a legacy location, now respectsngrok
's default locations.
- Build improvements.
2.2.4 - 2023-11-14
- Documentation improvements.
2.2.3 - 2023-09-17
retryCount
added toDefaultHttpClient
, soGET
options can now support retries.- Documentation improvements.
- Test improvements.
NgrokInstaller
now uses theDefaultHttpClient
to downloadngrok
binaries.
2.2.2 - 2023-09-14
- Documentation improvements.
2.2.1 - 2023-09-13
- Bug
in Tunnel,
a misspelled method was committed instead of using
setters
to updatepublicUrl
andproto
.
2.2.0 - 2023-09-12
- Support for
labels
, songrok
's Labeled Tunnel Configuration is now supported, which enables basic support forngrok
's Edge. apiKey
toJavaNgrokConfig
, which can be set sojava-ngrok
can interface with Edgeslabels
.id
to Tunnel.timeout
to DefaultHttpClient.- Documentation improvements.
- Test improvements.
2.1.0 - 2023-04-22
- Support for
oauth
configuration when building CreateTunnel. - Support for other new
ngrok
v3 CreateTunnel parameters, includingcircuit_breaker
,compression
,mutual_tls_cas
,proxy_proto
,websocket_tcp_converter
,terminate_at
,request_header
,response_header
,ip_restrictions
, andverify_webhook
. - Documentation improvements.
- Test improvements.
2.0.0 - 2023-04-12
- Default installer behavior downloads
ngrok
v3 by default. - Documentation updates.
- Test updates.
1.7.2 - 2023-04-12
- Support for
basic_auth
parameter inngrok
v3. - Documentation improvements.
- Test improvements.
1.7.1 - 2023-04-11
- Inconsistencies with default installation of
ngrok
v2.
1.7.0 - 2023-04-11
ngrokVersion
to CreateTunnel so parameter details can be properly inferred when necessary.
- Inconsistencies with default installation of
ngrok
v2. - Documentation improvements.
- Test improvements.
1.6.2 - 2023-03-08
- Issue where zip file paths were not normalized before they were read.
- Documentation improvements.
- Test improvements.
1.6.1 - 2022-11-29
- Stability improvements.
1.6.0 - 2022-11-28
- Support for
ngrok
v3 (v2 is still used by default). - Documentation and examples for using
java-ngrok
withngrok
v3.
- Stability improvements.
- Documentation improvements.
- Test improvements.
1.5.6 - 2022-02-07
- Darwin 64-bit ARM support, as this was added to
ngrok
itself.
- Darwin 386 support, as this was removed from
ngrok
itself.
1.5.5 - 2021-09-28
- Full
ngrok
log line now passed to Java logger (was previously just themsg
field).
1.5.4 - 2021-09-21
- Test improvements.
- Parse issue from
ngrok
config file withinspect
andbind_tls
intunnels
definitions.
1.5.3 - 2021-08-26
- Build improvements.
- Documentation improvements.
- If no
configPath
is set inJavaNgrokConfig
, now properly defaults to~/.ngrok2/ngrok.yml
.
1.5.0 - 2021-08-25
- Shutdown hook, so running
ngrok
processes will clean themselves when the JVM shuts down. - Build improvements.
- Documentation improvements.
- Test improvements.
- Java 8 support.
reconnectSessionRetries
fromJavaNgrokConfig
, instead relying onngrok
's own built-in retry mechanism on startup fails.
The 1.4.x
branch is where support for Java 8 of java-ngrok
is passively maintained. It is available through
the java8-ngrok
artifact
on Maven Central.
1.4.13 - 2024-03-08
obj
parsing inNgrokLog
.throws
for unchecked exceptions to documentation.- Documentation improvements.
- Build and stability improvements.
- Minor bugs, including a typo in the name of JavaNgrokConfig.getStartupTimeout().
1.4.12 - 2024-03-06
- Build and stability improvements.
- Documentation and style improvements.
1.4.11 - 2024-02-26
- Build improvements.
- Documentation improvements.
1.4.8 - 2024-02-19
- Rebased the
1.4.x
branch with Java 8-compatible changes frommain
between1.6.0
and2.2.12
. See themain changelog
for full details. - Biggest change is support for
ngrok
v3—includinglabels
—and thatngrok
v3 is installed by default.
NgrokProcess.stopMonitorThread()
, useNgrokProcess.ProcessMonitor.stop()
instead.
1.4.6 - 2024-02-15
- If a value for
authToken
is not set inJavaNgrokConfig
, it will attempt to use the environment variableNGROK_AUTHTOKEN
if it is set. - Test improvements, suite now respects
NGROK_AUTHTOKEN
for all necessary tests (skipped if not set, rather than tests failing). - Build and stability improvements.
- Issue where zip file paths were not normalized before they were read.
1.4.5 - 2022-02-07
- Darwin 64-bit ARM support, as this was added to
ngrok
itself.
- Darwin 386 support, as this was removed from
ngrok
itself.
1.4.4 - 2021-09-28
- Test improvements.
- Parse issue from
ngrok
config file withinspect
andbind_tls
intunnels
definitions. - Full
ngrok
log line now passed to Java logger (was previously just themsg
field).
1.4.3 - 2021-08-26
- Build improvements.
- Documentation improvements.
- If no
configPath
is set inJavaNgrokConfig
, now properly defaults to~/.ngrok2/ngrok.yml
.
1.4.0 - 2021-08-25
- Java 8 support, which will not be actively maintained. It is available through the
java8-ngrok
artifact on Maven Central.
1.1.0 - 2021-08-20
- Support
for
ngrok
's tunnel definitions when calling NgrokClient.connect(). If a tunnel definition inngrok
's config matches the givenname
, it will be used to start the tunnel. - Support for
a
ngrok
tunnel definition named "java-ngrok-default" when calling NgrokClient.connect(). Whenname
isNone
and a "java-ngrok-default" tunnel definition exists itngrok
's config, it will be used. refreshMetrics()
to NgrokClient.- Documentation improvements.
- Test improvements.
JavaNgrokConfig.keepMonitoring
is nowtrue
by default (was already documented this way, so fixing bug where it defaulted itfalse
).- Serialization of
ngrok
'sngrok.yml
(can now properly parsed nested YAML to a nested Map). Tunnel.Metrics
rate
andp
fields are nowdouble
s rather thanint
s, so they serialize correctly when populated.
1.0.0 - 2021-08-18
- First stable release of
java-ngrok
.