Skip to content

Upgrade go-runewidth to v0.0.31 to cut CLI startup time - #7391

Open
stevenchen-db wants to merge 2 commits into
mainfrom
deps/pin-go-runewidth
Open

stevenchen-db wants to merge 2 commits into
mainfrom
deps/pin-go-runewidth

Conversation

@stevenchen-db

Copy link
Copy Markdown
Contributor

Changes

Upgrade the indirect dependency github.com/mattn/go-runewidth from v0.0.27 to v0.0.31.

v0.0.26 and v0.0.27 build a 2.2 MB rune-width lookup table in init(), which adds ~30ms to every CLI invocation before any command runs. v0.0.31 builds it lazily on first use.

Tests

  • GODEBUG=inittrace=1: runewidth init 30ms → 0.02ms.
  • databricks --version median of 21 runs: 55.1ms → 22.3ms.
  • Unit tests for all packages that depend on runewidth pass. The full acceptance suite shows no differences from main locally.

This pull request and its description were written by Isaac.

v0.0.26 and v0.0.27 build a 2.2 MB rune-width lookup table in init(),
which costs ~30ms on every CLI invocation. v0.0.31 builds it lazily.

Co-authored-by: Isaac <no-reply@databricks.com>
@stevenchen-db
stevenchen-db requested a review from a team as a code owner November 6, 2026 17:55
Co-authored-by: Isaac <no-reply@databricks.com>
@eng-dev-ecosystem-bot

Copy link
Copy Markdown
Collaborator

✅ Integration test report

Commit: f82bbd6

Run: 42266369091

Env ✅​pass 🙈​skip Time
✅​ aws linux-2core-8gb 271 15 5:28
✅​ aws-windows-latest-4core-16gb 273 13 7:02
✅​ azure linux-2core-8gb 270 15 5:27
✅​ azure-windows-latest-4core-16gb 272 13 7:00
✅​ gcp linux-2core-8gb 271 15 5:11
✅​ gcp-windows-latest-4core-16gb 273 13 7:25
Top 6 slowest tests (at least 2 minutes):
duration env testname
7:19 gcp-windows-latest-4core-16gb TestAccept
6:57 aws-windows-latest-4core-16gb TestAccept
6:55 azure-windows-latest-4core-16gb TestAccept
3:48 gcp linux-2core-8gb TestAccept
3:45 azure linux-2core-8gb TestAccept
3:41 aws linux-2core-8gb TestAccept

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants