GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — src: refactor http parser binding initialization by joyeecheung · Pull Request #54276 · nodejs/node

Conversation

@joyeecheung

@joyeecheung joyeecheung commented Aug 8, 2024

Copy link
Copy Markdown
Member
  • Use the per-isolate template to build constants and functions which is faster
  • Use Array::New() with prebuilt vectors which is faster
  • Register external references so the binding can be included in the snapshot

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

bricss and Ethan-Arrowood reacted with rocket emoji
All reactions
  • 🚀 2 reactions
@joyeecheung
src: refactor http parser binding initialization
c13202c
- Use the per-isolate template to build constants and functions
  which is faster
- Use Array::New() with prebuilt vectors which is faster
- Register external references so the binding can be included
  in the snapshot
@nodejs-github-bot

nodejs-github-bot commented Aug 8, 2024

Copy link
Copy Markdown
Collaborator

Review requested:

  • @nodejs/http
  • @nodejs/net
All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@nodejs-github-bot nodejs-github-bot added c++ Issues and PRs that require attention from people who are familiar with C++. http_parser Issues and PRs related to the HTTP parser implementation or http_parser binding. needs-ci PRs that need a full CI run. labels Aug 8, 2024
@joyeecheung joyeecheung mentioned this pull request Aug 8, 2024
FATAL ERROR v8::FromJust Maybe value is Nothing #54186
Closed
@codecov

codecov Bot commented Aug 9, 2024 •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown

Codecov Report

Attention: Patch coverage is 94.79167% with 5 lines in your changes missing coverage. Please review.

Project coverage is 87.10%. Comparing base (9e6c526) to head (c13202c).
Report is 451 commits behind head on main.

Files with missing lines Patch % Lines
src/node_http_parser.cc 94.79% 1 Missing and 4 partials ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main   #54276      +/-   ##
==========================================
- Coverage   87.10%   87.10%   -0.01%     
==========================================
  Files         647      647              
  Lines      181754   181782      +28     
  Branches    34880    34887       +7     
==========================================
+ Hits       158323   158346      +23     
+ Misses      16742    16736       -6     
- Partials     6689     6700      +11     
Files with missing lines Coverage Δ
src/node_external_reference.h 100.00% <ø> (ø)
src/node_http_parser.cc 83.11% <94.79%> (+0.09%) ⬆️

... and 24 files with indirect coverage changes

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

targos
targos approved these changes Aug 9, 2024
View reviewed changes
mcollina
mcollina approved these changes Aug 9, 2024
View reviewed changes

@mcollina mcollina left a comment

Copy link
Copy Markdown
Member

There was a problem hiding this comment.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
ShogunPanda
ShogunPanda approved these changes Aug 9, 2024
View reviewed changes
aymen94
aymen94 approved these changes Aug 9, 2024
View reviewed changes
addaleax
addaleax approved these changes Aug 10, 2024
View reviewed changes
ronag
ronag approved these changes Aug 10, 2024
View reviewed changes

@ronag ronag left a comment

Copy link
Copy Markdown
Member

There was a problem hiding this comment.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just a thought. Could we use a wasm build similar to undici?

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
@mcollina

mcollina commented Aug 10, 2024

Copy link
Copy Markdown
Member

I'm not sure wasm is available on all platforms.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@mcollina mcollina added the commit-queue PRs queued for automated landing through the Commit Queue. label Aug 10, 2024
@ronag

ronag commented Aug 10, 2024 •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Member

Your mean fetch (undici) doesn't work or all platforms?

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@nodejs-github-bot nodejs-github-bot added commit-queue-failed PRs whose Commit Queue landing failed and need manual intervention before retrying. and removed commit-queue PRs queued for automated landing through the Commit Queue. labels Aug 10, 2024
@nodejs-github-bot

nodejs-github-bot commented Aug 10, 2024

Copy link
Copy Markdown
Collaborator
Commit Queue failed
- Loading data for nodejs/node/pull/54276
✔  Done loading data for nodejs/node/pull/54276
----------------------------------- PR info ------------------------------------
Title      src: refactor http parser binding initialization (#54276)
Author     Joyee Cheung <[email protected]> (@joyeecheung)
Branch     joyeecheung:http-parser-binding -> nodejs:main
Labels     c++, http_parser, needs-ci
Commits    1
 - src: refactor http parser binding initialization
Committers 1
 - Joyee Cheung <[email protected]>
PR-URL: https://github.com/nodejs/node/pull/54276
Reviewed-By: Michaël Zasso <[email protected]>
Reviewed-By: Matteo Collina <[email protected]>
Reviewed-By: Paolo Insogna <[email protected]>
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Robert Nagy <[email protected]>
------------------------------ Generated metadata ------------------------------
PR-URL: https://github.com/nodejs/node/pull/54276
Reviewed-By: Michaël Zasso <[email protected]>
Reviewed-By: Matteo Collina <[email protected]>
Reviewed-By: Paolo Insogna <[email protected]>
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Robert Nagy <[email protected]>
--------------------------------------------------------------------------------
   ℹ  This PR was created on Thu, 08 Aug 2024 22:22:21 GMT
   ✔  Approvals: 5
   ✔  - Michaël Zasso (@targos) (TSC): https://github.com/nodejs/node/pull/54276#pullrequestreview-2229382852
   ✔  - Matteo Collina (@mcollina) (TSC): https://github.com/nodejs/node/pull/54276#pullrequestreview-2229715600
   ✔  - Paolo Insogna (@ShogunPanda) (TSC): https://github.com/nodejs/node/pull/54276#pullrequestreview-2229828935
   ✔  - Anna Henningsen (@addaleax): https://github.com/nodejs/node/pull/54276#pullrequestreview-2231440372
   ✔  - Robert Nagy (@ronag) (TSC): https://github.com/nodejs/node/pull/54276#pullrequestreview-2231464359
   ✔  Last GitHub CI successful
   ✘  No Jenkins CI runs detected
--------------------------------------------------------------------------------
   ✔  Aborted `git node land` session in /home/runner/work/node/node/.ncu
https://github.com/nodejs/node/actions/runs/10334911205
All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

jasnell
jasnell approved these changes Aug 11, 2024
View reviewed changes
@mcollina

mcollina commented Aug 12, 2024

Copy link
Copy Markdown
Member

Your mean fetch (undici) doesn't work or all platforms?

I have a rough recall of this being a problem, or at least with some ./configure flags.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@joyeecheung joyeecheung added request-ci Add this label to start a Jenkins CI on a PR. Only starts once the PR has an approving review. and removed commit-queue-failed PRs whose Commit Queue landing failed and need manual intervention before retrying. labels Aug 12, 2024
@joyeecheung

joyeecheung commented Aug 12, 2024

Copy link
Copy Markdown
Member Author

I'm not sure wasm is available on all platforms.

I am guessing by that you mean wasm cannot be built on all platforms (not that a pre-built one cannot be loaded on all platforms). For the parsing on the server side I think there were some experiments with this using https://github.com/ShogunPanda/milo @ShogunPanda knows more.

mcollina reacted with thumbs up emoji
All reactions
  • 👍 1 reaction

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@github-actions github-actions Bot removed the request-ci Add this label to start a Jenkins CI on a PR. Only starts once the PR has an approving review. label Aug 12, 2024
@nodejs-github-bot

nodejs-github-bot commented Aug 12, 2024

Copy link
Copy Markdown
Collaborator

CI: https://ci.nodejs.org/job/node-test-pull-request/61053/

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

Ethan-Arrowood
Ethan-Arrowood approved these changes Aug 12, 2024
View reviewed changes
@nodejs-github-bot

nodejs-github-bot commented Aug 12, 2024

Copy link
Copy Markdown
Collaborator

CI: https://ci.nodejs.org/job/node-test-pull-request/61064/

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@nodejs-github-bot

nodejs-github-bot commented Aug 14, 2024

Copy link
Copy Markdown
Collaborator

CI: https://ci.nodejs.org/job/node-test-pull-request/61105/

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@mcollina

mcollina commented Aug 14, 2024

Copy link
Copy Markdown
Member

I am guessing by that you mean wasm cannot be built on all platforms (not that a pre-built one cannot be loaded on all platforms).

@joyeecheung ah right! That was the reason.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@joyeecheung joyeecheung added the commit-queue PRs queued for automated landing through the Commit Queue. label Aug 14, 2024
@nodejs-github-bot nodejs-github-bot removed the commit-queue PRs queued for automated landing through the Commit Queue. label Aug 14, 2024
@nodejs-github-bot
nodejs-github-bot merged commit 503cf16 into nodejs:main Aug 14, 2024
@nodejs-github-bot

nodejs-github-bot commented Aug 14, 2024

Copy link
Copy Markdown
Collaborator

Landed in 503cf16

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

RafaelGSS pushed a commit that referenced this pull request Aug 19, 2024
@joyeecheung @RafaelGSS
src: refactor http parser binding initialization
04fe033
- Use the per-isolate template to build constants and functions
  which is faster
- Use Array::New() with prebuilt vectors which is faster
- Register external references so the binding can be included
  in the snapshot

PR-URL: #54276
Reviewed-By: Michaël Zasso <[email protected]>
Reviewed-By: Matteo Collina <[email protected]>
Reviewed-By: Paolo Insogna <[email protected]>
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Robert Nagy <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Ethan Arrowood <[email protected]>
@RafaelGSS RafaelGSS mentioned this pull request Aug 19, 2024
v22.7.0 proposal #54452
Merged
RafaelGSS pushed a commit that referenced this pull request Aug 21, 2024
@joyeecheung @RafaelGSS
src: refactor http parser binding initialization
4e4d1de
- Use the per-isolate template to build constants and functions
  which is faster
- Use Array::New() with prebuilt vectors which is faster
- Register external references so the binding can be included
  in the snapshot

PR-URL: #54276
Reviewed-By: Michaël Zasso <[email protected]>
Reviewed-By: Matteo Collina <[email protected]>
Reviewed-By: Paolo Insogna <[email protected]>
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Robert Nagy <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Ethan Arrowood <[email protected]>
@targos targos added the dont-land-on-v20.x label Sep 21, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

@mcollina mcollina mcollina approved these changes
@ShogunPanda ShogunPanda ShogunPanda approved these changes
@jasnell jasnell jasnell approved these changes
@addaleax addaleax addaleax approved these changes
@ronag ronag ronag approved these changes
@Ethan-Arrowood Ethan-Arrowood Ethan-Arrowood approved these changes
+2 more reviewers
@targos targos targos approved these changes
@aymen94 aymen94 aymen94 approved these changes
Reviewers whose approvals may not affect merge requirements

Uh oh!

There was an error while loading. Please reload this page.

Assignees

No one assigned

Labels

c++ Issues and PRs that require attention from people who are familiar with C++. http_parser Issues and PRs related to the HTTP parser implementation or http_parser binding. needs-ci PRs that need a full CI run.

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

Uh oh!

There was an error while loading. Please reload this page.

10 participants

@joyeecheung @nodejs-github-bot @mcollina @ronag @ShogunPanda @jasnell @addaleax @targos @aymen94 @Ethan-Arrowood
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.