Skip to content

Commit

Permalink
punycode: add pending deprecation
Browse files Browse the repository at this point in the history
PR-URL: #38444
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
  • Loading branch information
aduh95 authored and BethGriggs committed Jul 29, 2021
1 parent a082a70 commit eccc9a6
Show file tree
Hide file tree
Showing 4 changed files with 25 additions and 4 deletions.
5 changes: 4 additions & 1 deletion doc/api/deprecations.md
Original file line number Diff line number Diff line change
Expand Up @@ -831,12 +831,15 @@ The [`require.extensions`][] property is deprecated.
### DEP0040: `punycode` module
<!-- YAML
changes:
- version: REPLACEME
pr-url: https://github.com/nodejs/node/pull/38444
description: Added support for `--pending-deprecation`.
- version: v7.0.0
pr-url: https://github.com/nodejs/node/pull/7941
description: Documentation-only deprecation.
-->

Type: Documentation-only
Type: Documentation-only (supports [`--pending-deprecation`][])

The [`punycode`][] module is deprecated. Please use a userland alternative
instead.
Expand Down
10 changes: 10 additions & 0 deletions lib/punycode.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,15 @@
'use strict';

const { getOptionValue } = require('internal/options');
if (getOptionValue('--pending-deprecation')){
process.emitWarning(
'The `punycode` module is deprecated. Please use a userland ' +
'alternative instead.',
'DeprecationWarning',
'DEP0040',
);
}

/** Highest positive signed 32-bit float value */
const maxInt = 2147483647; // aka. 0x7FFFFFFF or 2^31-1

Expand Down
4 changes: 2 additions & 2 deletions test/message/core_line_numbers.out
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
node:punycode:42
node:punycode:52
throw new RangeError(errors[type]);
^

RangeError: Invalid input
at error (node:punycode:42:8)
at error (node:punycode:52:8)
at Object.decode (node:punycode:*:*)
at Object.<anonymous> (*test*message*core_line_numbers.js:*:*)
at Module._compile (node:internal/modules/cjs/loader:*:*)
Expand Down
10 changes: 9 additions & 1 deletion test/parallel/test-punycode.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
// Flags: --pending-deprecation

// Copyright Joyent, Inc. and other Node contributors.
//
// Permission is hereby granted, free of charge, to any person obtaining a
Expand All @@ -20,7 +22,13 @@
// USE OR OTHER DEALINGS IN THE SOFTWARE.

'use strict';
require('../common');
const common = require('../common');

const punycodeWarning =
'The `punycode` module is deprecated. Please use a userland alternative ' +
'instead.';
common.expectWarning('DeprecationWarning', punycodeWarning, 'DEP0040');

const punycode = require('punycode');
const assert = require('assert');

Expand Down

0 comments on commit eccc9a6

Please sign in to comment.