process: move DEP0062 (node --debug) to end-of-life
This has already been practically end-of-life since `node --debug` alone would exit the process. This patch drops support of `node --inspect --debug-brk` as well. `node --inspect --debug-brk` has been deprecated since v8, it has been maintained so that vendors can target Node.js v6 and above without detecting versions. The support of `--inspect`, which starts from v6, will reach end-of-life in April 2019, it should be safe to drop the support of `--inspect --debug-brk` altogether in v12. Also removes `process._deprecatedDebugBrk` PR-URL: https://github.com/nodejs/node/pull/25828 Refs: https://github.com/nodejs/node/pull/12949 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Eugene Ostroukhov <eostroukhov@google.com> Reviewed-By: Richard Lau <riclau@uk.ibm.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
This commit is contained in:
parent
154efc9bde
commit
fa5e097530
@ -1279,9 +1279,12 @@ changes:
|
|||||||
- version: v8.0.0
|
- version: v8.0.0
|
||||||
pr-url: https://github.com/nodejs/node/pull/10970
|
pr-url: https://github.com/nodejs/node/pull/10970
|
||||||
description: Runtime deprecation.
|
description: Runtime deprecation.
|
||||||
|
- version: REPLACEME
|
||||||
|
pr-url: https://github.com/nodejs/node/pull/25828
|
||||||
|
description: End-of-Life.
|
||||||
-->
|
-->
|
||||||
|
|
||||||
Type: Runtime
|
Type: End-Of-Life
|
||||||
|
|
||||||
`--debug` activates the legacy V8 debugger interface, which was removed as
|
`--debug` activates the legacy V8 debugger interface, which was removed as
|
||||||
of V8 5.8. It is replaced by Inspector which is activated with `--inspect`
|
of V8 5.8. It is replaced by Inspector which is activated with `--inspect`
|
||||||
|
@ -203,14 +203,6 @@ Object.defineProperty(process, 'argv0', {
|
|||||||
});
|
});
|
||||||
process.argv[0] = process.execPath;
|
process.argv[0] = process.execPath;
|
||||||
|
|
||||||
// Handle `--debug*` deprecation and invalidation.
|
|
||||||
if (process._deprecatedDebugBrk) {
|
|
||||||
process.emitWarning(
|
|
||||||
'`node --inspect --debug-brk` is deprecated. ' +
|
|
||||||
'Please use `node --inspect-brk` instead.',
|
|
||||||
'DeprecationWarning', 'DEP0062', undefined, true);
|
|
||||||
}
|
|
||||||
|
|
||||||
const { deprecate } = NativeModule.require('internal/util');
|
const { deprecate } = NativeModule.require('internal/util');
|
||||||
{
|
{
|
||||||
// Install legacy getters on the `util` binding for typechecking.
|
// Install legacy getters on the `util` binding for typechecking.
|
||||||
|
@ -36,6 +36,11 @@ void DebugOptions::CheckOptions(std::vector<std::string>* errors) {
|
|||||||
"are invalid. Please use `node --inspect` or "
|
"are invalid. Please use `node --inspect` or "
|
||||||
"`node --inspect-brk` instead.");
|
"`node --inspect-brk` instead.");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (deprecated_debug && inspector_enabled && break_first_line) {
|
||||||
|
errors->push_back("[DEP0062]: `node --inspect --debug-brk` is deprecated. "
|
||||||
|
"Please use `node --inspect-brk` instead.");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void PerProcessOptions::CheckOptions(std::vector<std::string>* errors) {
|
void PerProcessOptions::CheckOptions(std::vector<std::string>* errors) {
|
||||||
|
@ -75,12 +75,6 @@ class DebugOptions : public Options {
|
|||||||
|
|
||||||
HostPort host_port{"127.0.0.1", kDefaultInspectorPort};
|
HostPort host_port{"127.0.0.1", kDefaultInspectorPort};
|
||||||
|
|
||||||
bool deprecated_invocation() const {
|
|
||||||
return deprecated_debug &&
|
|
||||||
inspector_enabled &&
|
|
||||||
break_first_line;
|
|
||||||
}
|
|
||||||
|
|
||||||
bool wait_for_connect() const {
|
bool wait_for_connect() const {
|
||||||
return break_first_line || break_node_first_line;
|
return break_first_line || break_node_first_line;
|
||||||
}
|
}
|
||||||
|
@ -259,12 +259,6 @@ MaybeLocal<Object> CreateProcessObject(
|
|||||||
"_breakNodeFirstLine", True(env->isolate()));
|
"_breakNodeFirstLine", True(env->isolate()));
|
||||||
}
|
}
|
||||||
|
|
||||||
// --inspect --debug-brk
|
|
||||||
if (env->options()->debug_options().deprecated_invocation()) {
|
|
||||||
READONLY_DONT_ENUM_PROPERTY(process,
|
|
||||||
"_deprecatedDebugBrk", True(env->isolate()));
|
|
||||||
}
|
|
||||||
|
|
||||||
// --security-revert flags
|
// --security-revert flags
|
||||||
#define V(code, _, __) \
|
#define V(code, _, __) \
|
||||||
do { \
|
do { \
|
||||||
|
@ -2,32 +2,19 @@
|
|||||||
const common = require('../common');
|
const common = require('../common');
|
||||||
common.skipIfInspectorDisabled();
|
common.skipIfInspectorDisabled();
|
||||||
|
|
||||||
// This test ensures that the debug-brk flag will spin up a new process and
|
// This test ensures that the --debug-brk flag will exit the process
|
||||||
// wait, rather than exit.
|
|
||||||
|
|
||||||
const assert = require('assert');
|
const assert = require('assert');
|
||||||
const fixtures = require('../common/fixtures');
|
const fixtures = require('../common/fixtures');
|
||||||
const spawn = require('child_process').spawn;
|
const { spawnSync } = require('child_process');
|
||||||
|
|
||||||
// file name here doesn't actually matter since
|
// File name here doesn't actually matter the process will exit on start.
|
||||||
// debugger will connect regardless of file name arg
|
|
||||||
const script = fixtures.path('empty.js');
|
const script = fixtures.path('empty.js');
|
||||||
|
|
||||||
function test(arg) {
|
function test(arg) {
|
||||||
const child = spawn(process.execPath, ['--inspect', arg, script]);
|
const child = spawnSync(process.execPath, ['--inspect', arg, script]);
|
||||||
const argStr = child.spawnargs.join(' ');
|
const stderr = child.stderr.toString();
|
||||||
const fail = () => assert.fail(true, false, `'${argStr}' should not quit`);
|
assert(stderr.includes('DEP0062'));
|
||||||
child.on('exit', fail);
|
assert.strictEqual(child.status, 9);
|
||||||
|
|
||||||
// give node time to start up the debugger
|
|
||||||
setTimeout(function() {
|
|
||||||
child.removeListener('exit', fail);
|
|
||||||
child.kill();
|
|
||||||
}, 2000);
|
|
||||||
|
|
||||||
process.on('exit', function() {
|
|
||||||
assert(child.killed);
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
test('--debug-brk');
|
test('--debug-brk');
|
||||||
|
Loading…
x
Reference in New Issue
Block a user