Uh oh!
There was an error while loading. Please reload this page.
10.0.0 Proposal - #19091
Conversation
ronkorving
commented
Mar 6, 2018
Something worth considering (cc @nodejs/v8): webpack/webpack#6613 (comment) |
addaleax
commented
Mar 6, 2018
The patch for that issue that was linked is https://chromium.googlesource.com/v8/v8.git/+/06ee127b75726f9ee541aab10f6aecfe4d96675a, to save a few clicks. |
jasnell
commented
Mar 6, 2018
@ronkorving ... in order for it to be in consideration for 10.0.0 there need to be a PR against master. |
ofrobots
commented
Mar 6, 2018
@ronkorving that's a fairly substantial change, and one that hasn't gotten enough real-world coverage yet on Chrome Canary. My preference would be to NOT to backport it to It might be possible to upgrade V8 version in a ABI/API compatible way even after the 10.0.0 release, and my preference would be to focus on being able to do that. |
vsemozhetbyt
commented
Mar 19, 2018
jasnell
commented
Mar 20, 2018
First test build (not everyone will have access to this link): https://ci-release.nodejs.org/job/iojs+release/3187/ |
221ca81 to
2ba6bcbCompareNew test build (not everyone will have access to this link): https://ci-release.nodejs.org/job/iojs+release/3278/ Artifacts: https://nodejs.org/download/test/v10.0.0-test20180404bb776119ac/ |
jasnell
commented
Apr 5, 2018
@mhdawson @nodejs/build : There was a build error when attempting to run the test build on smartos15-release ... https://ci-release.nodejs.org/job/iojs+release/3278/nodes=smartos15-release/console ... can you take a look please? |
jasnell
commented
Apr 5, 2018
@nodejs/tsc @nodejs/collaborators ... FYI... I'm cutting off semver-majors next Tuesday April 10th. After that, we will need TSC approval to pull a semver-major in to 10.0.0. Please try to land any semver-majors that absolutely have to be in 10.0.0 by end of day Monday April 9th. |
jasnell
commented
Apr 5, 2018
@nodejs/v8 @targos@MylesBorins@fhinkel ... can someone with more knowledge than I please write up a quick summary of any ABI breaking changes from Node.js v9.x to Node.js v10.0.0? I'd like to include the summary in the change logs. |
jasnell
commented
Apr 5, 2018
Ping @nodejs/node-chakracore ... Please let me know what your timeline is for ensuring node-chakracore is up to date to |
jasnell
commented
Apr 5, 2018
@nodejs/build ... looks like the OSX build failed also: https://ci-release.nodejs.org/job/iojs+release/3278/nodes=osx1010-release-pkg/console |
seishun
commented
Apr 5, 2018
Any chance we could delay the release until V8 6.7 turns stable? Introducing a new type to the language is quite a significant change and doing it in a minor version doesn't seem right, even if it's non-breaking. |
hashseed
commented
Apr 5, 2018
V8 6.7 turns stable on May 29th, 2018, which is probably too late. But I was definitely hoping Node 10 initially releases late April, as explained here. This gives us a time window to float a patch to make V8 6.6's ABI forward-compatible to 6.7. |
jasnell
commented
Apr 5, 2018
Yeah, we're not going to delay for 6.7 this time around |
rvagg
commented
Apr 5, 2018
@jasnell I think the OSX failure is just one of those random jenkins blips we experience, all the other builds during the day, including 9.11.0 and 9.11.1 were fine. I tried to restart but the commit seems to have disappeared so when you have a chance, push something and do a new test build. |
New Test build... not everyone will have access to this: https://ci-release.nodejs.org/job/iojs+release/3300/ Test artifacts will drop here: https://nodejs.org/download/test/v10.0.0-test20180410edd9cc466a/ |
rvagg
commented
Apr 11, 2018
I rerun the same build @ https://ci-release.nodejs.org/job/iojs+release/3301/ after fixing the smartos15 x64 builds, that's just a problem for non-release non-test builds, all green now. |
rvagg
commented
Apr 11, 2018
As of the today's nightly build and the next test build of 10.0.0 we're using a new toolchain to build for Linux. We should retain compatibility with EL6 and later distro versions (that's pre-Wheezy and pre-12.04, so basically everything), glibc 2.12. But it's something to keep an eye on; as much as I test these binaries I still can't shake the fear that the newer libstdc++ is going to be a problem. We've also been using a new toolchain for the armv6 and armv7 builds. They're now Jessie-level (14.04, but later than EL7), glibc 2.19. SmartOS builds will be with a later toolchain but that's still being worked on. AIX too I guess. These are not strictly final, we're getting to that, but it's a good bet I think. |
jasnell
commented
Apr 11, 2018
@rvagg ... the OSX test builds failed again. |
rvagg
commented
Apr 12, 2018
@jasnell I'm not seeing a new test build from you in jenkins, nor an osx failure in there other than the v8-canary builds which have been failing for a while now. Got a link? |
jasnell
commented
Apr 23, 2018
@nodejs/tsc @nodejs/collaborators ... I will be pulling in whatever remaining semver-patch commits land between now and noon pacific today then I will generate the final release candidate. Barring any issues that come up in testing, that RC should be the final cut before the actual release to be cut tomorrow. |
* Assert * Calling `assert.fail()` with more than one argument is deprecated. #70dcacd710 * Calling `assert.ok()` with no arguments will now throw. #3cd7977a42 * Calling `assert.ifError()` will now throw with any argument other than `undefined` or `null`. Previously the method would throw with any truthy value. #e65a6e81ef * The `assert.rejects()` and `assert.doesNotReject()` methods have been added for working with async functions. #599337f43e * Async_hooks * Older experimental async_hooks APIs have been removed. #1cc6b993b9 * Buffer * Uses of `new Buffer()` and `Buffer()` outside of the `node_modules` directory will now emit a runtime deprecation warning. #9d4ab90117 * `Buffer.isEncoding()` now returns `undefined` for falsy values, including an empty string. #452eed956e * `Buffer.fill()` will throw if an attempt is made to fill with an empty `Buffer`. #1e802539b2 * Child Process * Undefined properties of env are ignored. #38ee25e2e2, #85739b6c5b * Console * The `console.table()` method has been added. #97ace04492 * Crypto * The `crypto.createCipher()` and `crypto.createDecipher()` methods have been deprecated. Please use `crypto.createCipheriv()` and `crypto.createDecipheriv()` instead. #81f88e30dd * The `decipher.finaltol()` method has been deprecated. #19f3927d92 * The `crypto.DEFAULT_ENCODING` property has been deprecated. #6035beea93 * The `ECDH.convertKey()` method has been added. #f2e02883e7 * The `crypto.fips` property has been deprecated. #6e7992e8b8 * Dependencies * V8 has been updated to 6.6. #9daebb48d6 * OpenSSL has been updated to 1.1.0h. #66cb29e646 * EventEmitter * The `EventEmitter.prototype.off()` method has been added as an alias for `EventEmitter.prototype.removeListener()`. #3bb6f07d52 * File System * The `fs.promises` API provides experimental promisified versions of the `fs` functions. #329fc78e49 * Invalid path errors are now thrown synchronously. #d8f73385e2 * The `fs.readFile()` method now partitions reads to avoid thread pool exhaustion. #67a4ce1c6e * HTTP * Processing of HTTP Status codes `100`, `102-199` has been improved. #baf8495078 * Multi-byte characters in URL paths are now forbidden. #b961d9fd83 * N-API * The n-api is no longer experimental. #cd7d7b15c1 * Net * The `'close'` event will be emitted after `'end'`. #9b7a6914a7 * Perf_hooks * The `PerformanceObserver` class is now an `AsyncResource` and can be monitored using `async_hooks`. #009e41826f * Trace events are now emitted for performance events. #9e509b622b * The `performance` API has been simplified. #2ec6995555 * Performance milestone marks will be emitted as trace events. #96cb4fb795 * Process * Using non-string values for `process.env` is deprecated. #5826fe4e79 * The `process.assert()` method is deprecated. #703e37cf3f * REPL * REPL now experimentally supports top-level await when using the `--experimental-repl-await` flag. #eeab7bc068 * The previously deprecated "magic mode" has been removed. #4893f70d12 * The previously deprecated `NODE_REPL_HISTORY_FILE` environment variable has been removed. #60c9ad7979 * Proxy objects are shown as Proxy objects when inspected. #90a43906ab * Streams * The `'readable'` event is now always deferred with nextTick. #1e0f3315c7 * A new `pipeline()` method has been provided for building end-to-data stream pipelines. #a5cf3feaf1 * Experimental support for async for-await has been added to `stream.Readable`. #61b4d60c5d * Timers * The `enroll()` and `unenroll()` methods have been deprecated. #68783ae0b8 * TLS * The `tls.convertNONProtocols()` method has been deprecated. #9204a0db6e * Support for NPN (next protocol negotiation) has been dropped. #5bfbe5ceae * The `ecdhCurve` default is now `'auto'`. #af78840b19 * Trace Events * A new `trace_events` top-level module allows trace event categories to be enabled/disabld at runtime. #da5d818a54 * URL * The WHATWG URL API is now a global. #312414662b * Util * `util.types.is[…]` type checks have been added. #b20af8088a * Support for bigint formatting has been added to `util.inspect()`. #39dc947409
jasnell
commented
Apr 23, 2018
RC.2 CI: https://ci.nodejs.org/job/node-test-pull-request/14458/ |
jasnell
commented
Apr 23, 2018
OSX build appeared to flake out, rerunning: https://ci.nodejs.org/job/node-test-commit-osx/18050/ |
rvagg
commented
Apr 23, 2018
The osx failure was an unkilled process fwiw, the tests themselves were fine. Not necessarily a show stopper but a concern since we've been seeing a few of these on master. There's something to fix here but more likely to be something to do with the tests. |
jasnell
commented
Apr 23, 2018
Yep... none of the tests appear to have timed out so not sure what it is. Definitely will need to be looked at but agree that it's not a show stopper. Second OSX is showing this, however: Which looks awfully suspicious. I'll be running it again. Btw, CITGM results look acceptable. Nothing surprising there. |
jasnell
commented
Apr 23, 2018
jasnell
commented
Apr 23, 2018
Hmmm... completely different test, similar failure. |
jasnell
commented
Apr 23, 2018
Giving it one more go: https://ci.nodejs.org/job/node-test-commit-osx/18054/ |
MylesBorins
commented
Apr 23, 2018
82 failures in CITGM. Has anyone reviewed them? |
jasnell
commented
Apr 24, 2018
I've reviewed some. There are a number of test-suite failures caused by the semver-major changes in the |
rvagg
commented
Apr 24, 2018
Some random release thoughts, I hope these help.
|
Starting to generate the release builds now... https://ci-release.nodejs.org/job/iojs+release/3355/ (not everyone will have access to that link). Once successfully generated I'll be doing another around of test verification. The plan is to promote the release around 1pm pacific. Update 1: Building the release artifacts was successful. Will be testing for a bit now. |
Trott
commented
Apr 24, 2018
Trott
commented
Apr 24, 2018
In the meantime, I just logged on and manually fixed test-requireio-osx1010-x64-1. OS X CI again: https://ci.nodejs.org/job/node-test-commit-osx/18078/ |
Tag signed and pushed. Will promote the release shortly.... Basically waiting on the node-chakracore build (nodejs/node-chakracore#520) to complete before promoting. |
jasnell
commented
Apr 24, 2018
Done. |
rvagg
commented
Apr 25, 2018
good work all, I don't know about you but that felt like a huge marathon .. I'll try to get the openssl doc and BUILDING.md needs a lot of work to be accurate according to where we're at with 10+ and it needs some clarifying too |
jasnell
commented
Apr 25, 2018
That's one way to describe it. Lol |
This is nearly ready:
Please do not push any commits to the v10.x-staging or v10.x branches as these will be completely rewritten over the course of the release process, right up until the day of the release.