prettier/prettier
### [`v2.0.5`](https://togithub.com/prettier/prettier/blob/master/CHANGELOG.md#205)
[Compare Source](https://togithub.com/prettier/prettier/compare/2.0.4...2.0.5)
[diff](https://togithub.com/prettier/prettier/compare/2.0.4...2.0.5)
##### Less: Fix formatting of `:extend` ([#7984](https://togithub.com/prettier/prettier/pull/7984) by [@fisker](https://togithub.com/fisker))
```less
// Input
.class {
&:extend(.some-class .some-other-class .some-very-loooooooooooooong-class all);
}
// Prettier 2.0.4
.class {
&:extend(
.some-class .some-other-class .some-very-loooooooooooooong-class all
);
}
// Prettier 2.0.4 (Second format)
.class {
&: extend(
.some-class .some-other-class .some-very-loooooooooooooong-class all
);
}
// Prettier 2.0.5
.class {
&:extend(
.some-class .some-other-class .some-very-loooooooooooooong-class all
);
}
```
##### Editor integration: Use [`resolve`](https://www.npmjs.com/package/resolve) if builtin `require.resolve` is overridden ([#8072](https://togithub.com/prettier/prettier/pull/8072) by [@fisker](https://togithub.com/fisker))
This fixes issues that the users of Atom and WebStorm faced with 2.0.4.
Prettier now switches to using the `resolve` module for resolving configuration files and plugins if it detects that `require.resolve` isn't Node's builtin function (doesn't support the second argument), which happens in environments like editor extensions. To force the fallback, set the `PRETTIER_FALLBACK_RESOLVE` environment variable to `true`.
### [`v2.0.4`](https://togithub.com/prettier/prettier/blob/master/CHANGELOG.md#204)
[Compare Source](https://togithub.com/prettier/prettier/compare/2.0.3...2.0.4)
[diff](https://togithub.com/prettier/prettier/compare/2.0.3...2.0.4)
##### Revert [#7869](https://togithub.com/prettier/prettier/pull/7869), "[TypeScript] format TSAsExpression with same logic as BinaryExpression" ([#7958](https://togithub.com/prettier/prettier/pull/7958))
### [`v2.0.3`](https://togithub.com/prettier/prettier/blob/master/CHANGELOG.md#203)
[Compare Source](https://togithub.com/prettier/prettier/compare/2.0.2...2.0.3)
[diff](https://togithub.com/prettier/prettier/compare/2.0.2...2.0.3)
##### JavaScript
##### Fix `prettier-ignore` inside JSX ([#7877](https://togithub.com/prettier/prettier/pull/7877) by [@fisker](https://togithub.com/fisker))
```jsx
// Input
{
/* prettier-ignore */
x ? :
}
;
// Prettier 2.0.2 (first output)
{/* prettier-ignore */
x ? : }
;
// Prettier 2.0.2 (second output)
{/* prettier-ignore */ x ? : }
;
// Prettier 2.0.3
{
/* prettier-ignore */
x ? :
}
;
```
##### Fix regressions in styled-components template literals ([#7883](https://togithub.com/prettier/prettier/pull/7883) by [@thorn0](https://togithub.com/thorn0))
```js
// 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](https://togithub.com/prettier/prettier/pull/7891) by [@sidharthv96](https://togithub.com/sidharthv96))
// Input
export const IAmIncredibleLongFunctionName = IAmAnotherFunctionName(
(_0: IAmIncredibleLongParameterType) => {
setTimeout(() => {
/*
Multiline comment
Multiline comment
Multiline comment
*/
console.log(
"Multiline string\
Multiline string\
Multiline string"
);
});
}
);
// Prettier 2.0.2
export const IAmIncredibleLongFunctionName = IAmAnotherFunctionName(
(_0: IAmIncredibleLongParameterType) => {
setTimeout(() => {
/*
Multiline comment
Multiline comment
Multiline comment
*/
console.log(
"Multiline string\
Multiline string\
Multiline string"
);
});
}
);
// Prettier 2.0.3: same as input
##### Fix bug with holes in array literals ([#7911](https://togithub.com/prettier/prettier/pull/7911) by [@bakkot](https://togithub.com/bakkot))
```jsx
// 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](https://togithub.com/prettier/prettier/pull/7869) by [@sosukesuzuki](https://togithub.com/sosukesuzuki))
```ts
// 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](https://togithub.com/prettier/prettier/pull/7892) by [@sosukesuzuki](https://togithub.com/sosukesuzuki))
```js
// 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](https://togithub.com/prettier/prettier/pull/7923) by [@DmitryGonchar](https://togithub.com/DmitryGonchar))
```jsx
// 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](https://togithub.com/prettier/prettier/pull/7867) by [@fisker](https://togithub.com/fisker))
```html
____
```
##### Format `script` and `style` inside tags with a colon in the name ([#7916](https://togithub.com/prettier/prettier/pull/7916) by [@fisker](https://togithub.com/fisker))
```html
```
##### Other changes
- Workaround for `require.resolve` in prettier-vscode ([#7951](https://togithub.com/prettier/prettier/pull/7951) by [@thorn0](https://togithub.com/thorn0))
- Fix unstable Angular expression binding ([#7924](https://togithub.com/prettier/prettier/pull/7924) by [@fisker](https://togithub.com/fisker))
- Update `isSCSS` regex ([#7922](https://togithub.com/prettier/prettier/pull/7922) by [@fisker](https://togithub.com/fisker))
- Fix formatting of empty files ([#7921](https://togithub.com/prettier/prettier/pull/7921) by [@fisker](https://togithub.com/fisker))
Renovate configuration
:date: Schedule: "every weekday" (UTC).
:vertical_traffic_light: Automerge: Disabled by config. Please merge this manually once you are satisfied.
:recycle: Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
:no_bell: 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 contains the following updates:
^2.0.2
->^2.0.5
Release Notes
prettier/prettier
### [`v2.0.5`](https://togithub.com/prettier/prettier/blob/master/CHANGELOG.md#205) [Compare Source](https://togithub.com/prettier/prettier/compare/2.0.4...2.0.5) [diff](https://togithub.com/prettier/prettier/compare/2.0.4...2.0.5) ##### Less: Fix formatting of `:extend` ([#7984](https://togithub.com/prettier/prettier/pull/7984) by [@fisker](https://togithub.com/fisker)) ```less // Input .class { &:extend(.some-class .some-other-class .some-very-loooooooooooooong-class all); } // Prettier 2.0.4 .class { &:extend( .some-class .some-other-class .some-very-loooooooooooooong-class all ); } // Prettier 2.0.4 (Second format) .class { &: extend( .some-class .some-other-class .some-very-loooooooooooooong-class all ); } // Prettier 2.0.5 .class { &:extend( .some-class .some-other-class .some-very-loooooooooooooong-class all ); } ``` ##### Editor integration: Use [`resolve`](https://www.npmjs.com/package/resolve) if builtin `require.resolve` is overridden ([#8072](https://togithub.com/prettier/prettier/pull/8072) by [@fisker](https://togithub.com/fisker)) This fixes issues that the users of Atom and WebStorm faced with 2.0.4. Prettier now switches to using the `resolve` module for resolving configuration files and plugins if it detects that `require.resolve` isn't Node's builtin function (doesn't support the second argument), which happens in environments like editor extensions. To force the fallback, set the `PRETTIER_FALLBACK_RESOLVE` environment variable to `true`. ### [`v2.0.4`](https://togithub.com/prettier/prettier/blob/master/CHANGELOG.md#204) [Compare Source](https://togithub.com/prettier/prettier/compare/2.0.3...2.0.4) [diff](https://togithub.com/prettier/prettier/compare/2.0.3...2.0.4) ##### Revert [#7869](https://togithub.com/prettier/prettier/pull/7869), "[TypeScript] format TSAsExpression with same logic as BinaryExpression" ([#7958](https://togithub.com/prettier/prettier/pull/7958)) ### [`v2.0.3`](https://togithub.com/prettier/prettier/blob/master/CHANGELOG.md#203) [Compare Source](https://togithub.com/prettier/prettier/compare/2.0.2...2.0.3) [diff](https://togithub.com/prettier/prettier/compare/2.0.2...2.0.3) ##### JavaScript ##### Fix `prettier-ignore` inside JSX ([#7877](https://togithub.com/prettier/prettier/pull/7877) by [@fisker](https://togithub.com/fisker)) ```jsx // InputRenovate configuration
:date: Schedule: "every weekday" (UTC).
:vertical_traffic_light: Automerge: Disabled by config. Please merge this manually once you are satisfied.
:recycle: Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
:no_bell: Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by WhiteSource Renovate. View repository job log here.