Clean changelog
This commit is contained in:
1 parent
07476f80a7
commit
d812687502
10 files changed
-238
No files matched your search
@@ -1,11 +0,0 @@
|
||||
---
|
||||
author: "Sosuke Suzuki (@sosukesuzuki)"
|
||||
authorURL: "https://github.com/sosukesuzuki"
|
||||
title: "Prettier 2.4: new bracketSameLine option and TypeScript 4.4 support!"
|
||||
---
|
||||
|
||||
This release renames the `jsxBracketSameLine` option to `bracketSameLine`, which supports HTML, Vue, and Angular in addition to JSX. The old name has been deprecated.
|
||||
|
||||
We’ve also added support for [TypeScript 4.4](https://www.typescriptlang.org/docs/handbook/release-notes/typescript-4-4.html), including new syntax features such as [class `static` blocks](https://github.com/tc39/proposal-class-static-block).
|
||||
|
||||
If you enjoy Prettier and would like to support our work, consider sponsoring us directly via [our OpenCollective](https://opencollective.com/prettier) or by sponsoring the projects we depend on, including [typescript-eslint](https://opencollective.com/typescript-eslint), [remark](https://opencollective.com/unified), and [Babel](https://opencollective.com/babel).
|
||||
@@ -1,3 +0,0 @@
|
||||
#### Infer parser for `.stylelintrc` (#10924 by @SevenOutman)
|
||||
|
||||
A `.stylelintrc` file (without extension) is handled using `json` and `yaml` parsers.
|
||||
@@ -1,26 +0,0 @@
|
||||
#### Always put a semicolon before Flow variance sigils (#11398 by @noppa)
|
||||
|
||||
<!-- prettier-ignore -->
|
||||
```jsx
|
||||
// Input
|
||||
class A {
|
||||
+one = function() {};
|
||||
-two = val();
|
||||
+#privOne = val();
|
||||
static +#privTwo = val();
|
||||
}
|
||||
// Prettier stable
|
||||
class A {
|
||||
+one = function() {}
|
||||
-two = val()
|
||||
+#privOne = val()
|
||||
static +#privTwo = val()
|
||||
}
|
||||
// Prettier main
|
||||
class A {
|
||||
+one = function() {};
|
||||
-two = val();
|
||||
+#privOne = val()
|
||||
static +#privTwo = val()
|
||||
}
|
||||
```
|
||||
@@ -1,35 +0,0 @@
|
||||
#### [HIGHLIGHT]Replace `jsxBracketSameLine` option with `bracketSameLine` option (#11006 by @kurtztech)
|
||||
|
||||
Deprecate the `jsxBracketSameLine` option in favour of the new `bracketSameLine` option that will work for HTML, Angular, Vue, and JSX.
|
||||
|
||||
<!-- prettier-ignore -->
|
||||
```html
|
||||
<!-- Input -->
|
||||
<div id="foo-bar-baz"
|
||||
class="bar-foo-baz"
|
||||
title="a sample title"
|
||||
data-foo="bar"
|
||||
data-bar="baz">lorem ipsum dolor sit amet</div>
|
||||
|
||||
<!-- Prettier stable -->
|
||||
<div
|
||||
id="foo-bar-baz"
|
||||
class="bar-foo-baz"
|
||||
title="a sample title"
|
||||
data-foo="bar"
|
||||
data-bar="baz"
|
||||
>
|
||||
lorem ipsum dolor sit amet
|
||||
</div>
|
||||
|
||||
<!-- Prettier main -->
|
||||
<!-- Options: `{bracketSameLine: true}` -->
|
||||
<div
|
||||
id="foo-bar-baz"
|
||||
class="bar-foo-baz"
|
||||
title="a sample title"
|
||||
data-foo="bar"
|
||||
data-bar="baz">
|
||||
lorem ipsum dolor sit amet
|
||||
</div>
|
||||
```
|
||||
@@ -1,29 +0,0 @@
|
||||
#### Support parenthesized tagged template literals for styled components (#11246 by @sosukesuzuki)
|
||||
|
||||
<!-- prettier-ignore -->
|
||||
```js
|
||||
// Input
|
||||
const StyledComponent =
|
||||
/** @type {import('styled-components').ThemedStyledFunction<'div',null,{overlap: boolean}>} */
|
||||
(styled.div)`
|
||||
position: fixed;
|
||||
color: red;
|
||||
`;
|
||||
|
||||
// Prettier main
|
||||
const StyledComponent =
|
||||
/** @type {import('styled-components').ThemedStyledFunction<'div',null,{overlap: boolean}>} */
|
||||
(styled.div)`
|
||||
position: fixed;
|
||||
color: red;
|
||||
`;
|
||||
|
||||
// Prettier stable
|
||||
const StyledComponent =
|
||||
/** @type {import('styled-components').ThemedStyledFunction<'div',null,{overlap: boolean}>} */
|
||||
(styled.div)`
|
||||
position: fixed;
|
||||
color: red;
|
||||
`;
|
||||
|
||||
```
|
||||
@@ -1,26 +0,0 @@
|
||||
#### Count correctly regex literals in method chain arguments (#11299 by @sosukesuzuki)
|
||||
|
||||
<!-- prettier-ignore -->
|
||||
```js
|
||||
// Input
|
||||
foo1(/𠮟𠮟𠮟/).foo2(bar).foo3(baz);
|
||||
|
||||
foo1(/叱叱叱/).foo2(bar).foo3(baz);
|
||||
|
||||
// Prettier stable
|
||||
foo1(/𠮟𠮟𠮟/)
|
||||
.foo2(bar)
|
||||
.foo3(baz);
|
||||
|
||||
foo1(/叱叱叱/).foo2(bar).foo3(baz);
|
||||
|
||||
// Prettier main
|
||||
foo1(/𠮟𠮟𠮟/)
|
||||
.foo2(bar)
|
||||
.foo3(baz);
|
||||
|
||||
foo1(/叱叱叱/)
|
||||
.foo2(bar)
|
||||
.foo3(baz);
|
||||
|
||||
```
|
||||
@@ -1,20 +0,0 @@
|
||||
#### Support hack-style pipeline proposal (#11335 by @sosukesuzuki)
|
||||
|
||||
The proposed [hack-style pipeline syntax](https://github.com/js-choi/proposal-hack-pipes) is now supported by Prettier. We are using `%` as the topic token, following the official explainer — although this may change in future releases as the proposal progresses.
|
||||
|
||||
As part of this change, support for the [“smart” pipeline syntax](https://github.com/js-choi/proposal-smart-pipelines) has been removed. See [our policy on non-standardized syntax](https://prettier.io/docs/en/rationale.html#disclaimer-about-non-standard-syntax) for the rationale behind this decision.
|
||||
|
||||
```js
|
||||
// Input
|
||||
const foo = fn() |> fn1(%) |> fn2(%);
|
||||
|
||||
// Prettier stable
|
||||
SyntaxError: Unexpected token (1:25)
|
||||
> 1 | const foo = fn() |> fn1(%) |> fn2(%);
|
||||
| ^
|
||||
2 |
|
||||
|
||||
// Prettier main
|
||||
const foo = fn() |> fn1(%) |> fn(%);
|
||||
|
||||
```
|
||||
@@ -1,16 +0,0 @@
|
||||
#### Consistently quote Sass modules strings (#11461 by @niksy)
|
||||
|
||||
<!-- prettier-ignore -->
|
||||
```scss
|
||||
// Input
|
||||
@use "sass:math";
|
||||
@forward "list";
|
||||
|
||||
// Prettier stable
|
||||
@use "sass:math";
|
||||
@forward "list";
|
||||
|
||||
// Prettier main
|
||||
@use 'sass:math';
|
||||
@forward 'list';
|
||||
```
|
||||
@@ -1,27 +0,0 @@
|
||||
#### Fix formatting intersection types that include mapped types (#11247 by @sosukesuzuki)
|
||||
|
||||
<!-- prettier-ignore -->
|
||||
```ts
|
||||
// Input
|
||||
type Example = {
|
||||
[A in B]: T;
|
||||
} & {
|
||||
[A in B]: T;
|
||||
};
|
||||
|
||||
// Prettier stable
|
||||
type Example = {
|
||||
[A in B]: T;
|
||||
} &
|
||||
{
|
||||
[A in B]: T;
|
||||
};
|
||||
|
||||
// Prettier main
|
||||
type Example = {
|
||||
[A in B]: T;
|
||||
} & {
|
||||
[A in B]: T;
|
||||
};
|
||||
|
||||
```
|
||||
@@ -1,45 +0,0 @@
|
||||
#### [HIGHLIGHT]Support TypeScript 4.4 (#11426 by @sosukesuzuki)
|
||||
|
||||
Support [TypeScript 4.4](https://devblogs.microsoft.com/typescript/announcing-typescript-4-4/)!
|
||||
|
||||
##### [`static` Blocks in Classes](https://devblogs.microsoft.com/typescript/announcing-typescript-4-4/#static-blocks)
|
||||
|
||||
Class Static Blocks syntax is a Stage 4 ECMAScript proposal. See https://github.com/tc39/proposal-class-static-block for more details.
|
||||
|
||||
<!-- prettier-ignore -->
|
||||
```tsx
|
||||
// Input
|
||||
class Foo {
|
||||
static count = 0;
|
||||
|
||||
// This is a static block:
|
||||
static {
|
||||
if (someCondition()) {
|
||||
Foo.count++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Prettier stable
|
||||
SyntaxError: Declaration expected. (5:9)
|
||||
3 |
|
||||
4 | // This is a static block:
|
||||
> 5 | static {
|
||||
| ^
|
||||
6 | if (someCondition()) {
|
||||
7 | Foo.count++;
|
||||
8 | }
|
||||
|
||||
// Prettier main
|
||||
class Foo {
|
||||
static count = 0;
|
||||
|
||||
// This is a static block:
|
||||
static {
|
||||
if (someCondition()) {
|
||||
Foo.count++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
```
|
||||
Reference in new issue
Block a user