prettier/prettier
### [`v2.8.2`](https://togithub.com/prettier/prettier/blob/HEAD/CHANGELOG.md#282)
[Compare Source](https://togithub.com/prettier/prettier/compare/2.8.1...2.8.2)
[diff](https://togithub.com/prettier/prettier/compare/2.8.1...2.8.2)
##### Don't lowercase link references ([#13155](https://togithub.com/prettier/prettier/pull/13155) by [@DerekNonGeneric](https://togithub.com/DerekNonGeneric) & [@fisker](https://togithub.com/fisker))
```markdown
We now don't strictly follow the release notes format suggested by [Keep a Changelog].
[Keep a Changelog]: https://example.com/
We now don't strictly follow the release notes format suggested by [Keep a Changelog].
[keep a changelog]: https://example.com/
```
##### Preserve self-closing tags ([#13691](https://togithub.com/prettier/prettier/pull/13691) by [@dcyriller](https://togithub.com/dcyriller))
```hbs
{{! Input }}
{{! Prettier 2.8.1 }}
{{! Prettier 2.8.2 }}
```
##### Allow custom "else if"-like blocks with block params ([#13930](https://togithub.com/prettier/prettier/pull/13930) by [@jamescdavis](https://togithub.com/jamescdavis))
[#13507](https://togithub.com/prettier/prettier/issues/13507) added support for custom block keywords used with `else`, but failed to allow block params. This updates printer-glimmer to allow block params with custom "else if"-like blocks.
```hbs
{{! Input }}
{{#when isAtWork as |work|}}
Ship that
{{work}}!
{{else when isReading as |book|}}
You can finish
{{book}}
eventually...
{{else}}
Go to bed!
{{/when}}
{{! Prettier 2.8.1 }}
{{#when isAtWork as |work|}}
Ship that
{{work}}!
{{else when isReading}}
You can finish
{{book}}
eventually...
{{else}}
Go to bed!
{{/when}}
{{! Prettier 2.8.2 }}
{{#when isAtWork as |work|}}
Ship that
{{work}}!
{{else when isReading as |book|}}
You can finish
{{book}}
eventually...
{{else}}
Go to bed!
{{/when}}
```
##### Preserve empty lines between nested SCSS maps ([#13931](https://togithub.com/prettier/prettier/pull/13931) by [@jneander](https://togithub.com/jneander))
```scss
/* Input */
$map: (
'one': (
'key': 'value',
),
'two': (
'key': 'value',
),
)
/* Prettier 2.8.1 */
$map: (
'one': (
'key': 'value',
),
'two': (
'key': 'value',
),
)
/* Prettier 2.8.2 */
$map: (
'one': (
'key': 'value',
),
'two': (
'key': 'value',
),
)
```
##### Fix missing parentheses when an expression statement starts with `let[` ([#14000](https://togithub.com/prettier/prettier/pull/14000), [#14044](https://togithub.com/prettier/prettier/pull/14044) by [@fisker](https://togithub.com/fisker), [@thorn0](https://togithub.com/thorn0))
```jsx
// Input
(let[0] = 2);
// Prettier 2.8.1
let[0] = 2;
// Prettier 2.8.1 (second format)
SyntaxError: Unexpected token (1:5)
> 1 | let[0] = 2;
| ^
2 |
// Prettier 2.8.2
(let)[0] = 2;
```
##### Fix semicolon duplicated at the end of LESS file ([#14007](https://togithub.com/prettier/prettier/pull/14007) by [@mvorisek](https://togithub.com/mvorisek))
```less
// Input
@variable: {
field: something;
};
// Prettier 2.8.1
@variable: {
field: something;
}; ;
// Prettier 2.8.2
@variable: {
field: something;
};
```
##### Fix no space after unary minus when followed by opening parenthesis in LESS ([#14008](https://togithub.com/prettier/prettier/pull/14008) by [@mvorisek](https://togithub.com/mvorisek))
```less
// Input
.unary_minus_single {
margin: -(@a);
}
.unary_minus_multi {
margin: 0 -(@a);
}
.binary_minus {
margin: 0 - (@a);
}
// Prettier 2.8.1
.unary_minus_single {
margin: - (@a);
}
.unary_minus_multi {
margin: 0 - (@a);
}
.binary_minus {
margin: 0 - (@a);
}
// Prettier 2.8.2
.unary_minus_single {
margin: -(@a);
}
.unary_minus_multi {
margin: 0 -(@a);
}
.binary_minus {
margin: 0 - (@a);
}
```
##### Do not change case of property name if inside a variable declaration in LESS ([#14034](https://togithub.com/prettier/prettier/pull/14034) by [@mvorisek](https://togithub.com/mvorisek))
```less
// Input
@var: {
preserveCase: 0;
};
// Prettier 2.8.1
@var: {
preservecase: 0;
};
// Prettier 2.8.2
@var: {
preserveCase: 0;
};
```
##### Fix formatting for auto-accessors with comments ([#14038](https://togithub.com/prettier/prettier/pull/14038) by [@fisker](https://togithub.com/fisker))
```jsx
// Input
class A {
@dec()
// comment
accessor b;
}
// Prettier 2.8.1
class A {
@dec()
accessor // comment
b;
}
// Prettier 2.8.1 (second format)
class A {
@dec()
accessor; // comment
b;
}
// Prettier 2.8.2
class A {
@dec()
// comment
accessor b;
}
```
##### Add parentheses for TSTypeQuery to improve readability ([#14042](https://togithub.com/prettier/prettier/pull/14042) by [@onishi-kohei](https://togithub.com/onishi-kohei))
```tsx
// Input
a as (typeof node.children)[number]
a as (typeof node.children)[]
a as ((typeof node.children)[number])[]
// Prettier 2.8.1
a as typeof node.children[number];
a as typeof node.children[];
a as typeof node.children[number][];
// Prettier 2.8.2
a as (typeof node.children)[number];
a as (typeof node.children)[];
a as (typeof node.children)[number][];
```
##### Fix displacing of comments in default switch case ([#14047](https://togithub.com/prettier/prettier/pull/14047) by [@thorn0](https://togithub.com/thorn0))
It was a regression in Prettier 2.6.0.
```jsx
// Input
switch (state) {
default:
result = state; // no change
break;
}
// Prettier 2.8.1
switch (state) {
default: // no change
result = state;
break;
}
// Prettier 2.8.2
switch (state) {
default:
result = state; // no change
break;
}
```
##### Support type annotations on auto accessors via `babel-ts` ([#14049](https://togithub.com/prettier/prettier/pull/14049) by [@sosukesuzuki](https://togithub.com/sosukesuzuki))
[The bug that `@babel/parser` cannot parse auto accessors with type annotations](https://togithub.com/babel/babel/issues/15205) has been fixed. So we now support it via `babel-ts` parser.
```tsx
class Foo {
accessor prop: number;
}
```
##### Fix formatting of empty type parameters ([#14073](https://togithub.com/prettier/prettier/pull/14073) by [@fisker](https://togithub.com/fisker))
```jsx
// Input
const foo: bar* comment */> = () => baz;
// Prettier 2.8.1
Error: Comment "comment" was not printed. Please report this error!
// Prettier 2.8.2
const foo: bar* comment */> = () => baz;
```
##### Add parentheses to head of `ExpressionStatement` instead of the whole statement ([#14077](https://togithub.com/prettier/prettier/pull/14077) by [@fisker](https://togithub.com/fisker))
```jsx
// Input
({}).toString.call(foo) === "[object Array]"
? foo.forEach(iterateArray)
: iterateObject(foo);
// Prettier 2.8.1
({}.toString.call(foo) === "[object Array]"
? foo.forEach(iterateArray)
: iterateObject(foo));
// Prettier 2.8.2
({}).toString.call(foo.forEach) === "[object Array]"
? foo.forEach(iterateArray)
: iterateObject(foo);
```
##### Fix comments after directive ([#14081](https://togithub.com/prettier/prettier/pull/14081) by [@fisker](https://togithub.com/fisker))
```jsx
// Input
"use strict" /* comment */;
// Prettier 2.8.1 (with other js parsers except `babel`)
Error: Comment "comment" was not printed. Please report this error!
// Prettier 2.8.2
```
##### Fix formatting for comments inside JSX attribute ([#14082](https://togithub.com/prettier/prettier/pull/14082) with by [@fisker](https://togithub.com/fisker))
```jsx
// Input
function MyFunctionComponent() {
}
// Prettier 2.8.1
Error: Comment "old" was not printed. Please report this error!
// Prettier 2.8.2
function MyFunctionComponent() {
;
}
```
##### Quote numeric keys for json-stringify parser ([#14083](https://togithub.com/prettier/prettier/pull/14083) by [@fisker](https://togithub.com/fisker))
```jsx
// Input
{0: 'value'}
// Prettier 2.8.1
{
0: "value"
}
// Prettier 2.8.2
{
"0": "value"
}
```
##### Fix removing commas from function arguments in maps ([#14089](https://togithub.com/prettier/prettier/pull/14089) by [@sosukesuzuki](https://togithub.com/sosukesuzuki))
```scss
/* Input */
$foo: map-fn(
(
"#{prop}": inner-fn($first, $second),
)
);
/* Prettier 2.8.1 */
$foo: map-fn(("#{prop}": inner-fn($first $second)));
/* Prettier 2.8.2 */
$foo: map-fn(
(
"#{prop}": inner-fn($first, $second),
)
);
```
##### Do not insert space in LESS property access ([#14103](https://togithub.com/prettier/prettier/pull/14103) by [@fisker](https://togithub.com/fisker))
```less
// Input
a {
color: @colors[@white];
}
// Prettier 2.8.1
a {
color: @colors[ @white];
}
// Prettier 2.8.2
```
Configuration
📅 Schedule: Branch creation - "after 9pm every weekday,before 5pm every weekday" in timezone Europe/Madrid, Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, 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 Mend Renovate. View repository job log here.
This PR contains the following updates:
2.8.1
->2.8.2
Release Notes
prettier/prettier
### [`v2.8.2`](https://togithub.com/prettier/prettier/blob/HEAD/CHANGELOG.md#282) [Compare Source](https://togithub.com/prettier/prettier/compare/2.8.1...2.8.2) [diff](https://togithub.com/prettier/prettier/compare/2.8.1...2.8.2) ##### Don't lowercase link references ([#13155](https://togithub.com/prettier/prettier/pull/13155) by [@DerekNonGeneric](https://togithub.com/DerekNonGeneric) & [@fisker](https://togithub.com/fisker)) ```markdown We now don't strictly follow the release notes format suggested by [Keep a Changelog]. [Keep a Changelog]: https://example.com/ We now don't strictly follow the release notes format suggested by [Keep a Changelog]. [keep a changelog]: https://example.com/Configuration
📅 Schedule: Branch creation - "after 9pm every weekday,before 5pm every weekday" in timezone Europe/Madrid, Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate. View repository job log here.