FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

build: add node_module_version to config.gypi by saper · Pull Request #7808 · nodejs/node · GitHub

/ node Public

build: add node_module_version to config.gypi - #7808

Closed
saper wants to merge 2 commits into
nodejs:v0.10-stagingfrom
saper:node_module_version/v0.10
Closed

build: add node_module_version to config.gypi#7808
saper wants to merge 2 commits into
nodejs:v0.10-stagingfrom
saper:node_module_version/v0.10

Conversation

saper commented Jul 20, 2016

Copy link
Copy Markdown

Enable targetting of a different node version than
the currently running one when building binary modules.

This is extracted from 410296c37

PR-URL: nodejs/node-gyp#855

Work around spec violations in V8 where it checks that `this == NULL`.
GCC 6 started exploiting this particular kind of UB, resulting in
runtime crashes.

Fixes: nodejs#6724
PR-URL: nodejs#6738
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Michaël Zasso <mic.besace@gmail.com>
Comment thread test/simple/test-module-version.js Outdated

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

Missing ;

Copy link
Copy Markdown
Member

LGTM with style nit.

cc @nodejs/lts

Copy link
Copy Markdown
Contributor

I'm not sure we'd actually backport this kinda thing to v0.10... @nodejs/lts

Copy link
Copy Markdown
Member

I commented on that here. I think a case for an exception can be made here.

saper commented Jul 20, 2016
edited
Loading

Copy link
Copy Markdown
Author

For example at https://github.com/sass/node-sass/releases/tag/v3.8.0 we are building binaries for all known node modules versions. It would be easier to support and cross-compile to older node versions if they need not be installed. Having the same interface in the config.gypi would be really cool, without resorting to workarounds like manual parsing of the node header files. Having it only in the newest version kind of defeats its purpose - it works only for the current and the future versions. For legacy versions, one would need to resort to manual version guessing.

One uses always the latest v0.10, v0.12 etc. headers and config.gypi files anyway, so if this change makes it into, say, v0.10.47 and v0.12.16, I don't need to bother about older 0.10 and 0.12 versions, since the binaries will work there, too.

rvagg commented Jul 20, 2016

Copy link
Copy Markdown
Member

@saper you could hardwire values for 0.10 and 0.12 though, right? those are fixed numbers and not going to change (same with every other major but I take the point about it being easier into the future).

saper force-pushed the node_module_version/v0.10 branch 2 times, most recently from 9ff899f to d108c3b Compare July 20, 2016 12:44

jasnell commented Aug 1, 2016

Copy link
Copy Markdown
Member

I've no objections to backporting this to v0.10 with the caveat that anything that depends on process.config is inherently flaky.

This PR LGTM.

jasnell commented Aug 4, 2016

Copy link
Copy Markdown
Member

@nodejs/lts ... any additional thoughts? I'm inclined to land unless there are objections.

saper commented Aug 4, 2016

Copy link
Copy Markdown
Author

Should I prepare pull requests for 0.12 and LTS?

Copy link
Copy Markdown
Member

@saper Yes, go ahead. One small style nit: can you capitalize the comments in the test?

saper force-pushed the node_module_version/v0.10 branch from d108c3b to 4c24cb3 Compare August 8, 2016 23:03

saper commented Aug 8, 2016

Copy link
Copy Markdown
Author

Nit fixed, thank you.

jasnell commented Aug 18, 2016

Copy link
Copy Markdown
Member

ping @bnoordhuis ... does this LGTY?

Copy link
Copy Markdown
Member

The test could use assert.equal() when comparing the numbers. LGTM either way though.

To who lands this: s/Provide/provide/ in the title of the commit and maybe drop the quotes so it fits in 50 columns.

saper force-pushed the node_module_version/v0.10 branch from cb47e37 to 3f7a52b Compare August 18, 2016 20:52

jasnell commented Aug 18, 2016

Copy link
Copy Markdown
Member

Oh, right, didn't notice that this was against v0.10 directly. Either we can open a new PR against v0.10-staging or we can roll the dice with GitHubs new PR-retargeting feature.

saper changed the base branch from v0.10 to v0.10-staging August 18, 2016 22:15
saper force-pushed the node_module_version/v0.10 branch from 3f7a52b to 7299eac Compare August 18, 2016 22:16

saper commented Aug 18, 2016

Copy link
Copy Markdown
Author

@jasnell just tried that and I think it might have worked (I got 5 commits after retarget so I have pushed a cherry-picked commit)

Comment thread test/simple/test-module-version.js Outdated

jasnell Aug 18, 2016
edited
Loading

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

can you use const here please :-)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

ugh.. ha! nevermind... v0.10.... silly me

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

Do you think we might actually want to add const in the current trunk?

var assert = require('assert');

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

We should be using const in master, definitely, but by itself that's not enough of a reason to update the test case if it's not using const already. Best to leave it unless there are other changes to make.

Comment thread test/simple/test-module-version.js Outdated

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

assert.strictEqual() here instead of assert.equal()

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

Apologies, I said assert.equal() because I had a fuzzy notion that strictEqual() doesn't exist in v0.10. I was probably thinking of deepStrictEqual().

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Choose a reason Spam Abuse Off Topic Outdated Duplicate Resolved Low Quality

No problem, happy to learn more about differences between node engines.

Enable targetting of a different node version than
the currently running one when building binary modules.

Based on nodejs/node@410296c37

PR-URL: nodejs#7808
Ref: nodejs/node-gyp#855
saper force-pushed the node_module_version/v0.10 branch from 7299eac to 6a47a07 Compare August 18, 2016 22:39
saper added a commit to saper/node that referenced this pull request Aug 18, 2016
Enable targetting of a different node version than
the currently running one when building binary modules.

Based on nodejs/node@410296c37

PR-URL: nodejs#8027
Ref: nodejs#7808
Ref: nodejs/node-gyp#855

saper commented Aug 18, 2016

Copy link
Copy Markdown
Author

@jasnell voilà!

saper added a commit to saper/node that referenced this pull request Aug 19, 2016
Enable targetting of a different node version than
the currently running one when building binary modules.

Based on nodejs/node@410296c37

PR-URL: nodejs#8171
Ref: nodejs#8027
Ref: nodejs#7808
Ref: nodejs/node-gyp#855
jasnell pushed a commit that referenced this pull request Aug 22, 2016
Enable targetting of a different node version than
the currently running one when building binary modules.

Based on 410296c37

PR-URL: #8171
Ref: #8027
Ref: #7808
Ref: nodejs/node-gyp#855
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
MylesBorins pushed a commit that referenced this pull request Sep 28, 2016
Enable targetting of a different node version than
the currently running one when building binary modules.

Based on 410296c37

PR-URL: #8171
Ref: #8027
Ref: #7808
Ref: nodejs/node-gyp#855
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
rvagg pushed a commit that referenced this pull request Oct 18, 2016
Enable targetting of a different node version than
the currently running one when building binary modules.

Based on 410296c37

PR-URL: #8171
Ref: #8027
Ref: #7808
Ref: nodejs/node-gyp#855
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
MylesBorins pushed a commit that referenced this pull request Oct 26, 2016
Enable targetting of a different node version than
the currently running one when building binary modules.

Based on 410296c37

PR-URL: #8171
Ref: #8027
Ref: #7808
Ref: nodejs/node-gyp#855
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>

jasnell commented Oct 26, 2016

Copy link
Copy Markdown
Member

@nodejs/lts... this appears to be the only still open PR based on v0.10-staging. Given that it's not likely that we'll be cutting a new v0.10, I recommend that we go ahead and close this.

mscdex removed the v0.10 label Nov 14, 2016
saper added a commit to saper/node that referenced this pull request Dec 20, 2016
Enable targetting of a different node version than
the currently running one when building binary modules.

Based on nodejs/node@410296c37

PR-URL: nodejs#8027
Ref: nodejs#7808
Ref: nodejs/node-gyp#855
bnoordhuis pushed a commit to bnoordhuis/io.js that referenced this pull request Dec 20, 2016
Enable targetting of a different node version than
the currently running one when building binary modules.

Based on nodejs/node@410296c37

PR-URL: nodejs#8027
Ref: nodejs#7808
Ref: nodejs/node-gyp#855

jasnell commented Jan 6, 2017

Copy link
Copy Markdown
Member

Closing given that v0.10 is no longer actively supported

jasnell closed this Jan 6, 2017

saper commented Jan 6, 2017

Copy link
Copy Markdown
Author

Thanks, if there will be no 0.10 release this makes no point.

This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
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.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants


Back | FazBrowse Home | New Git URL