zrok/CHANGELOG.md
2022-11-28 11:26:12 -05:00

1.9 KiB

v0.3.0 (WiP)

CLI/zrok Client Changes

Versioning

The zrok client now checks the version of the configured API endpoint before attempting to connect. This means a zrok client will only work with the same major/minor versions.

This means that a v0.3 client will NOT work with a v0.2 service. This also means that breaking API changes will require a minor revision change. A breaking change made in v0.3 will provoke a new v0.4 series to begin.

API Changes

Naming has been streamlined:

  • The tunnel operations are all tagged with service.
  • tunnel.Tunnel becomes service.Share
  • tunnel.Untunnel becomes service.Unshare
  • TunnelRequest and TunnelResponse become ShareRequest and ShareResponse
  • UntunnelRequest becomes UnshareRequest.

Sharing now includes the new mode options:

  • ShareRequest now includes a ShareMode enum which includes public and private values
  • ShareRequest now includes a BackendMode enum which includes proxy, web, and dav values

Frontend Selection; Private Shares

The zrok model has been extended to include support for both a "public share" (exposing a backend through the globally-available frontend instances), and also a "private share" (exposing a backend service to a user who instantiates a private, local frontend).

Underlying Schema Changes

  • Added new frontends table
  • Added new availability_type enumeration for use in the new frontends table
  • Made the account_id column of the environments table NULL-able; a NULL value in the account_id column signifies an "ephemeral" environment

Loop Test Shutdown Hook

The zrok test loop command now includes a shutdown hook to allow premature cancellation of a running test.

v0.2.18

  • DEFECT: Token generation has been improved to use an alphabet consisting of [a-zA-Z0-9]. Service token generation continues to use a case-insensitive alphabet consisting of [a-z0-9] to be DNS-safe.