Skip to content

Remove http-proxy-node16, replace with lightweight inline proxy#7196

Open
ryancbahan wants to merge 1 commit into04-03-04-03-remove-network-interfacesfrom
04-03-04-03-remove-http-proxy
Open

Remove http-proxy-node16, replace with lightweight inline proxy#7196
ryancbahan wants to merge 1 commit into04-03-04-03-remove-network-interfacesfrom
04-03-04-03-remove-http-proxy

Conversation

@ryancbahan
Copy link
Copy Markdown
Contributor

@ryancbahan ryancbahan commented Apr 3, 2026

Summary

  • Add http-proxy.ts (~100 lines) implementing web() and ws() proxy methods using Node's built-in http/https modules
  • HTTP forwarding: pipes request to target, pipes response back with headers
  • WebSocket forwarding: handles upgrade handshake, bidirectional socket piping, proper error cleanup
  • Remove http-proxy-node16 from packages/app/package.json

Tophatting

  • confirm shopify app dev still works as expected
  • confirm dev console in admin still receives ws updates from cli

Copy link
Copy Markdown
Contributor Author

ryancbahan commented Apr 3, 2026

Add http-proxy.ts (~100 lines) implementing web() and ws() proxy
methods using Node's built-in http/https modules. Handles HTTP request
forwarding via pipe, and WebSocket upgrades via bidirectional socket
piping with proper 101 Switching Protocols response.

Includes 6 direct unit tests (GET/POST forwarding, header preservation,
path forwarding, error callbacks for unreachable targets on both web
and ws). Plus 8 existing integration tests via http-reverse-proxy.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@ryancbahan ryancbahan force-pushed the 04-03-04-03-remove-http-proxy branch from 7008daf to 383b392 Compare April 3, 2026 23:02
@ryancbahan ryancbahan marked this pull request as ready for review April 3, 2026 23:09
@ryancbahan ryancbahan requested a review from a team as a code owner April 3, 2026 23:09
@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Apr 3, 2026

We detected some changes at packages/*/src and there are no updates in the .changeset.
If the changes are user-facing, run pnpm changeset add to track your changes and include them in the next release CHANGELOG.

Caution

DO NOT create changesets for features which you do not wish to be included in the public changelog of the next CLI release.

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.

1 participant