Skip to content

Fix git+ssh repository URLs so Node 26 can run yarn build - #4071

Draft
ntucker wants to merge 1 commit into
masterfrom
cursor/fix-git-ssh-repo-urls-0e87
Draft

Fix git+ssh repository URLs so Node 26 can run yarn build#4071
ntucker wants to merge 1 commit into
masterfrom
cursor/fix-git-ssh-repo-urls-0e87

Conversation

@ntucker

@ntucker ntucker commented Aug 14, 2026

Copy link
Copy Markdown
Collaborator

Fixes environment build bld-20260814-c311fca4-2c8f-43f8-ae7b-caecb63b847d (INSTALL_FAILED).

Motivation

Cloud Agent install runs nvm install (Node 26 from .nvmrc) then yarn build. That build failed in @data-client/normalizr and @data-client/endpoint:

ERROR: The argument 'url' git+ssh://git@github.com:reactive/data-client.git. Received 'Invalid port in url'

Package repository.url values used the SCP-style colon (github.com:org/repo). Node 26's url.parse() treats the segment after : as a port and throws ERR_INVALID_ARG_VALUE. npm-run-all (run-s via yarn g:runs) parses each package.json during build:bundle, so the workspace build exits 1.

CircleCI uses ci:build* (babel/types only), so this did not show up in PR CI. Node 22 only deprecates the same URL (DEP0170).

Solution

Use the WHATWG-valid git+ssh form in every published package:

git+ssh://git@github.com/reactive/data-client.git

(slash after the host, matching @anansi/generator-js). No environment install-script change is required once this is on the default branch.

Verification

On Node 26.7.0 (same as the failed build):

  • url.parse('git+ssh://git@github.com:reactive/data-client.git') throws the exact install error
  • url.parse('git+ssh://git@github.com/reactive/data-client.git') succeeds
  • yarn workspace @data-client/normalizr run build:bundle and the endpoint equivalent succeed
  • Full yarn build completes in 53s (the step that exited 1 in the environment install)

Open questions

None. Recurring environment builds of master will keep failing until this merges.

Open in Web Open in Cursor 

SCP-style git+ssh://git@github.com:org/repo.git is not a valid WHATWG URL.
Node 26's url.parse() throws ERR_INVALID_ARG_VALUE (Invalid port), which
breaks npm-run-all (run-s) during yarn build:bundle.

Co-authored-by: natmaster <natmaster@gmail.com>
@vercel

vercel Bot commented Aug 14, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated (UTC)
docs-site Ignored Ignored Aug 14, 2026 10:33pm

Request Review

@github-actions

Copy link
Copy Markdown
Contributor

Size Change: 0 B

Total Size: 81 kB

ℹ️ View Unchanged
Filename Size
examples/test-bundlesize/dist/App.js 1.46 kB
examples/test-bundlesize/dist/polyfill.js 307 B
examples/test-bundlesize/dist/rdcClient.js 10.9 kB
examples/test-bundlesize/dist/rdcEndpoint.js 8.07 kB
examples/test-bundlesize/dist/react.js 59.6 kB
examples/test-bundlesize/dist/webpack-runtime.js 784 B

compressed-size-action

@codecov

codecov Bot commented Aug 14, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 97.84%. Comparing base (ef4653f) to head (c864676).

Additional details and impacted files
@@           Coverage Diff           @@
##           master    #4071   +/-   ##
=======================================
  Coverage   97.84%   97.84%           
=======================================
  Files         156      156           
  Lines        3057     3057           
  Branches      612      612           
=======================================
  Hits         2991     2991           
  Misses         18       18           
  Partials       48       48           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

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