-
Notifications
You must be signed in to change notification settings - Fork 30k
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
v8: fix call of its own deprecated API #25148
Conversation
85a170e
to
7bfcc1d
Compare
Shouldn't we be bumping the V8 node patch level since we're changing things in V8 code? |
@sam-github this is already fixed in newer V8 versions. |
@BridgeAR Great, do you know where to find the commit? We should be able to cherry-pick it back to master, right? |
Original commit message: [api] Deprecate ExternalStringResourceBase::IsCompressible R=yangguo@chromium.org Bug: v8:8238 Change-Id: Ia59aefc54c2e9f4fa3348c42fb45e7fadab8ee76 Reviewed-on: https://chromium-review.googlesource.com/c/1349231 Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#57788} Refs: v8/v8@26b145a
7bfcc1d
to
97671c3
Compare
Found it. Thanks for PTAL @ofrobots @hashseed @targos I don't know if we care about the difference between deprecated, and deprecated soon, but we could rewrite that small amount of the change if we do. |
If you wonder why it matters... It took me more than a minute just to scroll down in Chrome to the end of this travis build log because its so huge with v8 compiler warnings: |
If addons use this – which I would not expect – this is a breaking change, because it makes every external string appear “cacheable”, right? I’m not sure what exactly V8 does based on this flag, though.
That might indeed be easier… |
@addaleax this commit is only relevant for |
Landed in 59fa7f1 |
Original commit message: [api] Deprecate ExternalStringResourceBase::IsCompressible R=yangguo@chromium.org Bug: v8:8238 Change-Id: Ia59aefc54c2e9f4fa3348c42fb45e7fadab8ee76 Reviewed-on: https://chromium-review.googlesource.com/c/1349231 Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#57788} Refs: v8/v8@26b145a PR-URL: #25148 Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
Original commit message: [api] Deprecate ExternalStringResourceBase::IsCompressible R=yangguo@chromium.org Bug: v8:8238 Change-Id: Ia59aefc54c2e9f4fa3348c42fb45e7fadab8ee76 Reviewed-on: https://chromium-review.googlesource.com/c/1349231 Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#57788} Refs: v8/v8@26b145a PR-URL: nodejs#25148 Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com> Reviewed-By: Michaël Zasso <targos@protonmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com>
v8.h contains calls to the deprecated IsCompressible() API causing a
deprecated warning for every include of v8.h. The warning is disabled
for clang, but GNU compiler chains. Developer builds and ci build logs
are filled with pages and pages of warnings at the moment.
@targos @ofrobots @nodejs/v8 can any of you upstream this? The procedure to do so is complex for me, technically and legally. I can do it, but if its trivial for you it would be great if this could be fixed.
Btw, I don't have clang, but I suspect that it may support
GCC
pragmas, in which case the easier fix would to be to just change#pragma clang
to#pragma GCC
instead of a new if block forGCC
.Checklist
make -j4 test
(UNIX), orvcbuild test
(Windows) passes