- Sep 04, 2018
-
-
Ben Newman authored
Original commit message: [debug] Fully implement Debug::ArchiveDebug and Debug::RestoreDebug. I have a project that embeds V8 and uses a single `Isolate` from multiple threads. The program runs just fine, but sometimes the inspector doesn't stop on the correct line after stepping over a statement that switches threads behind the scenes, even though the original thread is restored by the time the next statement is executed. After some digging, I discovered that the `Debug::ArchiveDebug` and `Debug::RestoreDebug` methods, which should be responsible for saving/restoring this `ThreadLocal` information when switching threads, currently don't do anything. This commit implements those methods using MemCopy, in the style of other Archive/Restore methods in the V8 codebase. Related: https://groups.google.com/forum/#!topic/v8-users/_Qf2rwljRk8 R=yangguo@chromium.org,jgruber@chromium.org CC=info@bnoordhuis.nl Bug: v8:7230 Change-Id: Id517c873eb81cd53f7216c7efd441b956cf7f943 Reviewed-on: https://chromium-review.googlesource.com/833260 Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#54902} Refs: https://github.com/v8/v8/commit/a8f6869177685cfb9c199c454a86f4698c260515 Fix build errors by matching older V8 APIs used by Node. It looks like SetDebugDelegate(debug::DebugDelegate* delegate, bool pass_ownership) was simplified to just SetDebugDelegate(debug::DebugDelegate* delegate) in https://github.com/v8/v8/commit/37dcd837dbafa7f1175be5f01f0def013437c7e7, but the extra `pass_ownership` parameter is still there in the current version of `node/deps/v8`. I should be able to fix those tests by passing `false` for `pass_ownership`. Also, the `DebugDelegate::BreakProgramRequested` method lost a parameter in https://github.com/v8/v8/commit/e404670696b4c49d7f8adcdb075b98acab9967dd, but it's not a parameter I was using in my test, so there shouldn't be any harm in adding the `exec_state` parameter back to `BreakProgramRequested` (and continuing to ignore it). Skip restoring debug state unless thread previously in DebugScope. A simpler version of the changes I proposed upstream in this V8 change request: https://chromium-review.googlesource.com/c/v8/v8/+/1168449 In this version, Debug::RestoreDebug never attempts to enter a new DebugScope, but merely reuses the previous one, if we're returning to a thread that was previously in a DebugScope. If the thread was not previously in a DebugScope, I believe it does not need to have any debugging state restored with ClearOneShot and PrepareStep. The tests from https://chromium-review.googlesource.com/c/v8/v8/+/833260 still pass, and the failing V8-CI tests are now passing locally for me. PR-URL: https://github.com/nodejs/node/pull/22122 Reviewed-By:
Franziska Hinkelmann <franziska.hinkelmann@gmail.com> Reviewed-By:
Michaël Zasso <targos@protonmail.com>
-
Ali Ijaz Sheikh authored
PR-URL: https://github.com/nodejs/node/pull/22114 Reviewed-By:
James M Snell <jasnell@gmail.com>
-
Ali Ijaz Sheikh authored
Original commit message: [tracing] allow dynamic control of tracing If the trace_buffer_ was null, we were returning a pointer to a static flag back that permanently disabled that particular trace point. This implied an assumption that tracing will be statically enabled at process startup, and once it is disabled, it will never be enabled again. On Node.js side we want to dynamically enable/disable tracing as per programmer intent. Change-Id: Ic7a7839b8450ab5c356d85e8e0826f42824907f4 Reviewed-on: https://chromium-review.googlesource.com/1161518 Reviewed-by:Yang Guo <yangguo@chromium.org> Commit-Queue: Ali Ijaz Sheikh <ofrobots@google.com> Cr-Commit-Position: refs/heads/master@{#54903} Refs: https://github.com/v8/v8/commit/bf5ea8138c0726613c9d722a3ccb552a8f477992 PR-URL: https://github.com/nodejs/node/pull/22114 Reviewed-By:
James M Snell <jasnell@gmail.com>
-
Michaël Zasso authored
FreeBSD 10 is considered a Legacy Release by the FreeBSD project. Its latest version 10.4 was released in October 2017 and support for it is expected to EoL on October 31, 2018. Refs: https://www.freebsd.org/security/security.html#sup PR-URL: https://github.com/nodejs/node/pull/22617 Reviewed-By:
Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By:
Refael Ackermann <refack@gmail.com> Reviewed-By:
George Adams <george.adams@uk.ibm.com> Reviewed-By:
Gireesh Punathil <gpunathi@in.ibm.com> Reviewed-By:
Trivikram Kamat <trivikr.dev@gmail.com> Reviewed-By:
Сковорода Никита Андреевич <chalkerx@gmail.com> Reviewed-By:
Richard Lau <riclau@uk.ibm.com> Reviewed-By:
Matteo Collina <matteo.collina@gmail.com> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
Anna Henningsen <anna@addaleax.net> Reviewed-By:
Anatoli Papirovski <apapirovski@mac.com> Reviewed-By:
Denys Otrishko <shishugi@gmail.com>
-
Michaël Zasso authored
Fixes a regression introduced in a V8 backport PR. A small change in cctest/test-log.cc was forgotten. Refs: https://github.com/nodejs/node/pull/22028 Refs: https://github.com/v8/v8/commit/ba752ea4c50713dff1e94f45a79db3ba968a8d66 PR-URL: https://github.com/nodejs/node/pull/22677 Reviewed-By:
Anna Henningsen <anna@addaleax.net> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
Anatoli Papirovski <apapirovski@mac.com>
-
Anna Henningsen authored
This allows removing a number of special cases in other parts of the code, at least one of which was incorrect in expecting aligned input when that was not guaranteed. Fixes: https://github.com/nodejs/node/issues/22358 PR-URL: https://github.com/nodejs/node/pull/22622 Reviewed-By:
Tobias Nießen <tniessen@tnie.de>
-
Anna Henningsen authored
Using a `uint16_t` sequence for UTF-16 processing would typically imply that the sequence already contains the correct 16-bit code units. However, our API does not account for that. The previous comments were somewhat misleading, since endianness is typically applied to sequences of bytes, which is not something that this API works with. PR-URL: https://github.com/nodejs/node/pull/22623 Reviewed-By:
Colin Ihrig <cjihrig@gmail.com>
-
Anna Henningsen authored
Refs: https://github.com/nodejs/node/issues/22618 PR-URL: https://github.com/nodejs/node/pull/22625 Reviewed-By:
Anatoli Papirovski <apapirovski@mac.com> Reviewed-By:
Trivikram Kamat <trivikr.dev@gmail.com> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
Tobias Nießen <tniessen@tnie.de> Reviewed-By:
Richard Lau <riclau@uk.ibm.com> Reviewed-By:
Michaël Zasso <targos@protonmail.com> Reviewed-By:
Rich Trott <rtrott@gmail.com>
-
Anna Henningsen authored
PR-URL: https://github.com/nodejs/node/pull/22634 Reviewed-By:
Richard Lau <riclau@uk.ibm.com> Reviewed-By:
Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By:
Michaël Zasso <targos@protonmail.com> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
Luigi Pinca <luigipinca@gmail.com> Reviewed-By:
Rich Trott <rtrott@gmail.com>
-
Peter Marshall authored
[cpu-profiler] Add a new profiling mode with a more detailed call tree. https://chromium.googlesource.com/v8/v8.git/+/ecae80cdb350dde1e654c531b56f5b6c44dc8c77 [cpu-profiler] Reuse free slots in code_entries_ https://chromium.googlesource.com/v8/v8.git/+/3e1126bf15e62c433c4e9cb21316d182f691c63a [cpu-profiler] Only store deopt inline frames for functions that need it https://chromium.googlesource.com/v8/v8.git/+/0bfcbdd4726920755e51dab28c18ab93e050819b [cpu-profiler] Use instruction start as the key for the CodeMap https://chromium.googlesource.com/v8/v8.git/+/ba752ea4c50713dff1e94f45a79db3ba968a8d66 PR-URL: https://github.com/nodejs/node/pull/22028 Reviewed-By:
Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By:
Benedikt Meurer <benedikt.meurer@gmail.com>
-
- Sep 03, 2018
-
-
Rich Trott authored
Test is using `common.fileExists()` which has been removed. There is no need to check that the file exists as the attempt to read the file in the next line will fail if the file does not exist. Remove existence check. PR-URL: https://github.com/nodejs/node/pull/22674 Reviewed-By:
Daniel Bevenius <daniel.bevenius@gmail.com> Reviewed-By:
Anna Henningsen <anna@addaleax.net> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
Refael Ackermann <refack@gmail.com>
-
Gabriel Schulhof authored
Mention that ABI stability can be achieved only by linking to ABI- stable parts of Node.js and to other libraries which are ABI-stable. PR-URL: https://github.com/nodejs/node/pull/22508 Reviewed-By:
Luigi Pinca <luigipinca@gmail.com> Reviewed-By:
Michael Dawson <michael_dawson@ca.ibm.com>
-
Chris White authored
- Clarify that a `Readable` stream's reading mode (paused vs. flowing) is independent of its object mode (object vs. non-object). I am relatively new to Node streams, and was briefly confused while reading the docs by the two uses of the word "mode". - Copyediting: add missing apostrophes; minor grammatical changes PR-URL: https://github.com/nodejs/node/pull/22619 Reviewed-By:
Anna Henningsen <anna@addaleax.net> Reviewed-By:
Denys Otrishko <shishugi@gmail.com> Reviewed-By:
Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By:
Trivikram Kamat <trivikr.dev@gmail.com> Reviewed-By:
Luigi Pinca <luigipinca@gmail.com> Reviewed-By:
Matteo Collina <matteo.collina@gmail.com>
-
lakamsani authored
PR-URL: https://github.com/nodejs/node/pull/22639 Reviewed-By:
Richard Lau <riclau@uk.ibm.com> Reviewed-By:
Vse Mozhet Byt <vsemozhetbyt@gmail.com> Reviewed-By:
Сковорода Никита Андреевич <chalkerx@gmail.com> Reviewed-By:
Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By:
Luigi Pinca <luigipinca@gmail.com>
-
Daniel Bevenius authored
PR-URL: https://github.com/nodejs/node/pull/22670 Reviewed-By:
Denys Otrishko <shishugi@gmail.com> Reviewed-By:
Tobias Nießen <tniessen@tnie.de> Reviewed-By:
Gireesh Punathil <gpunathi@in.ibm.com> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
Rich Trott <rtrott@gmail.com> Reviewed-By:
Vse Mozhet Byt <vsemozhetbyt@gmail.com>
-
cjihrig authored
os.userInfo() takes an optional object as its first argument. getCheckedFunction() adds a context object to the argument list passed to the binding layer. The context object has the potential to confuse the binding layer, particularly if an error occurs. This commit makes userInfo() explicitly call into the binding layer with two arguments. PR-URL: https://github.com/nodejs/node/pull/22609 Refs: https://github.com/nodejs/node/pull/22599 Reviewed-By:
Daniel Bevenius <daniel.bevenius@gmail.com> Reviewed-By:
Anna Henningsen <anna@addaleax.net> Reviewed-By:
Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By:
Luigi Pinca <luigipinca@gmail.com>
-
Anna Henningsen authored
Using the same filename for different async tests could lead to race conditions. Example failure: https://travis-ci.com/nodejs/node/jobs/143351655 Refs: https://github.com/nodejs/node/pull/22150 PR-URL: https://github.com/nodejs/node/pull/22659 Reviewed-By:
Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By:
Michaël Zasso <targos@protonmail.com> Reviewed-By:
Rich Trott <rtrott@gmail.com>
-
Tobias Nießen authored
PR-URL: https://github.com/nodejs/node/pull/22607 Reviewed-By:
Rod Vagg <rod@vagg.org> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By:
Luigi Pinca <luigipinca@gmail.com>
-
Gireesh Punathil authored
PR-URL: https://github.com/nodejs/node/pull/22640 Reviewed-By:
Luigi Pinca <luigipinca@gmail.com> Reviewed-By:
Michaël Zasso <targos@protonmail.com> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
Richard Lau <riclau@uk.ibm.com> Reviewed-By:
Ruben Bridgewater <ruben@bridgewater.de>
-
Daniel Bevenius authored
Currently, the debug statement in emitReadable is `emit readable` which can be interpreted as the readable event is going to be emitted. But I think the intent of this debug statment is just that the emitReadable_ function was entered. If that was not the intent then perhaps the debug statment should be moved into the if statement below it. PR-URL: https://github.com/nodejs/node/pull/22613 Reviewed-By:
Denys Otrishko <shishugi@gmail.com> Reviewed-By:
Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By:
Luigi Pinca <luigipinca@gmail.com> Reviewed-By:
Matteo Collina <matteo.collina@gmail.com>
-
Daniel Bevenius authored
On a aarch64 system I can run the complete build with tests without specifying the Makefile variable DESTCPU. But when running the tar-headers target DESTCPU is passed to configure: $(PYTHON) ./configure \ --prefix=/ \ --dest-cpu=$(DESTCPU) \ ... The value of DESTCPU in this case will be aarch64 which will cause configure to fail: configure: error: option --dest-cpu: invalid choice: 'aarch64' (choose from 'arm', 'arm64', 'ia32', 'mips', 'mipsel', 'mips64el', 'ppc', 'ppc64', 'x32', 'x64', 'x86', 'x86_64', 's390', 's390x') In the configure script there is a matching of __aarch64__ to arm64: $ python -c 'from configure import host_arch_cc; print host_arch_cc()' arm64 In our case it would be nice to have consitent behaviour for both of these cases on aarch64. This commit changes DESTCPU to arm64 to be consistent with the configure script. DESTCPU is used in $(TARBALL)-headers and in $(BINARYTAR) but I'm not sure about the implications of making the change purposed and hope others might chime in and provide some guidance. PR-URL: https://github.com/nodejs/node/pull/22548 Reviewed-By:Richard Lau <riclau@uk.ibm.com> Reviewed-By:
Refael Ackermann <refack@gmail.com>
-
Anna Henningsen authored
This fixes `parallel/test-cli-node-print-help` when Node.js is compiled without the inspector. PR-URL: https://github.com/nodejs/node/pull/22657 Reviewed-By:
Gireesh Punathil <gpunathi@in.ibm.com> Reviewed-By:
Michaël Zasso <targos@protonmail.com> Reviewed-By:
Rich Trott <rtrott@gmail.com> Reviewed-By:
Refael Ackermann <refack@gmail.com> Reviewed-By:
Denys Otrishko <shishugi@gmail.com>
-
Anna Henningsen authored
This should be part of public class definitions for Windows embedders who use a DLL interface for accessing Node. PR-URL: https://github.com/nodejs/node/pull/22559 Reviewed-By:
Daniel Bevenius <daniel.bevenius@gmail.com> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com>
-
Chin Huang authored
Add trace points to dns under node.dns.native category. Emit trace events for dns operations. Use the nestable async events instead of deprecated ones. Include test code to verify the trace log. The trace name is stored as const char* class variable. The test code is to check each operation in separate sync processes. Refs: https://github.com/nodejs/node/pull/19157 PR-URL: https://github.com/nodejs/node/pull/21840 Reviewed-By:
Anna Henningsen <anna@addaleax.net> Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Gireesh Punathil <gpunathi@in.ibm.com> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
Joyee Cheung <joyeec9h3@gmail.com>
-
James M Snell authored
PR-URL: https://github.com/nodejs/node/pull/22557 Reviewed-By:
Anna Henningsen <anna@addaleax.net> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
Weijia Wang <starkwang@126.com> Reviewed-By:
Luigi Pinca <luigipinca@gmail.com> Reviewed-By:
Ruben Bridgewater <ruben@bridgewater.de>
-
Tobias Nießen authored
PR-URL: https://github.com/nodejs/node/pull/22654 Reviewed-By:
Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By:
Anna Henningsen <anna@addaleax.net> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
Denys Otrishko <shishugi@gmail.com>
-
pranshuchittora authored
Documentation for BufferwriteDoubleLE/writeDoubleBE is confusing PR-URL: https://github.com/nodejs/node/pull/22170 Fixes: https://github.com/nodejs/node/issues/22158 Reviewed-By:
Vse Mozhet Byt <vsemozhetbyt@gmail.com> Reviewed-By:
Luigi Pinca <luigipinca@gmail.com> Reviewed-By:
Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By:
Anna Henningsen <anna@addaleax.net>
-
- Sep 02, 2018
-
-
Vse Mozhet Byt authored
`fsPromises.ftruncate()` is neither documented nor exported. PR-URL: https://github.com/nodejs/node/pull/22635 Reviewed-By:
Anna Henningsen <anna@addaleax.net> Reviewed-By:
Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
Michaël Zasso <targos@protonmail.com> Reviewed-By:
Luigi Pinca <luigipinca@gmail.com> Reviewed-By:
Gireesh Punathil <gpunathi@in.ibm.com>
-
Anna Henningsen authored
These variables should never have been exposed as part of the public API, and certainly not as variables. Using CLI options parser is the right thing to do here, at least until we expose some part of the options parser API publicly (which should be possible to do now). PR-URL: https://github.com/nodejs/node/pull/22515 Reviewed-By:
Gus Caplan <me@gus.host> Reviewed-By:
Refael Ackermann <refack@gmail.com> Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Trivikram Kamat <trivikr.dev@gmail.com> Reviewed-By:
Colin Ihrig <cjihrig@gmail.com> Reviewed-By:
Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By:
Tobias Nießen <tniessen@tnie.de> Reviewed-By:
Ruben Bridgewater <ruben@bridgewater.de>
-
Ujjwal Sharma authored
Remove all calls to deprecated v8 functions (here: Value::Uint32Value) inside the code (src directory only). PR-URL: https://github.com/nodejs/node/pull/22143 Reviewed-By:
Anna Henningsen <anna@addaleax.net> Reviewed-By:
Denys Otrishko <shishugi@gmail.com>
-
Sam Ruby authored
Parse `const assert = module.exports = ok;` as exporting a constructor named `assert`. PR-URL: https://github.com/nodejs/node/pull/22601 Reviewed-By:
Anna Henningsen <anna@addaleax.net> Reviewed-By:
Ruben Bridgewater <ruben@bridgewater.de>
-
Ujjwal Sharma authored
Rework all affected functions to use Maybes, thus improving error handling substantially in internal functions, API functions as well as utilities. Co-authored-by:
Michaël Zasso <targos@protonmail.com> PR-URL: https://github.com/nodejs/node/pull/21935 Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Anna Henningsen <anna@addaleax.net>
-
Ujjwal Sharma authored
Remove all calls to deprecated v8 functions (here: Value::ToString) inside the code (src directory only). PR-URL: https://github.com/nodejs/node/pull/21935 Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
Anna Henningsen <anna@addaleax.net>
-
Bartosz Sosnowski authored
When building from clean checkout, `vcbuild` will produce superfluous error message about missing .tmp_gyp_configure_stamp and .gyp_configure_stamp. This removes both those messages. PR-URL: https://github.com/nodejs/node/pull/22580 Reviewed-By:
Refael Ackermann <refack@gmail.com>
-
Tobias Nießen authored
The native crypto module doesn't export INT_MAX, so all occurrences in the JavaScript layer evaluated to undefined. This change removes all such occurrences and replaces validateInt32 with validateUint32 since the native layer assumes uint32_t anyway. The alternative would be to use the constant from the constants module, but that would be pointless as far as I can tell. PR-URL: https://github.com/nodejs/node/pull/22581 Reviewed-By:
Anna Henningsen <anna@addaleax.net> Reviewed-By:
Ruben Bridgewater <ruben@bridgewater.de>
-
Rich Trott authored
The `options` argument to `tls.createSecureContext()` is optional. Indicate this by using `[` and `]` in the function signature. PR-URL: https://github.com/nodejs/node/pull/22545 Reviewed-By:
Vse Mozhet Byt <vsemozhetbyt@gmail.com> Reviewed-By:
Luigi Pinca <luigipinca@gmail.com> Reviewed-By:
Trivikram Kamat <trivikr.dev@gmail.com> Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
George Adams <george.adams@uk.ibm.com>
-
Rich Trott authored
Options are, by definition, optional. Remove specification of some options as "optional". PR-URL: https://github.com/nodejs/node/pull/22545 Reviewed-By:
Vse Mozhet Byt <vsemozhetbyt@gmail.com> Reviewed-By:
Luigi Pinca <luigipinca@gmail.com> Reviewed-By:
Trivikram Kamat <trivikr.dev@gmail.com> Reviewed-By:
James M Snell <jasnell@gmail.com> Reviewed-By:
George Adams <george.adams@uk.ibm.com>
-
Tobias Nießen authored
This is an attempt to make the behavior of setAuthTag match the documentation: In GCM mode, it can be called at any time before invoking final, even after the last call to update. Fixes: https://github.com/nodejs/node/issues/22421 PR-URL: https://github.com/nodejs/node/pull/22538 Reviewed-By:
Anna Henningsen <anna@addaleax.net>
-
TomCoded authored
PR-URL: https://github.com/nodejs/node/pull/22494 Fixes: https://github.com/nodejs/node/issues/22464 Reviewed-By:
Anna Henningsen <anna@addaleax.net> Reviewed-By:
George Adams <george.adams@uk.ibm.com>
-
Anna Henningsen authored
PR-URL: https://github.com/nodejs/node/pull/22489 Reviewed-By:
Richard Lau <riclau@uk.ibm.com> Reviewed-By:
Luigi Pinca <luigipinca@gmail.com> Reviewed-By:
Refael Ackermann <refack@gmail.com>
-