Skip to content
This repository has been archived by the owner. It is now read-only.

Roadmap: TSLint -> ESLint #4534

Open
adidahiya opened this issue Feb 23, 2019 · 52 comments
Open

Roadmap: TSLint -> ESLint #4534

adidahiya opened this issue Feb 23, 2019 · 52 comments

Comments

@adidahiya
Copy link
Member

@adidahiya adidahiya commented Feb 23, 2019

As you may have read in this blog post, we plan to deprecate TSLint in 2019 and support the migration to ESLint as the standard linter for both TypeScript & JavaScript. This will not be an immediate deprecation; on the contrary, there is a lot of work to do to ensure a smooth transition to the new tooling without any regressions. There are features, test suites, and conveniences in TSLint which we hope to retain in the migration. There may be a period of time when there is overlap between the two tools and TSLint early adopters are recommended to run both linters to ensure full code check coverage (to a reasonable degree such that performance doesn't suffer drastically).

I will be closing some feature requests in this repo which now feel out of scope because we expect them to be handled in the ESLint / typescript-eslint roadmap. One example of a category of rules for which new feature requests are most likely to be closed / rejected is formatting rules. I have suggested splitting out these rules for quite some time because we use Prettier at Palantir and consider it a better tool for the job of formatting code.

TSLint will continue to release with important bug fixes and updates which keep it up-to-date with the latest compiler / language features.


Update (June 2019): a more concrete roadmap timeline, coordinated with @JoshuaKGoldberg and tslint-contrib-microsoft:

  • August 1st, 2019: Stop accepting new core rules. Still accept bug fixes, minor features, and rule enhancements. Custom rules are always an option and can be maintained outside this repo.
  • November 1st, 2019: Stop accepting features or rule enhancements (with the exception of ones that make migrating to typescript-eslint easier). Still accept bug fixes.
  • January 1st, 2020: Stop accepting anything except security fixes and fixes for crashes introduced by breaking TypeScript changes.
  • December 1st, 2020: Stop accepting any PRs 🎉

Update (August 2019): see tslint-to-eslint-config for a CLI command that migrates TSLint configuration files to ESLint configuration files.


Update (March 2020): Added "and fixes for crashes introduced by breaking TypeScript changes" to the January 1st deadline, following discussion in #4914.

@adidahiya adidahiya mentioned this issue Feb 23, 2019
4 of 4 tasks complete
@felixfbecker
Copy link

@felixfbecker felixfbecker commented Feb 23, 2019

I would be great to have a CLI command that migrates a tslint.json to an eslint.json, mapping equivalent rules and options. Ideally it would remove rules that can be migrated from tslint.json and keep rules that don't have an equivalent yet (or not support the used options), so that the rule can be run idempotently repeatedly over time until tslint.json becomes empty at some point and we can fully rely on ESLint.

@hinell
Copy link

@hinell hinell commented Feb 26, 2019

Good news.
ESLint guys already started typescript-eslint project to support TS.
They are also looking for help. Here is the statement..

@JoshuaKGoldberg JoshuaKGoldberg pinned this issue Mar 2, 2019
antgamdia added a commit to kubeapps/kubeapps that referenced this issue Mar 10, 2021
antgamdia added a commit to kubeapps/kubeapps that referenced this issue Mar 11, 2021
* Bump typescript from 4.1.3 to 4.2.3 in /dashboard

Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.1.3 to 4.2.3.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/commits)

Signed-off-by: dependabot[bot] <support@github.com>

* Remove unnecessary react imports

* Bump transitive dep eslint up until we move from tslint to eslint

palantir/tslint#4534

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Antonio Gamez Diaz <agamez@vmware.com>
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet