1.3.0 • Published 4 months ago

eslint-plugin-no-async v1.3.0

Weekly downloads
40
License
MIT
Repository
github
Last release
4 months ago

eslint-plugin-no-async

Disallows code that will transpile into use of regenerator.

If you don't want async/await and generators to be transpiled into use of regenerator-runtime then use this rule.

Installation

#PNPM: 
  $ pnpm add -D eslint-plugin-no-async

#Yarn:
  $ yarn add --dev eslint-plugin-no-async

#NPM:
  $ npm i --save-dev eslint-plugin-no-async

In Flat Configuration (9+):

    import noAsync from "eslint-plugin-no-async";
   
    export default [{
        "plugins": {
            "no-async": noAsync,
        },
        "rules": {
            ...js.configs.recommended.rules,
            "no-async/no-async": [2],

            //with allowGenerators:
            // {
            //     "no-async/no-async": [2, true]
            // }
        }
    }];

In .eslintrc(.js) (Before 9):

{
    "no-async/no-async": [2]    
}

# with allowGenerators:

{
    "no-async/no-async": [2, true]    
}

Details

async function myFunction() {}

const myArrowFunction = async () => {}

function * myGeneratorFunction() { }

class MyClass {
    async myFunction() { }
}

All of the examples in the code above will result in the use of regenerator after babel transpiled it.

Options

{
    "no-async/no-async": [<level>, <allowGenerators>]    
}

allowGenerators In case you wish to allow generator functions, set this to true. (default: false)