-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
tsvet vs tsetse #2
Comments
From @jkillian on 28 Apr 2016:
|
CC @alexeagle @vvakame @JoshuaKGoldberg @adidahiya @jkillian to move the conversation here.
This is where we disagree. My goal is to make TypeScript as easy as possible to:
Any differences in the way code is formatted, let alone differences in styles as far as variable naming etc are concerned, detract from the points above. Particularly given the extent to which projects these days rely on external dependencies (and therefore likely contribute back to them). It should be seamless to move between one project and the next. Having an option space for formatting, style, vet etc only contributes to making this goal less achievable.
If it ( Again, we disagree on the point about it being flexible - this is not a requirement to my mind.
The particular rule I have in mind regards the
This would not be allowed by Incidentally, this is not a case of being a beginner vs being an expert. All TypeScript code should be equally understandable, regardless of experience. Hence the "unlearning" bit here would be that anyone reading the above spec link would then have to unlearn what they know about the |
@myitcv For that reason alone I don't think it's practical for tsvet or tsetse to take an opinionated standpoint on what's "correct" TypeScript. We may all agree on the "perfect" TypeScript style such as near-mistakes like Also, consider a 100k+ line existing JavaScript codebase that is about to be converted to TypeScript. The typical workflow will be:
Any attempt to force the "perfect" TypeScript configuration would be difficult to implement and cause a large number of bugs. This is true for both tslint and tsvet/tsetse. Instead, tools like these are incrementally turned on a few rules at a time to minimize disruption. The tslint approach seems to be perfect: have a sane set of defaults, with recommended initial configuration, and allow .json configs to opt-in and opt-out as needed. |
I don't think it's right to consider "we're the special few." The goal here is to make writing (reading and maintaining) correct TypeScript as easy as possible for everyone, regardless of experience. If it's a common mistake to expect
The tooling required to convert a Javascript codebase to a TypeScript codebase is a separate matter. I'm not trying to skirt around the problem you describe, but it is orthogonal.
I agree you need some sort of incremental approach to "fixing" a codebase. With For Just to repeat, there is no obligation to use |
Starting a thread here to pick up from (and track) the email conversation we're otherwise having about
tsvet
:https://docs.google.com/document/d/1ax2qdMxBdOYvMI9R5E56nT8Tn8idoSop1UAS1jTzXYk/edit
The text was updated successfully, but these errors were encountered: