GithubHelp home page GithubHelp logo

Comments (6)

molt2020 avatar molt2020 commented on June 3, 2024 2

I think it's important to mention +add external references.

A lot of people are just setting up the dev environment and may not be familiar with intricacies of the various stack options. Most how-to's start with do yarn add my-package so it's fair to point out anything that a noob will need.

Aim for bullet proof instructions for idiot users like me! 🙂

from typescript-eslint.

JoshuaKGoldberg avatar JoshuaKGoldberg commented on June 3, 2024 1

Yeah, we need to be very careful to note that it's not a requirement to use a module type.

from typescript-eslint.

bradzacher avatar bradzacher commented on June 3, 2024

The reason we didn't specify this is because we treated it as assumed knowledge for using NodeJS.
I.e. if you want to use ESM you need to have type: module in your package.json - as has been the way with ESM support in NodeJS since its release.

My question here would be - do we need to tell people the constraints of NodeJS? Or are we okay to assume that people know "if you don't use ESM then you must translate this to CJS".

cc @typescript-eslint/triage-team thoughts?


With the release of eslint 8.57.0 we could update this guide to use .mjs (prior to minor 57 - it was not supported by eslint).

from typescript-eslint.

auvred avatar auvred commented on June 3, 2024

Personally I'm +1 on recommending using .mjs config file with small note that it requires ESLint >= 8.57.0.

Also see the related conversation on Discord: https://discord.com/channels/1026804805894672454/1207049165079846962/1213212499713728553

from typescript-eslint.

kirkwaiblinger avatar kirkwaiblinger commented on June 3, 2024

+1 on calling out explicitly, and mentioning .mjs option.

from typescript-eslint.

ericmorand avatar ericmorand commented on June 3, 2024

@bradzacher this is not true:

I.e. if you want to use ESM you need to have type: module in your package.json

I understand that you mention the .mjs extension later in your post, but for the sake of correctness, I think you should update your comment to "I.e. if you want to execute a file ending by .js as ESM, one of the solution is to have type: module in your package.json".

A lot (and I mean a looooot) of people are convinced that the module declaration is mandatory to execute ESM modules. I think it is our duty to make it clear, as often as possible, that it is not.

from typescript-eslint.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.