Release 3.4.2
This commit is contained in:
1 parent
572bebe2d4
commit
cca946176c
5 files changed
+126
-19
No files matched your search
@@ -26,7 +26,7 @@ Don't fill the form below manually! Let a program create a report for you:
|
|||||||
|
|
||||||
-->
|
-->
|
||||||
|
|
||||||
**Prettier 3.4.1**
|
**Prettier 3.4.2**
|
||||||
[Playground link](https://prettier.io/playground/#.....)
|
[Playground link](https://prettier.io/playground/#.....)
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ BEFORE SUBMITTING AN ISSUE:
|
|||||||
|
|
||||||
**Environments:**
|
**Environments:**
|
||||||
|
|
||||||
- Prettier Version: 3.4.1
|
- Prettier Version: 3.4.2
|
||||||
- Running Prettier via: <!-- CLI, Node.js API, Browser API, etc. -->
|
- Running Prettier via: <!-- CLI, Node.js API, Browser API, etc. -->
|
||||||
- Runtime: <!-- Node.js v14, Chrome v83, etc. -->
|
- Runtime: <!-- Node.js v14, Chrome v83, etc. -->
|
||||||
- Operating System: <!-- Windows, Linux, macOS, etc. -->
|
- Operating System: <!-- Windows, Linux, macOS, etc. -->
|
||||||
|
|||||||
+107
@@ -1,3 +1,110 @@
|
|||||||
|
# 3.4.2
|
||||||
|
|
||||||
|
[diff](https://github.com/prettier/prettier/compare/3.4.1...3.4.2)
|
||||||
|
|
||||||
|
#### Treat U+30A0 & U+30FB in Katakana Block as CJK ([#16796](https://github.com/prettier/prettier/pull/16796) by [@tats-u](https://github.com/tats-u))
|
||||||
|
|
||||||
|
Prettier doesn't treat U+30A0 & U+30FB as Japanese. U+30FB is commonly used in Japanese to represent the delimitation of first and last names of non-Japanese people or “and”. The following “C言語・C++・Go・Rust” means “C language & C++ & Go & Rust” in Japanese.
|
||||||
|
|
||||||
|
<!-- prettier-ignore -->
|
||||||
|
```md
|
||||||
|
<!-- Input (--prose-wrap=never) -->
|
||||||
|
|
||||||
|
C言
|
||||||
|
語
|
||||||
|
・
|
||||||
|
C++
|
||||||
|
・
|
||||||
|
Go
|
||||||
|
・
|
||||||
|
Rust
|
||||||
|
|
||||||
|
<!-- Prettier 3.4.1 -->
|
||||||
|
C言語・ C++ ・ Go ・ Rust
|
||||||
|
|
||||||
|
<!-- Prettier 3.4.2 -->
|
||||||
|
C言語・C++・Go・Rust
|
||||||
|
```
|
||||||
|
|
||||||
|
U+30A0 can be used as the replacement of the `-` in non-Japanese names (e.g. “Saint-Saëns” (Charles Camille Saint-Saëns) can be represented as “サン゠サーンス” in Japanese), but substituted by ASCII hyphen (U+002D) or U+FF1D (full width hyphen) in many cases (e.g. “サン=サーンス” or “サン=サーンス”).
|
||||||
|
|
||||||
|
#### Fix comments print on class methods with decorators ([#16891](https://github.com/prettier/prettier/pull/16891) by [@fisker](https://github.com/fisker))
|
||||||
|
|
||||||
|
<!-- prettier-ignore -->
|
||||||
|
```jsx
|
||||||
|
// Input
|
||||||
|
class A {
|
||||||
|
@decorator
|
||||||
|
/**
|
||||||
|
* The method description
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
async method(foo: Foo, bar: Bar) {
|
||||||
|
console.log(foo);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Prettier 3.4.1
|
||||||
|
class A {
|
||||||
|
@decorator
|
||||||
|
async /**
|
||||||
|
* The method description
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
method(foo: Foo, bar: Bar) {
|
||||||
|
console.log(foo);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Prettier 3.4.2
|
||||||
|
class A {
|
||||||
|
@decorator
|
||||||
|
/**
|
||||||
|
* The method description
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
async method(foo: Foo, bar: Bar) {
|
||||||
|
console.log(foo);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Fix non-idempotent formatting ([#16899](https://github.com/prettier/prettier/pull/16899) by [@seiyab](https://github.com/seiyab))
|
||||||
|
|
||||||
|
This bug fix is not language-specific. You may see similar change in any languages. This fixes regression in 3.4.0 so change caused by it should yield same formatting as 3.3.3.
|
||||||
|
|
||||||
|
<!-- prettier-ignore -->
|
||||||
|
```jsx
|
||||||
|
// Input
|
||||||
|
<div>
|
||||||
|
foo
|
||||||
|
<span>longlonglonglonglonglonglonglonglonglonglonglonglonglonglongl foo</span>
|
||||||
|
, abc
|
||||||
|
</div>;
|
||||||
|
|
||||||
|
// Prettier 3.4.1 (first)
|
||||||
|
<div>
|
||||||
|
foo
|
||||||
|
<span>
|
||||||
|
longlonglonglonglonglonglonglonglonglonglonglonglonglonglongl foo
|
||||||
|
</span>, abc
|
||||||
|
</div>;
|
||||||
|
|
||||||
|
// Prettier 3.4.1 (second)
|
||||||
|
<div>
|
||||||
|
foo
|
||||||
|
<span>longlonglonglonglonglonglonglonglonglonglonglonglonglonglongl foo</span>
|
||||||
|
, abc
|
||||||
|
</div>;
|
||||||
|
|
||||||
|
// Prettier 3.4.2
|
||||||
|
<div>
|
||||||
|
foo
|
||||||
|
<span>longlonglonglonglonglonglonglonglonglonglonglonglonglonglongl foo</span>
|
||||||
|
, abc
|
||||||
|
</div>;
|
||||||
|
```
|
||||||
|
|
||||||
# 3.4.1
|
# 3.4.1
|
||||||
|
|
||||||
[diff](https://github.com/prettier/prettier/compare/3.4.0...3.4.1)
|
[diff](https://github.com/prettier/prettier/compare/3.4.0...3.4.1)
|
||||||
|
|||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "prettier",
|
"name": "prettier",
|
||||||
"version": "3.5.0-dev",
|
"version": "3.4.2",
|
||||||
"description": "Prettier is an opinionated code formatter",
|
"description": "Prettier is an opinionated code formatter",
|
||||||
"bin": "./bin/prettier.cjs",
|
"bin": "./bin/prettier.cjs",
|
||||||
"repository": "prettier/prettier",
|
"repository": "prettier/prettier",
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ Required options:
|
|||||||
|
|
||||||
- **[`parser`](options.md#parser) (or [`filepath`](options.md#file-path))**: One of these options has to be specified for Prettier to know which parser to use.
|
- **[`parser`](options.md#parser) (or [`filepath`](options.md#file-path))**: One of these options has to be specified for Prettier to know which parser to use.
|
||||||
|
|
||||||
- **`plugins`**: Unlike the `format` function from the [Node.js-based API](api.md#prettierformatsource--options), this function doesn’t load plugins automatically. The `plugins` option is required because all the parsers included in the Prettier package come as plugins (for reasons of file size). These plugins are files in <https://unpkg.com/browse/prettier@3.4.1/plugins/>. Note that `estree` plugin should be loaded when printing JavaScript, TypeScript, Flow, or JSON.
|
- **`plugins`**: Unlike the `format` function from the [Node.js-based API](api.md#prettierformatsource--options), this function doesn’t load plugins automatically. The `plugins` option is required because all the parsers included in the Prettier package come as plugins (for reasons of file size). These plugins are files in <https://unpkg.com/browse/prettier@3.4.2/plugins/>. Note that `estree` plugin should be loaded when printing JavaScript, TypeScript, Flow, or JSON.
|
||||||
|
|
||||||
You need to load the ones that you’re going to use and pass them to `prettier.format` using the `plugins` option.
|
You need to load the ones that you’re going to use and pass them to `prettier.format` using the `plugins` option.
|
||||||
|
|
||||||
@@ -30,8 +30,8 @@ See below for examples.
|
|||||||
### Global
|
### Global
|
||||||
|
|
||||||
```html
|
```html
|
||||||
<script src="https://unpkg.com/prettier@3.4.1/standalone.js"></script>
|
<script src="https://unpkg.com/prettier@3.4.2/standalone.js"></script>
|
||||||
<script src="https://unpkg.com/prettier@3.4.1/plugins/graphql.js"></script>
|
<script src="https://unpkg.com/prettier@3.4.2/plugins/graphql.js"></script>
|
||||||
<script>
|
<script>
|
||||||
(async () => {
|
(async () => {
|
||||||
const formatted = await prettier.format("type Query { hello: String }", {
|
const formatted = await prettier.format("type Query { hello: String }", {
|
||||||
@@ -48,8 +48,8 @@ Note that the [`unpkg` field](https://unpkg.com/#examples) in Prettier’s `pack
|
|||||||
|
|
||||||
```html
|
```html
|
||||||
<script type="module">
|
<script type="module">
|
||||||
import * as prettier from "https://unpkg.com/prettier@3.4.1/standalone.mjs";
|
import * as prettier from "https://unpkg.com/prettier@3.4.2/standalone.mjs";
|
||||||
import prettierPluginGraphql from "https://unpkg.com/prettier@3.4.1/plugins/graphql.mjs";
|
import prettierPluginGraphql from "https://unpkg.com/prettier@3.4.2/plugins/graphql.mjs";
|
||||||
|
|
||||||
const formatted = await prettier.format("type Query { hello: String }", {
|
const formatted = await prettier.format("type Query { hello: String }", {
|
||||||
parser: "graphql",
|
parser: "graphql",
|
||||||
@@ -62,8 +62,8 @@ Note that the [`unpkg` field](https://unpkg.com/#examples) in Prettier’s `pack
|
|||||||
|
|
||||||
```js
|
```js
|
||||||
define([
|
define([
|
||||||
"https://unpkg.com/prettier@3.4.1/standalone.js",
|
"https://unpkg.com/prettier@3.4.2/standalone.js",
|
||||||
"https://unpkg.com/prettier@3.4.1/plugins/graphql.js",
|
"https://unpkg.com/prettier@3.4.2/plugins/graphql.js",
|
||||||
], async (prettier, ...plugins) => {
|
], async (prettier, ...plugins) => {
|
||||||
const formatted = await prettier.format("type Query { hello: String }", {
|
const formatted = await prettier.format("type Query { hello: String }", {
|
||||||
parser: "graphql",
|
parser: "graphql",
|
||||||
@@ -91,8 +91,8 @@ This syntax doesn’t necessarily work in the browser, but it can be used when b
|
|||||||
### Worker
|
### Worker
|
||||||
|
|
||||||
```js
|
```js
|
||||||
importScripts("https://unpkg.com/prettier@3.4.1/standalone.js");
|
importScripts("https://unpkg.com/prettier@3.4.2/standalone.js");
|
||||||
importScripts("https://unpkg.com/prettier@3.4.1/plugins/graphql.js");
|
importScripts("https://unpkg.com/prettier@3.4.2/plugins/graphql.js");
|
||||||
|
|
||||||
(async () => {
|
(async () => {
|
||||||
const formatted = await prettier.format("type Query { hello: String }", {
|
const formatted = await prettier.format("type Query { hello: String }", {
|
||||||
@@ -108,9 +108,9 @@ If you want to format [embedded code](options.md#embedded-language-formatting),
|
|||||||
|
|
||||||
```html
|
```html
|
||||||
<script type="module">
|
<script type="module">
|
||||||
import * as prettier from "https://unpkg.com/prettier@3.4.1/standalone.mjs";
|
import * as prettier from "https://unpkg.com/prettier@3.4.2/standalone.mjs";
|
||||||
import prettierPluginBabel from "https://unpkg.com/prettier@3.4.1/plugins/babel.mjs";
|
import prettierPluginBabel from "https://unpkg.com/prettier@3.4.2/plugins/babel.mjs";
|
||||||
import prettierPluginEstree from "https://unpkg.com/prettier@3.4.1/plugins/estree.mjs";
|
import prettierPluginEstree from "https://unpkg.com/prettier@3.4.2/plugins/estree.mjs";
|
||||||
|
|
||||||
console.log(
|
console.log(
|
||||||
await prettier.format("const html=/* HTML */ `<DIV> </DIV>`", {
|
await prettier.format("const html=/* HTML */ `<DIV> </DIV>`", {
|
||||||
@@ -126,10 +126,10 @@ The HTML code embedded in JavaScript stays unformatted because the `html` parser
|
|||||||
|
|
||||||
```html
|
```html
|
||||||
<script type="module">
|
<script type="module">
|
||||||
import * as prettier from "https://unpkg.com/prettier@3.4.1/standalone.mjs";
|
import * as prettier from "https://unpkg.com/prettier@3.4.2/standalone.mjs";
|
||||||
import prettierPluginBabel from "https://unpkg.com/prettier@3.4.1/plugins/babel.mjs";
|
import prettierPluginBabel from "https://unpkg.com/prettier@3.4.2/plugins/babel.mjs";
|
||||||
import prettierPluginEstree from "https://unpkg.com/prettier@3.4.1/plugins/estree.mjs";
|
import prettierPluginEstree from "https://unpkg.com/prettier@3.4.2/plugins/estree.mjs";
|
||||||
import prettierPluginHtml from "https://unpkg.com/prettier@3.4.1/plugins/html.mjs";
|
import prettierPluginHtml from "https://unpkg.com/prettier@3.4.2/plugins/html.mjs";
|
||||||
|
|
||||||
console.log(
|
console.log(
|
||||||
await prettier.format("const html=/* HTML */ `<DIV> </DIV>`", {
|
await prettier.format("const html=/* HTML */ `<DIV> </DIV>`", {
|
||||||
|
|||||||
Reference in new issue
Block a user