-
-
Notifications
You must be signed in to change notification settings - Fork 2.8k
feat(eslint-plugin): additional annotation spacing rules for variables, parameters, properties, return types #1496
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
Conversation
Thanks for the PR, @chkt! typescript-eslint is a 100% community driven project, and we are incredibly grateful that you are contributing to that community. The core maintainers work on this in their personal time, so please understand that it may not be possible for them to review your work immediately. Thanks again! 🙏 Please, if you or your company is finding typescript-eslint valuable, help us sustain the project by sponsoring it transparently on https://opencollective.com/typescript-eslint. As a thank you, your profile/company logo will be added to our main README which receives thousands of unique visitors per day. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
logic itself looks sound, just some suggested changes around your guards.
Thanks for working on this.
Codecov Report
@@ Coverage Diff @@
## master #1496 +/- ##
==========================================
- Coverage 95.57% 95.30% -0.27%
==========================================
Files 143 143
Lines 6689 6736 +47
Branches 1916 1938 +22
==========================================
+ Hits 6393 6420 +27
- Misses 106 110 +4
- Partials 190 206 +16 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
Thanks for your work on this
This would disallow: export type Constructor<T = {}> = new (...args: any[]) => T; and force: export type Constructor<T = {}> = new (...args: any[])=> T; The space before the arrow is removed. |
Also, it's not what the docs say it's the default: https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/type-annotation-spacing.md |
Please use the issue search. |
This PR provides additional annotation spacing rules as discussed in #1489. The additional rules for variable declarations, function parameters, properties and return types are non-breaking and conform to the preexisting configuration conventions of the rule.
Fixes #1489