docs: add CHANGELOG.md for v0.6.0 release (#64)
Tyler committed
Jun 16, 2026 at 13:48 UTC
8083d0b57406e3e9fb69a7f9186e5674cdfc0cbb
1 file changed
+50
CHANGELOG.md
new
+50
@@ -0,0 +1,50 @@
1
+# Changelog
2
+
3
+All notable changes to this project will be documented in this file.
4
+
5
+The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
+and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
+
8
+The package version is derived from the git tag via `hatch-vcs`; each release
9
+below corresponds to a tag of the same name.
10
+
11
+## [0.6.0] - 2026-06-16
12
+
13
+### Changed
14
+
15
+- **auth:** OAuth2 login now uses a remote copy-paste flow instead of a
16
+ localhost callback server. The CLI prints an authorization URL with
17
+ `redirect_uri=https://sdk.cloud.google.com/applicationdefaultauthcode.html`
18
+ and `token_usage=remote`, then reads the pasted code from stdin. This works
19
+ in headless/remote environments where a browser cannot reach a local
20
+ callback port. (#54)
21
+
22
+### Added
23
+
24
+- **display output:** Rich rendering for `display_data` output via a shared
25
+ `render_display_data()` helper. HTML is converted with `html2text` and
26
+ rendered as Markdown, following a `text/markdown > text/html > text/plain`
27
+ priority; `text/plain` is wrapped with `Text.from_ansi` to preserve embedded
28
+ ANSI escapes. Applied consistently across `exec`, `console`/`repl`, and
29
+ automation call sites. (#58)
30
+
31
+### Fixed
32
+
33
+- **keep-alive:** Replace the `RuntimeService/KeepAliveAssignment` RPC on
34
+ `colab.pa.googleapis.com` with a Tunnel Frontend (TFE) HTTP ping
35
+ (`GET /tun/m/<endpoint>/keep-alive/` with `X-Colab-Tunnel: Google`) on
36
+ `colab.research.google.com`, authenticated by the user's own bearer token.
37
+ The old RPC required `serviceusage` consumer access to Colab's internal
38
+ project and returned HTTP 403 `USER_PROJECT_DENIED` for every external user,
39
+ causing their sessions to be idle-pruned within minutes. The TFE ping needs
40
+ no project entitlement; because the VM often does not answer on this path, a
41
+ `ReadTimeout` is treated as success while genuine HTTP errors propagate.
42
+ (#14, #61)
43
+
44
+### Removed
45
+
46
+- Dead grpc-web client-registry / API-key code path and the now-irrelevant
47
+ `colaboratory`-scope / `pa.googleapis.com` pre-flight remediation messaging,
48
+ superseded by the TFE keep-alive ping. (#61)
49
+
50
+[0.6.0]: https://github.com/googlecolab/google-colab-cli/compare/v0.5.11...v0.6.0