AtomLinter / linter-eslint-node

ESLint plugin for Atom/Pulsar Linter (v8 and above)
https://web.pulsar-edit.dev/packages/linter-eslint-node
MIT License
4 stars 3 forks source link

Architectural/legacy compatibility decisions #1

Open savetheclocktower opened 2 years ago

savetheclocktower commented 2 years ago

I’m opening this issue to summarize the major changes between linter-eslint and this package, and to decide what else is worth changing.

Some of the changes are necessary because of the new architecture; some of them are just opportunities to shed support for legacy stuff. I feel like there’s a better sense of project hygiene these days, such that someone who is using a very recent version of ESLint probably doesn’t need some of the oddball config options that linter-eslint offered.

But then my use cases for linter-eslint were pretty bog-standard, so I’ll have to lean on others’ experiences here.

(Before reading below, make sure you’ve read the README and understand why this package exists distinct from linter-eslint.)

Architectural changes

I began with @scagood's work in this gist, then made changes as follows:

Things I’ve done so far

Things I haven’t done yet and am not certain are worth doing

Tests

I wanted to pin down the architecture before porting over the specs, but I swear that’s on my agenda.

Options I’ve migrated

Options I’ve added

Options I think should be removed

Options I’m on the fence about

UziTech commented 2 years ago

This is awesome!! :100: Thank you for doing this.

As far as the options goes I think it is best to only add options that are needed by users. If no one requests an option I don't see any reason to add it. The ones you have migrated look like a good start.

Once we get the tests migrated (at least some of them) I can setup semantic release to automatically release the package.

scagood commented 2 years ago

Thank you @savetheclocktower for converting my quickly thrown together gist into something that is much more sturdy! And thank you @UziTech for facilitating this :)

UziTech commented 2 years ago

@savetheclocktower let me know when you think this is ready for release and I can setup semantic-release to release the first version.

After that is setup you can just use semantic commit messages to automate releases. If you have any questions about that feel free to ask.

savetheclocktower commented 2 years ago

I think I'll have it ready in a few more days. A few of the tests are not worth keeping, but it's still worth getting the rest to work.

savetheclocktower commented 2 years ago

@UziTech If you're set up to test on Windows, I think we'll be ready for a release if you can manually check the stuff described in #7, particularly the “Testing behavior with various ESLint versions” stuff. If you can't, let me know, and I'll see if I can do it this weekend.