cloudflare/cloudflared

Public

mirrored from https://github.com/cloudflare/cloudflaredAvailable

CodeCommitsIssuesPull requestsActionsInsightsSecurity
2021.12.4

Branches

Tags

  • No tags available.
0Branches0Tags
Go to file
Add file
Code

Clone

HTTPS

Download ZIP

RELEASE_NOTES

1090lines · modecode

12021.12.4
2- 2021-12-27 TUN-5482: Refactor tunnelstore client related packages for more coherent package
3- 2021-12-27 TUN-5551: Change internally published debian package to be FIPS compliant
4- 2021-12-27 TUN-5551: Show whether the binary was built for FIPS compliance
5
62021.12.3
7- 2021-12-22 TUN-5584: Changes for release 2021.12.2
8- 2021-12-22 TUN-5590: QUIC datagram max user payload is 1217 bytes
9- 2021-12-22 TUN-5593: Read full packet from UDP connection, even if it exceeds MTU of the transport. When packet length is greater than the MTU of the transport, we will silently drop packets (for now).
10- 2021-12-23 TUN-5597: Log session ID when session is terminated by edge
11
122021.12.2
13- 2021-12-20 TUN-5571: Remove redundant session manager log, it's already logged in origin/tunnel.ServeQUIC
14- 2021-12-20 TUN-5570: Only log RPC server events at error level to reduce noise
15- 2021-12-14 TUN-5494: Send a RPC with terminate reason to edge if the session is closed locally
16- 2021-11-09 TUN-5551: Reintroduce FIPS compliance for linux amd64 now as separate binaries
17
182021.12.1
19- 2021-12-16 TUN-5549: Revert "TUN-5277: Ensure cloudflared binary is FIPS compliant on linux amd64"
20
212021.12.0
22- 2021-12-13 TUN-5530: Get current time from ticker
23- 2021-12-15 TUN-5544: Update CHANGES.md for next release
24- 2021-12-07 TUN-5519: Adjust URL for virtual_networks endpoint to match what we will publish
25- 2021-12-02 TUN-5488: Close session after it's idle for a period defined by registerUdpSession RPC
26- 2021-12-09 TUN-5504: Fix upload of packages to public repo
27- 2021-11-30 TUN-5481: Create abstraction for Origin UDP Connection
28- 2021-11-30 TUN-5422: Define RPC to unregister session
29- 2021-11-26 TUN-5361: Commands for managing virtual networks
30- 2021-11-29 TUN-5362: Adjust route ip commands to be aware of virtual networks
31- 2021-11-23 TUN-5301: Separate datagram multiplex and session management logic from quic connection logic
32- 2021-11-10 TUN-5405: Update net package to v0.0.0-20211109214657-ef0fda0de508
33- 2021-11-10 TUN-5408: Update quic package to v0.24.0
34- 2021-11-12 Fix typos
35- 2021-11-13 Fix for Issue #501: Unexpected User-agent insertion when tunneling http request
36- 2021-11-16 TUN-5129: Remove `-dev` suffix when computing version and Git has uncommitted changes
37- 2021-11-18 TUN-5441: Fix message about available protocols
38- 2021-11-12 TUN-5300: Define RPC to register UDP sessions
39- 2021-11-14 TUN-5299: Send/receive QUIC datagram from edge and proxy to origin as UDP
40- 2021-11-04 TUN-5387: Updated CHANGES.md for 2021.11.0
41- 2021-11-08 TUN-5368: Log connection issues with LogLevel that depends on tunnel state
42- 2021-11-09 TUN-5397: Log cloudflared output when it fails to connect tunnel
43- 2021-11-09 TUN-5277: Ensure cloudflared binary is FIPS compliant on linux amd64
44- 2021-11-08 TUN-5393: Content-length is no longer a control header for non-h2mux transports
45
462021.11.0
47- 2021-11-03 TUN-5285: Fallback to HTTP2 immediately if connection times out with no network activity
48- 2021-09-29 Add flag to 'tunnel create' subcommand to specify a base64-encoded secret
49
502021.10.5
51- 2021-10-25 Update change log for release 2021.10.4
52- 2021-10-25 Revert "TUN-5184: Make sure outstanding websocket write is finished, and no more writes after shutdown"
53
542021.10.4
55- 2021-10-21 TUN-5287: Fix misuse of wait group in TestQUICServer that caused the test to exit immediately
56- 2021-10-21 TUN-5286: Upgrade crypto/ssh package to fix CVE-2020-29652
57- 2021-10-18 TUN-5262: Allow to configure max fetch size for listing queries
58- 2021-10-19 TUN-5262: Improvements to `max-fetch-size` that allow to deal with large number of tunnels in account
59- 2021-10-15 TUN-5261: Collect QUIC metrics about RTT, packets and bytes transfered and log events at tracing level
60- 2021-10-19 TUN-5184: Make sure outstanding websocket write is finished, and no more writes after shutdown
61
622021.10.3
63- 2021-10-14 TUN-5255: Fix potential panic if Cloudflare API fails to respond to GetTunnel(id) during delete command
64- 2021-10-14 TUN-5257: Fix more cfsetup targets that were broken by recent package changes
65
662021.10.2
67- 2021-10-11 TUN-5138: Switch to QUIC on auto protocol based on threshold
68- 2021-10-14 TUN-5250: Add missing packages for cfsetup to succeed in github release pkgs target
69
702021.10.1
71- 2021-10-12 TUN-5246: Use protocol: quic for Quick tunnels if one is not already set
72- 2021-10-13 TUN-5249: Revert "TUN-5138: Switch to QUIC on auto protocol based on threshold"
73
742021.10.0
75- 2021-10-11 TUN-5138: Switch to QUIC on auto protocol based on threshold
76- 2021-10-07 TUN-5195: Do not set empty body if not applicable
77- 2021-10-08 UN-5213: Increase MaxStreams value for QUIC transport
78- 2021-09-28 TUN-5169: Release 2021.9.2 CHANGES.md
79- 2021-09-28 TUN-5164: Update README and clean up references to Argo Tunnel (using Cloudflare Tunnel instead)
80
812021.9.2
82- 2021-09-21 TUN-5129: Use go 1.17 and copy .git folder to docker build to compute version
83- 2021-09-21 TUN-5128: Enforce maximum grace period
84- 2021-09-22 TUN-5141: Make sure websocket pinger returns before streaming returns
85- 2021-09-24 TUN-5142: Add asynchronous servecontrolstream for QUIC
86- 2021-09-24 TUN-5142: defer close rpcconn inside unregister instead of ServeControlStream
87- 2021-09-27 TUN-5160: Set request.ContentLength when this value is in request header
88
892021.9.1
90- 2021-09-21 TUN-5118: Quic connection now detects duplicate connections similar to http2
91- 2021-09-15 Fix TryCloudflare link
92
932021.9.0
94- 2021-09-02 Fix broken TryCloudflare link
95- 2021-09-03 Add support for taking named tunnel credentials from an environment variable
96- 2021-08-30 TUN-5012: Use patched go-sumtype
97- 2021-08-31 TUN-5011: Use the region parameter in fallback SRV lookup
98- 2021-08-31 TUN-5029: Do not strip cf- prefixed headers
99- 2021-08-29 TUN-5009: Updated github action to use go 1.17.x for checks
100- 2021-08-28 TUN-5010: --region should be a string flag
101- 2021-08-10 Allow building on arm64 platforms
102- 2021-06-09 Update README.md
103- 2021-05-31 🖌️ Allow providing TokenID and TokenSecret as env vars when calling cloudflared access
104- 2021-05-31 🎨 Prefix env var parameters with TUNNEL
105
1062021.8.7
107- 2021-08-28 Revert "TUN-4926: Implement --region configuration option"
108
1092021.8.6
110- 2021-08-27 TUN-5000: De-flake logging to dir component test in Windows by increasing to buffer to cope with more logging
111- 2021-08-27 TUN-5003: Fix cfsetup for non-FIPS golang version
112
1132021.8.5
114- 2021-08-27 TUN-4961: Update quic-go to latest
115- 2021-08-27 Release 2021.8.4
116
1172021.8.4
118- 2021-08-26 TUN-4974: Fix regression where we were debug logging by accident
119- 2021-08-26 TUN-4970: Only default to http2 for warp-routing if protocol is h2mux
120- 2021-08-26 TUN-4981: Improve readability of prepareTunnelConfig method
121- 2021-08-26 TUN-4926: Implement --region configuration option
122- 2021-07-09 TUN-4821: Make quick tunnels the default in cloudflared
123
1242021.8.3
125- 2021-08-23 TUN-4889: Add back appendtagheaders function
126- 2021-08-21 TUN-4940: Fix cloudflared not picking up correct NextProtos for quic
127- 2021-08-21 TUN-4613: Add a no-op protocol version slot
128- 2021-08-13 TUN-4922: Downgrade quic-go library to 0.20.0
129- 2021-08-17 TUN-4866: Add Control Stream for QUIC
130- 2021-08-17 TUN-4927: Parameterize region in edge discovery code
131- 2021-08-06 TUN-4602: Added UDP resolves to Edge discovery
132
1332021.8.2
134- 2021-08-03 TUN-4597: Added HTTPProxy for QUIC
135- 2021-08-04 TUN-4795: Remove Equinox releases
136- 2021-08-09 TUN-4911: Append Environment variable to Path instead of overwriting it
137
1382021.8.1
139- 2021-08-02 TUN-4855: Added CHANGES.md for release 2021.8.0
140- 2021-08-03 TUN-4597: Add a QUIC server skeleton
141- 2021-08-03 TUN-4873: Disable unix domain socket test for windows unit tests
142- 2021-08-04 TUN-4875: Added amd64-linux builds back to releases
143
1442021.8.0
145- 2021-07-30 TUN-4847: Allow to list tunnels by prefix name or exclusion prefix name
146- 2021-07-30 TUN-4772: Release built executables with packages
147- 2021-07-30 TUN-4851: Component tests to smoke test that Proxy DNS and Tunnel are only run when expected
148- 2021-07-28 TUN-4811: Publish quick tunnels' hostname in /metrics under `userHostname` for backwards-compatibility
149- 2021-07-29 TUN-4832: Prevent tunnel from running accidentally when only proxy-dns should run
150- 2021-07-28 TUN-4819: Tolerate protocol TXT record lookup failing
151
1522021.7.4
153- 2021-07-28 TUN-4814: Revert "TUN-4699: Make quick tunnels the default in cloudflared"
154- 2021-07-28 TUN-4812: Disable CGO for cloudflared builds
155
1562021.7.3
157- 2021-07-27 TUN-4799: Build deb, msi and rpm packages with fips
158
1592021.7.2
160- 2021-07-27 Fixed a syntax error with python logging.
161
1622021.7.1
163- 2021-07-21 TUN-4755: Add a windows msi release option to Make
164- 2021-07-22 TUN-4761: Added a build-all-packages target to cfsetup
165- 2021-07-26 TUN-4771: Upload deb, rpm and msi packages to github
166- 2021-07-14 TUN-4714: Name nightly package cloudflared-nightly to avoid apt conflict
167- 2021-07-16 TUN-4701: Split Proxy into ProxyHTTP and ProxyTCP
168- 2021-07-08 TUN-4596: Add QUIC application protocol for QUIC stream handshake
169- 2021-07-09 TUN-4699: Make quick tunnels the default in cloudflared
170
1712021.7.0
172- 2021-07-01 TUN-4626: Proxy non-stream based origin websockets with http Roundtrip.
173- 2021-07-01 TUN-4655: ingress.StreamBasedProxy.EstablishConnection takes dest input
174- 2021-07-09 TUN-4698: Add cloudflared metrics endpoint to serve quick tunnel hostname
175- 2021-06-21 TUN-4521: Modify cloudflared to use zoneless-tunnels-worker for free tunnels
176- 2021-04-05 AUTH-3475: Updated GetAppInfo error message
177
1782021.6.0
179- 2021-06-21 TUN-4571: Changelog for 2021.6.0
180- 2021-06-18 TUN-4571: Fix proxying to unix sockets when using HTTP2 transport to Cloudflare Edge
181- 2021-06-07 TUN-4502: Make `cloudflared tunnel route` subcommands described consistently
182- 2021-06-08 TUN-4504: Fix component tests in windows
183- 2021-05-27 TUN-4461: Log resulting DNS hostname if one is received from Cloudflare API
184
1852021.5.10
186- 2021-05-25 TUN-4456: Replaced instances of Tick() with Ticker() in h2mux paths
187
1882021.5.9
189- 2021-05-20 TUN-4426: Fix centos builds
190- 2021-05-20 Update changelog
191- 2021-04-30 AUTH-3426: Point to new transfer service URL and eliminate PUT /ok
192
1932021.5.8
194- 2021-05-14 TUN-4419: Improve error message when cloudflared cannot reach origin
195- 2021-05-19 TUN-4425: --overwrite-dns flag for in adhoc and route dns cmds
196
1972021.5.7
198- 2021-05-17 Fix typo in Changes.md
199- 2021-05-17 TUN-4421: Named Tunnels will automatically select the protocol to connect to Cloudflare's edge network
200
2012021.5.6
202- 2021-05-14 TUN-4418: Downgrade to Go 1.16.3
203
2042021.5.5
205
206
2072021.5.4
208- Fix release pipeline
209
2102021.5.1
211- 2021-05-10 TUN-4342: Fix false positive warning about unused hostname property
212- 2021-05-10 Release 2021.5.0
213
2142021.5.0
215- 2021-05-10 TUN-4384: Silence log from automaxprocs
216- 2021-05-10 AUTH-3537: AUDs in JWTs are now always arrays
217- 2021-05-10 Update changelog for 2021.5.0
218- 2021-05-03 TUN-4343: Fix broken build by setting debug field correctly
219- 2021-05-06 TUN-4356: Set AUTOMAXPROCS to the CPU limit when running in a Linux container
220- 2021-05-06 TUN-4357: Bump Go to 1.16
221- 2021-05-06 TUN-4359: Warn about unused keys in 'tunnel ingress validate'
222- 2021-04-30 debug: log host / path
223- 2021-04-20 AUTH-3513: Checks header for app info in case response is a 403/401 from the edge
224- 2021-04-29 TUN-4000: Release notes for cloudflared replica model
225- 2021-04-09 TUN-2853: rename STDIN-CONTROL env var to STDIN_CONTROL
226- 2021-04-09 TUN-4206: Better error message when user is only using one ingress rule
227
2282021.4.0
229- 2021-04-05 TUN-4178: Fix component test for running as a service in MacOS to not assume a named tunnel
230- 2021-04-05 TUN-4177: Running with proxy-dns should not prevent running Named Tunnels
231- 2021-04-02 TUN-4168: Transparently proxy websocket connections using stdlib HTTP client instead of gorilla/websocket; move websocket client code into carrier package since it's only used by access subcommands now (#345).
232- 2021-04-07 Publish change log for 2021.4.0
233
2342021.3.6
235- 2021-03-30 TUN-4150: Only show the connector table in 'tunnel info' if there are connectors. Don't show rows with zero connections.
236- 2021-03-31 TUN-4153: Revert best-effort HTTP2 usage when talking to origins
237- 2021-03-26 TUN-4141: Better error messages for tunnel info subcommand.
238- 2021-03-29 TUN-4146: Unhide and document grace-period
239- 2021-03-25 TUN-3863: Consolidate header handling logic in the connection package; move headers definitions from h2mux to packages that manage them; cleanup header conversions
240
2412021.3.5
242- 2021-03-26 TUN-3896: http-service and tunnelstore client use http2 transport.
243- 2021-03-25 TUN-4125: Change component tests to run in CI with its own dedicated resources
244- 2021-03-26 Publish change log for 2021.3.5
245
2462021.3.4
247
248
2492021.3.3
250- 2021-03-23 TUN-4111: Warn the user if both properties "tunnel" and "hostname" are used
251- 2021-03-23 TUN-4082: Test logging when running as a service
252- 2021-03-23 TUN-4112: Skip testing graceful shutdown with SIGINT on Windows
253- 2021-03-23 TUN-4116: Ingore credentials-file setting in configuration file during tunnel create and delete opeations.
254- 2021-03-23 TUN-4118: Don't overwrite existing file with tunnel credentials. For ad-hoc tunnels, this means tunnel won't start if there's a file in the way.
255- 2021-03-24 TUN-4123: Don't capture output in reconnect componet test
256- 2021-03-23 TUN-4067: Reformat code for consistent import order, grouping, and fix formatting. Added goimports target to the Makefile to make this easier in the future.
257- 2021-03-24 AUTH-3455: Generate short-lived ssh cert per hostname
258- 2021-03-25 Update changelog 2021.3.3
259
2602021.3.2
261- 2021-03-23 TUN-4042: Capture cloudflared output to debug component tests
262- 2021-03-23 Publish changelog for 2021.3.2
263- 2021-03-16 TUN-4089: Address flakiness in component tests for termination
264- 2021-03-16 TUN-4060: Fix Go Vet warnings (new with go 1.16) where t.Fatalf is called from a test goroutine
265- 2021-03-16 TUN-4091: Use flaky decorator to rerun reconnect component tests when they fail
266- 2021-03-12 TUN-4081: Update log severities to use Zerolog's levels
267- 2021-03-16 TUN-4094: Don't read configuration file for access commands
268- 2021-03-15 TUN-3993: New `cloudflared tunnel info` to obtain details about the active connectors for a tunnel
269- 2021-03-17 TUN-3715: Apply input source to the correct context
270- 2021-03-17 AUTH-3394: Ensure scheme on token command
271- 2021-03-18 TUN-4096: Reduce tunnel not connected assertion backoff to address flaky termination tests
272- 2021-03-19 TUN-3998: Allow to cleanup the connections of a tunnel limited to a single client
273- 2021-02-04 TUN-3715: Only read config file once, right before invoking the command
274
2752021.3.1
276- 2021-03-11 TUN-4051: Add component-tests to test graceful shutdown
277- 2021-03-12 TUN-4052: Add component tests to assert service mode behavior
278
2792021.3.0
280- 2021-03-10 TUN-4075: Dedup test should not compare order of list
281- 2021-03-10 Revert "AUTH-3394: Creates a token per app instead of per path"
282- 2021-03-11 TUN-4066: Remove unnecessary chmod during package publish to CF_PKG_HOSTS
283- 2021-03-11 TUN-4066: Set permissions in build agent before 'scp'-ing to machine hosting package repo
284- 2021-03-11 TUN-4050: Add component tests to assert reconnect behavior
285- 2021-03-10 AUTH-3394: Creates a token per app instead of per path - with fix for free tunnels
286- 2021-03-15 Publish change log for 2021.3.0
287- 2021-03-01 Issue #285 - Makefile does not detect TARGET_ARCH correctly on FreeBSD (#325)
288- 2021-03-01 TUN-3988: Log why it cannot check if origin cert exists
289- 2021-03-02 TUN-3995: Optional --features flag for tunnel run.
290- 2021-03-02 TUN-3994: Log client_id when running a named tunnel
291- 2021-03-04 TUN-4026: Fix regression where HTTP2 edge transport was no longer propagating control plane errors
292- 2021-03-05 TUN-4055: Skeleton for component tests
293- 2021-03-08 TUN-4047: Add cfsetup target to run component test
294- 2021-03-08 TUN-4016: Delegate decision to update for Worker service
295- 2021-03-02 TUN-3905: Cannot run go mod vendor in cloudflared due to fips
296- 2021-03-08 TUN-4063: Cleanup dependencies between packages.
297- 2021-03-09 Allow partial reads from a GorillaConn; add SetDeadline (from net.Conn) (#330)
298- 2021-03-09 TUN-4069: Fix regression on support for websocket over proxy
299- 2021-03-02 AUTH-3394: Creates a token per app instead of per path
300- 2021-03-01 TUN-4017: Add support for using cloudflared as a full socks proxy.
301- 2021-03-08 TUN-4062: Read component tests config from yaml file
302- 2021-03-08 TUN-4049: Add component tests to assert logging behavior when running from terminal
303- 2021-02-23 TUN-3963: Repoint urfave/cli/v2 library at patched branch at github.com/ipostelnik/cli/v2@fixed which correctly handles reading flags declared at multiple levels of subcommands.
304- 2021-02-25 TUN-3970: Route ip show has alias route ip list
305- 2021-02-26 TUN-3978: Unhide teamnet commands and improve their help
306- 2021-02-26 TUN-3983: Renew CA certs in cloudflared
307- 2021-02-28 TUN-3989: Check in with Updater service in more situations and convey messages to user
308- 2021-02-11 TUN-3819: Remove client-side check that deleted tunnels have no connections
309
3102021.2.5
311- 2021-02-23 Publish change notes for 2021.2.5
312- 2021-02-11 TUN-3838: ResponseWriter no longer reads and origin error tests
313- 2021-02-10 TUN-3895: Tests for socks stream handler
314- 2021-02-19 TUN-3939: Add logging that shows that Warp-routing is enabled
315- 2021-02-02 TUN-3817: Adds tests for websocket based streaming regression
316- 2021-02-04 TUN-3799: extended the Stream interface to take a logger and added debug logs for io.Copy errors
317- 2021-02-03 TUN-3855: Add ability to override target of 'access ssh' command to a different host for testing
318- 2021-02-04 TUN-3853: Respond with ws headers from the origin service rather than generating our own
319- 2021-02-08 TUN-3889: Move host header override logic to httpService
320- 2021-02-05 TUN-3868: Refactor singleTCPService and bridgeService to tcpOverWSService and rawTCPService
321- 2021-01-21 TUN-3753: Select http2 protocol when warp routing is enabled
322- 2021-01-26 TUN-3809: Allow routes ip show to output as JSON or YAML
323- 2021-01-11 TUN-3615: added support to proxy tcp streams
324- 2021-01-17 TUN-3725: Warp-routing is independent of ingress
325- 2021-01-15 TUN-3764: Actively flush data for TCP streams
326- 2020-12-09 TUN-3617: Separate service from client, and implement different client for http vs. tcp origins
327
3282021.2.4
329- 2021-02-22 TUN-3948: Log error when retrying connection
330- 2021-02-23 TUN-3964: Revert "TUN-3922: Repoint urfave/cli/v2 library at patched branch at github.com/ipostelnik/cli/v2@fixed which correctly handles reading flags declared at multiple levels of subcommands."
331- 2021-02-23 Publish release notes for 2021.2.4
332
3332021.2.3
334- 2021-02-23 Publish release notes for 2021.2.3
335- 2021-02-10 TUN-3902: Add jitter to backoffhandler
336- 2021-02-11 TUN-3913: Help gives wrong exit code for autoupdate
337- 2021-02-12 Add max upstream connections dns-proxy option (#290)
338- 2021-02-16 TUN-3924: Removed db-connect command. Added a placeholder handler for this command that informs users that command is no longer supported.
339- 2021-02-12 TUN-3922: Repoint urfave/cli/v2 library at patched branch at github.com/ipostelnik/cli/v2@fixed which correctly handles reading flags declared at multiple levels of subcommands.
340- 2021-02-19 Added support for proxy (#318)
341- 2021-02-19 TUN-3945: Fix runApp signature for generic service
342- 2021-02-09 Update README.md
343- 2021-02-09 Update the TryCloudflare link
344
3452021.2.2
346- 2021-02-04 TUN-3864: Users can choose where credentials file is written after creating a tunnel
347- 2021-02-04 TUN-3869: Improve reliability of graceful shutdown.
348- 2021-02-07 TUN-3878: Do not supply -tags when none are specified
349- 2021-02-04 TUN-3635: Send event when unregistering tunnel for gracful shutdown so /ready endpoint reports down status befoe connections finish handling pending requests.
350- 2021-02-08 TUN-3890: Code coverage for cloudflared in CI
351- 2021-02-09 AUTH-3375 exchangeOrgToken deleted cookie fix
352- 2020-11-18 Update error message to use login command
353
3542021.2.1
355- 2021-02-04 TUN-3858: Do not suffix cloudflared version with -fips
356
3572021.2.0
358- 2021-02-01 TUN-3837: Remove automation_email from cloudflared status page test
359- 2021-02-03 TUN-3848: Use transport logger for h2mux
360- 2021-02-03 TUN-3854: cloudflared tunnel list flags to sort output
361- 2021-01-21 TUN-3195: Don't colorize console logs when stderr is not a terminal
362- 2021-01-20 Fixed connection error handling by removing duplicated errors, standardizing on non-pointer error types
363- 2021-01-20 TUN-3118: Changed graceful shutdown to immediately unregister tunnel from the edge, keep the connection open until the edge drops it or grace period expires
364- 2021-01-25 TUN-3165: Add reference to Argo Tunnel documentation in the help output
365- 2021-01-25 TUN-3806: Use a .dockerignore
366- 2021-01-21 TUN-3795: Use RFC-3339 style date format for logs, produce timestamp in UTC
367- 2021-01-26 TUN-3795: Removed errant test
368- 2021-01-25 TUN-3792: Handle graceful shutdown correctly when running as a windows service. Only expose one shutdown channel globally, which now triggers the graceful shutdown sequence across all modes. Removed separate handling of zero-duration grace period, instead it's checked only when we need to wait for exit.
369- 2021-01-27 TUN-3811: Better error reporting on http2 connection termination. Registration errors from control loop are now propagated out of the connection server code. Unified error handling between h2mux and http2 connections so we log and retry errors the same way, regardless of underlying transport.
370- 2021-01-28 TUN-3830: Use Go 1.15.7
371- 2021-01-28 TUN-3826: Use go-fips when building cloudflared for linux/amd64
372- 2021-01-19 TUN-3777: Fix /ready endpoint for classic tunnels
373- 2021-01-19 TUN-3773: Add back pprof endpoints
374
3752021.1.5
376- 2021-01-15 TUN-3594: Log ingress response at debug level
377- 2021-01-15 TUN-3765: Fix doubly nested log output by `logfile` option
378- 2021-01-16 TUN-3767: Tolerate logging errors
379- 2021-01-17 TUN-3768: Reuse file loggers
380- 2021-01-14 TUN-3738: Refactor observer to avoid potential of blocking on tunnel notifications
381- 2021-01-15 TUN-3766: Print flags defined at all levels of command hierarchy, not just locally defined flags for a command. This fixes output of overriden settings for subcommand.
382
3832021.1.4
384- 2021-01-14 TUN-3759: Single file logging output should always append
385
3862021.1.3
387- 2021-01-14 TUN-3756: File logging output must consider the directory
388- 2021-01-14 TUN-3757: Fix legacy Uint flags that are incorrectly handled by ufarve library
389
3902021.1.2
391- 2021-01-13 TUN-3747: Fix logging in Windows
392
3932021.1.1
394- 2021-01-13 TUN-3744: Fix compilation error in windows service
395
3962021.1.0
397- 2021-01-11 TUN-3670: Update Teamnet API gateway prefixes
398- 2021-01-13 TUN-3738: Consume UI events even when UI is disabled
399- 2021-01-06 TUN-3722: Teamnet API paths include /network
400- 2021-01-05 TUN-3688: Subcommand for users to check which route an IP proxies through
401- 2021-01-08 TUN-3691: Edit Teamnet help text
402- 2020-12-30 TUN-3706: Quit if any origin service fails to start
403- 2020-12-31 TUN-3708: Better info message about system root certpool on Windows
404- 2020-12-21 TUN-3669: Teamnet commands to add/show Teamnet routes.
405- 2020-12-29 TUN-3689: Delete routes via cloudflared CLI
406- 2020-12-28 TUN-3471: Add structured log context to logs
407- 2020-12-15 TUN-3650: Remove unused awsuploader package
408- 2020-12-03 Update to add deprecated version note (#271)
409- 2020-12-02 TUN-3472: Set up rolling logger with zerolog and lumberjack
410- 2020-12-08 TUN-3607: Set up single-file logger with zerolog
411- 2020-12-03 Update to add deprecated version note (#271)
412- 2020-11-25 TUN-3470: Replace in-house logger calls with zerolog
413
4142020.12.0
415- 2020-12-04 TUN-3599: improved delete if credentials isnt found.
416- 2020-12-04 TUN-3612: Upgrade to Go 1.15.6
417- 2020-11-30 TUN-3593: /ready endpoint for k8s readiness. Move tunnel events out of UI package, into connection package.
418- 2020-11-27 TUN-3594: Log response status at debug level
419
4202020.11.11
421- 2020-11-20 TUN-3578: cloudflared tunnel route dns should allow wildcard subdomains
422- 2020-11-21 EDGEPLAT-2958 remove deb-compression, defaulting to gzip
423- 2020-11-23 TUN-3581: Tunnels can be run by name using only --credentials-file, no origin cert necessary.
424- 2020-11-15 TUN-3561: Unified logger configuration
425- 2020-11-08 AUTH-3221: Saves org token to disk and uses it to refresh the app token
426
4272020.11.10
428- 2020-11-20 TUN-3562: Fix panic when using bastion mode ingress rule
429- 2020-11-20 EDGEPLAT-2958 build cloudflared for Bullseye
430
4312020.11.9
432- 2020-11-18 TUN-3557: Detect SSE if content-type starts with text/event-stream
433- 2020-11-18 TUN-3559: Share response meta header with other packages
434- 2020-11-18 DEVTOOLS-7936: Remove redundant chgrp from publish
435- 2020-11-18 TUN-3558: cloudflared allows empty config files
436- 2020-11-18 TUN-3544: Upgrade to Go 1.15.5
437
4382020.11.8
439- 2020-11-17 TUN-3555: Single origin service should default to localhost:8080
440
4412020.11.7
442- 2020-11-13 TUN-3514: Stop setting --is-autoupdated flag after autoupdate because it can break named tunnel running in k8s
443- 2020-11-15 TUN-3548, TUN-3547: Bastion mode can be specified as a service, doesn't require URL.
444- 2020-11-16 TUN-3549: Use a separate handler for each websocket proxy
445
4462020.11.6
447- 2020-11-14 TUN-3546: Fix panic in tlsconfig.LoadOriginCA
448
4492020.11.5
450- 2020-11-12 TUN-3540: Better copy in ingress rules error messages
451- 2020-11-12 DEVTOOLS-7936: Set permissions on public packages
452- 2020-11-13 TUN-3543: ProxyAddress not using default in single-origin mode
453
4542020.11.4
455- 2020-11-11 TUN-3534: Specific error message when credentials file is a .pem not .json
456- 2020-11-02 TUN-3500: Integrate replace h2mux by http2 work with multiple origin support
457- 2020-11-09 TUN-3514: Transport logger write to UI when UI is enabled
458- 2020-10-30 TUN-3490: Make sure OriginClient implementation doesn't write after Proxy return
459- 2020-10-20 TUN-3403: Unit test for origin/proxy to test serving HTTP and Websocket
460- 2020-10-23 TUN-3480: Support SSE with http2 connection, and add SSE handler to hello-world server
461- 2020-10-27 TUN-3489: Add unit tests to cover proxy logic in connection package of cloudflared
462- 2020-10-16 TUN-3467: Serialize cf-cloudflared-response-meta during package initialization using jsoniter
463- 2020-10-14 TUN-3456: New protocol option auto to automatically select between http2 and h2mux
464- 2020-10-14 TUN-3458: Upgrade to http2 when available, fallback to h2mux when we reach max retries
465- 2020-10-08 TUN-3449: Use flag to select transport protocol implementation
466- 2020-10-08 TUN-3462: Refactor cloudflared to separate origin from connection
467- 2020-09-21 TUN-3406: Proxy websocket requests over Go http2
468- 2020-09-25 TUN-3420: Establish control plane and send RPC over control plane
469- 2020-09-11 TUN-3400: Use Go HTTP2 library as transport to connect with the edge
470
4712020.11.3
472- 2020-11-11 TUN-3533: Set config for single origin ingress
473
4742020.11.2
475
476
4772020.11.1
478- 2020-11-10 TUN-3527: More specific error for invalid YAML/JSON
479- 2020-11-06 Update README.md (#256)
480
4812020.11.0
482- 2020-11-04 TUN-3484: OriginService that responds with configured HTTP status
483- 2020-11-05 TUN-3505: Response body for status code origin returns EOF on Read
484- 2020-11-04 TUN-3503: Matching ingress rule should not take port into account
485- 2020-11-05 TUN-3506: OriginService needs to set request host and scheme for websocket requests
486- 2020-11-09 TUN-3516: Better error message when parsing invalid YAML config
487- 2020-11-09 TUN-3522: ingress validate checks that the config file exists
488- 2020-11-09 TUN-3524: Don't ignore errors from app-level action handler (#248)
489- 2020-11-09 TUN-3461: Show all origin services in the UI
490- 2020-10-30 TUN-3494: Proceed to create tunnel if at least one edge address can be resolved
491- 2020-10-30 TUN-3492: Refactor OriginService, shrink its interface
492- 2020-10-22 TUN-3478: Increase download timeout to 60s
493- 2020-10-15 TUN-2640: Users can configure per-origin config. Unify single-rule CLI flow with multi-rule config file code.
494
4952020.10.2
496- 2020-10-21 Release 2020.10.1
497- 2020-10-21 AUTH-3185 fixed indention error
498- 2020-10-19 TUN-3459: Make service install on linux use named tunnels
499
5002020.10.1
501- 2020-10-20 Split out typed config from legacy command-line switches; refactor ingress commands and fix tests
502- 2020-10-20 Move raw ingress rules to config package
503- 2020-10-21 TUN-3476: Fix conversion to string and int slice
504- 2020-10-12 TUN-3441: Multiple-origin routing via ingress rules
505- 2020-10-15 TUN-3464: Newtype to wrap []ingress.Rule
506- 2020-10-15 TUN-3465: Use Go 1.15.3
507- 2020-10-15 TUN-3463: Let users run a named tunnel via config file setting
508- 2020-10-19 TUN-3475: Unify config file handling with typed config for new fields
509- 2020-10-19 TUN-3459: Make service install on linux use named tunnels
510- 2020-10-06 AUTH-3148 fixed cloudflared copy and match all the files in the checksum upload
511- 2020-10-06 TUN-3436, TUN-3437: Parse ingress from YAML, ensure last rule catches everything
512- 2020-10-06 TUN-3446: Use go 1.15.2 and add a step to build cloudflared in the dev Dockerfile
513- 2020-10-07 TUN-3439: 'tunnel validate' command to check ingress rules
514- 2020-10-07 TUN-3440: 'tunnel rule' command to test ingress rules
515- 2020-10-08 TUN-3451: Cloudflared tunnel ingress command
516- 2020-10-09 TUN-3452: Fix loading of flags from config file for tunnel run subcommand. This change also cleans up building of tunnel subcommand list, hides deprecated subcommands and improves help.
517- 2020-10-08 TUN-3438: move ingress into own package, read into TunnelConfig
518
5192020.10.0
520- 2020-10-02 AUTH-2993 cleaned up worker service tests
521- 2020-10-02 TUN-3443: Decode as v4api response on non-200 status
522- 2020-09-24 TRAFFIC-448: allow the user to specify the proxy address and port to bind to, falling back to 127.0.0.1 and random port if not specified
523- 2020-09-28 TUN-3427: Define a struct that only implements RegistrationServer in tunnelpogs
524- 2020-09-29 TUN-3430: Copy flags to configure proxy to run subcommand, print relevant tunnel flags in help
525- 2020-08-12 AUTH-2993 added workers updater logic
526
5272020.9.3
528- 2020-09-22 TRAFFIC-448: build cloudflare for junos and publish to s3
529- 2020-09-22 TUN-3410: Request the v1 Tunnelstore API
530- 2020-09-23 Release 2020.9.2
531- 2020-09-17 updater service exit code should be 11
532- 2020-09-18 AUTH-3109 upload the checksum to workers kv on github releases
533
5342020.9.2
535- 2020-09-22 TRAFFIC-448: build cloudflare for junos and publish to s3
536- 2020-09-22 TUN-3410: Request the v1 Tunnelstore API
537- 2020-09-17 AUTH-3103 CI build fixes
538- 2020-09-18 AUTH-3110-use-cfsetup-precache
539- 2020-09-17 TUN-3295: Show route command results
540- 2020-09-16 TUN-3291: cloudflared tunnel run -h explains how to use flags from parent command
541- 2020-09-18 AUTH-3109 upload the checksum to workers kv on github releases
542- 2020-09-17 updater service exit code should be 11
543- 2020-09-01 TUN-3216: UI improvements
544- 2020-08-25 Rebased and passed TunnelEventChan to LogServerInfo in new ReconnectTunnel function
545- 2020-08-25 TUN-3321: Add box around logs on UI
546- 2020-08-26 TUN-3328: Filter out free tunnel has started log from UI
547- 2020-08-27 TUN-3333: Add text to UI explaining how to exit
548- 2020-08-27 TUN-3335: Dynamically set connection table size for UI
549- 2020-08-10 TUN-3238: Update UI when connection re-connects
550- 2020-08-17 TUN-3261: Display connections on UI for free classic tunnels
551- 2020-07-24 TUN-3201: Create base cloudflared UI structure
552- 2020-07-29 TUN-3200: Add connection information to UI
553- 2020-07-24 TUN-3255: Update UI to display URL instead of hostname
554- 2020-07-29 TUN-3198: Handle errors while running tunnel UI
555
5562020.9.1
557- 2020-09-14 TUN-3395: Unhide named tunnel subcommands, tweak help
558- 2020-09-15 TUN-3395: Improve help for list command
559- 2020-09-14 TUN-3294: Perform basic validation on arguments of route command; remove default pool name which wasn't valid
560- 2020-09-15 TUN-3395: Improve help for list command
561- 2020-09-16 Use Go 1.15.2
562
5632020.9.0
564- 2020-09-11 TUN-3293: Try to use error information from the body of a failed tunnelstore reresponse if available
565- 2020-09-04 AUTH-2653 renabled signing
566- 2020-09-04 TUN-3377: Tunnel route should check dns/lb before checking tunnel ID
567- 2020-09-04 AUTH-2653 changed to proper file extension
568- 2020-09-04 AUTH-2653 handle duplicate key import errors
569- 2020-09-04 TUN-3345: tunnel run accepts name of tunnel as argument
570- 2020-09-08 AUTH-2653 disble error pipe to see what is failing
571- 2020-09-08 AUTH-2653 search for the certificate and not the identity
572- 2020-09-09 TUN-3284: Use cloudflared/<version> as user agent of tunnelstore client
573- 2020-09-09 TUN-3375: Upgrade x/text and gorilla websocket deps
574- 2020-09-09 TUN-3375: Upgrade coredns and prometheus dependencies
575- 2020-09-09 AUTH-2653 add notarization to mac build
576- 2020-09-08 TUN-3292: Mention cleanup in tunnel run help.
577- 2020-08-20 AUTH-2016 fixed variable fail
578- 2020-08-12 TUN-3352 extra debug logging for websockets
579
5802020.8.2
581- 2020-08-20 AUTH-3021 fixed the git version call by using the older flag
582- 2020-08-18 TUN-3268: Each connection has its own event digest to reconnect
583
5842020.8.1
585- 2020-08-14 AUTH-2975 don't check /etc on windows
586- 2020-08-14 AUTH-2977 log file protection
587- 2020-08-18 TUN-3286: Use either ID or name in Named Tunnel subcommands.
588- 2020-08-18 AUTH-2712 fixed the mac build script
589- 2020-08-19 AUTH-2653 disabling signing until we can get the keys
590- 2020-08-05 TUN-3233: List tunnels support filtering by deleted, name, existed at and id
591- 2020-08-05 TUN-3237: By default, don't show connections that are pending reconnect
592- 2020-08-06 TUN-3242: Build with go 1.14
593- 2020-08-07 TUN-3243: Refactor tunnel subcommands to allow commands to compose better
594- 2020-08-07 AUTH-2864 - add macos build to github release
595- 2020-07-31 AUTH-2857 update homebrew script to use new url
596- 2020-07-30 TUN-3213: Create, route and run named tunnels in one command
597- 2020-07-07 AUTH-2712 added MSI build for a windows agent
598
5992020.8.0
600- 2020-07-30 TUN-3220: tunnel route reports created route
601- 2020-07-31 TUN-3221: ConnectionOptions tracks numPreviousAttempts.
602- 2020-07-20 TUN-3190: Initialize logger using command line flags in tunnels subcommands
603- 2020-07-21 TUN-3192: Use zone ID in tunnelstore request path; improve debug logging
604- 2020-07-23 TUN-3194: Don't render log output when level is not enabled
605- 2020-07-22 AUTH-2016 adds sha256 hashes to releases
606- 2020-07-27 Removes centos 6 build
607- 2020-07-27 TUN-3209: Add benchmark for header serialization
608- 2020-07-24 TUN-3209: improve performance and reduce allocations during user header serialization from h1 to h2
609- 2020-07-26 TUN-3208: Add benchmark for large response write
610- 2020-07-27 TUN-3208: Reduce copies and allocations on h2mux write path. Pre-allocate 16KB write buffer on the first write if possible. Use explicit byte array for chunks on write thread to avoid copying through intermediate buffer due to io.CopyN.
611- 2020-07-28 AUTH-2714: Adds arm64 cloudflared build
612- 2020-07-29 AUTH-2927 run message update after all github builds are done
613- 2020-07-17 AUTH-2902 redirect with just the root host on curl commands
614
6152020.7.4
616- 2020-07-20 Build cloudflared for arm64 on native agents
617- 2020-07-10 TUN-3048: Handle error when user tries to delete active tunnel
618- 2020-07-14 AUTH-2890: adds error handler to cli actions
619- 2020-07-06 TUN-3156: Add route subcommand under tunnel
620
6212020.7.3
622- 2020-07-13 Change scp command to use file glob that matches both cloudflared rpms and debs
623
6242020.7.2
625- 2020-07-02 AUTH-2644: Change install location and add man page
626- 2020-07-02 TUN-3131: Allow user to specify tunnel credentials path, and remove it in tunnel delete command
627- 2020-07-03 TUN-3008: Implement cloudflared tunnel cleanup command
628- 2020-07-02 TUN-3150: cloudflared tunnel list's table should use intelligent column width
629- 2020-07-07 TUN-3169: Move on to the next address when edge returns duplicate connection. There's no point in trying to connect to the same address since it will be hashed to the same metal. Improve logging of errors from serve tunnel loop, hide useless context cancelled error.
630- 2020-07-08 beautify package meta information generated by fpm (#218)
631- 2020-07-06 AUTH-2871: fix rpm builds
632- 2020-07-08 AUTH-2858: Set file to disable autoupdate
633- 2020-07-09 AUTH-2872: Adds centos-6 build
634
6352020.7.1
636- 2020-07-02 DEVTOOLS-7321: Push GitHub homebrew updates to master
637- 2020-07-06 TUN-3161: Upgrade golang.org/x/ deps
638- 2020-06-30 AUTH-2854: Create cloudflared RPMs
639- 2020-06-26 AUTH-2850 log config file path
640
6412020.7.0
642- 2020-06-30 TUN-3140: Add timestamps to terminal log entries
643- 2020-06-30 AUTH-2860: Fix builds
644- 2020-06-25 TUN-3007: Implement named tunnel connection registration and unregistration.
645
6462020.6.6
647- 2020-06-23 AUTH-2685: Adds script to create release
648- 2020-06-25 AUTH-2652: Update cloudflare repo
649- 2020-06-26 AUTH-2718: Add target for publishing deb to pkg.cloudflare repo
650- 2020-06-26 AUTH-2849 all log output to stderr
651- 2020-06-17 TUN-3106: Pass NamedTunnel config to StartServer
652- 2020-06-18 TUN-3107: UnregisterConnection shouldn't wrap nil error as RPC error
653- 2020-06-17 AUTH-2652: Adds .docker-images to push images to docker hub
654- 2020-06-18 AUTH-2712 mac package build script and better config file handling when started as a service
655
6562020.6.5
657- 2020-06-16 DEVTOOLS-7321: Don't skip macOS builds based on tag
658- 2020-06-16 fix for a flaky test
659- 2020-06-16 AUTH-2815 flag check was wrong. stupid oversight
660- 2020-06-16 TUN-3101: Tunnel list command should only show non-deleted, by default
661- 2020-06-16 TUN-3066: Command line action for tunnel run
662- 2020-06-16 TUN-3100 make updater report the right text
663
6642020.6.4
665- 2020-06-11 TUN-3085: Pass connection authentication information using TunnelAuth struct
666- 2020-06-15 TUN-3084: Generate and store tunnel_secret value during tunnel creation
667- 2020-06-16 AUTH-2815 add the log file to support the config.yaml file
668- 2020-06-02 TUN-3015: Add a new cap'n'proto RPC interface for connection registration as well as matching client and server implementations. The old interface extends the new one for backward compatibility.
669
6702020.6.3
671- 2020-06-15 DEVTOOLS-7321: Add openssh-client pkg for missing ssh-keyscan
672- 2020-06-15 AUTH-2813 adds back a single file support a cloudflared log file
673
6742020.6.2
675- 2020-06-11 AUTH-2648 updated usage text
676- 2020-06-11 AUTH-2763 don't redirect from curl command
677- 2020-06-12 TUN-3090: Upgrade crypto dep
678- 2020-06-11 TUN-3038: Add connections to tunnel list table
679- 2020-06-12 AUTH-2810 added warn for backwards compatibility sake
680
6812020.6.1
682- 2020-06-09 AUTH-2796 fixed windows build
683
6842020.6.0
685- 2020-06-05 AUTH-2645 protect against user mistaken flag input
686- 2020-06-05 AUTH-2687 don't copy config unnecessarily
687- 2020-06-05 AUTH-2169 make access login page more generic
688- 2020-06-05 AUTH-2729 added log file and level to cmd flags to match config file settings
689- 2020-06-08 AUTH-2785 service token flag fix and logger fix
690- 2020-05-20 AUTH-2682: Create buster build
691- 2020-05-21 TUN-2928, TUN-2929, TUN-2930: Add tunnel subcommands to interact with tunnel store service
692- 2020-05-29 Adding support for multi-architecture images and binaries (#184)
693- 2020-05-29 TUN-3019: Remove declarative tunnel entry code
694- 2020-05-29 TUN-3020: Remove declarative tunnel related RPC code
695- 2020-05-13 AUTH-2505 added aliases
696- 2020-05-14 AUTH-2529 added deprecation text to db-connect command
697- 2020-05-18 AUTH-2686: Added error handling to tunnel subcommand
698- 2020-05-04 AUTH-2369: RDP Bastion prototype
699- 2020-04-29 AUTH-2596 added new logger package and replaced logrus
700- 2020-04-25 DEVTOOLS-7321: Use SSH key from env for pushing to GitHub
701- 2020-04-25 DEVTOOLS-7321: Push to a test branch instead of to master
702- 2020-03-30 DEVTOOLS-7321: Add scripts for macOS builds and homebrew uploads
703
7042020.5.1
705- 2020-05-07 TUN-2860: Enable quick reconnect feature by default
706- 2020-05-07 AUTH-2564: error handling and minor fixes
707- 2020-05-01 AUTH-2588 add DoH to service mode
708
7092020.5.0
710- 2020-05-01 TUN-2943: Copy certutil from edge into cloudflared
711- 2020-05-05 TUN-2955: Fix connection and goroutine leaks when tunnel conection is terminated on error. Only unregister tunnels that had connected successfully. Close edge connection used to unregister the tunnel. Use buffered channels for error channels where receiver may quit early on context cancellation.
712- 2020-04-30 TUN-2940: Added delay parameter to stdin reconnect command.
713- 2020-04-27 TUN-2921: Rework address selection logic to avoid corner cases
714- 2020-04-28 TUN-2872: Exit with non-0 status code when the binary is updated so launchd will restart the service
715- 2020-04-13 AUTH-2587 add config watcher and reload logic for access client forwarder
716
7172020.4.0
718- 2020-04-10 TUN-2881: Parameterize response meta information header name in the generating function
719- 2020-04-11 TUN-2894: ResponseMetaHeader should be public
720- 2020-04-09 TUN-2880: Return metadata about source of the response from cloudflared
721- 2020-04-04 ARES-899: Fixes DoH client as system resolver. Fixes #91
722- 2020-03-31 AUTH-2394 added socks5 proxy
723- 2020-02-24 AUTH-2235 GetTokenIfExists now parses JWT payload for json expiry field to detect if the cached access token is expired
724
7252020.3.2
726- 2020-03-31 TUN-2854: Quick Reconnects should be an optional supported feature
727- 2020-03-30 TUN-2850: Tunnel stripping Cloudflare headers
728
7292020.3.1
730- 2020-03-27 TUN-2846: Trigger debug reconnects from stdin commands, not SIGUSR1
731
7322020.3.0
733- 2020-03-23 AUTH-2394 fixed header for websockets. Added TCP alias
734- 2020-03-10 TUN-2797: Fix panic in SetConnDigest by making mutexes values.
735- 2020-03-13 TUN-2807: cloudflared hello-world shouldn't assume it's my first tunnel
736- 2020-03-13 TUN-2756: Set connection digest after reconnect.
737- 2020-03-16 TUN-2812: Tunnel proxies and RPCs can share an edge address
738- 2020-03-18 TUN-2816: cloudflared metrics server should be more discoverable
739- 2020-03-19 TUN-2820: Serialized headers for Websockets
740- 2020-03-19 TUN-2819: cloudflared should close its connections when a signal is sent
741- 2020-03-19 TUN-2823: Bugfix. cloudflared would hang forever if error occurred.
742- 2020-03-10 TUN-2796: Implement HTTP2 CONTINUATION headers correctly
743- 2020-03-02 TUN-2779: update sample HTML pages
744- 2020-03-04 TUN-2785: Use reconnect token by default
745- 2020-03-05 TUN-2754: Add ConnDigest to cloudflared and its RPCs
746- 2020-03-06 TUN-2755: ReconnectTunnel RPC now transmits ConnectionDigest
747- 2020-03-06 TUN-2761: Use the new header management functions in cloudflared
748- 2020-03-06 TUN-2788: cloudflared should store one ConnDigest per HA connection
749- 2020-02-26 TUN-2767: Test for large headers
750- 2020-02-28 do not terminate tunnel if origin is not reachable on start-up (#177)
751- 2020-02-28 TUN-2776: Add header serialization feature in cloudflared
752- 2020-02-21 TUN-2748: Insecure randomness vulnerability in github.com/miekg/dns
753
7542020.2.1
755- 2020-02-20 TUN-2745: Rename existing header management functions
756- 2020-02-21 TUN-2746: Add the new header management functions
757- 2020-02-25 perf(cloudflared): reuse memory from buffer pool to get better throughput (#161)
758- 2020-02-25 Tweak HTTP host header. Fixes #107 (#168)
759- 2020-02-25 TUN-2765: Add list of features to tunnelrpc
760- 2020-02-19 TUN-2725: Specify in code that --edge is for internal testing only
761- 2020-02-19 TUN-2703: Muxer.Serve terminates when its context is Done
762- 2020-02-09 TUN-2717: Function to serialize/deserialize HTTP headers
763- 2020-02-05 TUN-2714: New edge discovery. Connections try to reconnect to the same edge IP.
764
7652020.2.0
766- 2020-01-30 TUN-2651: Fix panic in h2mux reader when a stream error is encountered
767- 2020-01-27 TUN-2645: Revert "TUN-2645: Turn on reconnect tokens"
768- 2020-01-28 TUN-2693: Metrics for ReconnectTunnel
769- 2020-01-28 TUN-2696: Add unknown registerRPCName
770- 2020-01-28 TUN-2699: Metrics for Authenticate RPCs
771- 2020-01-28 TUN-2690: cloudflared reconnect uses wrong context
772- 2020-01-29 TUN-2707: Inconsistent cardinality in tunnel error metrics
773- 2020-01-13 TUN-2645: Turn on reconnect tokens
774- 2019-12-23 TUN-2646: Make --edge flag work again for local development
775
7762019.12.0
777- 2019-12-11 TUN-2631: only notify that activeStreamMap is closed if ignoreNewStreams=true
778- 2019-12-17 bug(cloudflared): Set the MaxIdleConnsPerHost of http.Transport to proxy-keepalive-connections (#155)
779- 2019-12-17 refactor(docker): optimize Dockerfile (#126)
780- 2019-12-19 Fix timer scheduling for systemd update service (#159)
781- 2019-12-13 TUN-2637: Manage edge IPs in a region-aware manner
782- 2019-12-03 bug(cloudflared): nil pointer deference on h2DictWriter Close() (#154)
783- 2019-12-03 TUN-2608: h2mux.Muxer.Shutdown always returns a non-nil channel
784- 2019-12-04 TUN-2555: origin/supervisor.go calls Authenticate
785- 2019-12-06 TUN-2554: cloudflared calls ReconnectTunnel
786- 2019-11-20 TUN-2575: Constructors + simpler conversions for AuthOutcome
787- 2019-11-22 Fix Docker build failure (#149)
788- 2019-11-21 TUN-2573: Refactor TunnelRegistration into PermanentRegistrationError, RetryableRegistrationError and SuccessfulTunnelRegistration
789- 2019-11-22 TUN-2582: EventDigest field in tunnelrpc
790- 2019-11-22 Fix "happy eyeballs" not being disabled since Golang 1.12 upgrade * The Dialer.DualStack setting is now ignored and deprecated; RFC 6555 Fast Fallback ("Happy Eyeballs") is now enabled by default. To disable, set Dialer.FallbackDelay to a negative value.
791- 2019-11-25 TUN-2591: ReconnectTunnel now sends EventDigest
792- 2019-11-21 TUN-2606: add DialEdge helpers
793- 2019-11-21 TUN-2607: add RPC stream helpers
794
7952019.11.3
796- 2019-11-20 TUN-2562: Update Cloudflare Origin CA RSA root
797
7982019.11.2
799- 2019-11-18 TUN-2567: AuthOutcome can be turned back into AuthResponse
800- 2019-11-18 TUN-2563: Exposes config_version metrics
801
8022019.11.1
803- 2019-11-12 Add db-connect, a SQL over HTTPS server
804- 2019-11-12 TUN-2053: Add a /healthcheck endpoint to the metrics server
805- 2019-11-13 TUN-2178: public API to create new h2mux.MuxedStreamRequest
806- 2019-11-13 TUN-2490: respect original representation of HTTP request path
807- 2019-11-18 TUN-2547: TunnelRPC definitions for Authenticate flow
808- 2019-11-18 TUN-2551: TunnelRPC definitions for ReconnectTunnel flow
809- 2019-11-05 TUN-2506: Expose active streams metrics
810
8112019.11.0
812- 2019-11-04 TUN-2502: Switch to go modules
813- 2019-11-04 TUN-2500: Don't send client registration errors to Sentry
814- 2019-11-04 TUN-2489: Delete stream from activestreammap when read and write are both closed
815- 2019-11-05 TUN-2505: Terminate stream on receipt of RST_STREAM; MuxedStream.CloseWrite() should terminate the MuxedStream.Write() loop
816- 2019-10-30 TUN-2451: Log inavlid path
817- 2019-10-22 TUN-2425: Enable cloudflared to serve multiple Hello World servers by having each of them create its own ServeMux
818- 2019-10-22 AUTH-2173: Prepends access login url with scheme if one doesnt exist
819- 2019-10-23 TUN-2460: Configure according to the ClientConfig recevied from a successful Connect
820- 2019-10-23 AUTH-2177: Reads and writes error streams
821
8222019.10.4
823- 2019-10-21 TUN-2450: Remove Brew publishing formula
824
8252019.10.3
826- 2019-10-18 Fix #129: Excessive memory usage streaming large files (#142)
827
8282019.10.2
829- 2019-10-17 AUTH-2167: Adds CLI option for host key directory
830
8312019.10.1
832- 2019-10-17 Adds variable to fix windows build
833
8342019.10.0
835- 2019-10-11 AUTH-2105: Dont require --destination arg
836- 2019-10-14 TUN-2344: log more details: http2.Framer.ErrorDetail() if available, connectionID
837- 2019-10-16 AUTH-2159: Moves shutdownC close into error handling AUTH-2161: Lowers size of preamble length AUTH-2160: Fixes url parsing logic
838- 2019-10-16 AUTH-2135: Adds support for IPv6 and tests
839- 2019-10-02 AUTH-2105: Adds support for local forwarding. Refactor auditlogger creation. AUTH-2088: Adds dynamic destination routing
840- 2019-10-09 AUTH-2114: Uses short lived cert auth for outgoing client connection
841- 2019-09-30 AUTH-2089: Revise ssh server to function as a proxy
842
8432019.9.2
844- 2019-09-26 TUN-2355: Roll back TUN-2276
845
8462019.9.1
847- 2019-09-23 TUN-2334: remove tlsConfig.ServerName special case
848- 2019-09-23 AUTH-2077: Quotes open browser command in windows
849- 2019-09-11 AUTH-2050: Adds time.sleep to temporarily avoid hitting tunnel muxer dealock issue
850- 2019-09-10 AUTH-2056: Writes stderr to its own stream for non-pty connections
851- 2019-09-16 TUN-2307: Capnp is the only serialization format used in tunnelpogs
852- 2019-09-18 TUN-2315: Replace Scope with IntentLabel
853- 2019-09-17 TUN-2309: Split ConnectResult into ConnectError and ConnectSuccess, each implementing its own capnp serialization logic
854- 2019-09-18 AUTH-2052: Adds tests for SSH server
855- 2019-09-18 AUTH-2067: Log commands correctly
856- 2019-09-19 AUTH-2055: Verifies token at edge on access login
857- 2019-09-04 TUN-2201: change SRV records used by cloudflared
858- 2019-09-06 TUN-2280: Revert "TUN-2260: add name/group to CapnpConnectParameters, remove Scope"
859- 2019-09-03 AUTH-1943 hooked up uploader to logger, added timestamp to session logs, add tests
860- 2019-09-04 AUTH-2036: Refactor user retrieval, shutdown after ssh server stops, add custom version string
861- 2019-09-06 AUTH-1942 added event log to ssh server
862- 2019-09-04 AUTH-2037: Adds support for ssh port forwarding
863- 2019-09-05 TUN-2276: Path encoding broken
864
8652019.9.0
866- 2019-09-05 TUN-2279: Revert path encoding fix
867- 2019-08-30 AUTH-2021 - check error for failing tests
868- 2019-08-29 AUTH-2030: Support both authorized_key and short lived cert authentication simultaniously without specifiying at start time
869- 2019-08-29 AUTH-2026: Adds support for non-pty sessions and inline command exec
870- 2019-08-26 AUTH-1943: Adds session logging
871- 2019-08-26 TUN-2162: Decomplect OpenStream to allow finer-grained timeouts
872- 2019-08-29 TUN-2260: add name/group to CapnpConnectParameters, remove Scope
873
8742019.8.4
875- 2019-08-30 Fix #111: Add support for specifying a specific HTTP Host: header on the origin. (#114)
876- 2019-08-22 TUN-2165: Add ClientConfig to tunnelrpc.ConnectResult
877- 2019-08-20 AUTH-2014: Checks users login shell
878- 2019-08-26 TUN-2243: Revert "STOR-519: Add db-connect, a SQL over HTTPS server"
879- 2019-08-27 TUN-2244: Add NO_AUTOUPDATE env var
880- 2019-08-22 AUTH-2018: Adds support for authorized keys and short lived certs
881- 2019-08-28 AUTH-2022: Adds ssh timeout configuration
882- 2019-08-28 TUN-1968: Gracefully diff StreamHandler.UpdateConfig
883- 2019-08-26 AUTH-2021 - s3 bucket uploading for SSH logs
884- 2019-08-19 AUTH-2004: Adds static host key support
885- 2019-07-18 AUTH-1941: Adds initial SSH server implementation
886
8872019.8.3
888- 2019-08-20 STOR-519: Add db-connect, a SQL over HTTPS server
889- 2019-08-20 Release 2019.8.2
890- 2019-08-20 Revert "AUTH-1941: Adds initial SSH server implementation"
891- 2019-08-11 TUN-2163: Add GrapQLType method to Scope interface
892- 2019-08-06 TUN-2152: Requests with a query in the URL are erroneously escaped
893- 2019-07-18 AUTH-1941: Adds initial SSH server implementation
894
8952019.8.1
896- 2019-08-05 TUN-2111: Implement custom serialization logic for FallibleConfig and OriginConfig
897- 2019-08-06 Revert "TUN-1736: Missing headers when passing an invalid path"
898
8992019.8.0
900- 2019-07-11 TUN-1956: Go 1.12 update
901- 2019-07-24 TUN-1736: Missing headers when passing an invalid path
902- 2019-07-30 TUN-2117: read group/system-name from CLI, send it to edge
903- 2019-08-02 TUN-2125: Add PostgresType() to Scope
904- 2019-08-05 TUN-2147: Implemented ScopeUnmarshaler
905- 2019-07-31 TUN-2110: Implement custom deserialization logic for OriginConfig
906- 2019-07-31 AUTH-1972: Deletes token lock file if backoff retry attempts exceeded and intercepts signals until lock is released
907
9082019.7.0
909- 2019-05-28 TUN-1913: Define OriginService for each type of origin
910- 2019-04-29 Build a docker container
911- 2019-06-12 TUN-1952: Group ClientConfig fields by the component that uses the config, and return the part of the config that failed to be applied
912- 2019-06-05 TUN-1893: Proxy requests to the origin based on tunnel hostname
913- 2019-06-17 TUN-1961: Create EdgeConnectionManager to maintain outbound connections to the edge
914- 2019-06-18 TUN-1885: Reconfigure cloudflared on receiving new ClientConfig
915- 2019-06-19 TUN-1976: Pass tunnel hostname through header
916- 2019-06-20 TUN-1982: Load custom origin CA when OriginCAPool is specified
917- 2019-06-26 TUN-2005: Upgrade logrus
918- 2019-06-20 TUN-1981: Write response header & body on proxy error to notify eyeballs of failure category
919- 2019-06-20 TUN-1977: Validate OriginConfig has valid URL, and use scheme to determine if a HTTPOriginService is expecting HTTP or Unix
920- 2019-06-13 DoH: change the media type to application/dns-message
921- 2019-06-26 AUTH-1736: Better handling of token revocation
922
9232019.6.0
924- 2019-05-17 TUN-1828: Update declarative tunnel config struct
925- 2019-05-29 Handle exit code on err
926- 2019-05-29 AUTH-1802: Fixed ssh-config templating
927- 2019-05-30 TUN-1914: Conflate HTTP and Unix OriginConfig, and add TLS config to WebSocketOriginConfig
928- 2019-06-03 AUTH-1811: ssh-gen config fixes
929
9302019.5.0
931- 2019-04-25 TUN-1781: ServeStream should return early on error
932- 2019-04-30 TUN-1786: Remove low-level Windows service logging
933- 2019-05-03 TUN-1807: Send cloudflared version in Connect RPC
934- 2019-01-23 AUTH-1557: Short Lived Certs
935- 2019-05-13 TUN-1847: Log a distinct message when OpenStream fails while waiting for response headers
936- 2019-05-13 AUTH-1706: fixes and testing
937- 2019-05-22 TUN-1880: Save debug and warn level log to logfile
938- 2019-05-22 AUTH-1781: fixed race condition for short lived certs, doc required config
939
9402019.4.1
941- 2019-03-18 TUN-1626: Create new supervisor to establish connection with origintunneld
942- 2019-04-04 TUN-1619: Add flag to test declarative tunnels.
943- 2019-04-05 TUN-1577: decompose carrier.StartServer to make TestStartServer less flappy
944- 2019-03-29 TUN-1606: Define CloudflaredConfig RPC structure, interface for cloudflared's RPC server
945- 2019-04-02 TUN-1682: Add context to OpenStream to prevent it from blocking indefinitely.
946- 2019-04-16 TUN-1732: cloudflared metrics should track userHostnames
947- 2019-04-17 TUN-1734: Pin packages at exact versions
948- 2019-04-18 TUN-1669: Update license message in help text. Also fix test
949
9502019.4.0
951- 2019-03-28 TUN-1648: ConnectionID is now a UUID
952- 2019-04-01 TUN-1673: Conflate Hello and Connect RPCs
953
9542019.3.2
955- 2019-03-22 TUN-1637: Free tunnels shouldn't require cert.pem
956- 2019-03-18 TUN-1604: Define Connect RPC call
957
9582019.3.1
959- 2019-03-09 Add rdp as a supported protocol in URL validation (#76)
960- 2019-03-15 TUN-1613: improved cloudflared RegisterTunnel fail metrics
961- 2019-03-17 TUN-1615: revert miekg/dns to last known working revision
962
9632019.3.0
964- 2018-12-28 make http transport aware of proxy from envvar
965- 2019-02-28 TUN-1559: fix nil dereference in TunnelConfig.CloseConnOnce
966- 2019-03-04 TUN-1451: Make non-interactive, non-service execution possible on Windows
967- 2019-03-04 TUN-1562: Refactor connectedSignal to be safe to close multiple times
968- 2019-02-27 TUN-1550: Add validation timeout for non-responsive origins
969- 2019-03-06 AUTH-1531: Named flags for ssh service tokens
970- 2019-02-14 Support unix sockets.
971- 2019-03-08 TUN-1389: Non-scalar flags in a cloudflared config.yml don't get logged
972- 2019-03-07 TUN-1522: If we can't get SRV from default resolver, get them from 1.1.1.1 DoT
973
9742019.2.1
975- 2019-02-14 TUN-1381: should tell you if you're on the latest version rather than just exiting silently
976- 2019-02-15 TUN-1467: build with Go 1.11
977- 2019-02-15 AUTH-1519: Added logging
978- 2019-02-19 TUN-1525: cloudflared metrics for registration success/fail
979- 2019-02-19 TUN-1510: Wrap the close() in sync.Once.Do
980
9812019.2.0
982- 2019-01-24 AUTH-1462: better curl arg parsing
983- 2019-02-01 TUN-1456: Only make one UUID
984- 2019-01-30 cloudflared/linux_service: Add missing /etc/init.d shebang
985- 2019-02-07 AUTH-1511: Add custom headers for ssh command
986- 2019-02-01 AUTH-1503: Added RDP support
987- 2019-02-01 AUTH-1403: Print the paths in the ssh-config instructions
988
9892019.1.0
990- 2018-12-10 TUN-1231: Horizontal overflow wrapping on the Hello page
991- 2018-12-17 TUN-1140: Show usage if invoked with no args or config
992- 2018-11-06 TUN-632 Filter out common network exceptions from going to Sentry on StartServer
993- 2019-01-07 TUN-1138: Install cloudflared service directory with 755 permissions
994- 2019-01-07 TUN-1265: Silent exit when failing to parse config
995- 2019-01-10 TUN-1350: Enhance error messages with cloudflarestatus.com link, if relevant
996- 2019-01-16 TUN-1358: Close readyList after Muxer.Serve() has stopped running
997- 2019-01-24 AUTH-1423: move from stdout to stderr
998- 2019-01-24 AUTH-1404: reauth if the token is about to expire within 15 minutes
999- 2019-01-24 AUTH-1459: improved ssh streaming error message
1000- 2019-01-24 AUTH-1211: print all the versions
1001- 2019-01-24 AUTH-1337: fix url path
1002- 2019-01-28 TUN-1418: Rename ProtocolLogger to TransportLogger, and use TransportLogger to log RPC events.
1003- 2019-01-28 TUN-1419: Identify request/response headers/content length with ray ID
1004
10052018.12.1
1006- 2018-12-11 TUN-1270: cloudflared panic (HA metrics missing label)
1007
10082018.12.0
1009- 2018-11-15 TUN-1196: Allow TLS config client CA and root CA to be constructed from multiple certificates
1010- 2018-11-20 TUN-1209: TLS Config Certificates and GetCertificate can both be set
1011- 2018-11-26 TUN-1212: Expose tunnel_id in metrics
1012- 2018-11-30 TUN-1204: remove 'cloudflared hello' command
1013- 2018-12-04 Fix license URL typo
1014- 2018-12-07 TUN-1250: ValidateHTTPService shouldn't follow 302s
1015
10162018.11.0
1017- 2018-10-31 AUTH-1282: Fixed an issue where we were receiving as opposed sending on the channel.
1018- 2018-11-06 TUN-1179: Fix log message in cmd/cloudflared/transfer.Run
1019- 2018-11-13 AUTH-1308: get jwt even when you are already logged in
1020- 2018-11-12 TUN-1190: check URL parse error when starting SSH proxy server
1021- 2018-11-15 AUTH-1320: Fixed request issue and unhide the ssh command
1022
10232018.10.5
1024- 2018-10-18 TUN-968: Flow control for large requests/responses
1025- 2018-10-26 TUN-1158: Windows: use process arguments rather than trivial service arguments
1026- 2018-10-20 #30: Fix the Content-Length header for HTTP2->HTTP1
1027- 2018-10-29 TUN-1160: pass Host header during origin url validation
1028
10292018.10.4
1030- 2018-09-21 AUTH-1070: added SSH/protocol forwarding
1031- 2018-10-19 AUTH-1235: fixed packaging of deb dev file
1032- 2018-10-19 TUN-1097: Host missing from WebSocket request
1033- 2018-10-19 AUTH-1188: UX Review and Changes for CLI SSH Access
1034
10352018.10.3
1036- 2018-10-08 TUN-1099: Bring back changes in 2018.10.1
1037- 2018-10-08 TUN-1098: removed deprecation error
1038- 2018-10-08 TUN-1101: False negatives in Cloudflared error reporting
1039
10402018.10.2
1041- 2018-10-06 TUN-1093: Revert cloudflared to 2018.8.0
1042
10432018.10.1
1044- 2018-10-03 TUN-1012: Normalize config filename for Linux services
1045- 2018-10-05 TUN-1081: cloudflared now generates UUIDs
1046- 2018-10-05 TUN-1083: fixed incorrect help menu
1047- 2018-10-05 TUN-1086: fixed config option
1048
10492018.10.0
1050- 2018-08-15 AUTH-910, AUTH-1049, AUTH-1068, AUTH-1056: Generate and store Access tokens with E2EE option, curl/cmd wrapper
1051- 2018-09-11 TUN-890: To support free tunnels, hostname can now be ""
1052- 2018-09-12 TUN-810: Cloudflared should open dash/argotunnel not dash/warp
1053- 2018-09-12 TUN-985: Don't display tunnel ID if it's empty string
1054- 2018-09-11 TUN-881: Display trial zone URL upon successful registration
1055- 2018-09-11 TUN-868: HTTP/HTTPS mismatch should have a better error message
1056- 2018-09-19 TUN-1028: Unhide cloudflared compression flag
1057- 2018-09-20 AUTH-1139: refactored cloudflared help menu
1058- 2018-09-20 TUN-1035: New text for cloudflared tunnel --help
1059- 2018-09-18 AUTH-1136: addressing beta feedback
1060- 2018-09-26 AUTH-1165: hide access command
1061- 2018-09-26 TUN-1046: Document that delta compression is a beta feature
1062- 2018-09-28 TUN-1056: Lint error broke build
1063- 2018-09-27 TUN-1052: Origintunneld can send back an Origincert to Cloudflared
1064- 2018-09-28 TUN-1052: Changing type of OriginCert to :Data
1065- 2018-10-01 TUN-1062: Makefile target for regenerating Capn Proto definitions
1066- 2018-10-02 TUN-1064: Revert OriginCert capnp changes in Cloudflared. Reverts commits a1ee2342e97 and 8c756c45785.
1067- 2018-10-03 TUN-1076: Pin capnproto2 to version 2.17.1
1068- 2018-10-03 AUTH-1199: unhide access command, added beta label
1069
10702018.8.0
1071- 2018-05-01 Initial commit
1072- 2018-05-03 TUN-595: Add License/Readme files to cloudflared
1073- 2018-05-01 TUN-528: Move cloudflared into a separate repo
1074- 2018-07-24 TUN-813: Clean up cloudflared dependencies
1075- 2018-07-25 TUN-814: Handle error in CreateTLSListener before closing listener
1076- 2018-07-24 TUN-804: create Makefile recipe to build cloudflared and run tests
1077- 2018-07-26 TUN-817: Increase the log time precision
1078- 2018-07-30 TUN-828: Added Connection: keep-alive header
1079- 2018-07-30 TUN-829: prefer p256 curve
1080- 2018-07-31 TUN-834: Enable tracing on cloudflared
1081- 2018-08-07 TUN-820: Fix caddyfile gitignore
1082- 2018-07-25 TUN-804: create make recipe for building deb package
1083- 2018-08-07 TUN-861: Disable cloudflared tracing by default; preserve the latest tracefile
1084- 2018-08-07 TUN-857: Pull the brotli-go dependency from Github
1085- 2018-08-14 TUN-897: Bring back missing Brotli files
1086- 2018-07-26 TUN-804: create makefile recipe to release cloudflared using equinox
1087- 2018-08-15 TUN-901: makefile target for homebrew release
1088- 2018-07-30 TUN-801: Rapid SQL Proxy
1089- 2018-08-27 TUN-833: Don't log system root certificate loading failure on Windows
1090
1091