|
1 | 1 | # @googleworkspace/cli |
2 | 2 |
|
| 3 | +## 0.4.0 |
| 4 | + |
| 5 | +### Minor Changes |
| 6 | + |
| 7 | +- 87e4bb1: Add Linux ARM64 build targets (aarch64-unknown-linux-gnu and aarch64-unknown-linux-musl) to cargo-dist, enabling prebuilt binaries for ARM64 Linux users via npm, the shell installer, and GitHub Releases. |
| 8 | +- d1825f9: ### Multi-Account Support |
| 9 | + |
| 10 | + Add support for managing multiple Google accounts with per-account credential storage. |
| 11 | + |
| 12 | + **New features:** |
| 13 | + |
| 14 | + - `--account EMAIL` global flag available on every command |
| 15 | + - `GOOGLE_WORKSPACE_CLI_ACCOUNT` environment variable as fallback |
| 16 | + - `gws auth login --account EMAIL` — associates credentials with a specific account |
| 17 | + - `gws auth list` — lists all registered accounts |
| 18 | + - `gws auth default EMAIL` — sets the default account |
| 19 | + - `gws auth logout --account EMAIL` — removes a specific account |
| 20 | + - `login_hint` in OAuth URL for automatic account pre-selection in browser |
| 21 | + - Email validation via Google userinfo endpoint after OAuth flow |
| 22 | + |
| 23 | + **Breaking change:** Existing users must run `gws auth login` again after upgrading. The credential storage format has changed from a single `credentials.enc` to per-account files (`credentials.<b64-email>.enc`) with an `accounts.json` registry. |
| 24 | + |
| 25 | +### Patch Changes |
| 26 | + |
| 27 | +- a6994ad: Filter out `apps.alerts` scopes from user OAuth login flow since they require service account with domain-wide delegation |
| 28 | +- 1ad4f34: fix: replace unwrap() calls with proper error handling in MCP server |
| 29 | + |
| 30 | + Replaced four `unwrap()` calls in `mcp_server.rs` that could panic the MCP |
| 31 | + server process with graceful error handling. Also added a warning log when |
| 32 | + authentication silently falls back to unauthenticated mode. |
| 33 | + |
| 34 | +- a1be14f: fix: drain stdout pipe to prevent project listing timeout during auth setup |
| 35 | + |
| 36 | + Fixed `gws auth setup` timing out at step 3 (GCP project selection) for users |
| 37 | + with many projects. The `gcloud projects list` stdout pipe was only read after |
| 38 | + the child process exited, causing a deadlock when output exceeded the OS pipe |
| 39 | + buffer (~64 KB). Stdout is now drained in a background thread to prevent the |
| 40 | + pipe from filling up. |
| 41 | + |
| 42 | +- 364542b: fix: reject DEL character (0x7F) in input validation |
| 43 | + |
| 44 | + The `reject_control_chars` helper rejected bytes 0x00–0x1F but allowed |
| 45 | + the DEL character (0x7F), which is also an ASCII control character. This |
| 46 | + could allow malformed input from LLM agents to bypass validation. |
| 47 | + |
| 48 | +- 75cec1b: Fix URL template expansion so media upload endpoints substitute path parameters and avoid iterative replacement side effects. |
| 49 | +- ed409e3: Harden URL and path construction across helper modules (gmail/watch, modelarmor, discovery) |
| 50 | +- 263a8e5: fix: use gcloud.cmd on Windows and show platform-correct config paths |
| 51 | + |
| 52 | + On Windows, gcloud is installed as `gcloud.cmd` which Rust's `Command` |
| 53 | + cannot find without the extension. Also replaced hardcoded `~/.config/gws/` |
| 54 | + in error messages with the actual platform-resolved path. |
| 55 | + |
3 | 56 | ## 0.3.5 |
4 | 57 |
|
5 | 58 | ### Patch Changes |
|
0 commit comments