Sha256: 4df4597b6b459653773f29a79897500522699aca1977933987308f240d29d8ab

Contents?: true

Size: 1.89 KB

Versions: 37

Compression:

Stored size: 1.89 KB

Contents

/**
 * @fileoverview Provide the function that emits deprecation warnings.
 * @author Toru Nagashima <http://github.com/mysticatea>
 */
"use strict";

//------------------------------------------------------------------------------
// Requirements
//------------------------------------------------------------------------------

const path = require("path");

//------------------------------------------------------------------------------
// Private
//------------------------------------------------------------------------------

// Definitions for deprecation warnings.
const deprecationWarningMessages = {
    ESLINT_LEGACY_ECMAFEATURES:
        "The 'ecmaFeatures' config file property is deprecated and has no effect."
};

const sourceFileErrorCache = new Set();

/**
 * Emits a deprecation warning containing a given filepath. A new deprecation warning is emitted
 * for each unique file path, but repeated invocations with the same file path have no effect.
 * No warnings are emitted if the `--no-deprecation` or `--no-warnings` Node runtime flags are active.
 * @param {string} source The name of the configuration source to report the warning for.
 * @param {string} errorCode The warning message to show.
 * @returns {void}
 */
function emitDeprecationWarning(source, errorCode) {
    const cacheKey = JSON.stringify({ source, errorCode });

    if (sourceFileErrorCache.has(cacheKey)) {
        return;
    }

    sourceFileErrorCache.add(cacheKey);

    const rel = path.relative(process.cwd(), source);
    const message = deprecationWarningMessages[errorCode];

    process.emitWarning(
        `${message} (found in "${rel}")`,
        "DeprecationWarning",
        errorCode
    );
}

//------------------------------------------------------------------------------
// Public Interface
//------------------------------------------------------------------------------

module.exports = {
    emitDeprecationWarning
};

Version data entries

37 entries across 27 versions & 2 rubygems

Version Path
immosquare-cleaner-0.1.32 node_modules/eslint/lib/shared/deprecation-warnings.js
immosquare-cleaner-0.1.32 node_modules/@eslint-community/eslint-utils/node_modules/eslint/lib/shared/deprecation-warnings.js
immosquare-cleaner-0.1.31 node_modules/eslint/lib/shared/deprecation-warnings.js
immosquare-cleaner-0.1.31 node_modules/@eslint-community/eslint-utils/node_modules/eslint/lib/shared/deprecation-warnings.js
immosquare-cleaner-0.1.30 node_modules/eslint/lib/shared/deprecation-warnings.js
immosquare-cleaner-0.1.30 node_modules/@eslint-community/eslint-utils/node_modules/eslint/lib/shared/deprecation-warnings.js
immosquare-cleaner-0.1.29 node_modules/eslint/lib/shared/deprecation-warnings.js
immosquare-cleaner-0.1.29 node_modules/@eslint-community/eslint-utils/node_modules/eslint/lib/shared/deprecation-warnings.js
immosquare-cleaner-0.1.28 node_modules/eslint/lib/shared/deprecation-warnings.js
immosquare-cleaner-0.1.28 node_modules/@eslint-community/eslint-utils/node_modules/eslint/lib/shared/deprecation-warnings.js
immosquare-cleaner-0.1.27 node_modules/eslint/lib/shared/deprecation-warnings.js
immosquare-cleaner-0.1.27 node_modules/@eslint-community/eslint-utils/node_modules/eslint/lib/shared/deprecation-warnings.js
immosquare-cleaner-0.1.26 node_modules/eslint/lib/shared/deprecation-warnings.js
immosquare-cleaner-0.1.26 node_modules/@eslint-community/eslint-utils/node_modules/eslint/lib/shared/deprecation-warnings.js
immosquare-cleaner-0.1.25 node_modules/@eslint-community/eslint-utils/node_modules/eslint/lib/shared/deprecation-warnings.js
immosquare-cleaner-0.1.25 node_modules/eslint/lib/shared/deprecation-warnings.js
immosquare-cleaner-0.1.24 node_modules/@eslint-community/eslint-utils/node_modules/eslint/lib/shared/deprecation-warnings.js
immosquare-cleaner-0.1.24 node_modules/eslint/lib/shared/deprecation-warnings.js
immosquare-cleaner-0.1.23 node_modules/eslint/lib/shared/deprecation-warnings.js
immosquare-cleaner-0.1.23 node_modules/@eslint-community/eslint-utils/node_modules/eslint/lib/shared/deprecation-warnings.js