WARNING: Do not attempt to use this build against the hosted zrok service at zrok.io, until the service has also been upgraded to v1.0.0! The 1.0.x series of release uses a different default API endpoint of https://api-v1.zrok.io. This endpoint will become functional once v1.0.0 has been released.
CHANGELOG
MAJOR RELEASE: zrok reaches version 1.0.0!
FEATURE: Completely redesigned web interface ("API Console"). New implementation provides a dual-mode interface supporting an improved visual network navigator and also a "tabular" view, which provides a more traditional "data" view. New stack built using vite, React, and TypeScript (#724)
FEATURE: New "zrok Agent", a background manager process for your zrok environments, which allows you to easily manage and work with multiple zrok share
and zrok access
processes. New --subordinate
flag added to zrok share [public|private|reserved]
and zrok access private
to operate in a mode that allows an Agent to manage shares and accesses (#463)
FEATURE: New "zrok Agent UI" a web-based user interface for the zrok Agent, which allows creating and releasing shares and accesses through a web browser. This is just an initial chunk of the new Agent UI, and is considered a "minimum viable" version of this interface (#221)
FEATURE: zrok share [public|private|reserved]
and zrok access private
now auto-detect if the zrok Agent is running in an environment and will automatically service share and access requests through the Agent, rather than in-process if the Agent is running. If the Agent is not running, operation remains as it was in v0.4.x
and the share or access is handled in-process. New --force-agent
and --force-local
flags exist to skip Agent detection and manually select an operating mode (#751)
FEATURE: zrok access private
supports a new --auto
mode, which can automatically find an available open address/port to bind the frontend listener on. Also includes --auto-address
, --auto-start-port
, and --auto-end-port
features with sensible defaults. Supported by both the agent and local operating modes (#780)
FEATURE: zrok rebase
commands (zrok rebase apiEndpoint
and zrok rebase accountToken
) allows "rebasing" an enabled environment onto a different API endpoint or a different account token. This is useful for migrating already-enabled environments between endpoints supporting different zrok versions, and is also useful when regenerating an account token (#869, #897)
FEATURE: zrok test canary
CLI tree replaces the old zrok test loop
tree; new zrok test canary public-proxy
and zrok test canary private-proxy
provide modernized, updated versions of what the zrok test loop
commands used to do. This new approach will serve as the foundation for all future zrok testing infrastructure (#771)
FEATURE: New /api/v1/versions
endpoint to return comprehensive, full stack version information about the deployed service instance. Currently only returns a single controllerVersion
property (#881)
CHANGE: The default API URL for v1.0.x
zrok clients is now https://api-v1.zrok.io
(instead of the older https://api.zrok.io
). The zrok.io deployment will now be maintaining version-specific DNS for versioned API endpoints.
CHANGE: Refactored API implementation. Cleanup, lint removal, additional data elements added, unused data removed (#834)
CHANGE: Deprecated the passwords
configuration stanza. The zrok controller and API console now use a hard-coded set of (what we believe to be) reasonable assumptions about password quality (#834)
CHANGE: The protocol for determining valid client versions has been changed. Previously a zrok client would do a GET
against the /api/v1/version
endpoint and do a local version string comparison (as a normal precondition to any API call) to see if the controller version matched. The protocol has been amended so that any out-of-date client using the old protocol will receive a version string indicating that they need to uprade their client. New clients will do a POST
against the /api/v1/clientVersionCheck
endpoint, posting their client version, and the server will check for compatibility. Does not change the security posture in any significant way, but gives more flexibility on the server side for managing client compatibility. Provides a better, cleared out-of-date error message for old clients when accessing v1.0.0
+ (#859)
CHANGE: The Python SDK is now generated by openapi-generator
and requires a newer urllib3
version 2.1.0. The published Python module, zrok
, inherits the dependencies of the generated packages (#894)