Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
The package version is derived from the git tag via hatch-vcs; each release
below corresponds to a tag of the same name.
0.6.0 - 2026-06-16
Changed
- auth: OAuth2 login now uses a remote copy-paste flow instead of a
localhost callback server. The CLI prints an authorization URL with
redirect_uri=https://sdk.cloud.google.com/applicationdefaultauthcode.htmlandtoken_usage=remote, then reads the pasted code from stdin. This works in headless/remote environments where a browser cannot reach a local callback port. (#54)
Added
- display output: Rich rendering for
display_dataoutput via a sharedrender_display_data()helper. HTML is converted withhtml2textand rendered as Markdown, following atext/markdown > text/html > text/plainpriority;text/plainis wrapped withText.from_ansito preserve embedded ANSI escapes. Applied consistently acrossexec,console/repl, and automation call sites. (#58)
Fixed
- keep-alive: Replace the
RuntimeService/KeepAliveAssignmentRPC oncolab.pa.googleapis.comwith a Tunnel Frontend (TFE) HTTP ping (GET /tun/m/<endpoint>/keep-alive/withX-Colab-Tunnel: Google) oncolab.research.google.com, authenticated by the user's own bearer token. The old RPC requiredserviceusageconsumer access to Colab's internal project and returned HTTP 403USER_PROJECT_DENIEDfor every external user, causing their sessions to be idle-pruned within minutes. The TFE ping needs no project entitlement; because the VM often does not answer on this path, aReadTimeoutis treated as success while genuine HTTP errors propagate. (#14, #61)
Removed
- Dead grpc-web client-registry / API-key code path and the now-irrelevant
colaboratory-scope /pa.googleapis.compre-flight remediation messaging, superseded by the TFE keep-alive ping. (#61)