New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

move per-context changes from c++ to js #21518

Closed
wants to merge 2 commits into
base: master
from

Conversation

Projects
None yet
7 participants
@devsnek
Member

devsnek commented Jun 25, 2018

move the changes made to new contexts from c++ to js.

second commit adds a warning when Atomics.wake is used and changes Atomics.notify.name to notify

/cc @rwaldron

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

@devsnek devsnek requested a review from addaleax Jun 25, 2018

@devsnek devsnek requested a review from hashseed Jun 25, 2018

@devsnek devsnek changed the title from Refactor/per context things to move per-context changes from c++ to js Jun 25, 2018

} else {
global.console.error(`Atomics: ${warning}`);
}
}

This comment has been minimized.

@addaleax

addaleax Jun 25, 2018

Member

I’m not sure, is there any reason why we wouldn’t want to do a normal deprecation cycle for these (i.e. make this PR semver-major)?

This comment has been minimized.

@devsnek

devsnek Jun 25, 2018

Member

I wasn't quite sure where to document it and like @rwaldon said it's not very widely used. I'm ok with removing the message though

This comment has been minimized.

@devsnek

devsnek Jun 26, 2018

Member

should this still be considered semver major?

devsnek added some commits Jun 25, 2018

@devsnek

This comment has been minimized.

Member

devsnek commented Jun 27, 2018

@devsnek

This comment has been minimized.

Member

devsnek commented Jun 27, 2018

landed in 759809f...dcb371f

@devsnek devsnek closed this Jun 27, 2018

@devsnek devsnek deleted the devsnek:refactor/per-context-things branch Jun 27, 2018

devsnek added a commit that referenced this pull request Jun 27, 2018

src: move context bootstrap to js
PR-URL: #21518
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Anna Henningsen <anna@addaleax.net>

devsnek added a commit that referenced this pull request Jun 27, 2018

per_context: add warning to Atomics.wake
PR-URL: #21518
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Anna Henningsen <anna@addaleax.net>

targos added a commit that referenced this pull request Jun 28, 2018

src: move context bootstrap to js
PR-URL: #21518
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Anna Henningsen <anna@addaleax.net>

targos added a commit that referenced this pull request Jun 28, 2018

per_context: add warning to Atomics.wake
PR-URL: #21518
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
@targos

This comment has been minimized.

Member

targos commented Jun 28, 2018

@devsnek Be careful with the commit messages. per_context is not a subsystem.

@devsnek

This comment has been minimized.

Member

devsnek commented Jun 28, 2018

@targos i assumed once it was created it became a subsystem. what would the correct label have been?

@addaleax

This comment has been minimized.

Member

addaleax commented Jun 28, 2018

@devsnek As I understand it, subsystems for files under lib/ generally refer to public modules, and the rest would generally be considered lib?

The point of subsystems is that they make reading changelogs easier, because we group commits by them; if it’s not something that immediately affects users of Node.js but still touches the source files, lib or src would be appropriate imo

@targos

This comment has been minimized.

Member

targos commented Jun 28, 2018

@addaleax Thanks, that's along the lines of what I was writing :)

@refack

This comment has been minimized.

Member

refack commented Jun 29, 2018

@devsnek could you reopen this PR. I want to see the what Jenkins reported.
NM

@Trott

This comment has been minimized.

Member

Trott commented Jun 29, 2018

It does appear that this landed with a red CI. I know it's sometimes painful to slog it out until you get to green or yellow, but I'd ask that we really work hard to do that. I'm bisecting right now because something broke the --without-intl build (which is what failed in the CI in this PR)...

@Trott

This comment has been minimized.

Member

Trott commented Jun 29, 2018

d13cdd9 broke the build. So the red CI in this case wasn't an infrastructure issue but was in fact a test failure resulting from the change set.

@Trott

This comment has been minimized.

Member

Trott commented Jun 29, 2018

PR to revert the one bad commit: #21587

@Trott

This comment has been minimized.

Member

Trott commented Jun 29, 2018

Narrower alternative fix suggested by @devsnek and @refack in #21589

1 similar comment
@Trott

This comment has been minimized.

Member

Trott commented Jun 29, 2018

Narrower alternative fix suggested by @devsnek and @refack in #21589

targos added a commit that referenced this pull request Jul 3, 2018

2018-07-04, Version 10.6.0 (Current)
Notable changes:

* build:
  * Node.js should now be about 60% faster to startup than the previous version,
    thanks to the use V8's code cache feature for core modules. [#21405](#21405)
* dns:
  * An experimental promisified version of the dns module is now available. Give
    it a try with `require('dns').promises`. [#21264](#21264)
* fs:
  * `fs.lchown` has been undeprecated now that libuv supports it. [#21498](#21498)
* lib:
  * `Atomics.wake` is being renamed to `Atomics.notify` in the ECMAScript
    specification ([reference](tc39/ecma262#1220)).
    Since Node.js now has experimental support for worker threads, we are being
    proactive and added a `notify` alias, while emitting a warning if
    `wake` is used. [#21413](#21413) [#21518](#21518)
* n-api:
  * Add API for asynchronous functions. [#17887](#17887)
* util:
  * `util.inspect` is now able to return a result instead of throwing when the
    maximum call stack size is exceeded during inspection. [#20725](#20725)
* vm:
  * Add `script.createCachedData()`. This API replaces the `produceCachedData`
    option of the `Script` constructor that is now deprecated. [#20300](#20300)
* worker:
  * Support for relative paths has been added to the `Worker` constructor. Paths
    are interpreted relative to the current working directory. [#21407](#21407)

@targos targos referenced this pull request Jul 3, 2018

Merged

v10.6.0 proposal #21629

targos added a commit that referenced this pull request Jul 3, 2018

2018-07-04, Version 10.6.0 (Current)
Notable changes:

* build:
  * Node.js should now be about 60% faster to startup than the previous version,
    thanks to the use V8's code cache feature for core modules. [#21405](#21405)
* dns:
  * An experimental promisified version of the dns module is now available. Give
    it a try with `require('dns').promises`. [#21264](#21264)
* fs:
  * `fs.lchown` has been undeprecated now that libuv supports it. [#21498](#21498)
* lib:
  * `Atomics.wake` is being renamed to `Atomics.notify` in the ECMAScript
    specification ([reference](tc39/ecma262#1220)).
    Since Node.js now has experimental support for worker threads, we are being
    proactive and added a `notify` alias, while emitting a warning if
    `wake` is used. [#21413](#21413) [#21518](#21518)
* n-api:
  * Add API for asynchronous functions. [#17887](#17887)
* util:
  * `util.inspect` is now able to return a result instead of throwing when the
    maximum call stack size is exceeded during inspection. [#20725](#20725)
* vm:
  * Add `script.createCachedData()`. This API replaces the `produceCachedData`
    option of the `Script` constructor that is now deprecated. [#20300](#20300)
* worker:
  * Support for relative paths has been added to the `Worker` constructor. Paths
    are interpreted relative to the current working directory. [#21407](#21407)

PR-URL: #21629

targos added a commit that referenced this pull request Jul 4, 2018

2018-07-04, Version 10.6.0 (Current)
Notable changes:

* dns:
  * An experimental promisified version of the dns module is now available. Give
    it a try with `require('dns').promises`. [#21264](#21264)
* fs:
  * `fs.lchown` has been undeprecated now that libuv supports it. [#21498](#21498)
* lib:
  * `Atomics.wake` is being renamed to `Atomics.notify` in the ECMAScript
    specification ([reference](tc39/ecma262#1220)).
    Since Node.js now has experimental support for worker threads, we are being
    proactive and added a `notify` alias, while emitting a warning if
    `wake` is used. [#21413](#21413) [#21518](#21518)
* n-api:
  * Add API for asynchronous functions. [#17887](#17887)
* util:
  * `util.inspect` is now able to return a result instead of throwing when the
    maximum call stack size is exceeded during inspection. [#20725](#20725)
* vm:
  * Add `script.createCachedData()`. This API replaces the `produceCachedData`
    option of the `Script` constructor that is now deprecated. [#20300](#20300)
* worker:
  * Support for relative paths has been added to the `Worker` constructor. Paths
    are interpreted relative to the current working directory. [#21407](#21407)

PR-URL: #21629

targos added a commit that referenced this pull request Jul 4, 2018

2018-07-04, Version 10.6.0 (Current)
Notable changes:

* dns:
  * An experimental promisified version of the dns module is now available. Give
    it a try with `require('dns').promises`. [#21264](#21264)
* fs:
  * `fs.lchown` has been undeprecated now that libuv supports it. [#21498](#21498)
* lib:
  * `Atomics.wake` is being renamed to `Atomics.notify` in the ECMAScript
    specification ([reference](tc39/ecma262#1220)).
    Since Node.js now has experimental support for worker threads, we are being
    proactive and added a `notify` alias, while emitting a warning if
    `wake` is used. [#21413](#21413) [#21518](#21518)
* n-api:
  * Add API for asynchronous functions. [#17887](#17887)
* util:
  * `util.inspect` is now able to return a result instead of throwing when the
    maximum call stack size is exceeded during inspection. [#20725](#20725)
* vm:
  * Add `script.createCachedData()`. This API replaces the `produceCachedData`
    option of the `Script` constructor that is now deprecated. [#20300](#20300)
* worker:
  * Support for relative paths has been added to the `Worker` constructor. Paths
    are interpreted relative to the current working directory. [#21407](#21407)

PR-URL: #21629

alexeykuzmin added a commit to electron/node that referenced this pull request Sep 3, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment