profile
viewpoint
Evan Lucas evanlucas Austin, TX https://evanlucas.com @nodejs TSC Emeritus

evanlucas/apex7000 3

package for interfacing with the Apex 7000 bill acceptor

evanlucas/assert6 2

Node assert with support for Maps and Sets

evanlucas/argsplit-swift 1

Swift port of https://github.com/evanlucas/argsplit

esatterwhite/eslint-plugin-sensible 0

Better comma first indent rules for eslint

evanlucas/a2switch 0

CLI tool for quickly switching between Apache configurations

evanlucas/ampersand-calendar 0

Creates an SVG calendar using D3.

evanlucas/ampersand-chart 0

Bar charts for AmpersandJS using D3.

evanlucas/ampersand-filter-tracker 0

Creates both a GUI and a filter from multiple models.

evanlucas/ampersand-search-select 0

Creates a search bar that shows a list of matching items that can be selected.

Pull request review commentlogdna/eslint-config

package: Initial commit

+esm: false+ts: false+jsx: false+check-coverage: true+100: true+reporter: classic+nyc-arg:+- --all=true+output-dir: .tap

I would use output-file: .tap here. It prevents printing of the tap output when multiple files are present

darinspivey

comment created time in 18 hours

Pull request review commentlogdna/eslint-config

package: Initial commit

+library 'magic-butler-catalogue'++def projectName = "eslint-config"+def repo = "logdna/${projectName}"++pipeline {+  agent none++  options {+    timestamps()+    ansiColor 'xterm'+  }++  stages {+    stage('Test Suite') {+      matrix {+        axes {+          axis {+            name 'NODE_VERSION'+            values '10', '12', '14'+          }+        }++        agent {+          docker {+            image "us.gcr.io/logdna-k8s/node:${NODE_VERSION}-ci"+          }+        }++        environment {+          HOME = "."+        }++        stages {+          stage('Install') {++            steps {+              sh """+              npm install+              """+            }+          }++          stage('Test') {+            steps {+              sh 'node -v'+              sh 'npm -v'+              sh 'npm test'+            }++            post {+              always {+                sh 'cat .tap/**/*.tap | ./node_modules/.bin/tap-mocha-reporter xunit > coverage/test.xml'++                junit 'coverage/test.xml'++                publishHTML target: [+                  allowMissing: false,+                  alwaysLinkToLastBuild: false,+                  keepAll: true,+                  reportDir: 'coverage/lcov-report',+                  reportFiles: 'index.html',+                  reportName: "coverage-node-v${NODE_VERSION}"+                ]+              }+            }+          }+        }+      }+    }++    stage('Test Release') {+      when {+        beforeAgent true+        not {+          branch 'master'+        }+      }++      agent {+        docker {+          image "us.gcr.io/logdna-k8s/node:12-ci"+          customWorkspace "${projectName}-${BUILD_NUMBER}"+        }+      }++      environment {+        HOME = "."

ditto,

          NPM_CONFIG_CACHE = '.npm'
          NPM_CONFIG_USERCONFIG = '.npm/rc'
          SPAWN_WRAP_SHIM_ROOT = '.npm'
darinspivey

comment created time in 18 hours

Pull request review commentlogdna/eslint-config

package: Initial commit

+{+  "name": "@logdna/eslint-config-logdna",+  "version": "0.0.0",+  "description": "LogDNA's preferred eslint config to be used across all projects",+  "main": "index.js",+  "scripts": {+    "lint": "eslint ./",+    "tap": "tap",+    "pretest": "npm run lint",+    "test": "tap"+  },+  "eslintConfig": {+    "root": true,+    "ignorePatterns": [+      "node_modules/",+      "coverage/"+    ],+    "parserOptions": {+      "ecmaVersion": 2019+    }+  },+  "private": false,+  "publishConfig": {+    "access": "public"+  },+  "repository": {+    "type": "git",+    "url": "git+https://github.com/logdna/eslint-config.git"+  },+  "author": {+    "name": "LogDNA, Inc.",+    "email": "help@logdna.com"+  },+  "license": "MIT",+  "bugs": {+    "url": "https://github.com/logdna/eslint-config/issues"+  },+  "homepage": "https://github.com/logdna/eslint-config#readme",+  "devDependencies": {+    "eslint": "^6.8.0",

Should we bump this to the latest?

darinspivey

comment created time in 18 hours

PullRequestReviewEvent

Pull request review commentlogdna/eslint-config

package: Initial commit

+library 'magic-butler-catalogue'++def projectName = "eslint-config"+def repo = "logdna/${projectName}"++pipeline {+  agent none++  options {+    timestamps()+    ansiColor 'xterm'+  }++  stages {+    stage('Test Suite') {+      matrix {+        axes {+          axis {+            name 'NODE_VERSION'+            values '10', '12', '14'+          }+        }++        agent {+          docker {+            image "us.gcr.io/logdna-k8s/node:${NODE_VERSION}-ci"+          }+        }++        environment {+          HOME = "."

This should really be more like:

          NPM_CONFIG_CACHE = '.npm'
          NPM_CONFIG_USERCONFIG = '.npm/rc'
          SPAWN_WRAP_SHIM_ROOT = '.npm'
darinspivey

comment created time in 18 hours

PullRequestReviewEvent
MemberEvent

pull request commentevanlucas/fish-kubectl-completions

Redirect stderr to null when getting with jsonpath

Thanks again! Just added you as a collaborator! Thanks for the help!

femnad

comment created time in 9 days

push eventevanlucas/fish-kubectl-completions

Cihan Demirci

commit sha 9a8383a0f4ed2315869b9fcd0f85039a323872a2

Redirect stderr to null when getting with jsonpath When getting a resources which might not yield any results redirect stderr to /dev/null so that the output won't be crowded by jsonpath templating error messages if there are no results.

view details

push time in 9 days

PR merged evanlucas/fish-kubectl-completions

Redirect stderr to null when getting with jsonpath

Sorry for the PR spam today, I think this one manages to undo the sub-optimal changes I've introduced; if resource getting commands outputting to jsonpath redirect their stderr to /dev/null, then the completion output won't be mangled by templating errors from jsonpath if there are no resources of the completed type.

This patch in particular removes an avoidable CRD listing and prevents output mangling when completing kubectl rollout history if there are no deployments, daemonsets or statefulsets.

+8 -14

0 comment

2 changed files

femnad

pr closed time in 9 days

PullRequestReviewEvent

pull request commentevanlucas/fish-kubectl-completions

use wrapper for getting CRDs

Thanks!

femnad

comment created time in 9 days

push eventevanlucas/fish-kubectl-completions

Cihan Demirci

commit sha 3e859f89f4f9760edf21f5aad029b93ae51354e8

use wrapper for getting CRDs Also redirect stderr to /dev/null when listing resources of given type.

view details

push time in 9 days

PR merged evanlucas/fish-kubectl-completions

use wrapper for getting CRDs

This is actually one fix and addressing one edge case.

Fix: Use the wrapper function when invoking kubectl so that context is taken into account Edge case: When there are no resources of given type, the completion prints No resources found in default namespace. to stderr, so redirect that listing to /dev/null.

+4 -4

0 comment

2 changed files

femnad

pr closed time in 9 days

PullRequestReviewEvent

push eventevanlucas/fish-kubectl-completions

Cihan Demirci

commit sha beca1e5857fec3029450baf236f64227a4b5d81c

Check for CRDs before listing them

view details

push time in 9 days

PR merged evanlucas/fish-kubectl-completions

Check for CRDs before listing them

Sub-resource completion seems to error with the following output when there are no CRDs defined:

error: error executing jsonpath "{range .items[*]}{.spec.names.plural}{\"\\n\"}{.spec.names.singular}{\"\\n\"}{range .spec.names.shortNames[]}{@}{\"\\n\"}{end}{end}": Error executing template: not in range, nothing to end. Printing more information for debugging the template:
        template was:
                {range .items[*]}{.spec.names.plural}{"\n"}{.spec.names.singular}{"\n"}{range .spec.names.shortNames[]}{@}{"\n"}{end}{end}
        object given to jsonpath engine was:
                map[string]interface {}{"apiVersion":"v1", "items":[]interface {}{}, "kind":"List", "metadata":map[string]interface {}{"resourceVersion":"", "selfLink":""}}

This patch checks if there are CRDs defined and if not, returns early from __fish_kubectl_actually_get_crds

+6 -0

0 comment

2 changed files

femnad

pr closed time in 9 days

PullRequestReviewEvent

issue closedevanlucas/fish-kubectl-completions

Support alias of `kubectl`

Now a days a lot of users use k instead of kubectl. Unfortunatelly the auto-completion does not work with k notation.

closed time in 25 days

KristianZH

issue commentevanlucas/fish-kubectl-completions

Switching cluster & namespace: breaks autocomplete

hm this seems to be working for me. I would recommend you pass context before namespace though, that way you can get the namespace to autocomplete. (The namespaces available will depend on the current context). What version of kubectl are you using? And what version of Kubernetes?

jannickj

comment created time in 25 days

push eventevanlucas/fish-kubectl-completions

Evan Lucas

commit sha dadbc6e8d32652e0e5c49a42cdb38c0a667b3dfb

main,completions: add support for short crd names

view details

push time in 25 days

issue closednodejs/node

doc:

📗 API Reference Docs Problem

<!--

Thank you for wanting to make nodejs.org better!

This template is for issues with the Node.js API reference documentation.

For problems with nodejs.org beyond the API reference documentation, please open an issue using the issue tracker for our site repository.

https://github.com/nodejs/nodejs.org

For more general support, please open an issue using the issue tracker for our help repository.

https://github.com/nodejs/help


For the issue title, please enter a one-line summary after “doc: ” (preferably 50 characters or less and no more than 72).

The “✍️” are placeholders signifying requests for input. Replace them with your responses.

If you are unsure of something, do your best.

-->

<!-- The output of “node --version”. -->

  • Version: ✍️

<!-- The output of “uname -a” (UNIX) or version and 32-bit or 64-bit (Windows). -->

  • Platform: ✍️

<!-- The name of affected core module. -->

  • Subsystem: ✍️

Location

Section of the site where the content exists

Affected URL(s):

  • https://nodejs.org/api/✍️

Description

Concise explanation of the problem

<!-- If applicable, include any screenshots that may help solve the problem. -->

✍️


<!-- Use “[x]” to check the box below if you are interested in contributing. -->

  • [ ] I would like to work on this issue and submit a pull request.

closed time in a month

Hmawn
PullRequestReviewEvent
PullRequestReviewEvent

pull request commentnodejs/node

Add initial support for Darwin arm64

Landed in 4b6036a07b97...e3b79e3bbe63

evanlucas

comment created time in a month

PR closed nodejs/node

Add initial support for Darwin arm64 arm build macos openssl

build: add support for build on arm64


deps: add openssl support for arm64

This adds the required files for supporting openssl on arm64.

This uses the same configuration that can be found in https://github.com/openssl/openssl/pull/12369 to generate the required files.


TODO

  • [x] wasi support (Will be fixed by https://github.com/nodejs/node/pull/34337)
  • [x] inspector seems to segfault (Will be fixed by https://github.com/nodejs/node/pull/34337)
  • [x] figure out what path to go for uv_cpu_info() (https://github.com/libuv/libuv/pull/2914)
  • [x] Get rid of ld: warning: -no_pie ignored for arm64 message during build
Checklist

<!-- Remove items that do not apply. For completed items, change [ ] to [x]. -->

  • [ ] make -j4 test (UNIX), or vcbuild test (Windows) passes
  • [ ] tests and/or benchmarks are included
  • [ ] commit message follows commit guidelines

<!-- Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I have the right to submit it under the open source license indicated in the file; or

(b) The contribution is based upon previous work that, to the best of my knowledge, is covered under an appropriate open source license and I have the right under that license to submit that work with modifications, whether created in whole or in part by me, under the same open source license (unless I am permitted to submit under a different license), as indicated in the file; or

(c) The contribution was provided directly to me by some other person who certified (a), (b) or (c) and I have not modified it.

(d) I understand and agree that this project and the contribution are public and that a record of the contribution (including all personal information I submit with it, including my sign-off) is maintained indefinitely and may be redistributed consistent with this project or the open source license(s) involved. -->

+85221 -1

5 comments

63 changed files

evanlucas

pr closed time in a month

delete branch evanlucas/node

delete branch : arm64

delete time in a month

push eventnodejs/node

Evan Lucas

commit sha d06ff289a058ff3ae97dc87456e9129f6d792a7f

deps: add openssl support for arm64 This adds the required files for supporting openssl on arm64. This uses the same configuration that can be found in https://github.com/openssl/openssl/pull/12369 to generate the required files. PR-URL: https://github.com/nodejs/node/pull/34238 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Ash Cripps <ashley.cripps@ibm.com>

view details

Evan Lucas

commit sha e3b79e3bbe635fc7f57ff3df0c99dbb8f63ce05e

build: add support for build on arm64 Ref: https://github.com/nodejs/TSC/issues/886 Ref: https://github.com/nodejs/node/issues/34043 PR-URL: https://github.com/nodejs/node/pull/34238 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Ash Cripps <ashley.cripps@ibm.com>

view details

push time in a month

push eventevanlucas/node

Rich Trott

commit sha b93325cb267e4bb55387b2158140542438a3c371

doc: use links to MS guide in style guide Avoid repeating too much from the Microsoft guide by providing links to it. PR-URL: https://github.com/nodejs/node/pull/34871 Reviewed-By: Daijiro Wachi <daijiro.wachi@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Franziska Hinkelmann <franziska.hinkelmann@gmail.com> Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>

view details

Rich Trott

commit sha a8db32a5042782c5426e229f466ba80bf5995c9d

test: simplify test-vm-memleak PR-URL: https://github.com/nodejs/node/pull/34881 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Franziska Hinkelmann <franziska.hinkelmann@gmail.com>

view details

Rich Trott

commit sha ad2c22df61be67db5764e7e72d02d8351663bcee

doc: use "previous"/"preceding" instead of "above" as modifier Refs: https://docs.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/a/above PR-URL: https://github.com/nodejs/node/pull/34877 Reviewed-By: Jan Krems <jan.krems@gmail.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By: Anto Aravinth <anto.aravinth.cse@gmail.com> Reviewed-By: Franziska Hinkelmann <franziska.hinkelmann@gmail.com> Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>

view details

Evan Lucas

commit sha 4b6036a07b9767ecdb9b04f1effb5170c3f7dd4e

build,deps: add gen-openssl target This adds a new make target to generate platform dependent files for openssl on non-linux machines. The scripts we currently have in place require linux. This adds a Dockerfile that installs the necessary dependencies to be able to generate these files. Previously, it was necessary to run `make -C deps/openssl/config` on a linux machine. Now, as long as docker is installed and in your `PATH`, it is possible to run `make gen-openssl`. PR-URL: https://github.com/nodejs/node/pull/34642 Reviewed-By: James M Snell <jasnell@gmail.com>

view details

Evan Lucas

commit sha d06ff289a058ff3ae97dc87456e9129f6d792a7f

deps: add openssl support for arm64 This adds the required files for supporting openssl on arm64. This uses the same configuration that can be found in https://github.com/openssl/openssl/pull/12369 to generate the required files. PR-URL: https://github.com/nodejs/node/pull/34238 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Ash Cripps <ashley.cripps@ibm.com>

view details

Evan Lucas

commit sha e3b79e3bbe635fc7f57ff3df0c99dbb8f63ce05e

build: add support for build on arm64 Ref: https://github.com/nodejs/TSC/issues/886 Ref: https://github.com/nodejs/node/issues/34043 PR-URL: https://github.com/nodejs/node/pull/34238 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Ash Cripps <ashley.cripps@ibm.com>

view details

push time in a month

delete branch evanlucas/node

delete branch : openssl-make

delete time in a month

PR closed nodejs/node

build,deps: add gen-openssl target build openssl

This adds a new make target to generate platform dependent files for openssl on non-linux machines. The scripts we currently have in place require linux. This adds a Dockerfile that installs the necessary dependencies to be able to generate these files.

Previously, it was necessary to run make -C deps/openssl/config on a linux machine. Now, as long as docker is installed and in your PATH, it is possible to run make gen-openssl.

<!-- Thank you for your pull request. Please provide a description above and review the requirements below.

Bug fixes and new features should include tests and possibly benchmarks.

Contributors guide: https://github.com/nodejs/node/blob/master/CONTRIBUTING.md -->

Checklist

<!-- Remove items that do not apply. For completed items, change [ ] to [x]. -->

  • [x] make -j4 test (UNIX), or vcbuild test (Windows) passes
  • [x] documentation is changed or added
  • [x] commit message follows commit guidelines

<!-- Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I have the right to submit it under the open source license indicated in the file; or

(b) The contribution is based upon previous work that, to the best of my knowledge, is covered under an appropriate open source license and I have the right under that license to submit that work with modifications, whether created in whole or in part by me, under the same open source license (unless I am permitted to submit under a different license), as indicated in the file; or

(c) The contribution was provided directly to me by some other person who certified (a), (b) or (c) and I have not modified it.

(d) I understand and agree that this project and the contribution are public and that a record of the contribution (including all personal information I submit with it, including my sign-off) is maintained indefinitely and may be redistributed consistent with this project or the open source license(s) involved. -->

+32 -0

2 comments

3 changed files

evanlucas

pr closed time in a month

pull request commentnodejs/node

build,deps: add gen-openssl target

Landed in 4b6036a07b97

evanlucas

comment created time in a month

push eventnodejs/node

Evan Lucas

commit sha 4b6036a07b9767ecdb9b04f1effb5170c3f7dd4e

build,deps: add gen-openssl target This adds a new make target to generate platform dependent files for openssl on non-linux machines. The scripts we currently have in place require linux. This adds a Dockerfile that installs the necessary dependencies to be able to generate these files. Previously, it was necessary to run `make -C deps/openssl/config` on a linux machine. Now, as long as docker is installed and in your `PATH`, it is possible to run `make gen-openssl`. PR-URL: https://github.com/nodejs/node/pull/34642 Reviewed-By: James M Snell <jasnell@gmail.com>

view details

push time in a month

pull request commentnodejs/node

Add initial support for Darwin arm64

@AshCripps thanks! The inspector and wasi tests are still going to fail until V8 8.5 is landed. I have a patch somewhere that works for those without the V8 upgrade. I'll try to find that and submit another PR after this one lands

evanlucas

comment created time in a month

push eventevanlucas/node

Evan Lucas

commit sha af5fabfe00144af577fa48a7d86a40c7fff27903

deps: add openssl support for arm64 This adds the required files for supporting openssl on arm64. This uses the same configuration that can be found in https://github.com/openssl/openssl/pull/12369 to generate the required files.

view details

Evan Lucas

commit sha ad29cb66885006089b2a00f7bd50c336141727e3

build: add support for build on arm64 Ref: https://github.com/nodejs/TSC/issues/886 Ref: https://github.com/nodejs/node/issues/34043

view details

push time in a month

push eventevanlucas/node

Rich Trott

commit sha 772fdb0cd3163ad9299cdb1168b10059abe6ee71

test: fix flaky test-fs-stream-construct The test is marked flaky on ARM because it times out on Raspberry Pi devices in CI. Split the single test file into four separate test files to ease debugging. Add fs.close() to avoid timing out. Fixes: https://github.com/nodejs/node/issues/33796 PR-URL: https://github.com/nodejs/node/pull/34203 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Robert Nagy <ronagy@icloud.com>

view details

Daniel Bevenius

commit sha 30612316e4af64e530b9b3ecc1cbfc98d11cae3e

src: add encoding_type variable in WritePrivateKey This commit adds a local variable named encoding_type which is set to the value of the Maybe using ToChecked(). The motivation for this is the code for ToChecked() could be executed multiple times depending on path taken at runtime. I also think this improves readability, or at least it is as readable as before this change. PR-URL: https://github.com/nodejs/node/pull/34181 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: David Carlier <devnexen@gmail.com>

view details

Anna Henningsen

commit sha 2243d79f74a0b9b4c2711fcf6ab47a747e737812

domain: fix unintentional deprecation warning 646e5a471766e27e8317bb changed the way that the domain hook callback is called. Previously, the callback was only used in the case that async_hooks were *not* being used (since domains already integrate with async hooks the way they should), and the corresponding deprecation warning also only emitted in that case. However, that commit didn’t move that condition along when the code was ported from C++ to JS. As a consequence, the domain hook callback was used when it wasn’t necessary to use it, and the deprecation warning emitted accidentally along with it. Refs: https://github.com/nodejs/node/commit/646e5a471766e27e8317bb54d1fd1d2c72cffb69#diff-9f21ce1b9d6d46fdd07b969e8a04e140L192 Refs: https://github.com/nodejs/node/commit/646e5a471766e27e8317bb54d1fd1d2c72cffb69#diff-e6db408e12db906ead6ddfac3de15a6fR119 Refs: https://github.com/nodejs/node/pull/33801#issuecomment-654744913 PR-URL: https://github.com/nodejs/node/pull/34245 Fixes: https://github.com/nodejs/node/issues/34069 Reviewed-By: Vladimir de Turckheim <vlad2t@hotmail.com> Reviewed-By: Shelley Vohr <codebytere@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Gerhard Stöbich <deb2001-github@yahoo.de> Reviewed-By: Gus Caplan <me@gus.host> Reviewed-By: Andrey Pechkurov <apechkurov@gmail.com> Reviewed-By: Stephen Belanger <admin@stephenbelanger.com>

view details

Anna Henningsen

commit sha 6bc871f4704dbdb905cb64df22a4c40c4639aff9

src: exit explicitly after printing V8 help V8 will not exit the process after handling --help anymore: https://chromium-review.googlesource.com/c/v8/v8/+/2276276 As a drive-by fix, correctly return in the `print_bash_completion` case as well. Refs: https://github.com/nodejs/node/pull/34135 Co-authored-by: Ulan Degenbaev <ulan@chromium.org> PR-URL: https://github.com/nodejs/node/pull/34136 Reviewed-By: Shelley Vohr <codebytere@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Daniel Bevenius <daniel.bevenius@gmail.com> Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com> Reviewed-By: Michaël Zasso <targos@protonmail.com>

view details

Anna Henningsen

commit sha cb67be7f6712e7d433288e1445acad72755a9aac

test: add regression test for C++-created Buffer transfer Add a test for a regression that occurs when transferring some `Buffer` objects that were created from C++ to a parent thread. Fixes: https://github.com/nodejs/node/issues/34126 PR-URL: https://github.com/nodejs/node/pull/34140 Reviewed-By: Gerhard Stöbich <deb2001-github@yahoo.de>

view details

Xu Meng

commit sha 7a84e2e07126a2d9bd8d3e36afc9c1f1e3b2b8e4

test: skip an ipv6 test on IBM i Due to some unknown system configuration, the code `socket_ipv6.bind(0, 111::1)` does not throw the expected error EADDRNOTAVAIL on some IBM i systems. This issue is still being investigated. To get the IBM i CI passing, skip it for now. PR-URL: https://github.com/nodejs/node/pull/34209 Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Anna Henningsen <anna@addaleax.net>

view details

rickyes

commit sha e0ecde973705402bd3ce3ec7d611d866e3e95daa

test: add arrayOfStreams to pipeline PR-URL: https://github.com/nodejs/node/pull/34156 Reviewed-By: Robert Nagy <ronagy@icloud.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net>

view details

Johannes Schöpp

commit sha b99253cfcfe5e2f4b7f4a947451cb00b877f200b

Forces Powershell to use tls1.2 Powershell defaults to tls 1.0 - This forces powershell to use tls 1.2 Tls 1.2 is supported in all current microsoft operating systems and needed to download chocolatey. Fixes: https://github.com/nodejs/node/issues/33140 PR-URL: https://github.com/nodejs/node/pull/33609 Reviewed-By: Bartosz Sosnowski <bartosz@janeasystems.com> Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com> Reviewed-By: Tobias Nießen <tniessen@tnie.de>

view details

Gabriel Schulhof

commit sha c08920b0c4ce3d3395796195b1473275e511b03b

test: add n-api null checks for conversions Add assertions that conversion and coercion N-APIs return appropriate error statuses when given `NULL`s for parameters they expect to not be `NULL`. For `napi_get_value_string_*` this also checks that it returns `napi_string_expected` when passed a `napi_value` not containing a string. PR-URL: https://github.com/nodejs/node/pull/34142 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>

view details

Rich Trott

commit sha 6ae1b9c457444fdfa5e30d9142bb8cdccf35f8ee

test: add known issue for fs.open() keeping event loop open PR-URL: https://github.com/nodejs/node/pull/34228 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Robert Nagy <ronagy@icloud.com>

view details

rickyes

commit sha 527e2147afe43c7b19fd140ebd048c896705da7f

stream: add promises version to utility functions PR-URL: https://github.com/nodejs/node/pull/33991 Fixes: https://github.com/nodejs/node/issues/33582 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Denys Otrishko <shishugi@gmail.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com> Reviewed-By: Robert Nagy <ronagy@icloud.com>

view details

Robert Nagy

commit sha e8f57456bec8f4b2b23ab2a326a619ac28e8e8cf

http: add note about timer unref PR-URL: https://github.com/nodejs/node/pull/34143 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>

view details

James M Snell

commit sha c53513162706ef89943ec5143729561739690483

quic: additional minor cleanups in node_quic_session.h PR-URL: https://github.com/nodejs/node/pull/34247 Reviewed-By: Anna Henningsen <anna@addaleax.net>

view details

James M Snell

commit sha bcde849be9f4a4593d99d77cbc1d87ba9fdc27ba

quic: remove unnecessary bool conversion The argument will always be a boolean already PR-URL: https://github.com/nodejs/node/pull/34247 Reviewed-By: Anna Henningsen <anna@addaleax.net>

view details

James M Snell

commit sha edc71ef008cb8ac68b86da3a3df8d826aae6a249

quic: handle errors thrown / rejections in the session event Errors thrown within the session event handler will be handled by destroying the session (allowing a proper connection close to be sent to the client peer). They will not crash the parent QuicSocket by default. Instead, a `'sessionError'` event will be emitted, allowing the error to be logged or handled. PR-URL: https://github.com/nodejs/node/pull/34247 Reviewed-By: Anna Henningsen <anna@addaleax.net>

view details

James M Snell

commit sha cc89aac5f7d5443e0be9d037f067391ab144244e

quic: refactor/improve error handling for busy event Also, change setServerBusy into a setter PR-URL: https://github.com/nodejs/node/pull/34247 Reviewed-By: Anna Henningsen <anna@addaleax.net>

view details

James M Snell

commit sha e3813261b87f813cbd0cdc5199434de44b2a0c6a

quic: add tests confirming error handling for QuicSocket close event PR-URL: https://github.com/nodejs/node/pull/34247 Reviewed-By: Anna Henningsen <anna@addaleax.net>

view details

James M Snell

commit sha afc9390ae58bdd7e5631402e4d3a0219d7f25993

quic: refactor/improve QuicSocket ready event handling PR-URL: https://github.com/nodejs/node/pull/34247 Reviewed-By: Anna Henningsen <anna@addaleax.net>

view details

James M Snell

commit sha 94372b124a8c262d5104dc2a441d5af5e9355fd1

quic: refactor/improve/document QuicSocket listening event PR-URL: https://github.com/nodejs/node/pull/34247 Reviewed-By: Anna Henningsen <anna@addaleax.net>

view details

James M Snell

commit sha 71236097d0e8782988c4b26049748197d963e4f5

quic: use Number() instead of bigint for QuicSocket stats PR-URL: https://github.com/nodejs/node/pull/34247 Reviewed-By: Anna Henningsen <anna@addaleax.net>

view details

push time in a month

push eventevanlucas/node

gengjiawen

commit sha df17fcdc7188779193ef5bd6c0eb3045cda7a63e

build: enable build for node-v8 push PR-URL: https://github.com/nodejs/node/pull/34634 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Mary Marchini <oss@mmarchini.me>

view details

Shelley Vohr

commit sha e43bb2f101870949f8332175f4eb80acdb0034e0

build: run CI on release branches PR-URL: https://github.com/nodejs/node/pull/34649 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Mary Marchini <oss@mmarchini.me>

view details

Gerhard Stoebich

commit sha 48249889b6b1af69d3c2b6fb9e59fea08d2bd023

async_hooks: avoid unneeded AsyncResource creation Inspired by the callstack at https://github.com/nodejs/node/issues/34556#issuecomment-666743528 If the wanted store is equal to the active store it's not needed to create an AsyncResource. Refs: https://github.com/nodejs/node/issues/34556#issuecomment-666743528 PR-URL: https://github.com/nodejs/node/pull/34616 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Stephen Belanger <admin@stephenbelanger.com> Reviewed-By: Vladimir de Turckheim <vlad2t@hotmail.com> Reviewed-By: Andrey Pechkurov <apechkurov@gmail.com>

view details

Gerhard Stoebich

commit sha a4e1755df2f9bb8c712d7ca767a5944d9d71e33b

async_hooks: don't read resource if ALS is disabled Only call executionAsyncResource() in getStore() if the ALS instance is enabled because the resource is not needed otherwise. PR-URL: https://github.com/nodejs/node/pull/34617 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com>

view details

Anna Henningsen

commit sha 22cbbcf9d9374d4b663bf1409f292212fa57623a

n-api,src: provide asynchronous cleanup hooks Sometimes addons need to perform cleanup actions, for example closing libuv handles or waiting for requests to finish, that cannot be performed synchronously. Add C++ API and N-API functions that allow providing such asynchronous cleanup hooks. Fixes: https://github.com/nodejs/node/issues/34567 PR-URL: https://github.com/nodejs/node/pull/34572 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Gabriel Schulhof <gabriel.schulhof@intel.com>

view details

Rich Trott

commit sha e692adf3cf29eb33fafa8be0e1bfa1b8aee404fa

doc: use _Class Method_ in async_hooks.md We use _Class Method_ rather than _static_ in documentation headers in buffer.md and crypto.md. We use _static_ in one place in async_hooks.md. Change to _Class Method_ for consistency. PR-URL: https://github.com/nodejs/node/pull/34626 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Gerhard Stöbich <deb2001-github@yahoo.de> Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>

view details

Rich Trott

commit sha a11aa9b9806380b22308af2f0b327946b2b7f557

meta: enable http2 team for CODEOWNERS PR-URL: https://github.com/nodejs/node/pull/34534 Reviewed-By: Anna Henningsen <anna@addaleax.net>

view details

Mary Marchini

commit sha 46bef7b7716b377055260490bb6f713ffb593672

test: add Actions annotation output It's possible to annotate failures in Actions by printing "::error file={},line={},col={}::{message}". This methos is preferrable over using a problem matcher because problem matchers only allow single-line messages, whereas ::error allows multi-line messages. PR-URL: https://github.com/nodejs/node/pull/34590 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com>

view details

Mateusz Krawczuk

commit sha 33060703cc214b4056718eaaf5738f8fc83130f7

crypto: add OP flag constants added in OpenSSL v1.1.1 PR-URL: https://github.com/nodejs/node/pull/33929 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Alba Mendez <me@alba.sh> Reviewed-By: Tobias Nießen <tniessen@tnie.de>

view details

aetheryx

commit sha 0fd73696a5bc324adcddad6953ab8984b3d30937

doc: fix typo in path.md PR-URL: https://github.com/nodejs/node/pull/34550 Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Harshitha K P <harshitha014@gmail.com> Reviewed-By: Zeyu Yang <himself65@outlook.com> Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>

view details

iandrc

commit sha 0dff5bc2d8d03733093848d6691a347755f914cc

doc: update fs.watch() availability for IBM i Add a line that IBM i does not support `fs.watch()`. Fixes: https://github.com/nodejs/node/issues/34607 Refs: https://nodejs.org/docs/latest/api/fs.html#fs_availability PR-URL: https://github.com/nodejs/node/pull/34611 Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: James M Snell <jasnell@gmail.com>

view details

Rich Trott

commit sha 57c8549c561c9892c0c1efb948728b92ddb78516

test: add debugging for test-https-foafssl.js The test is timing out once in a very long while on Windows CI. It is unclear where the test gets stuck, so add more debugging statements to try to locate it. Refs: https://github.com/nodejs/node/issues/24397 PR-URL: https://github.com/nodejs/node/pull/34603 Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>

view details

Rich Trott

commit sha 93959b22b197e2e9fdb4a21e65e567729d76338d

test: add debugging for callbacks in test-https-foafssl.js The test is timing out once in a very long while on Windows CI. It is unclear where the test gets stuck, so add more debugging statements to try to locate it. Refs: https://github.com/nodejs/node/issues/24397 PR-URL: https://github.com/nodejs/node/pull/34603 Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>

view details

Anna Henningsen

commit sha bfebfdb149cf2d68ceee19f207ba65e0d8357a7f

src: fix linter failures Fix linter failures when running the linter on all source files. PR-URL: https://github.com/nodejs/node/pull/34582 Refs: https://github.com/nodejs/node/pull/34565 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: David Carlier <devnexen@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com>

view details

Anna Henningsen

commit sha 318c982f3b1cd2d836de0e03ca9c9ecb634b546c

tools: fix C++ import checker argument expansion Makefile assumes that it can pass a list of files to the import checker, whereas the import checker expects a single argument that is interpreted as a blob. Fix that mismatch by accepting multiple arguments in the import checker. Refs: https://github.com/nodejs/node/pull/34565 PR-URL: https://github.com/nodejs/node/pull/34582 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: David Carlier <devnexen@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com>

view details

Rich Trott

commit sha 607183efff97a78e4daf9b624b7d973b207db9f9

doc: edit process.title note for brevity and clarity PR-URL: https://github.com/nodejs/node/pull/34627 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: James M Snell <jasnell@gmail.com>

view details

cjihrig

commit sha 0a3ac681c2f58a3c4f4ef9045b90f5a3bc30c184

deps: update to uvwasi 0.0.10 Notable changes: - The uvwasi_preopen_t now uses const char* for the mapped_path and real_path fields. Previously, these were not `const`. - uvwasi_path_filestat_get() now properly handles the UVWASI_LOOKUP_SYMLINK_FOLLOW flag. - uvwasi_options_init() has been added to reduce the boilerplate code associated with initializing uvwasi_options_t's. - The DEBUG() macro has been renamed to UVWASI_DEBUG() to reduce naming conflicts with other projects. - A compilation error on NetBSD 8.2 has been fixed. - The uvwasi_fd_filestat_set_times() and uvwasi_path_filestat_set_times() functions now have proper implementations. Fixes: https://github.com/nodejs/node/issues/34510 PR-URL: https://github.com/nodejs/node/pull/34623 Reviewed-By: Gus Caplan <me@gus.host> Reviewed-By: Jiawen Geng <technicalcute@gmail.com> Reviewed-By: David Carlier <devnexen@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>

view details

cjihrig

commit sha 33505e2dbdee3f4197f54b28dc24007110b46d3a

wasi: add __wasi_fd_filestat_set_times() test PR-URL: https://github.com/nodejs/node/pull/34623 Reviewed-By: Gus Caplan <me@gus.host> Reviewed-By: Jiawen Geng <technicalcute@gmail.com> Reviewed-By: David Carlier <devnexen@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>

view details

Gerhard Stoebich

commit sha 014feecc445c7dfc754378f2626cd43ee30a448d

async_hooks: avoid GC tracking of AsyncResource in ALS Manually destroy the AsyncResource created by AsyncLocalStore.run() to avoid unneeded GC tracking in case a destroy hooks is present. PR-URL: https://github.com/nodejs/node/pull/34653 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: James M Snell <jasnell@gmail.com>

view details

Anna Henningsen

commit sha 9511261f350bf4791f6edf567a1c68e3ad540722

src: fix `size` underflow in CallbackQueue Only decrease the size when actually removing items. PR-URL: https://github.com/nodejs/node/pull/34662 Fixes: https://github.com/nodejs/node/issues/34657 Refs: https://github.com/nodejs/node/pull/34572 Reviewed-By: Gabriel Schulhof <gabriel.schulhof@intel.com> Reviewed-By: James M Snell <jasnell@gmail.com>

view details

push time in a month

Pull request review commentlogdna/logger-node

improvement: refactor from logdna/nodejs

+logs+*.log+npm-debug.log*+package-lock.json

yea with this being a package, we do not want a package-lock here

darinspivey

comment created time in a month

PullRequestReviewEvent

create barnchnodejs/node-auto-test

branch : workflow-forks-auto-start-ci

created branch time in 2 months

pull request commentnodejs/node

build: do not run auto-start-ci on forks

Sounds good. I'll open a PR over there. I think I've found a way to do it

evanlucas

comment created time in 2 months

Pull request review commentnodejs/node

build: do not run auto-start-ci on forks

 on:  jobs:   startCI:+    if: github.repository == 'nodejs/node'

https://github.community/t/jobs-job-id-if-does-not-work-with-env-secrets/16928/5 It doesn't sound like it does work...

evanlucas

comment created time in 2 months

pull request commentnodejs/node

build: do not run auto-start-ci on forks

@mmarchini that's a good point. Lemme see what I can do

evanlucas

comment created time in 2 months

PR opened nodejs/node

Reviewers
build: do not run auto-start-ci on forks

Previously, the auto-start-ci action would run on forks. Without the secrets, the action would fail over and over again. This caused a lot of email spam. Now, we only run this action when the repository is nodejs/node.

/cc @mmarchini I think this should work, although I'm not sure how to test...

Checklist

<!-- Remove items that do not apply. For completed items, change [ ] to [x]. -->

<!-- Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I have the right to submit it under the open source license indicated in the file; or

(b) The contribution is based upon previous work that, to the best of my knowledge, is covered under an appropriate open source license and I have the right under that license to submit that work with modifications, whether created in whole or in part by me, under the same open source license (unless I am permitted to submit under a different license), as indicated in the file; or

(c) The contribution was provided directly to me by some other person who certified (a), (b) or (c) and I have not modified it.

(d) I understand and agree that this project and the contribution are public and that a record of the contribution (including all personal information I submit with it, including my sign-off) is maintained indefinitely and may be redistributed consistent with this project or the open source license(s) involved. -->

+1 -0

0 comment

1 changed file

pr created time in 2 months

create barnchevanlucas/node

branch : workflow-forks-auto-start-ci

created branch time in 2 months

PR opened nodejs/node

build,deps: add gen-openssl target

This adds a new make target to generate platform dependent files for openssl on non-linux machines. The scripts we currently have in place require linux. This adds a Dockerfile that installs the necessary dependencies to be able to generate these files.

Previously, it was necessary to run make -C deps/openssl/config on a linux machine. Now, as long as docker is installed and in your PATH, it is possible to run make gen-openssl.

<!-- Thank you for your pull request. Please provide a description above and review the requirements below.

Bug fixes and new features should include tests and possibly benchmarks.

Contributors guide: https://github.com/nodejs/node/blob/master/CONTRIBUTING.md -->

Checklist

<!-- Remove items that do not apply. For completed items, change [ ] to [x]. -->

  • [x] make -j4 test (UNIX), or vcbuild test (Windows) passes
  • [x] documentation is changed or added
  • [x] commit message follows commit guidelines

<!-- Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I have the right to submit it under the open source license indicated in the file; or

(b) The contribution is based upon previous work that, to the best of my knowledge, is covered under an appropriate open source license and I have the right under that license to submit that work with modifications, whether created in whole or in part by me, under the same open source license (unless I am permitted to submit under a different license), as indicated in the file; or

(c) The contribution was provided directly to me by some other person who certified (a), (b) or (c) and I have not modified it.

(d) I understand and agree that this project and the contribution are public and that a record of the contribution (including all personal information I submit with it, including my sign-off) is maintained indefinitely and may be redistributed consistent with this project or the open source license(s) involved. -->

+32 -0

0 comment

3 changed files

pr created time in 2 months

create barnchevanlucas/node

branch : openssl-make

created branch time in 2 months

push eventevanlucas/node

Ruben Bridgewater

commit sha 66679ce3348fca62a600bbeefa7b7c919344aaad

util: support Combining Diacritical Marks for Symbols This adds support for the "Combining Diacritical Marks for Symbols" unicode group to calculate a zero length width even if Node.js is built without ICU. Signed-off-by: Ruben Bridgewater <ruben@bridgewater.de> PR-URL: https://github.com/nodejs/node/pull/33650 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net>

view details

Ruben Bridgewater

commit sha 3646872f606949cb21ff95aa6d5a0c9ba0418e59

util: fix width detection for DEL without ICU This makes sure the DEL character (ASCII 127) is detected as a zero width character even if Node.js is not built with ICU. Signed-off-by: Ruben Bridgewater <ruben@bridgewater.de> PR-URL: https://github.com/nodejs/node/pull/33650 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net>

view details

Pranshu Srivastava

commit sha ac80fed3b80cdda4cf68df67ba569f208b87922e

http2: return this for Http2ServerRequest#setTimeout Fixes: https://github.com/nodejs/node/issues/33993 PR-URL: https://github.com/nodejs/node/pull/33994 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Zeyu Yang <himself65@outlook.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Gerhard Stöbich <deb2001-github@yahoo.de>

view details

sapics

commit sha a80000ec08a6a11f7e9e0291287fbc18357b2739

src: remove unnecessary calculation in base64.h PR-URL: https://github.com/nodejs/node/pull/33839 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: David Carlier <devnexen@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Tobias Nießen <tniessen@tnie.de>

view details

Anna Henningsen

commit sha 88fb5a5c7933022de750745e51e5dc0996a1e2c4

worker: add public method for marking objects as untransferable We currently mark a number of `ArrayBuffer`s as not transferable, including the `Buffer` pool and ones with finalizers provided by C++ addons. There is no good reason to assume that userland code might not encounter similar problems, for example when doing `ArrayBuffer` pooling similar to ours. Therefore, provide an API that lets userland code also mark objects as not transferable. PR-URL: https://github.com/nodejs/node/pull/33979 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Gus Caplan <me@gus.host>

view details

ExE Boss

commit sha 50228cf6ffca3936717f5797025f3c49c2278fee

assert: add `assert/strict` alias module Refs: https://github.com/nodejs/node/pull/31553 Refs: https://github.com/nodejs/node/pull/32953 PR-URL: https://github.com/nodejs/node/pull/34001 Refs: https://github.com/nodejs/node/pull/34002 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Zeyu Yang <himself65@outlook.com> Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>

view details

sapics

commit sha bc23d108c849c857cab4b3d5caee89ce48757a96

src: fix ParseEncoding "utf-16LE" was parsed "UNKNOWN", this fixes to "UCS2" "utf-buffer" was parsed "BUFFER", this fixes to "UNKNOWN" "utf-16leNOT" was parsed "UCS2", this fixes to "UNKNOWN" PR-URL: https://github.com/nodejs/node/pull/33957 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: James M Snell <jasnell@gmail.com>

view details

Pranshu Srivastava

commit sha fe6e46842e1451c1663540203a1c2d7f31f0d9e0

test: add test for Http2ServerResponse#[writableCorked,cork,uncork] PR-URL: https://github.com/nodejs/node/pull/33956 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: James M Snell <jasnell@gmail.com>

view details

Yash Ladha

commit sha 56124e92e8948d72d21e1aeeaab32b5cb403ed32

src: clang_format base_object PR-URL: https://github.com/nodejs/node/pull/33680 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: David Carlier <devnexen@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>

view details

patr0nus

commit sha cb2c8106a7aced1a226eba468e27ac75b2ee8bfc

src: tolerate EPERM returned from tcsetattr macOS app sandbox makes tcsetattr return EPERM. The CHECK_EQ(0, err) here would fail when a sandboxed Node.js process is exiting. This commit fixes this issue. * test: add test for running in macOS app sandbox Bare-bone command-line executables cannot run directly in the app sandbox. To test that Node.js is able to run in the sandbox (and to test the fix in 317621b4a12562eb75055a67bb2c5556f53fe017), this commit creates a typical Cocoa app bundle, puts the node executable in it and calles Apple's codesign command to enable sandbox. * test: use process.execPath to get path of testing node PR-URL: https://github.com/nodejs/node/pull/33944 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: James M Snell <jasnell@gmail.com>

view details

Ben Noordhuis

commit sha 40bc3095ab86d5311b211c2fd08048d9704b6ab2

lib,src: remove cpu profiler idle notifier I added it in commit 57231d5286 ("src: notify V8 profiler when we're idle") from October 2013 as a stop-gap measure to measure CPU time rather than wall clock time, otherwise processes that spend a lot of time sleeping in system calls give a false impression of being very busy. That fix is not without drawbacks because the idle flag is set before libuv makes I/O callbacks and cleared again after. I/O callbacks can result into calls into JS code and executing JS code is as non-idle as you can get. In commit 96ffcb9a21 ("src: reduce cpu profiler overhead") from January 2015, I made Node.js block off the SIGPROF signal that V8's CPU profiler uses before Node.js goes to sleep. The goal of that commit is to reduce the overhead from EINTR system call wakeups but it also has the pleasant side effect of fixing what the idle notifier tried to fix. This commit removes the idle notifier and turns the JS process object methods into no-ops. Fixes: https://github.com/nodejs/node/issues/19009 Refs: https://github.com/nodejs/node/pull/33138 PR-URL: https://github.com/nodejs/node/pull/34010 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net>

view details

Ruben Bridgewater

commit sha b831b081c499a614c1ee3f0272c9de1783395402

repl: always check for NODE_REPL_MODE environment variable This makes sure all REPL instances check for the NODE_REPL_MODE environment variable in case the `replMode` is not passed through as option. At the same time this simplifies the internal REPL code significantly. Signed-off-by: Ruben Bridgewater <ruben@bridgewater.de> PR-URL: https://github.com/nodejs/node/pull/33461 Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>

view details

Kirill Shatskiy

commit sha 82f13fa803ac0b51f42118c26cc947b3101b6078

fs: fix readdir failure when libuv returns UV_DIRENT_UNKNOWN Fixes: https://github.com/nodejs/node/issues/33348 PR-URL: https://github.com/nodejs/node/pull/33395 Refs: https://github.com/nodejs/node/issues/33348 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: James M Snell <jasnell@gmail.com>

view details

Anna Henningsen

commit sha 072feec1b0c8d381d1921bd196c9bffb51366585

Revert "repl: always check for NODE_REPL_MODE environment variable" This reverts commit b831b081c499a614c1ee3f0272c9de1783395402. This presumably unbreaks the ASAN github action build. Example failure: 2020-06-25T19:59:15.1448178Z === release test-repl-envvars === 2020-06-25T19:59:15.1448872Z Path: parallel/test-repl-envvars 2020-06-25T19:59:15.1449449Z --- stderr --- 2020-06-25T19:59:15.1449835Z assert.js:103 2020-06-25T19:59:15.1450194Z throw new AssertionError(obj); 2020-06-25T19:59:15.1450524Z ^ 2020-06-25T19:59:15.1450817Z 2020-06-25T19:59:15.1451431Z AssertionError [ERR_ASSERTION]: Expected values to be strictly deep-equal: 2020-06-25T19:59:15.1452000Z + actual - expected 2020-06-25T19:59:15.1452298Z 2020-06-25T19:59:15.1452634Z { 2020-06-25T19:59:15.1452978Z terminal: true, 2020-06-25T19:59:15.1453321Z + useColors: false 2020-06-25T19:59:15.1453861Z - useColors: true 2020-06-25T19:59:15.1454225Z } 2020-06-25T19:59:15.1454841Z at /home/runner/work/node/node/test/parallel/test-repl-envvars.js:55:12 2020-06-25T19:59:15.1455246Z at internal/repl.js:33:5 PR-URL: https://github.com/nodejs/node/pull/34058 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com>

view details

Anna Henningsen

commit sha e18afe45d2bb035434b8aac31375a9a15a605c9e

events: fix add-remove-add case in EventTarget Make sure that listeners are added properly if there has previously been one but currently are none for a given event type. PR-URL: https://github.com/nodejs/node/pull/34056 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com>

view details

himself65

commit sha 870f0fc5e8d18d6a8343aa32a9e7197065ee3e62

src: add errorProperties on process.report PR-URL: https://github.com/nodejs/node/pull/28426 Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com> Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Rich Trott <rtrott@gmail.com>

view details

Pranshu Srivastava

commit sha 074df495edf180dc58858208b40998a1e70db3c8

doc: specify maxHeaderCount alias for maxHeaderListPairs Fixes: https://github.com/nodejs/node/issues/32388 PR-URL: https://github.com/nodejs/node/pull/33519 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Zeyu Yang <himself65@outlook.com> Reviewed-By: James M Snell <jasnell@gmail.com>

view details

Anna Henningsen

commit sha db6e6e3b2609772d4f99b334184324456853fee4

test: add non-ASCII character embedding test Add a test that verifies that non-ASCII characters may be used in the source code provided to `LoadEnvironment()`. PR-URL: https://github.com/nodejs/node/pull/33972 Reviewed-By: James M Snell <jasnell@gmail.com>

view details

Alec Davidson

commit sha e68563e31c5289c39d4e564a3e5d27e5a713ee41

doc: add dynamic source code links Fixes: https://github.com/nodejs/node/pull/33977 PR-URL: https://github.com/nodejs/node/pull/33996 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>

view details

Anna Henningsen

commit sha f63436d190b60e12131036aa9d1888d9023e9127

vm: add run-after-evaluate microtask mode This allows timeouts to apply to e.g. `Promise`s and `async function`s from code running inside of `vm.Context`s, by giving the Context its own microtasks queue. Fixes: https://github.com/nodejs/node/issues/3020 PR-URL: https://github.com/nodejs/node/pull/34023 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Denys Otrishko <shishugi@gmail.com>

view details

push time in 2 months

issue commentlibuv/libuv

uv_cpu_info fails on Darwin ARM64

With V8 8.5, node's full test suite passes as well. From what I've seen, this was the only thing that didn't work.

Keno

comment created time in 2 months

pull request commentnodejs/node

Add initial support for Darwin arm64

The bump to V8 8.5 (https://github.com/nodejs/node/pull/34337) should fix the inspector and wasi issues.

evanlucas

comment created time in 2 months

Pull request review commentlibuv/libuv

darwin: use IOKit for uv_cpu_info

 int uv_uptime(double* uptime) {   return 0; } +static int uv__get_cpu_speed(uint64_t* speed) {+  /* IOKit */+  void (*pIOObjectRelease)(io_object_t);+  kern_return_t (*pIOMasterPort)(mach_port_t, mach_port_t*);+  CFMutableDictionaryRef (*pIOServiceMatching)(const char*);+  kern_return_t (*pIOServiceGetMatchingServices)(mach_port_t,+                                                 CFMutableDictionaryRef,+                                                 io_iterator_t*);+  io_service_t (*pIOIteratorNext)(io_iterator_t);+  CFTypeRef (*pIORegistryEntryCreateCFProperty)(io_registry_entry_t,+                                                CFStringRef,+                                                CFAllocatorRef,+                                                IOOptionBits);++  /* CoreFoundation */+  CFStringRef (*pCFStringCreateWithCString)(CFAllocatorRef,+                                            const char*,+                                            CFStringEncoding);+  CFStringEncoding (*pCFStringGetSystemEncoding)(void);+  UInt8 *(*pCFDataGetBytePtr)(CFDataRef);+  CFIndex (*pCFDataGetLength)(CFDataRef);+  void (*pCFDataGetBytes)(CFDataRef, CFRange, UInt8*);+  void (*pCFRelease)(CFTypeRef);++  void* core_foundation_handle;+  void* iokit_handle;+  int err;++  kern_return_t kr;+  mach_port_t mach_port;+  io_iterator_t it;+  io_object_t service;++  mach_port = 0;++  err = UV_ENOENT;+  core_foundation_handle = dlopen("/System/Library/Frameworks/"+                                  "CoreFoundation.framework/"+                                  "Versions/A/CoreFoundation",+                                  RTLD_LAZY | RTLD_LOCAL);+  iokit_handle = dlopen("/System/Library/Frameworks/IOKit.framework/"+                        "Versions/A/IOKit",+                        RTLD_LAZY | RTLD_LOCAL);++  if (core_foundation_handle == NULL || iokit_handle == NULL)+    goto out;++#define V(handle, symbol)                                                     \+  do {                                                                        \+    *(void **)(&p ## symbol) = dlsym((handle), #symbol);                      \+    if (p ## symbol == NULL)                                                  \+      goto out;                                                               \+  }                                                                           \+  while (0)+  V(iokit_handle, IOMasterPort);+  V(iokit_handle, IOServiceMatching);+  V(iokit_handle, IOServiceGetMatchingServices);+  V(iokit_handle, IOIteratorNext);+  V(iokit_handle, IOObjectRelease);+  V(iokit_handle, IORegistryEntryCreateCFProperty);+  V(core_foundation_handle, CFStringCreateWithCString);+  V(core_foundation_handle, CFStringGetSystemEncoding);+  V(core_foundation_handle, CFDataGetBytePtr);+  V(core_foundation_handle, CFDataGetLength);+  V(core_foundation_handle, CFDataGetBytes);+  V(core_foundation_handle, CFRelease);+#undef V++#define S(s) pCFStringCreateWithCString(NULL, (s), kCFStringEncodingUTF8)++  kr = pIOMasterPort(MACH_PORT_NULL, &mach_port);+  assert(kr == KERN_SUCCESS);+  CFMutableDictionaryRef classes_to_match+      = pIOServiceMatching("IOPlatformDevice");+  kr = pIOServiceGetMatchingServices(mach_port, classes_to_match, &it);+  assert(kr == KERN_SUCCESS);+  service = pIOIteratorNext(it);++  CFStringRef device_type_str = S("device_type");+  CFStringRef clock_frequency_str = S("clock-frequency");++  while (service != 0) {+    CFDataRef data;+    data = pIORegistryEntryCreateCFProperty(service,+                                            device_type_str,+                                            NULL,+                                            0);+    if (data) {+      const UInt8* raw = pCFDataGetBytePtr(data);+      if (strncmp((char*)raw, "cpu", 3) == 0+        || strncmp((char*)raw, "processor", 9) == 0) {

Fixed

evanlucas

comment created time in 2 months

push eventevanlucas/libuv

Evan Lucas

commit sha 8b86f825362e938a4e4b15adc4d98af3fcbeda35

fixup! syntax suggestion

view details

push time in 2 months

create barnchevanlucas/node

branch : arm64-v12.x

created branch time in 2 months

pull request commentnodejs/node

Add initial support for Darwin arm64

We found a way to get os.cpus() working properly on both ARM and intel Macs. Once https://github.com/libuv/libuv/pull/2914 lands, I'll get it pulled in. With some V8 patches, I was able to get wasi working properly. The inspector still has some issues that I am digging in to. Perhaps I should back out the libuv patch and we go ahead and land this and do it more incrementally? Thoughts?

evanlucas

comment created time in 2 months

issue commentevanlucas/fish-kubectl-completions

Warning when completing `kubectl get pods --all-`

@pklaus Thanks! I really appreciate that! This should be fixed in master. Thanks for the reporting the issue and please let me know if anything else is not working properly. :]

pklaus

comment created time in 2 months

issue closedevanlucas/fish-kubectl-completions

Warning when completing `kubectl get pods --all-`

Nice job on this completions file! 👍

I get a warning when I enter kubectl get pods --all- and then hit <kbd>Tab</kbd>. But after all it finally correctly expands to --all-namespaces, so when I hit <kbd>Enter</kbd> subsequently, I get the expected output, but the warning in between is a bit irritating:

me@host /# kubectl get pods --all-No resources found in default namespace.
string match: Unknown option “--all-”

/usr/share/fish/completions/kubectl.fish (line 1): 
in command substitution
        called on line 242 of file /usr/share/fish/completions/kubectl.fish
in function '__fish_kubectl_has_partial_resource_match'
in command substitution

(Type 'help string' for related documentation)
string match: Unknown option “--all-”

/usr/share/fish/completions/kubectl.fish (line 1): 
string match -r "(.*)/" $last
^
in command substitution
        called on line 255 of file /usr/share/fish/completions/kubectl.fish
in function '__fish_kubectl_print_matching_resources'
in command substitution

(Type 'help string' for related documentation)
namespaces 
NAMESPACE     NAME                                       READY   STATUS    RESTARTS   AGE
kube-system   calico-kube-controllers-76d4774d89-rlzdl   1/1     Running   0          84m
kube-system   calico-node-58t6n                          1/1     Running   0          84m
kube-system   coredns-66bff467f8-4crfp                   1/1     Running   0          10h
kube-system   coredns-66bff467f8-pn9j5                   1/1     Running   0          10h
kube-system   etcd-k8s-master                            1/1     Running   1          10h
kube-system   kube-apiserver-k8s-master                  1/1     Running   1          10h
kube-system   kube-controller-manager-k8s-master         1/1     Running   1          10h
kube-system   kube-proxy-4qszf                           1/1     Running   0          10h
kube-system   kube-scheduler-k8s-master                  1/1     Running   1          10h

closed time in 2 months

pklaus

push eventevanlucas/fish-kubectl-completions

Evan Lucas

commit sha bc7014cf80ede4e2de7795892afded5db947472b

main,completions: remove string warnings When string match is called on a string that starts with a hyphen, an annoying warning would be shown. Since fish uses getopt, we can pass the string arguments after `--` which will tell the options parser to stop looking for options. This prevents the warning from being presented. Fixes: https://github.com/evanlucas/fish-kubectl-completions/issues/26

view details

push time in 2 months

pull request commentlibuv/libuv

darwin: use IOKit for uv_cpu_info

Okay, I believe I've addressed your comments @bnoordhuis. Thanks for the feedback!

evanlucas

comment created time in 2 months

Pull request review commentlibuv/libuv

darwin: use IOKit for uv_cpu_info

 int uv_uptime(double* uptime) {   return 0; } +int uv__get_cpu_speed(uint64_t* speed) {+  // IOKit+  void (*pIOObjectRelease)(io_object_t);+  kern_return_t (*pIOMasterPort)(mach_port_t, mach_port_t*);+  CFMutableDictionaryRef (*pIOServiceMatching)(const char*);+  kern_return_t (*pIOServiceGetMatchingServices)(mach_port_t,+                                                 CFMutableDictionaryRef,+                                                 io_iterator_t*);+  io_service_t (*pIOIteratorNext)(io_iterator_t);+  CFTypeRef (*pIORegistryEntryCreateCFProperty)(io_registry_entry_t,+                                                CFStringRef,+                                                CFAllocatorRef,+                                                IOOptionBits);++  // CoreFoundation+  CFStringRef (*pCFStringCreateWithCString)(CFAllocatorRef,+                                            const char*,+                                            CFStringEncoding);+  CFStringEncoding (*pCFStringGetSystemEncoding)(void);+  UInt8 *(*pCFDataGetBytePtr)(CFDataRef);+  CFIndex (*pCFDataGetLength)(CFDataRef);+  void (*pCFDataGetBytes)(CFDataRef, CFRange, UInt8*);+  void (*pCFRelease)(CFTypeRef);++  void* core_foundation_handle;+  void* iokit_handle;+  int err;++  kern_return_t kr;+  mach_port_t mach_port = 0;++  err = UV_ENOENT;+  core_foundation_handle = dlopen("/System/Library/Frameworks/"+                                  "CoreFoundation.framework/"+                                  "Versions/A/CoreFoundation",+                                  RTLD_LAZY | RTLD_LOCAL);+  iokit_handle = dlopen("/System/Library/Frameworks/IOKit.framework/"+                        "Versions/A/IOKit",+                        RTLD_LAZY | RTLD_LOCAL);++  if (core_foundation_handle == NULL || iokit_handle == NULL) {+    goto out;+  }++#define V(handle, symbol)                                                     \+  do {                                                                        \+    *(void **)(&p ## symbol) = dlsym((handle), #symbol);                      \+    if (p ## symbol == NULL)                                                  \+      goto out;                                                               \+  }                                                                           \+  while (0)+  V(iokit_handle, IOMasterPort);+  V(iokit_handle, IOServiceMatching);+  V(iokit_handle, IOServiceGetMatchingServices);+  V(iokit_handle, IOIteratorNext);+  V(iokit_handle, IOObjectRelease);+  V(iokit_handle, IORegistryEntryCreateCFProperty);+  V(core_foundation_handle, CFStringCreateWithCString);+  V(core_foundation_handle, CFStringGetSystemEncoding);+  V(core_foundation_handle, CFDataGetBytePtr);+  V(core_foundation_handle, CFDataGetLength);+  V(core_foundation_handle, CFDataGetBytes);+  V(core_foundation_handle, CFRelease);+#undef V++#define S(s) pCFStringCreateWithCString(NULL, (s), kCFStringEncodingUTF8)+  io_iterator_t it;+  io_object_t service;++  kr = pIOMasterPort(MACH_PORT_NULL, &mach_port);+  // TODO(evanlucas) handle non KERN_SUCCESS return values+  CFMutableDictionaryRef classes_to_match+      = pIOServiceMatching("IOPlatformDevice");+  kr = pIOServiceGetMatchingServices(mach_port, classes_to_match, &it);+  // TODO(evanlucas) handle non KERN_SUCCESS return values+  service = pIOIteratorNext(it);++  CFStringRef device_type_str = S("device_type");+  CFStringRef clock_frequency_str = S("clock-frequency");++  do {+    if (service) {+      CFDataRef data = NULL;+      data = pIORegistryEntryCreateCFProperty(service,+                                              device_type_str,+                                              NULL,+                                              0);+      if (data) {+        const UInt8 *raw = pCFDataGetBytePtr(data);+        if (strncmp((char *)raw, "cpu", 3) == 0+          || strncmp((char *)raw, "processor", 9) == 0) {++          data = pIORegistryEntryCreateCFProperty(service,+                                                  clock_frequency_str,+                                                  NULL,+                                                  0);+          if (data) {+            uint32_t freq;+            CFIndex len = pCFDataGetLength(data);+            CFRange range;+            range.location = 0;+            range.length = len;++            pCFDataGetBytes(data, range, (UInt8 *)&freq);+            *speed = freq;+            pCFRelease(data);+            break;+          }+        }+        pCFRelease(data);+      }+    }+    service = pIOIteratorNext(it);+  } while (service != 0);++  pIOObjectRelease(it);++  err = 0;+out:+  if (core_foundation_handle != NULL)+    dlclose(core_foundation_handle);++  if (iokit_handle != NULL)+    dlclose(iokit_handle);++  mach_port_deallocate(mach_task_self(), mach_port);++  return err;+}+ int uv_cpu_info(uv_cpu_info_t** cpu_infos, int* count) {+  uint64_t cpuspeed = 0;+  if (uv__get_cpu_speed(&cpuspeed))+    return UV__ERR(errno);

thanks, updated

evanlucas

comment created time in 2 months

Pull request review commentlibuv/libuv

darwin: use IOKit for uv_cpu_info

 int uv_uptime(double* uptime) {   return 0; } +int uv__get_cpu_speed(uint64_t* speed) {+  // IOKit+  void (*pIOObjectRelease)(io_object_t);+  kern_return_t (*pIOMasterPort)(mach_port_t, mach_port_t*);+  CFMutableDictionaryRef (*pIOServiceMatching)(const char*);+  kern_return_t (*pIOServiceGetMatchingServices)(mach_port_t,+                                                 CFMutableDictionaryRef,+                                                 io_iterator_t*);+  io_service_t (*pIOIteratorNext)(io_iterator_t);+  CFTypeRef (*pIORegistryEntryCreateCFProperty)(io_registry_entry_t,+                                                CFStringRef,+                                                CFAllocatorRef,+                                                IOOptionBits);++  // CoreFoundation+  CFStringRef (*pCFStringCreateWithCString)(CFAllocatorRef,+                                            const char*,+                                            CFStringEncoding);+  CFStringEncoding (*pCFStringGetSystemEncoding)(void);+  UInt8 *(*pCFDataGetBytePtr)(CFDataRef);+  CFIndex (*pCFDataGetLength)(CFDataRef);+  void (*pCFDataGetBytes)(CFDataRef, CFRange, UInt8*);+  void (*pCFRelease)(CFTypeRef);++  void* core_foundation_handle;+  void* iokit_handle;+  int err;++  kern_return_t kr;+  mach_port_t mach_port = 0;++  err = UV_ENOENT;+  core_foundation_handle = dlopen("/System/Library/Frameworks/"+                                  "CoreFoundation.framework/"+                                  "Versions/A/CoreFoundation",+                                  RTLD_LAZY | RTLD_LOCAL);+  iokit_handle = dlopen("/System/Library/Frameworks/IOKit.framework/"+                        "Versions/A/IOKit",+                        RTLD_LAZY | RTLD_LOCAL);++  if (core_foundation_handle == NULL || iokit_handle == NULL) {+    goto out;+  }++#define V(handle, symbol)                                                     \+  do {                                                                        \+    *(void **)(&p ## symbol) = dlsym((handle), #symbol);                      \+    if (p ## symbol == NULL)                                                  \+      goto out;                                                               \+  }                                                                           \+  while (0)+  V(iokit_handle, IOMasterPort);+  V(iokit_handle, IOServiceMatching);+  V(iokit_handle, IOServiceGetMatchingServices);+  V(iokit_handle, IOIteratorNext);+  V(iokit_handle, IOObjectRelease);+  V(iokit_handle, IORegistryEntryCreateCFProperty);+  V(core_foundation_handle, CFStringCreateWithCString);+  V(core_foundation_handle, CFStringGetSystemEncoding);+  V(core_foundation_handle, CFDataGetBytePtr);+  V(core_foundation_handle, CFDataGetLength);+  V(core_foundation_handle, CFDataGetBytes);+  V(core_foundation_handle, CFRelease);+#undef V++#define S(s) pCFStringCreateWithCString(NULL, (s), kCFStringEncodingUTF8)+  io_iterator_t it;+  io_object_t service;++  kr = pIOMasterPort(MACH_PORT_NULL, &mach_port);+  // TODO(evanlucas) handle non KERN_SUCCESS return values

Okay, thanks for the info. I went with asserts right now. I'm not sure how these can fail tbh.

evanlucas

comment created time in 2 months

Pull request review commentlibuv/libuv

darwin: use IOKit for uv_cpu_info

 int uv_uptime(double* uptime) {   return 0; } +int uv__get_cpu_speed(uint64_t* speed) {+  // IOKit+  void (*pIOObjectRelease)(io_object_t);+  kern_return_t (*pIOMasterPort)(mach_port_t, mach_port_t*);+  CFMutableDictionaryRef (*pIOServiceMatching)(const char*);+  kern_return_t (*pIOServiceGetMatchingServices)(mach_port_t,+                                                 CFMutableDictionaryRef,+                                                 io_iterator_t*);+  io_service_t (*pIOIteratorNext)(io_iterator_t);+  CFTypeRef (*pIORegistryEntryCreateCFProperty)(io_registry_entry_t,+                                                CFStringRef,+                                                CFAllocatorRef,+                                                IOOptionBits);++  // CoreFoundation+  CFStringRef (*pCFStringCreateWithCString)(CFAllocatorRef,+                                            const char*,+                                            CFStringEncoding);+  CFStringEncoding (*pCFStringGetSystemEncoding)(void);+  UInt8 *(*pCFDataGetBytePtr)(CFDataRef);+  CFIndex (*pCFDataGetLength)(CFDataRef);+  void (*pCFDataGetBytes)(CFDataRef, CFRange, UInt8*);+  void (*pCFRelease)(CFTypeRef);++  void* core_foundation_handle;+  void* iokit_handle;+  int err;++  kern_return_t kr;+  mach_port_t mach_port = 0;++  err = UV_ENOENT;+  core_foundation_handle = dlopen("/System/Library/Frameworks/"+                                  "CoreFoundation.framework/"+                                  "Versions/A/CoreFoundation",+                                  RTLD_LAZY | RTLD_LOCAL);+  iokit_handle = dlopen("/System/Library/Frameworks/IOKit.framework/"+                        "Versions/A/IOKit",+                        RTLD_LAZY | RTLD_LOCAL);++  if (core_foundation_handle == NULL || iokit_handle == NULL) {+    goto out;+  }++#define V(handle, symbol)                                                     \+  do {                                                                        \+    *(void **)(&p ## symbol) = dlsym((handle), #symbol);                      \+    if (p ## symbol == NULL)                                                  \+      goto out;                                                               \+  }                                                                           \+  while (0)+  V(iokit_handle, IOMasterPort);+  V(iokit_handle, IOServiceMatching);+  V(iokit_handle, IOServiceGetMatchingServices);+  V(iokit_handle, IOIteratorNext);+  V(iokit_handle, IOObjectRelease);+  V(iokit_handle, IORegistryEntryCreateCFProperty);+  V(core_foundation_handle, CFStringCreateWithCString);+  V(core_foundation_handle, CFStringGetSystemEncoding);+  V(core_foundation_handle, CFDataGetBytePtr);+  V(core_foundation_handle, CFDataGetLength);+  V(core_foundation_handle, CFDataGetBytes);+  V(core_foundation_handle, CFRelease);+#undef V++#define S(s) pCFStringCreateWithCString(NULL, (s), kCFStringEncodingUTF8)+  io_iterator_t it;+  io_object_t service;++  kr = pIOMasterPort(MACH_PORT_NULL, &mach_port);+  // TODO(evanlucas) handle non KERN_SUCCESS return values+  CFMutableDictionaryRef classes_to_match+      = pIOServiceMatching("IOPlatformDevice");+  kr = pIOServiceGetMatchingServices(mach_port, classes_to_match, &it);+  // TODO(evanlucas) handle non KERN_SUCCESS return values+  service = pIOIteratorNext(it);++  CFStringRef device_type_str = S("device_type");+  CFStringRef clock_frequency_str = S("clock-frequency");++  do {+    if (service) {+      CFDataRef data = NULL;+      data = pIORegistryEntryCreateCFProperty(service,+                                              device_type_str,+                                              NULL,+                                              0);+      if (data) {+        const UInt8 *raw = pCFDataGetBytePtr(data);+        if (strncmp((char *)raw, "cpu", 3) == 0+          || strncmp((char *)raw, "processor", 9) == 0) {++          data = pIORegistryEntryCreateCFProperty(service,+                                                  clock_frequency_str,+                                                  NULL,+                                                  0);+          if (data) {+            uint32_t freq;+            CFIndex len = pCFDataGetLength(data);+            CFRange range;+            range.location = 0;+            range.length = len;++            pCFDataGetBytes(data, range, (UInt8 *)&freq);+            *speed = freq;+            pCFRelease(data);+            break;+          }+        }+        pCFRelease(data);+      }+    }+    service = pIOIteratorNext(it);+  } while (service != 0);

Yes this was much easier. Good call

evanlucas

comment created time in 2 months

push eventevanlucas/libuv

Evan Lucas

commit sha e3999e35e26a238afa20cbb92cc5642979d53953

!fixup

view details

push time in 2 months

Pull request review commentlibuv/libuv

darwin: use IOKit for uv_cpu_info

 int uv_uptime(double* uptime) {   return 0; } +int uv__get_cpu_speed(uint64_t* speed) {+  // IOKit+  void (*pIOObjectRelease)(io_object_t);+  kern_return_t (*pIOMasterPort)(mach_port_t, mach_port_t*);+  CFMutableDictionaryRef (*pIOServiceMatching)(const char*);+  kern_return_t (*pIOServiceGetMatchingServices)(mach_port_t,+                                                 CFMutableDictionaryRef,+                                                 io_iterator_t*);+  io_service_t (*pIOIteratorNext)(io_iterator_t);+  CFTypeRef (*pIORegistryEntryCreateCFProperty)(io_registry_entry_t,+                                                CFStringRef,+                                                CFAllocatorRef,+                                                IOOptionBits);++  // CoreFoundation+  CFStringRef (*pCFStringCreateWithCString)(CFAllocatorRef,+                                            const char*,+                                            CFStringEncoding);+  CFStringEncoding (*pCFStringGetSystemEncoding)(void);+  UInt8 *(*pCFDataGetBytePtr)(CFDataRef);+  CFIndex (*pCFDataGetLength)(CFDataRef);+  void (*pCFDataGetBytes)(CFDataRef, CFRange, UInt8*);+  void (*pCFRelease)(CFTypeRef);++  void* core_foundation_handle;+  void* iokit_handle;+  int err;++  kern_return_t kr;+  mach_port_t mach_port = 0;++  err = UV_ENOENT;+  core_foundation_handle = dlopen("/System/Library/Frameworks/"+                                  "CoreFoundation.framework/"+                                  "Versions/A/CoreFoundation",+                                  RTLD_LAZY | RTLD_LOCAL);+  iokit_handle = dlopen("/System/Library/Frameworks/IOKit.framework/"+                        "Versions/A/IOKit",+                        RTLD_LAZY | RTLD_LOCAL);++  if (core_foundation_handle == NULL || iokit_handle == NULL) {+    goto out;+  }++#define V(handle, symbol)                                                     \+  do {                                                                        \+    *(void **)(&p ## symbol) = dlsym((handle), #symbol);                      \+    if (p ## symbol == NULL)                                                  \+      goto out;                                                               \+  }                                                                           \+  while (0)+  V(iokit_handle, IOMasterPort);+  V(iokit_handle, IOServiceMatching);+  V(iokit_handle, IOServiceGetMatchingServices);+  V(iokit_handle, IOIteratorNext);+  V(iokit_handle, IOObjectRelease);+  V(iokit_handle, IORegistryEntryCreateCFProperty);+  V(core_foundation_handle, CFStringCreateWithCString);+  V(core_foundation_handle, CFStringGetSystemEncoding);+  V(core_foundation_handle, CFDataGetBytePtr);+  V(core_foundation_handle, CFDataGetLength);+  V(core_foundation_handle, CFDataGetBytes);+  V(core_foundation_handle, CFRelease);+#undef V++#define S(s) pCFStringCreateWithCString(NULL, (s), kCFStringEncodingUTF8)+  io_iterator_t it;+  io_object_t service;++  kr = pIOMasterPort(MACH_PORT_NULL, &mach_port);+  // TODO(evanlucas) handle non KERN_SUCCESS return values

Is it sufficient to assert(kr == KERN_SUCCESS)? Or is there a better way to handle that here?

evanlucas

comment created time in 2 months

issue commentlibuv/libuv

uv_cpu_info fails on Darwin ARM64

I opened https://github.com/libuv/libuv/pull/2914 in addition.

cc @bnoordhuis @Keno

Keno

comment created time in 2 months

PR opened libuv/libuv

darwin: use IOKit for uv_cpu_info

This switches uv_cpu_info from using sysctlbyname to using IOKit to get the speed of the processors. macOS on ARM does not currently have the hw.cpufrequency sysctl. We are able to reliable get the clock frequency on all architectures by using IOKit.

Fixes: https://github.com/libuv/libuv/issues/2911

+155 -5

0 comment

2 changed files

pr created time in 2 months

create barnchevanlucas/libuv

branch : iokitcpuspeed

created branch time in 2 months

pull request commentlibuv/libuv

darwin: work around missing hw.cpufrequency sysctl

Alright, cool. I got it working. Unfortunately, we can't assume the path of the cpus in the device tree. On my MacBook Pro, it's listed as device_type == 'processor'. It's device_type == 'cpu' on ARM. On intel, it's /cpu/CPU<n> and on arm it's /cpu/cpu<n>. I'm seeing I can work up a patch for libuv to use IOKit

bnoordhuis

comment created time in 2 months

push eventevanlucas/libuv

Ben Noordhuis

commit sha 10a9c25a125185968809d65de901d23183df8150

unix: use relaxed loads/stores for clock id This was part of commit c70dd705 ("unix: use relaxed loads/stores for feature checks") and was reviewed as such but I accidentally dropped it in the rebase before the final merge. Fixes: https://github.com/libuv/libuv/issues/2884 PR-URL: https://github.com/libuv/libuv/pull/2886 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Jameson Nash <vtjnash@gmail.com>

view details

push time in 2 months

pull request commentlibuv/libuv

darwin: work around missing hw.cpufrequency sysctl

Interesting... this is the test case I used. I am new to IOKit, so please bear with me if this is user error on my part:

int main(int argc, const char * argv[]) {
  // insert code here...
  printf("Hello, World!\n");
  
  kern_return_t kr;
  unsigned int size;
  unsigned int clock_frequency;
  io_registry_entry_t root;
  
  assert( (
  root = IORegistryEntryFromPath(MACH_PORT_NULL, "IODeviceTree:/")
  ));
  
  size = sizeof(clock_frequency);
  
  assert( KERN_SUCCESS == (
                           kr = IORegistryEntryGetProperty(root, "clock-frequency", (char *)&clock_frequency, &size)
                           ));
  
  printf("frequency = %d\n", clock_frequency);
  
  IOObjectRelease(root);
  return 0;
}

bnoordhuis

comment created time in 2 months

pull request commentlibuv/libuv

darwin: work around missing hw.cpufrequency sysctl

@Keno I just ran the same test on a MacBook Pro and clock-frequency seems to be the same value as hw.busfrequency.

On my Intel Mac: hw.cpufrequency is 2300000000 hw.busfrequency is 4000000000 hw.tbfrequency is 1000000000 clock-frequency returns 4000000000

On arm:

hw.cpufrequency is not present hw.busfrequency is not present hw.tbfrequency is 2400000000 clock-frequency returns 2400000000

so, not sure we could wholesale replace it at this point.

bnoordhuis

comment created time in 2 months

pull request commentlibuv/libuv

darwin: work around missing hw.cpufrequency sysctl

@Keno I believe hw.cpufrequency is missing on all ARM cpus on both iOS and macOS.

I tried your idea about using the device tree in IOKit and it returns the same thing that hw.tbfrequency returns.

bnoordhuis

comment created time in 2 months

push eventevanlucas/node

Evan Lucas

commit sha 3e476e2bebafdf4cc40dad42040827ecd7d342b9

build: add support for build on arm64 Ref: https://github.com/nodejs/TSC/issues/886 Ref: https://github.com/nodejs/node/issues/34043

view details

push time in 2 months

push eventevanlucas/node

Evan Lucas

commit sha 4169c57581ee52b2df86baa118a247ae6c2d854a

build: add support for build on arm64

view details

push time in 2 months

Pull request review commentnodejs/node

Add initial support for Darwin arm64

 int uv_cpu_info(uv_cpu_info_t** cpu_infos, int* count) {   }    size = sizeof(cpuspeed);+#if defined(__arm64__)+  cpuspeed = 0;

this is a hacky workaround for now. hw.cpufrequency is not present on ARM Macs as of right now. This was causing os.cpus() to return an empty array, which prevented the add-on tests from being built properly.

evanlucas

comment created time in 2 months

PR opened nodejs/node

Add initial support for Darwin arm64

build: add support for build on arm64


deps: add openssl support for arm64

This adds the required files for supporting openssl on arm64.

This uses the same configuration that can be found in https://github.com/openssl/openssl/pull/12369 to generate the required files.


deps: float patch to libuv for os.cpus()

Apple CPUs do not expose hw.cpufrequency which makes uv_cpu_info fail. This makes os.cpus() return an empty array, which breaks a lot of tests.


TODO

  • [ ] wasi support
  • [ ] inspector seems to segfault
  • [ ] figure out what path to go for uv_cpu_info()
  • [ ] Get rid of ld: warning: -no_pie ignored for arm64 message during build
Checklist

<!-- Remove items that do not apply. For completed items, change [ ] to [x]. -->

  • [ ] make -j4 test (UNIX), or vcbuild test (Windows) passes
  • [ ] tests and/or benchmarks are included
  • [ ] commit message follows commit guidelines

<!-- Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I have the right to submit it under the open source license indicated in the file; or

(b) The contribution is based upon previous work that, to the best of my knowledge, is covered under an appropriate open source license and I have the right under that license to submit that work with modifications, whether created in whole or in part by me, under the same open source license (unless I am permitted to submit under a different license), as indicated in the file; or

(c) The contribution was provided directly to me by some other person who certified (a), (b) or (c) and I have not modified it.

(d) I understand and agree that this project and the contribution are public and that a record of the contribution (including all personal information I submit with it, including my sign-off) is maintained indefinitely and may be redistributed consistent with this project or the open source license(s) involved. -->

+85220 -1

0 comment

64 changed files

pr created time in 2 months

push eventevanlucas/node

Evan Lucas

commit sha 90319dfb41228efde45244b2c032d80e7b30e7f8

deps: float patch to libuv for os.cpus() Apple CPUs do not expose hw.cpufrequency which makes uv_cpu_info fail. This makes os.cpus() return an empty array, which breaks a lot of tests.

view details

Evan Lucas

commit sha 5d522308ed3a7de216da826a74f5ffbbece88a26

deps: add openssl support for arm64 This adds the required files for supporting openssl on arm64.

view details

Evan Lucas

commit sha 790e778b423a28ecd8a2b20dc4c313fcc8ac701e

build: add support for build on arm64

view details

push time in 2 months

push eventevanlucas/node

Evan Lucas

commit sha f995f836b9e0dce57f7f76ac5be20a5355f0a522

wip openssl

view details

Evan Lucas

commit sha 3e0ec7cf381a76085a9b60396b6692914b412782

fix indentation

view details

Evan Lucas

commit sha 5f5762b4180dd1bc0df61df7ba367d85c0cd5bd9

Revert "wip more tests for asm" This reverts commit 2efe06065d665fecda16f5b3c8de642dbd8dddd3.

view details

push time in 2 months

push eventevanlucas/node

Evan Lucas

commit sha 2efe06065d665fecda16f5b3c8de642dbd8dddd3

wip more tests for asm

view details

push time in 2 months

create barnchevanlucas/node

branch : arm64

created branch time in 3 months

push eventevanlucas/libuv

cjihrig

commit sha 60823103332df5732dcbe92535ceb3aa916084c9

Add SHA to ChangeLog

view details

cjihrig

commit sha c42d31ba53dba89b27104a9cdbe86d5894eb6c9e

Now working on version 1.11.1

view details

Santiago Gimeno

commit sha c355c8b1a64f155a4bcfed748b45e6f43cb4dc23

test: fix tests on OpenBSD It fixes `process_title`, `poll_bad_fdtype` and `poll_nested_kqueue` tests. Fixes: https://github.com/libuv/libuv/issues/1216 PR-URL: https://github.com/libuv/libuv/pull/1218 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>

view details

Santiago Gimeno

commit sha 309d603382159eacdf52cbf0fa936deb60552d32

test: fix -Wformat warning Substitute the `z` length modifier with `l` to avoid warnings, as the `z` modifier is defined in the C99 standard. PR-URL: https://github.com/libuv/libuv/pull/1220 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>

view details

Vladimir Matveev

commit sha 02dcde08386441d5a89dbcb602a1ad367a506cc0

win,fs: avoid double freeing uv_fs_event_t.dirw Set `dirw` to `pathw` after `uv_fs_event_start` is known to be completed successfully. Fixes: https://github.com/libuv/libuv/issues/1221 PR-URL: https://github.com/libuv/libuv/pull/1222 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>

view details

Fedor Indutny

commit sha 52ae826492f50f151138ed115faa5e0ac8c803ce

unix: remove unused code in `uv__io_start` The code path in `uv__io_start` cannot be reached because `pevents` is always non-zero at that point. PR-URL: https://github.com/libuv/libuv/pull/1227 Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com> Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>

view details

Santiago Gimeno

commit sha 45616f542da523b3d87a8d379bb116ffc3a97845

signal: add uv_signal_start_oneshot method It behaves as `uv_signal_start` but it resets the signal handler as soon as the signal is received. Fixes: https://github.com/libuv/libuv/issues/1104 PR-URL: https://github.com/libuv/libuv/pull/1106 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com> Reviewed-By: Bartosz Sosnowski <bartosz@janeasystems.com>

view details

Brad King

commit sha 2ba39be67e948f8b99af7cf408828f1507371fd5

unix: factor out reusable POSIX hrtime impl Create a dedicated source file to share among platforms on which we implement hrtime using POSIX `clock_gettime`. De-duplicate our existing copies of this implementation on such platforms. PR-URL: https://github.com/libuv/libuv/pull/1239 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>

view details

cjihrig

commit sha ee02f60c90bbf01e2107b3800b3dfbbe090484ab

unix,win: add uv_os_{get,set,unset}env() These functions are used to create, retrieve, update, and delete environment variables. Fixes: https://github.com/libuv/libuv/issues/1198 PR-URL: https://github.com/libuv/libuv/pull/1234 Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com> Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>

view details

cjihrig

commit sha 53995a3825d23eacd01e2bcfa35642c4a188d32b

win: add uv__convert_utf8_to_utf16() This is an internal helper function for converting UTF-8 strings to UTF-16 strings. It performs the inverse operation of the existing uv__convert_utf16_to_utf8() function. Fixes: https://github.com/libuv/libuv/issues/1198 PR-URL: https://github.com/libuv/libuv/pull/1234 Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com> Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>

view details

cjihrig

commit sha c4bd9f48e0b3c1b58606a6c53613165fcd5a4f74

docs: improve UV_ENOBUFS scenario documentation This commit adds additional documentation to the UV_ENOBUFS scenario for several methods. Fixes: https://github.com/libuv/libuv/issues/1179 PR-URL: https://github.com/libuv/libuv/pull/1235 Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>

view details

jBarz

commit sha 399b08aa9f02362a14f8d2975ac7f70b91bb0963

unix: return UV_EINVAL for NULL env name "setenv" on z/OS returns successfully on a NULL ptr argument for name. Check for this on all unixes. PR-URL: https://github.com/libuv/libuv/pull/1243 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com> Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>

view details

Brad King

commit sha 80c4cf6b6238eadab1466eb69bce9f01a51ad98c

unix: filter getifaddrs results consistently We loop over getifaddrs results multiple times. Fix the filter conditions to be consistent for all passes. PR-URL: https://github.com/libuv/libuv/pull/1240 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com> Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>

view details

Brad King

commit sha 0f84c305e0bf54d3b5b5e324f0e117625016adb6

unix: factor out getifaddrs result filter On platforms using getifaddrs we iterate over the interfaces two or three times. First we count them, then we enumerate them, and then we fill in physical addresses. Each loop needs to do the same filtering, so factor out the exclusion test into a helper function for each platform. PR-URL: https://github.com/libuv/libuv/pull/1240 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com> Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>

view details

Brad King

commit sha f277cb6f920f0abbb2fb314861b3d79ef1de02fd

unix: factor out reusable BSD ifaddrs impl Create a dedicated source file to share among platforms on which we find ifaddrs using the BSD getifaddrs API. De-duplicate our existing copies of this implementation on such platforms. PR-URL: https://github.com/libuv/libuv/pull/1240 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com> Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>

view details

jBarz

commit sha d7cf771072b3153e7641a9cef61160974cee8a39

unix: use union to follow strict aliasing rules With strict-aliasing rules, a char* type can be cast to any other pointer type. However, that does not necessarily mean char array type. So instead of de-referencing a char array, use a union with an additional char member for aliasing. PR-URL: https://github.com/libuv/libuv/pull/1211 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>

view details

Ben Noordhuis

commit sha 5fc8aecd81dbb31e76bd80834bb73b0e9b1e5c4c

unix: simplify async watcher dispatch logic Remove the unused `nevents` parameter from `uv__async_event()` and remove the indirection of having a separate `uv__async` type. There is only one instance per event loop these days. This incidentally removes the `assert(n == sizeof(val))` in a Linux-specific code path that some users seem to hit from time to time. The cause is not well-understood and I've never been able to reproduce it myself. Presumably libuv gets an EAGAIN when trying to read from the eventfd but when and why that happens is unclear. Since the byte count is unused, removing the assert seems safe. Worst case, libuv sometimes iterates over the async watcher list when it doesn't have to. Fixes: https://github.com/libuv/libuv/issues/1171 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com> Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com> Supersedes: https://github.com/libuv/libuv/pull/1214

view details

Ben Noordhuis

commit sha 7b9f379923fc97817c873e25b34d46bb68897f8e

samples: update timer callback prototype The socks5 proxy sample application was still using the old prototype where timer callbacks take a second 'status' parameter but that was removed in commit db2a9072 ("unix, windows: removed unused status parameter") from March 2014. PR-URL: https://github.com/libuv/libuv/pull/1250 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>

view details

Jason Madden

commit sha fd7ce57f2b14651482c227898f6999664db937de

unix: make loops and watchers usable after fork() Added the uv_loop_fork() API that must be called in a child process to continue using an existing loop. Internally this calls a uv__io_fork function for each supported platform, similar to the way uv__platform_loop_init works. After this call, existing and new IO, async and signal watchers will contiue working as before on all platforms, as will the threadpool (although any threads it was using are of course gone). On Linux and BSDs that use kqueue, existing and new fsevent watchers will also continue to work as expected. On OS X, though, directory fsevents will not be able to use the optimized CoreFoundation path if they had already been used in the parent process, instead falling back to the kqueue path used on other BSDs. Existing fsevent watchers will not function on AIX or SunOS. This could be relatively easily fixed by someone with AIX knowledge in the future, but SunOS will require some additional work to keep track if the watchers. A new test file, test/test-fork.c, was added to contain fork-related tests to verify functionality in the child process. PR-URL: https://github.com/libuv/libuv/pull/846 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>

view details

cjihrig

commit sha e7a7ffb1524326d6a431f219b07278ceaebac915

win: free uv__loops once empty This commit moves the allocation of uv__loops into uv__loops_add() and frees all of the memory associated with uv__loops in uv__loops_remove() once the loop count reaches zero. Fixes: https://github.com/libuv/libuv/issues/1125 Fixes: https://github.com/libuv/libuv/issues/1252 PR-URL: https://github.com/libuv/libuv/pull/1262 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>

view details

push time in 3 months

push eventevanlucas/node

Milad Farazmand

commit sha de501d281cc96582f82dc56364a10019bb62c912

deps: V8: cherry-pick b5939c758924 Original commit message: Revert "s390: [arm] Add missing RELATIVE_CODE_TARGET iteration" This reverts commit 9d3cca1cd3ad7c6653cab1cdf111d356f33f77cd. Reason for revert: Only the test needs to be skipped on s390. Refer to this: https://crrev.com/c/1981505 Original change's description: > s390: [arm] Add missing RELATIVE_CODE_TARGET iteration > > Port b766299d2c382cc9817e73225bbebe29ce62b9d1 > Port 9592b043eed86db91a441d4bf78b7f0c8c2ce4dd > Port d915b8d668615a7d6d75cf7a61d3ca5a3d139799 > > Original Commit Message: > > Code object iteration was missing logic for RELATIVE_CODE_TARGET > reloc entries. Garbage collection could thus miss objects that were > referenced only as targets of pc-relative calls or jumps. > > RELATIVE_CODE_TARGETs are only used on arm, mips, and s390 and only > at mksnapshot-time. > > This exposed another issue in that the interpreter entry trampoline > copy we generate for profiling *did* contain relative calls in > runtime-accessible code. This is a problem, since code space on arm is, > by default, too large to be fully addressable through pc-relative > calls. This CL thus also disables the related > FLAG_interpreted_frames_native_stack feature on arm. > > objects. > > R=​jgruber@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com > BUG= > LOG=N > > Change-Id: Ifbcaed98d90a2730f0d6a8a7d32c621dab1ff5b2 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2087693 > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Junliang Yan <jyan@ca.ibm.com> > Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> > Cr-Commit-Position: refs/heads/master@{#66644} TBR=michael_dawson@ca.ibm.com,mlippautz@chromium.org,jyan@ca.ibm.com,jgruber@chromium.org,joransiu@ca.ibm.com,miladfar@ca.ibm.com # Not skipping CQ checks because original CL landed > 1 day ago. Change-Id: Id645a9def23d278235ff77f25249d2187e8105ca Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2196521 Reviewed-by: Milad Farazmand <miladfar@ca.ibm.com> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#67751} Refs: https://github.com/v8/v8/commit/b5939c758924f56824ca137e3bdc47bb373443e9 PR-URL: https://github.com/nodejs/node/pull/33702 Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>

view details

Milad Farazmand

commit sha 651088c3e6b6399a3e656e397c3845b970ad7903

deps: V8: cherry-pick 4e1bf2bc92bd Original commit message: Skip InterpreterWithNativeStack on jitless mode As discussed under https://crrev.com/c/1981505, Test requires an executable CODE_SPACE and is thus incompatible with jitless mode. Change-Id: Icddad50a3484f0cfc5fb4abd7175058d50bc06d3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2193911 Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#67726} Refs: https://github.com/v8/v8/commit/4e1bf2bc92bd8560353ba2af2f171045bbecb7c7 PR-URL: https://github.com/nodejs/node/pull/33702 Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>

view details

Brian White

commit sha 4ba90809edec189a2c4662258ef6cadb9d9620b4

events: improve arrayClone performance PR-URL: https://github.com/nodejs/node/pull/33774 Reviewed-By: Robert Nagy <ronagy@icloud.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Zeyu Yang <himself65@outlook.com>

view details

cjihrig

commit sha 2e49010bc8f2d05f6b0eca66bd9fca08cb5745a5

doc: make events Extends usage consistent The docs use `* Extends: {type}` to define inheritance. This commit updates the events documentation to be consistent. PR-URL: https://github.com/nodejs/node/pull/33777 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com>

view details

cjihrig

commit sha 85dbd17bde1049022854581d09dc7d48fc6e6d24

doc: make perf_hooks Extends usage consistent The docs use `* Extends: {type}` to define inheritance. This commit updates the perf_hooks documentation to be consistent. PR-URL: https://github.com/nodejs/node/pull/33777 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com>

view details

cjihrig

commit sha 862d005e603e8897336ee021094106c402603c2d

doc: make globals Extends usage consistent The docs use `* Extends: {type}` to define inheritance. This commit updates the globals documentation to be consistent. PR-URL: https://github.com/nodejs/node/pull/33777 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com>

view details

cjihrig

commit sha fd7e40854c447234a05dc3ef0ee717cad138c681

doc: update V8 inspector example This commit updates the V8 inspector example to reflect what is currently printed to the console. PR-URL: https://github.com/nodejs/node/pull/33758 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Eugene Ostroukhov <eostroukhov@google.com> Reviewed-By: Matheus Marchini <mat@mmarchini.me> Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com> Reviewed-By: David Carlier <devnexen@gmail.com>

view details

cjihrig

commit sha 921f75534cdc2ad6fdc61c573d18f61ca14b35da

inspector: drop 'chrome-' from inspector url It has been reported that the https://github.com/cjihrig/node-v8-inspector V8 inspector extension can no longer connect DevTools (despite no code changes to the extension since Feb. 2017). Upon investigation, Chrome dropped support for the chrome-devtools: scheme recently. I've confirmed that dropping 'chrome-' from the URL here allows the debugger to function properly with modern Chrome. Refs: https://chromium.googlesource.com/chromium/src/+/6700d12448f76712c62a6d2372a95b97a26d4779 PR-URL: https://github.com/nodejs/node/pull/33758 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Eugene Ostroukhov <eostroukhov@google.com> Reviewed-By: Matheus Marchini <mat@mmarchini.me> Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com> Reviewed-By: David Carlier <devnexen@gmail.com>

view details

legendecas

commit sha 5590ee0d99a867f115a8eeced15a63be6bfaf298

test: fix invalid regular expressions in case test-trace-exit PR-URL: https://github.com/nodejs/node/pull/33769 Fixes: https://github.com/nodejs/node/issues/30516 Reviewed-By: Denys Otrishko <shishugi@gmail.com> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com>

view details

Dennis Ameling

commit sha 35871c3e404d4378802efa9cbb41494a5835aa89

win,msi: add arm64 config for windows msi Adds configuration to allow building an MSI installer for Windows ARM64. MSI can be created by running `vcbuild.bat release msi arm64` Refs: https://github.com/nodejs/node/issues/25998 Refs: https://github.com/nodejs/node/issues/32582 PR-URL: https://github.com/nodejs/node/pull/33689 Reviewed-By: João Reis <reis@janeasystems.com> Reviewed-By: Bartosz Sosnowski <bartosz@janeasystems.com>

view details

Anna Henningsen

commit sha 4678e44bb28c00dc22771a0ef2684a4d46715ab0

src: perform bounds checking on error source line Fixes: https://github.com/nodejs/node/issues/33578 PR-URL: https://github.com/nodejs/node/pull/33645 Reviewed-By: Rich Trott <rtrott@gmail.com>

view details

unknown

commit sha 278aae28e14da89e6bd6d91c07ded2dc5f8fe8c3

zlib: add `maxOutputLength` option Fixes: https://github.com/nodejs/node/issues/27253 PR-URL: https://github.com/nodejs/node/pull/33516 Reviewed-By: Anna Henningsen <anna@addaleax.net>

view details

Michael Dawson

commit sha 502f53ff491c33b320d1f6fd70bd2da05874f1f1

test: temporarily exclude test on arm Refs: https://github.com/nodejs/node/issues/33796 Signed-off-by: Michael Dawson <michael_dawson@ca.ibm.com> PR-URL: https://github.com/nodejs/node/pull/33814 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com>

view details

Michael Dawson

commit sha 362e4a1aec46f386b7bc5a1b3493c690976d9105

n-api: ensure scope present for finalization Refs: https://github.com/nodejs/node-addon-api/issues/722 Ensure a scope is on stack during finalization as finalization functions can create JS Objects Signed-off-by: Michael Dawson <michael_dawson@ca.ibm.com> PR-URL: https://github.com/nodejs/node/pull/33508 Reviewed-By: Gabriel Schulhof <gabriel.schulhof@intel.com> Reviewed-By: James M Snell <jasnell@gmail.com>

view details

Rich Trott

commit sha 0f9d474c524e5132423a96db05d2b2541fcda121

doc: standardize constructor doc header layout Our docs use a mixture of _Constructor: `new Fhqwhgads()`_ in some headers and only _`new Fhqwhgads()`_ in other headers. The latter is about three times as common, so let's standardize on that. PR-URL: https://github.com/nodejs/node/pull/33781 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Evan Lucas <evanlucas@me.com> Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>

view details

Derek Lewis

commit sha f4e805c86082fcf8157c745e71977cc343dd1bc4

doc: fix misc. mislabeled code block info strings Prior to this commit, a handful of misc. code blocks were in need of fixup. Corrections are according to predetermined conventions. Closes: https://github.com/nodejs/node/issues/32938 PR-URL: https://github.com/nodejs/node/pull/33548 Fixes: https://github.com/nodejs/node/issues/32938 Reviewed-By: Rich Trott <rtrott@gmail.com>

view details

Daniel Bevenius

commit sha cf32b4c74d84774e5465f6307acbbdb85846a634

doc: use single quotes in --tls-cipher-list Currently, running the example code will produce the following error in bash: $ node --tls-cipher-list="ECDHE-RSA-AES128-GCM-SHA256:!RC4" server.js bash: !RC4: event not found This commit changes the two examples to use single quotes to avoid the shell from trying to interpret '!' as the history command. PR-URL: https://github.com/nodejs/node/pull/33709 Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com>

view details

Andrey Pechkurov

commit sha db3d6b38b6a20f0caf432077a585bf51af5d06f4

doc: add snippet for AsyncResource and EE integration PR-URL: https://github.com/nodejs/node/pull/33751 Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By: Robert Nagy <ronagy@icloud.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Denys Otrishko <shishugi@gmail.com> Reviewed-By: Gerhard Stöbich <deb2001-github@yahoo.de> Reviewed-By: Stephen Belanger <admin@stephenbelanger.com> Reviewed-By: Vladimir de Turckheim <vlad2t@hotmail.com>

view details

Gus Caplan

commit sha 4faec56b8aaf4750167c8883ead90244c1e17341

vm: allow proxy callbacks to throw Fixes: https://github.com/nodejs/node/issues/33806 PR-URL: https://github.com/nodejs/node/pull/33808 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Gerhard Stöbich <deb2001-github@yahoo.de> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>

view details

Anna Henningsen

commit sha 58bae4d0ef4802e472204d5e18d7dbb7296878d1

util: restrict custom inspect function + vm.Context interaction When `util.inspect()` is called on an object with a custom inspect function, and that object is from a different `vm.Context`, that function will not receive any arguments that access context-specific data anymore. PR-URL: https://github.com/nodejs/node/pull/33690 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>

view details

push time in 3 months

delete branch evanlucas/node

delete branch : node-consistency

delete time in 3 months

push eventevanlucas/node

Milad Farazmand

commit sha de501d281cc96582f82dc56364a10019bb62c912

deps: V8: cherry-pick b5939c758924 Original commit message: Revert "s390: [arm] Add missing RELATIVE_CODE_TARGET iteration" This reverts commit 9d3cca1cd3ad7c6653cab1cdf111d356f33f77cd. Reason for revert: Only the test needs to be skipped on s390. Refer to this: https://crrev.com/c/1981505 Original change's description: > s390: [arm] Add missing RELATIVE_CODE_TARGET iteration > > Port b766299d2c382cc9817e73225bbebe29ce62b9d1 > Port 9592b043eed86db91a441d4bf78b7f0c8c2ce4dd > Port d915b8d668615a7d6d75cf7a61d3ca5a3d139799 > > Original Commit Message: > > Code object iteration was missing logic for RELATIVE_CODE_TARGET > reloc entries. Garbage collection could thus miss objects that were > referenced only as targets of pc-relative calls or jumps. > > RELATIVE_CODE_TARGETs are only used on arm, mips, and s390 and only > at mksnapshot-time. > > This exposed another issue in that the interpreter entry trampoline > copy we generate for profiling *did* contain relative calls in > runtime-accessible code. This is a problem, since code space on arm is, > by default, too large to be fully addressable through pc-relative > calls. This CL thus also disables the related > FLAG_interpreted_frames_native_stack feature on arm. > > objects. > > R=​jgruber@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com > BUG= > LOG=N > > Change-Id: Ifbcaed98d90a2730f0d6a8a7d32c621dab1ff5b2 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2087693 > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Junliang Yan <jyan@ca.ibm.com> > Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> > Cr-Commit-Position: refs/heads/master@{#66644} TBR=michael_dawson@ca.ibm.com,mlippautz@chromium.org,jyan@ca.ibm.com,jgruber@chromium.org,joransiu@ca.ibm.com,miladfar@ca.ibm.com # Not skipping CQ checks because original CL landed > 1 day ago. Change-Id: Id645a9def23d278235ff77f25249d2187e8105ca Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2196521 Reviewed-by: Milad Farazmand <miladfar@ca.ibm.com> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#67751} Refs: https://github.com/v8/v8/commit/b5939c758924f56824ca137e3bdc47bb373443e9 PR-URL: https://github.com/nodejs/node/pull/33702 Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>

view details

Milad Farazmand

commit sha 651088c3e6b6399a3e656e397c3845b970ad7903

deps: V8: cherry-pick 4e1bf2bc92bd Original commit message: Skip InterpreterWithNativeStack on jitless mode As discussed under https://crrev.com/c/1981505, Test requires an executable CODE_SPACE and is thus incompatible with jitless mode. Change-Id: Icddad50a3484f0cfc5fb4abd7175058d50bc06d3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2193911 Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#67726} Refs: https://github.com/v8/v8/commit/4e1bf2bc92bd8560353ba2af2f171045bbecb7c7 PR-URL: https://github.com/nodejs/node/pull/33702 Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>

view details

Brian White

commit sha 4ba90809edec189a2c4662258ef6cadb9d9620b4

events: improve arrayClone performance PR-URL: https://github.com/nodejs/node/pull/33774 Reviewed-By: Robert Nagy <ronagy@icloud.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Zeyu Yang <himself65@outlook.com>

view details

cjihrig

commit sha 2e49010bc8f2d05f6b0eca66bd9fca08cb5745a5

doc: make events Extends usage consistent The docs use `* Extends: {type}` to define inheritance. This commit updates the events documentation to be consistent. PR-URL: https://github.com/nodejs/node/pull/33777 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com>

view details

cjihrig

commit sha 85dbd17bde1049022854581d09dc7d48fc6e6d24

doc: make perf_hooks Extends usage consistent The docs use `* Extends: {type}` to define inheritance. This commit updates the perf_hooks documentation to be consistent. PR-URL: https://github.com/nodejs/node/pull/33777 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com>

view details

cjihrig

commit sha 862d005e603e8897336ee021094106c402603c2d

doc: make globals Extends usage consistent The docs use `* Extends: {type}` to define inheritance. This commit updates the globals documentation to be consistent. PR-URL: https://github.com/nodejs/node/pull/33777 Reviewed-By: Rich Trott <rtrott@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com>

view details

cjihrig

commit sha fd7e40854c447234a05dc3ef0ee717cad138c681

doc: update V8 inspector example This commit updates the V8 inspector example to reflect what is currently printed to the console. PR-URL: https://github.com/nodejs/node/pull/33758 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Eugene Ostroukhov <eostroukhov@google.com> Reviewed-By: Matheus Marchini <mat@mmarchini.me> Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com> Reviewed-By: David Carlier <devnexen@gmail.com>

view details

cjihrig

commit sha 921f75534cdc2ad6fdc61c573d18f61ca14b35da

inspector: drop 'chrome-' from inspector url It has been reported that the https://github.com/cjihrig/node-v8-inspector V8 inspector extension can no longer connect DevTools (despite no code changes to the extension since Feb. 2017). Upon investigation, Chrome dropped support for the chrome-devtools: scheme recently. I've confirmed that dropping 'chrome-' from the URL here allows the debugger to function properly with modern Chrome. Refs: https://chromium.googlesource.com/chromium/src/+/6700d12448f76712c62a6d2372a95b97a26d4779 PR-URL: https://github.com/nodejs/node/pull/33758 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Eugene Ostroukhov <eostroukhov@google.com> Reviewed-By: Matheus Marchini <mat@mmarchini.me> Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com> Reviewed-By: David Carlier <devnexen@gmail.com>

view details

legendecas

commit sha 5590ee0d99a867f115a8eeced15a63be6bfaf298

test: fix invalid regular expressions in case test-trace-exit PR-URL: https://github.com/nodejs/node/pull/33769 Fixes: https://github.com/nodejs/node/issues/30516 Reviewed-By: Denys Otrishko <shishugi@gmail.com> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com>

view details

Dennis Ameling

commit sha 35871c3e404d4378802efa9cbb41494a5835aa89

win,msi: add arm64 config for windows msi Adds configuration to allow building an MSI installer for Windows ARM64. MSI can be created by running `vcbuild.bat release msi arm64` Refs: https://github.com/nodejs/node/issues/25998 Refs: https://github.com/nodejs/node/issues/32582 PR-URL: https://github.com/nodejs/node/pull/33689 Reviewed-By: João Reis <reis@janeasystems.com> Reviewed-By: Bartosz Sosnowski <bartosz@janeasystems.com>

view details

Anna Henningsen

commit sha 4678e44bb28c00dc22771a0ef2684a4d46715ab0

src: perform bounds checking on error source line Fixes: https://github.com/nodejs/node/issues/33578 PR-URL: https://github.com/nodejs/node/pull/33645 Reviewed-By: Rich Trott <rtrott@gmail.com>

view details

unknown

commit sha 278aae28e14da89e6bd6d91c07ded2dc5f8fe8c3

zlib: add `maxOutputLength` option Fixes: https://github.com/nodejs/node/issues/27253 PR-URL: https://github.com/nodejs/node/pull/33516 Reviewed-By: Anna Henningsen <anna@addaleax.net>

view details

Michael Dawson

commit sha 502f53ff491c33b320d1f6fd70bd2da05874f1f1

test: temporarily exclude test on arm Refs: https://github.com/nodejs/node/issues/33796 Signed-off-by: Michael Dawson <michael_dawson@ca.ibm.com> PR-URL: https://github.com/nodejs/node/pull/33814 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com>

view details

Michael Dawson

commit sha 362e4a1aec46f386b7bc5a1b3493c690976d9105

n-api: ensure scope present for finalization Refs: https://github.com/nodejs/node-addon-api/issues/722 Ensure a scope is on stack during finalization as finalization functions can create JS Objects Signed-off-by: Michael Dawson <michael_dawson@ca.ibm.com> PR-URL: https://github.com/nodejs/node/pull/33508 Reviewed-By: Gabriel Schulhof <gabriel.schulhof@intel.com> Reviewed-By: James M Snell <jasnell@gmail.com>

view details

Rich Trott

commit sha 0f9d474c524e5132423a96db05d2b2541fcda121

doc: standardize constructor doc header layout Our docs use a mixture of _Constructor: `new Fhqwhgads()`_ in some headers and only _`new Fhqwhgads()`_ in other headers. The latter is about three times as common, so let's standardize on that. PR-URL: https://github.com/nodejs/node/pull/33781 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Evan Lucas <evanlucas@me.com> Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>

view details

Derek Lewis

commit sha f4e805c86082fcf8157c745e71977cc343dd1bc4

doc: fix misc. mislabeled code block info strings Prior to this commit, a handful of misc. code blocks were in need of fixup. Corrections are according to predetermined conventions. Closes: https://github.com/nodejs/node/issues/32938 PR-URL: https://github.com/nodejs/node/pull/33548 Fixes: https://github.com/nodejs/node/issues/32938 Reviewed-By: Rich Trott <rtrott@gmail.com>

view details

Daniel Bevenius

commit sha cf32b4c74d84774e5465f6307acbbdb85846a634

doc: use single quotes in --tls-cipher-list Currently, running the example code will produce the following error in bash: $ node --tls-cipher-list="ECDHE-RSA-AES128-GCM-SHA256:!RC4" server.js bash: !RC4: event not found This commit changes the two examples to use single quotes to avoid the shell from trying to interpret '!' as the history command. PR-URL: https://github.com/nodejs/node/pull/33709 Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com>

view details

Andrey Pechkurov

commit sha db3d6b38b6a20f0caf432077a585bf51af5d06f4

doc: add snippet for AsyncResource and EE integration PR-URL: https://github.com/nodejs/node/pull/33751 Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By: Robert Nagy <ronagy@icloud.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Denys Otrishko <shishugi@gmail.com> Reviewed-By: Gerhard Stöbich <deb2001-github@yahoo.de> Reviewed-By: Stephen Belanger <admin@stephenbelanger.com> Reviewed-By: Vladimir de Turckheim <vlad2t@hotmail.com>

view details

Gus Caplan

commit sha 4faec56b8aaf4750167c8883ead90244c1e17341

vm: allow proxy callbacks to throw Fixes: https://github.com/nodejs/node/issues/33806 PR-URL: https://github.com/nodejs/node/pull/33808 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Gerhard Stöbich <deb2001-github@yahoo.de> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>

view details

Anna Henningsen

commit sha 58bae4d0ef4802e472204d5e18d7dbb7296878d1

util: restrict custom inspect function + vm.Context interaction When `util.inspect()` is called on an object with a custom inspect function, and that object is from a different `vm.Context`, that function will not receive any arguments that access context-specific data anymore. PR-URL: https://github.com/nodejs/node/pull/33690 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>

view details

push time in 3 months

push eventnodejs/node

Evan Lucas

commit sha f6dbba82bd9648d5df3721905fc952c896cb3449

internal: rename error-serdes for consistency All other JavaScript files in lib use snake case, so make this one consistent. PR-URL: https://github.com/nodejs/node/pull/33793 Reviewed-By: Gus Caplan <me@gus.host> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>

view details

push time in 3 months

PR closed nodejs/node

internal: rename error-serdes for consistency build worker

All other JavaScript files in lib use snake case, so make this one consistent.

<!-- Thank you for your pull request. Please provide a description above and review the requirements below.

Bug fixes and new features should include tests and possibly benchmarks.

Contributors guide: https://github.com/nodejs/node/blob/master/CONTRIBUTING.md -->

Checklist

<!-- Remove items that do not apply. For completed items, change [ ] to [x]. -->

  • [x] make -j4 test (UNIX), or vcbuild test (Windows) passes
  • [x] tests and/or benchmarks are included
  • [ ] documentation is changed or added
  • [x] commit message follows commit guidelines

<!-- Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I have the right to submit it under the open source license indicated in the file; or

(b) The contribution is based upon previous work that, to the best of my knowledge, is covered under an appropriate open source license and I have the right under that license to submit that work with modifications, whether created in whole or in part by me, under the same open source license (unless I am permitted to submit under a different license), as indicated in the file; or

(c) The contribution was provided directly to me by some other person who certified (a), (b) or (c) and I have not modified it.

(d) I understand and agree that this project and the contribution are public and that a record of the contribution (including all personal information I submit with it, including my sign-off) is maintained indefinitely and may be redistributed consistent with this project or the open source license(s) involved. -->

+5 -5

1 comment

6 changed files

evanlucas

pr closed time in 3 months

more