Skip to content

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Apr 2, 2020

This PR contains the following updates:

Package Type Update New value References Sourcegraph
prettier (source) devDependencies major ^2.0.4 homepage, source code search for "prettier"

Release Notes

prettier/prettier

v2.0.4

Compare Source

diff

Revert #​7869, "[TypeScript] format TSAsExpression with same logic as BinaryExpression" (#​7958)

v2.0.3

Compare Source

diff

JavaScript
Fix prettier-ignore inside JSX (#​7877 by @​fisker)
// Input
<div>
{
  /* prettier-ignore */
  x     ?   <Y/> : <Z/>
}
</div>;

// Prettier 2.0.2 (first output)
<div>
  {/* prettier-ignore */
  x     ?   <Y/> : <Z/>}
</div>;

// Prettier 2.0.2 (second output)
<div>{/* prettier-ignore */ x     ?   <Y/> : <Z/>}</div>;

// Prettier 2.0.3
<div>
  {
    /* prettier-ignore */
    x     ?   <Y/> : <Z/>
  }
</div>;
Fix regressions in styled-components template literals (#​7883 by @​thorn0)
// Input
const Icon = styled.div`
  background:   var(--${background});
  ${Link}:not(:first-child) {
      fill:    rebeccapurple;
  }
`;

// Prettier 2.0.2
const Icon = styled.div`
  background: var(-- ${background});
  ${Link}:not (:first-child) {
    fill: rebeccapurple;
  }
`;

// Prettier 2.0.3
const Icon = styled.div`
  background: var(--${background});
  ${Link}:not(:first-child) {
    fill: rebeccapurple;
  }
`;
Fix: line endings were not always converted properly in multiline strings and comments (#​7891 by @​sidharthv96)
// Input
export const IAmIncredibleLongFunctionName = IAmAnotherFunctionName(<CRLF>
  (_0: IAmIncredibleLongParameterType) => {<CRLF>
    setTimeout(() => {<CRLF>
      /*<CRLF>
        Multiline comment<CRLF>
        Multiline comment<CRLF>
        Multiline comment<CRLF>
      */<CRLF>
      console.log(<CRLF>
        "Multiline string\<CRLF>
         Multiline string\<CRLF>
         Multiline string"<CRLF>
      );<CRLF>
    });<CRLF>
  }<CRLF>
);<CRLF>

// Prettier 2.0.2
export const IAmIncredibleLongFunctionName = IAmAnotherFunctionName(<CRLF>
  (_0: IAmIncredibleLongParameterType) => {<CRLF>
    setTimeout(() => {<CRLF>
      /*<LF>
        Multiline comment<LF>
        Multiline comment<LF>
        Multiline comment<LF>
      */<CRLF>
      console.log(<CRLF>
        "Multiline string\<LF>
         Multiline string\<LF>
         Multiline string"<CRLF>
      );<CRLF>
    });<CRLF>
  }<CRLF>
);<CRLF>

// Prettier 2.0.3: same as input
Fix bug with holes in array literals (#​7911 by @​bakkot)
// Input
new Test()
  .test()
  .test([, 0])
  .test();

// Prettier 2.0.2
[error] in.js: TypeError: Cannot read property 'type' of null

// Prettier 2.0.3
new Test().test().test([, 0]).test();
TypeScript
Wrap TSAsExpression (#​7869 by @​sosukesuzuki)
// Input
const value = thisIsAnIdentifier as ThisIsAReallyReallyReallyReallyReallyReallyReallyReallyReallyReallyReallyLongInterface;

// Prettier 2.0.2
const value = thisIsAnIdentifier as ThisIsAReallyReallyReallyReallyReallyReallyReallyReallyReallyReallyReallyLongInterface;

// Prettier 2.0.3
const value =
  thisIsAnIdentifier as
  ThisIsAReallyReallyReallyReallyReallyReallyReallyReallyReallyReallyReallyLongInterface;
Flow
Print dangling comments for inexact object type (#​7892 by @​sosukesuzuki)
// Input
type Foo = {
  // comment
  ...,
};

// Prettier 2.0.2
Error: Comment "comment" was not printed. Please report this error!

// Prettier 2.0.3
type Foo = {
  // comment
  ...,
};
Do not add comma for explicit inexact object with indexer property or no properties (#​7923 by @​DmitryGonchar)
// Input
type T = {
  [string]: number,
  ...,
}

type T = {
  // comment
  ...,
}

// Prettier 2.0.2
type T = {
  [string]: number,
  ...,
}

type T = {
  // comment
  ...,
}

// Prettier 2.0.3
type T = {
  [string]: number,
  ...
}

type T = {
  // comment
  ...
}
HTML
Fix printing of ignored empty inline elements (#​7867 by @​fisker)
<!-- Input-->
<!--prettier-ignore--><span></span>
<!--prettier-ignore--><span>_</span>

<!-- Prettier 2.0.2 (first output) -->
<!--prettier-ignore--><span
></span>
<!--prettier-ignore--><span>_</span>

<!-- Prettier 2.0.2 (second output) -->
<!--prettier-ignore--><span

></span>
<!--prettier-ignore--><span>_</span>

<!-- Prettier 2.0.3 -->
<!--prettier-ignore--><span></span>
<!--prettier-ignore--><span>_</span>
Format script and style inside tags with a colon in the name (#​7916 by @​fisker)
<!-- Input -->
<with:colon>
<script>function foo(){      return 1}</script>
<style>a         {color:         #f00}</style>
</with:colon>

<!-- Prettier 2.0.2 -->
<with:colon>
  <script>
    function foo(){ return 1}
  </script>
  <style>
    a {color: #f00}
  </style>
</with:colon>

<!-- Prettier 2.0.3 -->
<with:colon>
  <script>
    function foo() {
      return 1;
    }
  </script>
  <style>
    a {
      color: #f00;
    }
  </style>
</with:colon>
Other changes

v2.0.2

Compare Source

diff

2.0 regressions
JavaScript: Fix formatting of pseudo-elements and pseudo-classes in styled-components template literals (#​7842 by @​thorn0)
// Input
const Foo = styled.div`
  ${media.smallDown}::before {}
`;

// Prettier 2.0.0
const Foo = styled.div`
  ${media.smallDown}: : before{
  }
`;

// Prettier 2.0.2
const Foo = styled.div`
  ${media.smallDown}::before {
  }
`;
TypeScript: Avoid trailing commas on index signatures with only one parameter (#​7836 by @​bakkot)

TypeScript index signatures technically allow multiple parameters and trailing commas, but it's an error to have multiple parameters there, and Babel's TypeScript parser does not accept them. So Prettier now avoids putting a trailing comma there when you have only one parameter.

// Input
export type A = {
  a?: {
    [
      x: string
    ]: typeof SomeLongLongLongTypeName[keyof typeof SomeLongLongLongTypeName];
  } | null;
};

// Prettier 2.0.0
export type A = {
  a?: {
    [
      x: string,
    ]: typeof SomeLongLongLongTypeName[keyof typeof SomeLongLongLongTypeName];
  } | null;
};

// Prettier 2.0.2
export type A = {
  a?: {
    [
      x: string
    ]: typeof SomeLongLongLongTypeName[keyof typeof SomeLongLongLongTypeName];
  } | null;
};
Revert "markdown: fix redundant leading spaces in markdown list" (#​7847)

See #​7846

Other changes
TypeScript: Fix prettier-ignore in union types (#​7798 by @​thorn0)
// Input
export type a =
  // foo
  | foo1&foo2
  // prettier-ignore
  | bar1&bar2
  // baz
  | baz1&baz2;

// Prettier 2.0.0
export type a =
  // foo
  | foo1&foo2
    // prettier-ignore
  // prettier-ignore
  | (bar1 & bar2)
  // baz
  | (baz1 & baz2);

// Prettier 2.0.2
export type a =
  // foo
  | (foo1 & foo2)
  // prettier-ignore
  | bar1&bar2
  // baz
  | (baz1 & baz2);

v2.0.1

Compare Source

diff

API: Fix build script to not corrupt import-fresh module (#​7820 by @​thorn0)

v2.0.0

Compare Source

diff

🔗 Release Notes

v1.19.1

Compare Source

diff

CLI
Fix --stdin regression in 1.19.0 (#​6894 by @​lydell)
// Prettier stable
$ echo "test" | prettier --stdin --parser babel
[error] regeneratorRuntime is not defined

// Prettier master
$ echo "test" | prettier --stdin --parser babel
test;
TypeScript
Fix formatting of union type as arrow function return type (#​6896 by @​thorn0)
// Input
export const getVehicleDescriptor = async (
  vehicleId: string,
): Promise<Collections.Parts.PrintedCircuitBoardAssembly['attributes'] | undefined> => {}

// Prettier stable
export const getVehicleDescriptor = async (
  vehicleId: string
): Promise<| Collections.Parts.PrintedCircuitBoardAssembly["attributes"]
| undefined> => {};

// Prettier master
export const getVehicleDescriptor = async (
  vehicleId: string
): Promise<
  Collections.Parts.PrintedCircuitBoardAssembly["attributes"] | undefined
> => {};

v1.19.0

Compare Source

diff

🔗 Release Notes

v1.18.2

Compare Source

diff

v1.18.1

Compare Source

diff

  • TypeScript: Add trailing comma in tsx, only for arrow function (#​6190 by @​sosukesuzuki)

    Prettier inserts a trailing comma to single type parameter for arrow functions in tsx, since v 1.18. But, this feature inserts a trailing comma to type parameter for besides arrow functions too (e.g, function , interface). This change fix it.

    // Input
    interface Interface1<T> {
      one: "one";
    }
    function function1<T>() {
      return "one";
    }
    
    // Output (Prettier 1.18.0)
    interface Interface1<T,> {
      one: "one";
    }
    function function1<T,>() {
      return "one";
    }
    
    // Output (Prettier 1.18.1)
    interface Interface1<T> {
      one: "one";
    }
    function function1<T>() {
      return "one";
    }
  • Config: Match dotfiles in config overrides (#​6194 by @​duailibe)

    When using overrides in the config file, Prettier was not matching dotfiles (files that start with .). This was fixed in 1.18.1

v1.18.0

Compare Source

diff

🔗 Release Notes

v1.17.1

Compare Source

diff

  • Range: Fix ranged formatting not using the correct line width (#​6050 by @​mathieulj)

    // Input
    function f() {
      if (true) {
        call("this line is 79 chars", "long", "it should", "stay as single line");
      }
    }
    
    // Output (Prettier 1.17.0 run with --range-start 30 --range-end 110)
    function f() {
      if (true) {
        call(
          "this line is 79 chars",
          "long",
          "it should",
          "stay as single line"
        );
      }
    }
    
    // Output (Prettier 1.17.0 run without range)
    function f() {
      if (true) {
        call("this line is 79 chars", "long", "it should", "stay as single line");
      }
    }
    
    // Output (Prettier 1.17.1 with and without range)
    function f() {
      if (true) {
        call("this line is 79 chars", "long", "it should", "stay as single line");
      }
    }
  • JavaScript: Fix closure compiler typecasts ([#​5947] by @​jridgewell)

    If a closing parenthesis follows after a typecast in an inner expression, the typecast would wrap everything to the that following parenthesis.

    // Input
    test(/** @&#8203;type {!Array} */(arrOrString).length);
    test(/** @&#8203;type {!Array} */((arrOrString)).length + 1);
    
    // Output (Prettier 1.17.0)
    test(/** @&#8203;type {!Array} */ (arrOrString.length));
    test(/** @&#8203;type {!Array} */ (arrOrString.length + 1));
    
    // Output (Prettier 1.17.1)
    test(/** @&#8203;type {!Array} */ (arrOrString).length);
    test(/** @&#8203;type {!Array} */ (arrOrString).length + 1);
  • JavaScript: respect parenthesis around optional chaining before await (#​6087 by @​evilebottnawi)

    // Input
    async function myFunction() {
      var x = (await foo.bar.blah)?.hi;
    }
    
    // Output (Prettier 1.17.0)
    async function myFunction() {
      var x = await foo.bar.blah?.hi;
    }
    
    // Output (Prettier 1.17.1)
    async function myFunction() {
      var x = (await foo.bar.blah)?.hi;
    }
  • Handlebars: Fix {{else}}{{#if}} into {{else if}} merging (#​6080 by @​dcyriller)

    // Input
    {{#if a}}
      a
    {{else}}
      {{#if c}}
        c
      {{/if}}
      e
    {{/if}}
    
    // Output (Prettier 1.17.0)
    {{#if a}}
      a
    {{else if c}}
      c
    e
    {{/if}}
    
    // Output (Prettier 1.17.1)
    Code Sample
    {{#if a}}
      a
    {{else}}
      {{#if c}}
        c
      {{/if}}
      e
    {{/if}}
    
  • JavaScript: Improved multiline closure compiler typecast comment detection (#​6070 by @​yangsu)

    Previously, multiline closure compiler typecast comments with lines that
    start with * weren't flagged correctly and the subsequent parenthesis were
    stripped. Prettier 1.17.1 fixes this issue.

    // Input
    const style =/**
     * @&#8203;type {{
     *   width: number,
     * }}
    */({
      width,
    });
    
    // Output (Prettier 1.17.0)
    const style =/**
     * @&#8203;type {{
     *   width: number,
     * }}
    */ {
      width,
    };
    
    // Output (Prettier 1.17.1)
    const style =/**
     * @&#8203;type {{
     *   width: number,
     * }}
    */({
      width,
    });

v1.17.0

Compare Source

diff

🔗 Release Notes


Renovate configuration

📅 Schedule: "on the 1st through 7th day of the month" in timezone America/Los_Angeles.

🚦 Automerge: Disabled due to failing status checks.

♻️ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by WhiteSource Renovate. View repository job log here.

@renovate renovate bot force-pushed the renovate/major-prettier branch 2 times, most recently from 32f945f to b79f7fd Compare April 5, 2020 21:24
@renovate renovate bot force-pushed the renovate/major-prettier branch from b79f7fd to e9b3735 Compare April 6, 2020 12:24
@renovate renovate bot requested a review from a team April 13, 2020 12:33
@renovate
Copy link
Contributor Author

renovate bot commented Apr 13, 2020

PR has been edited

👷 This PR has received other commits, so Renovate will stop updating it to avoid conflicts or other problems. If you wish to abandon your changes and have Renovate start over you may click the "rebase" checkbox in the PR body/description.

@codecov-io
Copy link

codecov-io commented Apr 13, 2020

Codecov Report

Merging #21 into master will not change coverage by %.
The diff coverage is 0.00%.

Impacted file tree graph

@@          Coverage Diff           @@
##           master     #21   +/-   ##
======================================
  Coverage    7.01%   7.01%           
======================================
  Files           5       5           
  Lines         114     114           
  Branches       22      22           
======================================
  Hits            8       8           
  Misses        106     106           
Impacted Files Coverage Δ
src/codeownersFile.ts 0.00% <0.00%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 8e56ba7...aabddc7. Read the comment docs.

@felixfbecker felixfbecker merged commit 8dfad3d into master Apr 13, 2020
@felixfbecker felixfbecker deleted the renovate/major-prettier branch April 13, 2020 12:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants