Détail du package

@automattic/calypso-eslint-overrides

Automattic21GPL-2.0-or-later1.0.0

Shared Calypso eslint config

calypso, eslint

readme

@automattic/calypso-eslint-overrides

This package contains ESlint configuration used to override default ESLint settings, grouped by runtime.

The main use case is when a package has code expected to run in a browser, and code expected to run in Node.js.

Usage

Imagine you have an .eslintrc.js that applies some config designed to enforce/prevent some code conventions that won't work well in a browser, or that inherits some rules from a parent .eslintrc.js

module.exports = {
    env: {
        browser: true
    },
    rules: {
        // Polyfill nodejs modules for the browser is expensive, disable them
        'import/no-nodejs-modules': 'error'
    }
}

If there is some section of the code that is meant to be run by Node.js (eg: a ./bin/ directory with some scripts), you can add an override like:

const { nodeConfig } = require('@automattic/calypso-eslint-overrides/node')

module.exports = {
    env: {
        browser: true
    },
    rules: {
        // Polyfill nodejs modules for the browser is expensive, disable them
        'import/no-nodejs-modules': 'error'
    },
    overrides: [
        {
            files: "./bin/**.*"
            ...nodeConfig
        }
    ]
}

changelog

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[1.0.0]

Added

  • Initial release