-
Notifications
You must be signed in to change notification settings - Fork 12.6k
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
fix(39332): QuoteStyle not respected for string literal types in implement interface #39348
Conversation
@jessetrinity could you review please? |
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.
Should it respect "auto
" quotePreference
? It does seem unfortunate that we use the same quotePreference
everywhere but the auto behavior is only determined from pre-existing imports.
@jessetrinity Good question. Which result should be generated for the following code with the interface I {
a(): void;
b(x: 'x', y: 'a' | 'b'): 'b';
c: 'c';
d: { e: 'e'; };
}
class Foo/**/ implements I {
} |
@a-tarasyuk If auto were respected I would expect the output to be based on the first use of quotes in an interface member. In this example, single quotes since you have I'm not sure if that decision makes sense though since I think |
@jessetrinity Do you mean we need to find the use of the first line in the file to determine the |
@a-tarasyuk that is the usual way of doing it. I think |
@jessetrinity I checked this helper, it seems to detect |
@a-tarasyuk That seems okay. It looks like the setting is worded to only work based on imports in editors anyway. |
@jessetrinity Ok, changed and added several additional tests for auto option. |
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.
Found a typo(?) but otherwise looks great!
I think this commit will fix the eslint failures: |
* upstream/master: (75 commits) Insert auto-imports in sorted order (microsoft#39394) LEGO: check in for master to temporary branch. Better checking of @param/@Property tags (microsoft#39487) fix(25155): add space before optional parameters/properties (microsoft#38798) Add regression test for microsoft#38834 (microsoft#39479) Fixes searches for symbols exported using export * as (microsoft#39507) fix(39421): omit prefix text for rest binding element (microsoft#39433) fix(39440): show QF for abstract classes with methods which include 'this' parameter (microsoft#39465) Remove unnecessary assert (microsoft#39483) LEGO: check in for master to temporary branch. Update user baselines (microsoft#39220) Type `this` in more constructor functions (microsoft#39447) LEGO: check in for master to temporary branch. LEGO: check in for master to temporary branch. Properly handle rest parameters in function declarations with @type annotations (microsoft#39473) Ensure type/namespaceish statics are included in the list of namespace merge members (microsoft#38920) Fix getTypeAtLocation for dotted implements clauses (microsoft#39363) Add workflow_dispatch to our nightly publish script. (microsoft#39485) Fix crash in decorator metadata calculation when serializing template literal type nodes (microsoft#39481) Fix test semantic merge conflict between microsoft#39348 and microsoft#39130 (microsoft#39478) ... # Conflicts: # src/compiler/scanner.ts
Fixes #39332