Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 0 additions & 10 deletions .changeset/fix-send-attachment-arg.md

This file was deleted.

7 changes: 0 additions & 7 deletions .changeset/gmail-default-sender.md

This file was deleted.

13 changes: 0 additions & 13 deletions .changeset/gmail-helpers-rollup.md

This file was deleted.

7 changes: 0 additions & 7 deletions .changeset/gmail-self-reply-fix.md

This file was deleted.

5 changes: 0 additions & 5 deletions .changeset/output-hygiene.md

This file was deleted.

33 changes: 33 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,38 @@
# @googleworkspace/cli

## 0.18.0

### Minor Changes

- 908cf73: feat(gmail): auto-populate From header with display name from send-as settings

Fetch the user's send-as identities to set the From header with a display name in all mail helpers (+send, +reply, +reply-all, +forward), matching Gmail web client behavior. Also enriches bare `--from` emails with their configured display name.

- 6e4daaf: Gmail helpers rollup: mail-builder migration, --attach flag (upload endpoint), +read helper

- Migrate `+send`, `+reply`, `+reply-all`, and `+forward` to the `mail-builder` crate for RFC-compliant MIME construction
- Add `--from` flag to `+send` for send-as alias support
- Add `-a`/`--attach` flag to all mail helpers (`+send`, `+reply`, `+reply-all`, `+forward`) with `mime_guess2` auto-detection, 25MB size validation, and upload endpoint support (35MB API limit vs 5MB metadata-only)
- Add `+read` helper to extract message body and headers (text, HTML, or JSON output)
- Make `OriginalMessage.thread_id` optional (`Option<String>`) for draft compatibility
- RFC 2822 display name quoting is handled natively by `mail-builder`
- Introduce `UploadSource` enum in executor for type-safe upload strategies

### Patch Changes

- 1e90380: fix(gmail): remove dead `--attachment` arg from `+send`

The `+send` subcommand defined a duplicate `"attachment"` arg alongside the
`"attach"` arg already provided by `common_mail_args`. Since `parse_attachments`
reads `"attach"`, the `--attachment` flag was silently ignored. Removed the
dead duplicate.

- 908cf73: fix(gmail): handle reply-all to own message correctly

Reply-all to a message you sent no longer errors with "No To recipient remains." The original To recipients are now used as reply targets, matching Gmail web client behavior.

- 2e909ae: Consolidate terminal sanitization, coloring, and output helpers into a new `output.rs` module. Fixes raw ANSI escape codes in `watch.rs` that bypassed `NO_COLOR` and TTY detection, upgrades `sanitize_for_terminal` to also strip dangerous Unicode characters (bidi overrides, zero-width spaces, directional isolates), and sanitizes previously raw API error body and user query outputs.

## 0.17.0

### Minor Changes
Expand Down
2 changes: 1 addition & 1 deletion Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@

[package]
name = "gws"
version = "0.17.0"
version = "0.18.0"
edition = "2021"
description = "Google Workspace CLI — dynamic command surface from Discovery Service"
license = "Apache-2.0"
Expand Down
6 changes: 3 additions & 3 deletions flake.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@googleworkspace/cli",
"version": "0.17.0",
"version": "0.18.0",
"private": true,
"description": "Google Workspace CLI — dynamic command surface from Discovery Service",
"license": "Apache-2.0",
Expand Down
Loading