unjs / unjs/httpxy

Triage from upstream issues and PRs

Open
#2 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
345
Forks
29
Avg merge
5d 10h
Merged PRs (30d)
2

Description

Upstream has so many open PRs and Issues potentially some are valid bugs. Need to investigate and make a quick list of them:


Critical (crashes / data loss)
  • #1634req.socket undefined TypeError (crash) → #112
  • #1600 — Crash when options.target is object → #108
  • #1559 — Memory leak from broken req.on('aborted') (Node 15.5+) → #110
  • #1580 — Request abort broken on Node 16+ (connection leak) → #107
  • #1495 — Body data loss: piping before socket connected → #111
  • #1542 — Client disconnect throws unhandled error → #115
  • #1433 — Write to destroyed socket (crash) → #113
  • #1439 — Socket read error on WS upgrade failure (crash) → #116
  • #1395 — Crash on invalid response headers → #106
  • #1680 — Forward exceptions on parsing incoming requests to error event → #109
  • #1552 — Fix websocket socket close before response → #114
High (incorrect behavior)
  • #1504 — SSL options overwritten by undefined values → #118
  • #1419 — Inconsistent https protocol checks → #123
  • #1334 — Target URL with query string breaks path merging → #117
  • #1487 — Regex replaces http:/ incorrectly in paths (CLOSED) → #155
  • #1298 — Protocol-relative URLs not rewritten in Location header → #156
  • #1125 — HTTP 303 missing from redirect rewriting → #119
  • #1396removeChunked missing 204/304 (spec violation) → #122
  • #1551 — Empty header name causes ERR_INVALID_HTTP_TOKEN → #121
  • #1532 — Lowercase x-forwarded-* rejected by some servers
  • #1581 — Do not append XHeader values (duplicates) → #120
  • #1513setRedirectHostRewrite support URL object for options.target
  • #1417 — Allow URL objects in hostRewrite
  • #1376 — Double slashes in query params when ignorePath: true
  • #1273 — Disable 2-minute default incoming timeout
  • #1257 — Fix can't set headers when using agent
  • #1128 — Bugfix: use upstream proxy
  • #1276 — Detect and trim invalid incoming req header name
  • #980 — Don't send empty headers (Safari UTF-8 error)
  • #965 — Catch invalid headers
Medium (features)
  • #1494 — Flush headers immediately for chunked responses
  • #1379 — Add x-forwarded-host to WebSocket requests
  • #1134 — Support servername (SNI) in TLS requests
  • #1150 — Preserve duplicate response headers (CLOSED)
  • #1693 — Support function type for options.localAddress
  • #1644 — Expose http.request lookup option + types
  • #1638 — Respect NODE_TLS_REJECT_UNAUTHORIZED env var
  • #1574 — Add lookup option to override DNS lookups
  • #1550 — Allow forwarding to multiple endpoints
  • #1461forcePasses and selfHandleResponse as function callback
  • #1415 — Option to enable fall-through on 404
  • #1407onProxyReqWs async handler
  • #1375mergeCookies option
  • #1335 — Add request source to error handler
  • #1301 — WS option to transform client/server streams
  • #1285 — Allow any custom agent (not just follow-redirects)
  • #1283 — Pass options to proxyRes event
  • #1172 — Store request object in proxy errors
  • #1108 — Preserve header case for incoming requests
  • #1082proxyToNext option
  • #1063 — Override stream destination for proxy response
  • #991 — Intercept/manipulate WebSocket messages
Low (refactors / compat)
  • #1411 — Convert to WHATWG URL (WIP)
  • #1164 — Simplify outgoing path computation
  • #1686util._extend deprecation warning (Node 22)
  • #1666 — Use Object.assign instead of deprecated util._extend
  • #1575 — Replace deprecated util.puts()/util.debug()
  • #1144 — Server listen callback → #127
Skipped (docs, deps, CI, abandoned)

#1713, #1712, #1709, #1707, #1705, #1704, #1695, #1671, #1670, #1660, #1658, #1629, #1612, #1609, #1593, #1585, #1578, #1577, #1555, #1538, #1533, #1529, #1523, #1522, #1518, #1517, #1516, #1501, #1500, #1485, #1470, #1452, #1441, #1437, #1409, #1406, #1393, #1388, #1386, #1353, #1324, #1301, #1259, #1130, #1003

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the upstream pull-request index at github.com/http-party/node-http-proxy/pulls and review the listed open PRs and issues against the existing categories. Done means producing a current quick list that identifies valid bugs or useful changes, records related issue or PR status, and separates skipped or closed work.

Written by the indexing model from the issue text.

Assessment

Tech stack
node.js, typescript
Domain
backend, networking
Issue type
Documentation
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.