chore: replace dtslint with dtslint-like rules in tslint-etc #5123
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description:
This PR removes dtslint and replaces it with an
expect-type
rule - intslint-etc
- that is a modified version of theexpect
rule from thedtslint
package (which is MIT licensed). Essentially, this PR reduces the number of moving parts in the type tests.The modified rule uses the locally-installed
typescript
- i.e. thetypescript
version specified in the RxJSpackage.json
file - and removes the performance-related code that attempts to write profiling data to the caller's home directory.Instead of running dtslint, we can now run tslint directly - passing it the
tsconfig.json
and thetslint.json
files that are in thespec-dtslint
directory - and can be sure that dtslint isn't doing anything weird in its implementation.Also, I've added an
expect-deprecation
rule totslint-etc
which will allow us to ensure that our deprecations are working as they should, like this:I'll start adding more deprecation-related tests once/if this is merged.
And there is a
no-dtslint-typo
rule to catch some of the invalid dtslint-like expectations - like these - that have crept into the codebase.Related issue (if exists): #4871