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

build: add V8 embedder version string #15785

Closed
wants to merge 3 commits into from

Conversation

targos
Copy link
Member

@targos targos commented Oct 5, 2017

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

Original commit message:

    [build] Introduce an embedder version string

    Sometimes, the embedder might want to merge a fix to an abandoned branch
    or to a supported branch but the fix is not relevant to Chromium.
    This adds a new version string that the embedder can set at compile time
    and that will be appended to the official V8 version.
    The separator must be provided in the string. For instance, to have a
    full version string like "6.0.287.53-emb.1", the embedder must set
    V8_EMBEDDER_STRING to "-emb.1".

    Related Node.js issue: nodejs#9754

    BUG=v8:5740
    R=machenbach@chromium.org

    Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
    Change-Id: Ifa2d9bd213795e6d54886436f8c3787ac6162823
    Reviewed-on: https://chromium-review.googlesource.com/690475
    Reviewed-by: Michael Achenbach <machenbach@chromium.org>
    Reviewed-by: Yang Guo <yangguo@chromium.org>
    Commit-Queue: Michaël Zasso <mic.besace@gmail.com>
    Cr-Commit-Position: refs/heads/master@{nodejs#48301}
@targos targos added build Issues and PRs related to build files or the CI. semver-major PRs that contain breaking changes and should be released in the next major version. labels Oct 5, 2017
@nodejs-github-bot nodejs-github-bot added the lib / src Issues and PRs related to general changes in the lib or src directory. label Oct 5, 2017
After this commit, `process.versions.v8` will look like:
"6.0.287.53-node.0".
The goal is that everytime we apply a non-official patch to `deps/v8`,
we increment our own number instead of V8's patch level.
This number must be set back to 0 after major V8 updates.

Closes: nodejs#15698
@targos
Copy link
Member Author

targos commented Oct 5, 2017

/cc @nodejs/v8

@gibfahn
Copy link
Member

gibfahn commented Oct 5, 2017

Should the guide be updated?

@targos
Copy link
Member Author

targos commented Oct 5, 2017

@gibfahn you are right. I hope to have some time during the collab summit to work on that (and submit another PR) because I think this guide needs more in-depth changes.

@gibfahn
Copy link
Member

gibfahn commented Oct 5, 2017

I think this guide needs more in-depth changes.

I'm sure you're right, and please do rewrite, but for this PR I think you can just change this line:

Increase the patch level version in v8-version.h. This will not cause any problems with versioning because V8 will not publish other patches for this branch, so Node.js can effectively bump the patch version.

@targos
Copy link
Member Author

targos commented Oct 6, 2017

I pushed a small change to the guide. PTAL

Copy link
Contributor

@ofrobots ofrobots left a comment

Choose a reason for hiding this comment

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

LGTM w/ nit: 4c0a7d8 uses a 'Closes: ' tag in the commit message footer instead of 'Fixes: '.

@targos
Copy link
Member Author

targos commented Oct 6, 2017

@gibfahn
Copy link
Member

gibfahn commented Oct 6, 2017

Similar to #16053 (comment), should the cherry-pick be requested for backport to V8 6.1 in V8?

@targos
Copy link
Member Author

targos commented Oct 6, 2017

We can try but this change is not a bug fix, so a backmerge would probably be rejected

@targos targos added this to the 9.0.0 milestone Oct 7, 2017
@MylesBorins
Copy link
Contributor

@targos is this landed in 6.2?

@hashseed
Copy link
Member

No. 6.3.

@MylesBorins
Copy link
Contributor

@hashseed is it too late to request a backport to 6.2?

@hashseed
Copy link
Member

@natorion what's your take on this? This change is not a bug fix. Then again it would not affect Chromium. Can we backport this?

Copy link
Member

@mhdawson mhdawson left a comment

Choose a reason for hiding this comment

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

LGTM

targos added a commit that referenced this pull request Oct 18, 2017
Original commit message:

    [build] Introduce an embedder version string

    Sometimes, the embedder might want to merge a fix to an abandoned branch
    or to a supported branch but the fix is not relevant to Chromium.
    This adds a new version string that the embedder can set at compile time
    and that will be appended to the official V8 version.
    The separator must be provided in the string. For instance, to have a
    full version string like "6.0.287.53-emb.1", the embedder must set
    V8_EMBEDDER_STRING to "-emb.1".

    Related Node.js issue: #9754

    BUG=v8:5740
    R=machenbach@chromium.org

    Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
    Change-Id: Ifa2d9bd213795e6d54886436f8c3787ac6162823
    Reviewed-on: https://chromium-review.googlesource.com/690475
    Reviewed-by: Michael Achenbach <machenbach@chromium.org>
    Reviewed-by: Yang Guo <yangguo@chromium.org>
    Commit-Queue: Michaël Zasso <mic.besace@gmail.com>
    Cr-Commit-Position: refs/heads/master@{#48301}

Refs: v8/v8@b096c44
PR-URL: #15785
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com>
Reviewed-By: Ali Ijaz Sheikh <ofrobots@google.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
targos added a commit that referenced this pull request Oct 18, 2017
After this commit, `process.versions.v8` will look like:
"6.0.287.53-node.0".
The goal is that everytime we apply a non-official patch to `deps/v8`,
we increment our own number instead of V8's patch level.
This number must be set back to 0 after major V8 updates.

Fixes: #15698
PR-URL: #15785
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com>
Reviewed-By: Ali Ijaz Sheikh <ofrobots@google.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
@targos
Copy link
Member Author

targos commented Oct 18, 2017

Landed in acb9b8f and 70832bc

@targos targos closed this Oct 18, 2017
@targos targos deleted the v8-embedder-version branch October 18, 2017 16:20
targos added a commit to targos/node that referenced this pull request Oct 18, 2017
Original commit message:

    [build] Introduce an embedder version string

    Sometimes, the embedder might want to merge a fix to an abandoned branch
    or to a supported branch but the fix is not relevant to Chromium.
    This adds a new version string that the embedder can set at compile time
    and that will be appended to the official V8 version.
    The separator must be provided in the string. For instance, to have a
    full version string like "6.0.287.53-emb.1", the embedder must set
    V8_EMBEDDER_STRING to "-emb.1".

    Related Node.js issue: nodejs#9754

    BUG=v8:5740
    R=machenbach@chromium.org

    Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
    Change-Id: Ifa2d9bd213795e6d54886436f8c3787ac6162823
    Reviewed-on: https://chromium-review.googlesource.com/690475
    Reviewed-by: Michael Achenbach <machenbach@chromium.org>
    Reviewed-by: Yang Guo <yangguo@chromium.org>
    Commit-Queue: Michaël Zasso <mic.besace@gmail.com>
    Cr-Commit-Position: refs/heads/master@{nodejs#48301}

Refs: v8/v8@b096c44
PR-URL: nodejs#15785
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com>
Reviewed-By: Ali Ijaz Sheikh <ofrobots@google.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
targos added a commit that referenced this pull request Oct 19, 2017
Original commit message:

    [build] Introduce an embedder version string

    Sometimes, the embedder might want to merge a fix to an abandoned branch
    or to a supported branch but the fix is not relevant to Chromium.
    This adds a new version string that the embedder can set at compile time
    and that will be appended to the official V8 version.
    The separator must be provided in the string. For instance, to have a
    full version string like "6.0.287.53-emb.1", the embedder must set
    V8_EMBEDDER_STRING to "-emb.1".

    Related Node.js issue: #9754

    BUG=v8:5740
    R=machenbach@chromium.org

    Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
    Change-Id: Ifa2d9bd213795e6d54886436f8c3787ac6162823
    Reviewed-on: https://chromium-review.googlesource.com/690475
    Reviewed-by: Michael Achenbach <machenbach@chromium.org>
    Reviewed-by: Yang Guo <yangguo@chromium.org>
    Commit-Queue: Michaël Zasso <mic.besace@gmail.com>
    Cr-Commit-Position: refs/heads/master@{#48301}

Refs: v8/v8@b096c44
PR-URL: #15785
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com>
Reviewed-By: Ali Ijaz Sheikh <ofrobots@google.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
addaleax pushed a commit to ayojs/ayo that referenced this pull request Oct 26, 2017
Original commit message:

    [build] Introduce an embedder version string

    Sometimes, the embedder might want to merge a fix to an abandoned branch
    or to a supported branch but the fix is not relevant to Chromium.
    This adds a new version string that the embedder can set at compile time
    and that will be appended to the official V8 version.
    The separator must be provided in the string. For instance, to have a
    full version string like "6.0.287.53-emb.1", the embedder must set
    V8_EMBEDDER_STRING to "-emb.1".

    Related Node.js issue: nodejs/node#9754

    BUG=v8:5740
    R=machenbach@chromium.org

    Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
    Change-Id: Ifa2d9bd213795e6d54886436f8c3787ac6162823
    Reviewed-on: https://chromium-review.googlesource.com/690475
    Reviewed-by: Michael Achenbach <machenbach@chromium.org>
    Reviewed-by: Yang Guo <yangguo@chromium.org>
    Commit-Queue: Michaël Zasso <mic.besace@gmail.com>
    Cr-Commit-Position: refs/heads/master@{#48301}

Refs: v8/v8@b096c44
PR-URL: nodejs/node#15785
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com>
Reviewed-By: Ali Ijaz Sheikh <ofrobots@google.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
addaleax pushed a commit to ayojs/ayo that referenced this pull request Oct 26, 2017
After this commit, `process.versions.v8` will look like:
"6.0.287.53-node.0".
The goal is that everytime we apply a non-official patch to `deps/v8`,
we increment our own number instead of V8's patch level.
This number must be set back to 0 after major V8 updates.

Fixes: nodejs/node#15698
PR-URL: nodejs/node#15785
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com>
Reviewed-By: Ali Ijaz Sheikh <ofrobots@google.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
addaleax pushed a commit to ayojs/ayo that referenced this pull request Oct 26, 2017
Original commit message:

    [build] Introduce an embedder version string

    Sometimes, the embedder might want to merge a fix to an abandoned branch
    or to a supported branch but the fix is not relevant to Chromium.
    This adds a new version string that the embedder can set at compile time
    and that will be appended to the official V8 version.
    The separator must be provided in the string. For instance, to have a
    full version string like "6.0.287.53-emb.1", the embedder must set
    V8_EMBEDDER_STRING to "-emb.1".

    Related Node.js issue: nodejs/node#9754

    BUG=v8:5740
    R=machenbach@chromium.org

    Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
    Change-Id: Ifa2d9bd213795e6d54886436f8c3787ac6162823
    Reviewed-on: https://chromium-review.googlesource.com/690475
    Reviewed-by: Michael Achenbach <machenbach@chromium.org>
    Reviewed-by: Yang Guo <yangguo@chromium.org>
    Commit-Queue: Michaël Zasso <mic.besace@gmail.com>
    Cr-Commit-Position: refs/heads/master@{#48301}

Refs: v8/v8@b096c44
PR-URL: nodejs/node#15785
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com>
Reviewed-By: Ali Ijaz Sheikh <ofrobots@google.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
addaleax pushed a commit to ayojs/ayo that referenced this pull request Dec 7, 2017
Original commit message:

    [build] Introduce an embedder version string

    Sometimes, the embedder might want to merge a fix to an abandoned branch
    or to a supported branch but the fix is not relevant to Chromium.
    This adds a new version string that the embedder can set at compile time
    and that will be appended to the official V8 version.
    The separator must be provided in the string. For instance, to have a
    full version string like "6.0.287.53-emb.1", the embedder must set
    V8_EMBEDDER_STRING to "-emb.1".

    Related Node.js issue: nodejs/node#9754

    BUG=v8:5740
    R=machenbach@chromium.org

    Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
    Change-Id: Ifa2d9bd213795e6d54886436f8c3787ac6162823
    Reviewed-on: https://chromium-review.googlesource.com/690475
    Reviewed-by: Michael Achenbach <machenbach@chromium.org>
    Reviewed-by: Yang Guo <yangguo@chromium.org>
    Commit-Queue: Michaël Zasso <mic.besace@gmail.com>
    Cr-Commit-Position: refs/heads/master@{#48301}

Refs: v8/v8@b096c44
PR-URL: nodejs/node#15785
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com>
Reviewed-By: Ali Ijaz Sheikh <ofrobots@google.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
addaleax pushed a commit to ayojs/ayo that referenced this pull request Dec 7, 2017
After this commit, `process.versions.v8` will look like:
"6.0.287.53-node.0".
The goal is that everytime we apply a non-official patch to `deps/v8`,
we increment our own number instead of V8's patch level.
This number must be set back to 0 after major V8 updates.

Fixes: nodejs/node#15698
PR-URL: nodejs/node#15785
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com>
Reviewed-By: Ali Ijaz Sheikh <ofrobots@google.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
addaleax pushed a commit to ayojs/ayo that referenced this pull request Dec 7, 2017
Original commit message:

    [build] Introduce an embedder version string

    Sometimes, the embedder might want to merge a fix to an abandoned branch
    or to a supported branch but the fix is not relevant to Chromium.
    This adds a new version string that the embedder can set at compile time
    and that will be appended to the official V8 version.
    The separator must be provided in the string. For instance, to have a
    full version string like "6.0.287.53-emb.1", the embedder must set
    V8_EMBEDDER_STRING to "-emb.1".

    Related Node.js issue: nodejs/node#9754

    BUG=v8:5740
    R=machenbach@chromium.org

    Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng
    Change-Id: Ifa2d9bd213795e6d54886436f8c3787ac6162823
    Reviewed-on: https://chromium-review.googlesource.com/690475
    Reviewed-by: Michael Achenbach <machenbach@chromium.org>
    Reviewed-by: Yang Guo <yangguo@chromium.org>
    Commit-Queue: Michaël Zasso <mic.besace@gmail.com>
    Cr-Commit-Position: refs/heads/master@{#48301}

Refs: v8/v8@b096c44
PR-URL: nodejs/node#15785
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com>
Reviewed-By: Ali Ijaz Sheikh <ofrobots@google.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
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. lib / src Issues and PRs related to general changes in the lib or src directory. semver-major PRs that contain breaking changes and should be released in the next major version.
Projects
None yet
Development

Successfully merging this pull request may close these issues.