Skip to content
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

v13.12.0 proposal #32376

Merged
merged 100 commits into from
Mar 26, 2020
Merged

v13.12.0 proposal #32376

merged 100 commits into from
Mar 26, 2020

Conversation

MylesBorins
Copy link
Contributor

@MylesBorins MylesBorins commented Mar 19, 2020

2020-03-26, Version 13.12.0 (Current), @MylesBorins

macOS package notarization and a change in builder configuration

The macOS binaries for this release, and future 13.x releases, are now being compiled on
macOS 10.15 (Catalina) with Xcode 11 to support package notarization, a requirement for
installing on .pkg files on macOS 10.15 and later. Previous builds of Node.js 13.x were
compiled on macOS 10.11 (El Capitan) with Xcode 10. As binaries are still being compiled
to support a minimum of macOS 10.10 (Yosemite) we do not anticipate this having a negative
impact on Node.js 13.x users with older versions of macOS.

Notable Changes

  • build:
    • macOS package notarization (Rod Vagg) #31459
  • deps:
    • upgrade npm to 6.14.4 (Ruy Adorno) #32495
    • update to uvwasi 0.0.6 (Colin Ihrig) #32309
    • upgrade to libuv 1.35.0 (Colin Ihrig) #32204
  • lib:
    • add --disable-proto option to cli (Gus Caplan) #32279
  • node_report:
    • move diagnostic reports to stable (Colin Ihrig) #32242
  • worker:
    • allow URL in Worker constructor (Antoine du HAMEL) #31664
  • util:
    • use a global symbol for util.promisify.custom (ExE Boss) #31672

Commits

Missing from release, apologies.

PR-URL: #32218
Reviewed-By: Shelley Vohr <[email protected]>
Reviewed-By: Rich Trott <[email protected]>
@nodejs-github-bot nodejs-github-bot added build Issues and PRs related to build files or the CI. doc Issues and PRs related to the documentations. meta Issues and PRs related to the general management of the project. npm Issues and PRs related to the npm client dependency or the npm registry. v13.x labels Mar 19, 2020
@MylesBorins
Copy link
Contributor Author

Thinking we should release this next tuesday with the 10.x and 12.x releases. We should likely include a couple of Streams related backports and the update to OpenSSL

#32328

@richardlau
Copy link
Member

Please highlight in the notable changes that this is the first notarized release for macOS and that we needed to change the release environment to do that (so there is a small risk). @rvagg / @AshCripps did we come up with some text for @nodejs/releasers to include in the release notes?

(and on that note, do we need to reapply d2f08a1? It looks like #32368 has overwritten the signed binary.)

@rvagg
Copy link
Member

rvagg commented Mar 19, 2020

re macOS change in builders, I shared my proposal for text in #32243 (comment)

@rvagg
Copy link
Member

rvagg commented Mar 19, 2020

And yes, I thought the term-size binary update would come in via npm but maybe they haven't updated that dep yet, so I suppose it needs to be re-applied. The release build will fail if it's not signed. If that's on v13.x-staging then we'll see in a few hours if the nightly fails.

@rvagg rvagg mentioned this pull request Mar 19, 2020
4 tasks
doc/changelogs/CHANGELOG_V13.md Show resolved Hide resolved
doc/changelogs/CHANGELOG_V13.md Outdated Show resolved Hide resolved
doc/changelogs/CHANGELOG_V13.md Outdated Show resolved Hide resolved
doc/changelogs/CHANGELOG_V13.md Outdated Show resolved Hide resolved
doc/changelogs/CHANGELOG_V13.md Outdated Show resolved Hide resolved
doc/changelogs/CHANGELOG_V13.md Outdated Show resolved Hide resolved
@BridgeAR
Copy link
Member

I personally would publish the release as soon as possible and not wait for the other release lines.

@addaleax
Copy link
Member

@BridgeAR Not sure if that’s what you’re saying, but I think this is not a good time for Friday or weekend releases, thinking along the lines of nodejs/Release#553 (not that those are really ever a good idea)

@BridgeAR
Copy link
Member

@addaleax I do not think we should hold of a current releases as I outlined in nodejs/Release#553. Reducing the number of LTS releases seems reasonable though.

@rvagg
Copy link
Member

rvagg commented Mar 21, 2020

Timing isn't really as big a deal for Current, we don't expect large installations to be using it in production (and if you are, then you're running on YOLO anyway).

Whoever does this release, can you please rebase and put my 3 notarization commits after the npm update so term-size is updated properly (that's in one commit but it'd be nice if the 3 stay together).

@rvagg
Copy link
Member

rvagg commented Mar 21, 2020

Have documented the need to add a signed term-size on top of an npm update in #32403, as I said there, I'm not hopeful that we'll see an updated dep tree in short order, hence the need to prepare to do this repeatedly in the future.

@addaleax addaleax mentioned this pull request Mar 23, 2020
4 tasks
@MylesBorins
Copy link
Contributor Author

MylesBorins commented Mar 23, 2020

given that #32328 hasn't landed yet and we will likely want to include it in this release should we consider delaying by a week?

Is there anything in this release super time sensitive?

Trott and others added 9 commits March 24, 2020 02:55
I sent an email to inactive collaborators (in the previous 6 months at
the time, no commits, no PRs reviewed, and no commits landed) asking if
it was time to move to emeritus.

Some replied affirmatively and I have moved those people to emeritus.

Others replied indicating a desire to remain collaborators, and I left
them as collaborators.

The remaining folks are being moved to emeritus in this change.

Signed-off-by: Rich Trott <[email protected]>

PR-URL: #32151
Reviewed-By: Tobias Nießen <[email protected]>
Reviewed-By: Trivikram Kamat <[email protected]>
Reviewed-By: Matteo Collina <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Yuta Hiroto <[email protected]>
Reviewed-By: Myles Borins <[email protected]>
Signed-off-by: Michael Dawson <[email protected]>

PR-URL: #32213
Reviewed-By: Richard Lau <[email protected]>
Reviewed-By: Matheus Marchini <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Tobias Nießen <[email protected]>
Reviewed-By: Сковорода Никита Андреевич <[email protected]>
Reviewed-By: Yongsheng Zhang <[email protected]>
Reviewed-By: Gireesh Punathil <[email protected]>
Reviewed-By: Rich Trott <[email protected]>
PR-URL: #32037
Reviewed-By: Michael Dawson <[email protected]>
Reviewed-By: Ruben Bridgewater <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Fixes broken unit test for the NODE_EXTRA_CA_CERTS environment
variable. Unit test was exiting without evaluating any assertions
or running any tests.

Fixes: #32072

PR-URL: #32073
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Ruben Bridgewater <[email protected]>
PR-URL: #32087
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Jan Krems <[email protected]>
Reviewed-By: Shelley Vohr <[email protected]>
Reviewed-By: David Carlier <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Make sure longer strings are written up to the buffer end

Refs: #32119

PR-URL: #32123
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Ruben Bridgewater <[email protected]>
PR-URL: #32125
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Tobias Nießen <[email protected]>
Reviewed-By: Ruben Bridgewater <[email protected]>
Reviewed-By: Trivikram Kamat <[email protected]>
Different parts of the debug build were using differently sized
std::vectors due to `_GLIBCXX_DEBUG` sometimes being defined and
sometimes not. That ended about as well as you would expect.

Remove the flag.

Fixes: #30056

PR-URL: #30147
Reviewed-By: Richard Lau <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: David Carlier <[email protected]>
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Rich Trott <[email protected]>
Reviewed-By: Michael Dawson <[email protected]>
Reviewed-By: Ruben Bridgewater <[email protected]>
Define `util.promisify.custom`
as `Symbol.for("nodejs.util.inspect.custom")`, rather than
as `Symbol("util.inspect.custom")`.

This allows custom `promisify` wrappers to easily/safely be defined
in non‑Node.js environments.

Fixes: #31647

PR-URL: #31672
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Gus Caplan <[email protected]>
Reviewed-By: Ruben Bridgewater <[email protected]>
MylesBorins added a commit that referenced this pull request Mar 25, 2020
macOS package notarization and a change in builder configuration:

The macOS binaries for this release, and future 13.x releases, are now
being compiled on macOS 10.15 (Catalina) with Xcode 11 to support
package notarization, a requirement for installing on .pkg files on
macOS 10.15 and later. Previous builds of Node.js 13.x were compiled on
macOS 10.11 (El Capitan) with Xcode 10. As binaries are still being
compiled to support a minimum of macOS 10.10 (Yosemite) we do not
anticipate this having a negative impact on Node.js 13.x users with
older versions of macOS.

Notable changes:

* build:
  * macOS package notarization (Rod Vagg)
    #31459
* deps:
  * update npm to 6.14.3 (Myles Borins)
    #32368
  * update to uvwasi 0.0.6 (Colin Ihrig)
    #32309
  * upgrade to libuv 1.35.0 (Colin Ihrig)
    #32204
* lib:
  * add --disable-proto option to cli (Gus Caplan)
    #32279
* node_report:
  * move diagnostic reports to stable (Colin Ihrig)
    #32242
* worker:
  * allow URL in Worker constructor (Antoine du HAMEL)
    #31664
* util:
  * use a global symbol for `util.promisify.custom` (ExE Boss)
    #31672

PR-URL: #32376
@nodejs-github-bot
Copy link
Collaborator

nodejs-github-bot commented Mar 25, 2020

@bricss
Copy link

bricss commented Mar 25, 2020

It would be awesome to have this onboard #32476 👀

@rvagg
Copy link
Member

rvagg commented Mar 26, 2020

It would be good to get this out sooner than later. These notarization hangups are becoming a hassle and we need to have it out in a 13.x before we can backport to 10.x and 12.x. e.g. discussion in nodejs/build#2188 re Apple becoming even more strict this month on Catalina.

@rvagg rvagg mentioned this pull request Mar 26, 2020
4 tasks
@MylesBorins
Copy link
Contributor Author

@bricss it has not yet been open for 48 hours. I requested a fast track in the PR, please chime in there.

@rvagg I'll work on getting this out today

addaleax and others added 8 commits March 26, 2020 13:58
`ObjectTemplate`s are not garbage-collected like regular objects
(for some reason). It is sufficient to create a single template
anyway, so do that to address the memory leak.

Fixes: #32424

PR-URL: #32426
Reviewed-By: Gus Caplan <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Ben Noordhuis <[email protected]>
PR-URL: #32385
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Gabriel Schulhof <[email protected]>
Instead of indicating that examples show lines to change in previous
examples, present the examples as standalone items. They suffice on
their own.

In the first of these, it says to change "the second line" of a previous
example, but if it were literally changed to the provided line, it would
result in a syntax error.

In the second of these, it gives the wrong line to change.

All of this is unnecessary and probably makes the examples harder to
follow. So simplify and treat each one as a separate example.

PR-URL: #32451
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Trivikram Kamat <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Typo `runAndReturn` -> `runSyncAndReturn`

PR-URL: #32382
Reviewed-By: Vladimir de Turckheim <[email protected]>
Reviewed-By: Ruben Bridgewater <[email protected]>
Reviewed-By: Colin Ihrig <[email protected]>
Reviewed-By: Luigi Pinca <[email protected]>
Reviewed-By: Trivikram Kamat <[email protected]>
Reviewed-By: James M Snell <[email protected]>
PR-URL: #32457
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Myles Borins <[email protected]>
Remove "obvious" and "obviously" in two places in esm.md. It may be
obvious to some, but likely not everyone or else it probably wouldn't be
worth mentioning/documenting.

PR-URL: #32457
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Myles Borins <[email protected]>
Since the previous sentence describes `10` as a default, and the
following sentence explains how to modify that default, it is
unnecessary to explain that "Obviously, not all events should be limited
to just 10 listeners."

PR-URL: #32457
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Myles Borins <[email protected]>
PR-URL: #32495
Reviewed-By: Myles Borins <[email protected]>
Reviewed-By: Michaël Zasso <[email protected]>
Reviewed-By: Gus Caplan <[email protected]>
MylesBorins added a commit that referenced this pull request Mar 26, 2020
macOS package notarization and a change in builder configuration:

The macOS binaries for this release, and future 13.x releases, are now
being compiled on macOS 10.15 (Catalina) with Xcode 11 to support
package notarization, a requirement for installing on .pkg files on
macOS 10.15 and later. Previous builds of Node.js 13.x were compiled on
macOS 10.11 (El Capitan) with Xcode 10. As binaries are still being
compiled to support a minimum of macOS 10.10 (Yosemite) we do not
anticipate this having a negative impact on Node.js 13.x users with
older versions of macOS.

Notable changes:

* build:
  * macOS package notarization (Rod Vagg)
    #31459
* deps:
  * upgrade npm to 6.14.4 (Ruy Adorno)
    #32495
  * update to uvwasi 0.0.6 (Colin Ihrig)
    #32309
  * upgrade to libuv 1.35.0 (Colin Ihrig)
    #32204
* lib:
  * add --disable-proto option to cli (Gus Caplan)
    #32279
* node_report:
  * move diagnostic reports to stable (Colin Ihrig)
    #32242
* worker:
  * allow URL in Worker constructor (Antoine du HAMEL)
    #31664
* util:
  * use a global symbol for `util.promisify.custom` (ExE Boss)
    #31672

PR-URL: #32376
ronag and others added 2 commits March 26, 2020 14:48
unpipe should use pause() instead of mutating
state.flowing directly so that pausing side
effects such as emitting 'pause' are properly
performed.

Fixes: #32470

PR-URL: #32476
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Matteo Collina <[email protected]>
macOS package notarization and a change in builder configuration:

The macOS binaries for this release, and future 13.x releases, are now
being compiled on macOS 10.15 (Catalina) with Xcode 11 to support
package notarization, a requirement for installing on .pkg files on
macOS 10.15 and later. Previous builds of Node.js 13.x were compiled on
macOS 10.11 (El Capitan) with Xcode 10. As binaries are still being
compiled to support a minimum of macOS 10.10 (Yosemite) we do not
anticipate this having a negative impact on Node.js 13.x users with
older versions of macOS.

Notable changes:

* build:
  * macOS package notarization (Rod Vagg)
    #31459
* deps:
  * upgrade npm to 6.14.4 (Ruy Adorno)
    #32495
  * update to uvwasi 0.0.6 (Colin Ihrig)
    #32309
  * upgrade to libuv 1.35.0 (Colin Ihrig)
    #32204
* lib:
  * add --disable-proto option to cli (Gus Caplan)
    #32279
* node_report:
  * move diagnostic reports to stable (Colin Ihrig)
    #32242
* worker:
  * allow URL in Worker constructor (Antoine du HAMEL)
    #31664
* util:
  * use a global symbol for `util.promisify.custom` (ExE Boss)
    #31672

PR-URL: #32376
@nodejs-github-bot
Copy link
Collaborator

nodejs-github-bot commented Mar 26, 2020

@nodejs-github-bot
Copy link
Collaborator

nodejs-github-bot commented Mar 26, 2020

CI: https://ci.nodejs.org/job/node-test-pull-request/30109/
Rebuild Linux: https://ci.nodejs.org/job/node-test-commit-linux/33762/ (got the centos job working, cancelled fedora job that was slow that previously passed)

MylesBorins added a commit that referenced this pull request Mar 26, 2020
@MylesBorins MylesBorins merged commit f6a339f into v13.x Mar 26, 2020
MylesBorins added a commit that referenced this pull request Mar 26, 2020
macOS package notarization and a change in builder configuration:

The macOS binaries for this release, and future 13.x releases, are now
being compiled on macOS 10.15 (Catalina) with Xcode 11 to support
package notarization, a requirement for installing on .pkg files on
macOS 10.15 and later. Previous builds of Node.js 13.x were compiled on
macOS 10.11 (El Capitan) with Xcode 10. As binaries are still being
compiled to support a minimum of macOS 10.10 (Yosemite) we do not
anticipate this having a negative impact on Node.js 13.x users with
older versions of macOS.

Notable changes:

* build:
  * macOS package notarization (Rod Vagg)
    #31459
* deps:
  * upgrade npm to 6.14.4 (Ruy Adorno)
    #32495
  * update to uvwasi 0.0.6 (Colin Ihrig)
    #32309
  * upgrade to libuv 1.35.0 (Colin Ihrig)
    #32204
* lib:
  * add --disable-proto option to cli (Gus Caplan)
    #32279
* node_report:
  * move diagnostic reports to stable (Colin Ihrig)
    #32242
* worker:
  * allow URL in Worker constructor (Antoine du HAMEL)
    #31664
* util:
  * use a global symbol for `util.promisify.custom` (ExE Boss)
    #31672

PR-URL: #32376
MylesBorins added a commit to nodejs/nodejs.org that referenced this pull request Mar 26, 2020
@leonardtinio1
Copy link

Release approved

@targos targos deleted the v13.12.0-proposal branch April 15, 2020 19:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
build Issues and PRs related to build files or the CI. doc Issues and PRs related to the documentations. meta Issues and PRs related to the general management of the project. npm Issues and PRs related to the npm client dependency or the npm registry.
Projects
None yet
Development

Successfully merging this pull request may close these issues.