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: add ability to overload fast api functions by anonrig · Pull Request #48993 · nodejs/node

Conversation

@anonrig

@anonrig anonrig commented Aug 1, 2023 •
edited
Loading

Uh oh!

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

Copy link
Copy Markdown
Member

Uses v8 fast api overloads to define canParse method, and remove duplicated external symbols.

cc @nodejs/url @nodejs/performance

Sorry, something went wrong.

Uh oh!

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

bricss, H4ad, lin72h, and mertcanaltin reacted with thumbs up emoji mertcanaltin reacted with eyes emoji
All reactions
  • 👍 4 reactions
  • 👀 1 reaction
@nodejs-github-bot nodejs-github-bot added c++ Issues and PRs that require attention from people who are familiar with C++. needs-ci PRs that need a full CI run. labels Aug 1, 2023
@anonrig
anonrig requested review from joyeecheung and legendecas August 1, 2023 21:58
@anonrig
anonrig marked this pull request as ready for review August 1, 2023 22:06
@anonrig anonrig added commit-queue-rebase PRs the Commit Queue should land as multiple self-contained commits. dont-land-on-v16.x labels Aug 1, 2023
@anonrig
anonrig force-pushed the add-fast-api-overloads branch from a0bdd05 to 12130bb Compare August 1, 2023 22:09
@devsnek

devsnek commented Aug 1, 2023

Copy link
Copy Markdown
Member

funny question to ask but could these functions be defined as overloads for SetFastMethod and SetFastMethodNoSideEffects?

All reactions

Sorry, something went wrong.

Uh oh!

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

devsnek
devsnek reviewed Aug 1, 2023
View reviewed changes
Comment thread lib/internal/url.js Resolved

Uh oh!

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

@anonrig

anonrig commented Aug 1, 2023

Copy link
Copy Markdown
Member Author

funny question to ask but could these functions be defined as overloads for SetFastMethod and SetFastMethodNoSideEffects?

haha, probably yes!

All reactions

Sorry, something went wrong.

Uh oh!

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

@anonrig anonrig added the needs-benchmark-ci PRs that need a benchmark CI run. label Aug 1, 2023
joyeecheung
joyeecheung reviewed Aug 2, 2023
View reviewed changes
Comment thread src/node_url.cc Resolved

Uh oh!

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

@anonrig
src: add ability to overload fast api functions
85c7d8a
@anonrig
anonrig force-pushed the add-fast-api-overloads branch 2 times, most recently from 0457a0a to 4f9175c Compare August 6, 2023 15:27
@anonrig
url: overload canParse V8 fast api method
7f918a9
@anonrig
anonrig force-pushed the add-fast-api-overloads branch from 4f9175c to 7f918a9 Compare August 8, 2023 02:23
@anonrig
anonrig requested review from devsnek and joyeecheung August 8, 2023 02:24
@anonrig anonrig added the review wanted PRs that need review. label Aug 8, 2023
joyeecheung
joyeecheung approved these changes Aug 8, 2023
View reviewed changes

@joyeecheung joyeecheung 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, I'd suggest we run benchmark CI again before landing it (probably need to wait until the security embargo is lifted)

Sorry, something went wrong.

Uh oh!

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

All reactions
@anonrig

anonrig commented Aug 10, 2023 •
edited by aduh95
Loading

Uh oh!

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

Copy link
Copy Markdown
Member Author

Benchmark CI: https://ci.nodejs.org/view/Node.js%20benchmark/job/benchmark-node-micro-benchmarks/1357/

Results
                                                       confidence improvement accuracy (*)   (**)  (***)
url/whatwg-url-canParse.js n=1000000 type='auth'                       0.28 %       ±2.29% ±3.04% ±3.96%
url/whatwg-url-canParse.js n=1000000 type='dot'                       -2.09 %       ±2.94% ±3.91% ±5.09%
url/whatwg-url-canParse.js n=1000000 type='file'                       4.04 %       ±4.24% ±5.64% ±7.34%
url/whatwg-url-canParse.js n=1000000 type='idn'                        0.36 %       ±1.14% ±1.51% ±1.97%
url/whatwg-url-canParse.js n=1000000 type='javascript'                 0.81 %       ±2.85% ±3.80% ±4.94%
url/whatwg-url-canParse.js n=1000000 type='long'                       0.16 %       ±1.49% ±1.98% ±2.59%
url/whatwg-url-canParse.js n=1000000 type='percent'                   -2.28 %       ±2.36% ±3.14% ±4.09%
url/whatwg-url-canParse.js n=1000000 type='short'                     -2.96 %       ±4.90% ±6.53% ±8.51%
url/whatwg-url-canParse.js n=1000000 type='ws'                         1.84 %       ±3.60% ±4.80% ±6.25%
All reactions

Sorry, something went wrong.

Uh oh!

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

@anonrig anonrig added author ready PRs with CI started, the required approvals, and no outstanding review comments. request-ci Add this label to start a Jenkins CI on a PR. Only starts once the PR has an approving review. labels Aug 10, 2023
@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 10, 2023
@nodejs-github-bot

nodejs-github-bot commented Aug 10, 2023

Copy link
Copy Markdown
Collaborator

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

All reactions

Sorry, something went wrong.

Uh oh!

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

@github-actions github-actions Bot mentioned this pull request Aug 11, 2023
CI Reliability 2023-08-11 nodejs/reliability#634
Open
1 of 29 tasks
@nodejs-github-bot

nodejs-github-bot commented Aug 12, 2023

Copy link
Copy Markdown
Collaborator

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

All reactions

Sorry, something went wrong.

Uh oh!

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

@anonrig anonrig added the commit-queue PRs queued for automated landing through the Commit Queue. label Aug 12, 2023
@nodejs-github-bot nodejs-github-bot removed the commit-queue PRs queued for automated landing through the Commit Queue. label Aug 12, 2023
@nodejs-github-bot

nodejs-github-bot commented Aug 12, 2023

Copy link
Copy Markdown
Collaborator

Landed in 82e4ca1...607a545

All reactions

Sorry, something went wrong.

Uh oh!

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

@nodejs-github-bot nodejs-github-bot closed this Aug 12, 2023
nodejs-github-bot pushed a commit that referenced this pull request Aug 12, 2023
@anonrig @nodejs-github-bot
src: add ability to overload fast api functions
4cf30df
PR-URL: #48993
Reviewed-By: Joyee Cheung <[email protected]>
nodejs-github-bot pushed a commit that referenced this pull request Aug 12, 2023
@anonrig @nodejs-github-bot
url: overload canParse V8 fast api method
607a545
PR-URL: #48993
Reviewed-By: Joyee Cheung <[email protected]>
Ceres6 pushed a commit to Ceres6/node that referenced this pull request Aug 14, 2023
@anonrig @Ceres6
src: add ability to overload fast api functions
fa0a1c6
PR-URL: nodejs#48993
Reviewed-By: Joyee Cheung <[email protected]>
Ceres6 pushed a commit to Ceres6/node that referenced this pull request Aug 14, 2023
@anonrig @Ceres6
url: overload canParse V8 fast api method
b16ea54
PR-URL: nodejs#48993
Reviewed-By: Joyee Cheung <[email protected]>
RafaelGSS pushed a commit that referenced this pull request Aug 15, 2023
@anonrig @RafaelGSS
src: add ability to overload fast api functions
f5fcc95
PR-URL: #48993
Reviewed-By: Joyee Cheung <[email protected]>
RafaelGSS pushed a commit that referenced this pull request Aug 15, 2023
@anonrig @RafaelGSS
url: overload canParse V8 fast api method
4636592
PR-URL: #48993
Reviewed-By: Joyee Cheung <[email protected]>
@UlisesGascon UlisesGascon mentioned this pull request Aug 15, 2023
v20.6.0 proposal #49185
Merged
RafaelGSS pushed a commit to RafaelGSS/node that referenced this pull request Aug 15, 2023
@anonrig @RafaelGSS
src: add ability to overload fast api functions
5440a9f
PR-URL: nodejs#48993
Reviewed-By: Joyee Cheung <[email protected]>
RafaelGSS pushed a commit to RafaelGSS/node that referenced this pull request Aug 15, 2023
@anonrig @RafaelGSS
url: overload canParse V8 fast api method
1515e93
PR-URL: nodejs#48993
Reviewed-By: Joyee Cheung <[email protected]>
RafaelGSS pushed a commit that referenced this pull request Aug 16, 2023
@anonrig @RafaelGSS
src: add ability to overload fast api functions
2af5250
PR-URL: #48993
Reviewed-By: Joyee Cheung <[email protected]>
RafaelGSS pushed a commit that referenced this pull request Aug 16, 2023
@anonrig @RafaelGSS
url: overload canParse V8 fast api method
3d93ff6
PR-URL: #48993
Reviewed-By: Joyee Cheung <[email protected]>
RafaelGSS pushed a commit that referenced this pull request Aug 17, 2023
@anonrig @RafaelGSS
src: add ability to overload fast api functions
497df82
PR-URL: #48993
Reviewed-By: Joyee Cheung <[email protected]>
RafaelGSS pushed a commit that referenced this pull request Aug 17, 2023
@anonrig @RafaelGSS
url: overload canParse V8 fast api method
45c8600
PR-URL: #48993
Reviewed-By: Joyee Cheung <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

@joyeecheung joyeecheung joyeecheung approved these changes
@legendecas legendecas Awaiting requested review from legendecas
@devsnek devsnek Awaiting requested review from devsnek

Uh oh!

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

Assignees

No one assigned

Labels

author ready PRs with CI started, the required approvals, and no outstanding review comments. c++ Issues and PRs that require attention from people who are familiar with C++. commit-queue-rebase PRs the Commit Queue should land as multiple self-contained commits. needs-benchmark-ci PRs that need a benchmark CI run. needs-ci PRs that need a full CI run. review wanted PRs that need review.

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.

5 participants

@anonrig @devsnek @nodejs-github-bot @joyeecheung @legendecas
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.