Skip to content

Latest commit

 

History

History
190 lines (151 loc) · 3.79 KB

CHANGELOG.unreleased.md

File metadata and controls

190 lines (151 loc) · 3.79 KB
  • 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 stable 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 stable run without range)
    function f() {
      if (true) {
        call("this line is 79 chars", "long", "it should", "stay as single line");
      }
    }
    
    // Output (Prettier master 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(/** @type {!Array} */(arrOrString).length);
    test(/** @type {!Array} */((arrOrString)).length + 1);
    
    // Output (Prettier stable)
    test(/** @type {!Array} */ (arrOrString.length));
    test(/** @type {!Array} */ (arrOrString.length + 1));
    
    // Output (Prettier master)
    test(/** @type {!Array} */ (arrOrString).length);
    test(/** @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 stable)
    async function myFunction() {
      var x = await foo.bar.blah?.hi;
    }
    
    // Output (Prettier master)
    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 stable)
    {{#if a}}
      a
    {{else if c}}
      c
    e
    {{/if}}
    
    // Output (Prettier master)
    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 master fixes this issue.