Wednesday, September 18, 2024
HomeGolangGoing flat with ESLint with (Josh Goldberg) { (JS Social gathering #332)

Going flat with ESLint with (Josh Goldberg) { (JS Social gathering #332)


Sure. Thanks for providing. Typed linting, or type-aware linting – it’s the massive factor. The key worth prop, why we’re placing a lot effort into TypeScript ESLint, the ESLint plugin is that we’re the primary – and I consider at present the one mainstream – lint scenario that may do type-aware or type-informed linting. That’s writing ESLint or comparable lint guidelines that may use the ability of the kind checker akin to Typescript. That’s enormous. That may be a massively necessary factor to have the ability to do.

The large banner rule that we all the time talked about isn’t any floating guarantees; guidelines that may detect while you say create a promise and overlook to await it, which is a quite common downside that all of us by accident fall into. Guidelines round different async issues like awaiting stuff that’s not [unintelligible 00:45:38.28] customized guidelines that show you how to migrate off deprecated endpoints, as a result of that the kind of the factor is dot dot dot.

Typed linting is de facto laborious, since you’re mapping between the ESLint means of doing issues, which is a linter, and the TypeScript means of doing issues, which doesn’t even use the identical AST format. As we had been saying earlier, it’s important to map between the 2 to make use of TypeScript APIs. In order that’s why I haven’t jumped over to one thing like Biome or Deno_Lint but, as a result of we’re the one factor – TypeScript ESLint is the one factor that helps typed linting proper now.

I’m very excited they’re all working, or no less than have it on their roadmap to work – on their public RFCs in all these initiatives like Biome, the open supply ones… Nevertheless it’s a very laborious downside to resolve, as a result of these initiatives are deliberately written in a local velocity, usually, like Rust for a lot of. You get unimaginable parallelization, you get very good efficiency… However then TypeScript is just not written in Rust, it’s written in TypeScript, so JavaScript. And nobody has but solved the issue of “How do you name to TypeScript type-checking stuff in a means that doesn’t sluggish your Rust linter right down to the velocity of a JavaScript linter?” And I can’t wait until somebody does that. However till they do, I’m caught, I’m conserving myself within the TypeScript ESLint area to have the ability to work on typed guidelines the way in which we’ve them now. Ta-dah!

RELATED ARTICLES

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Most Popular

Recent Comments