Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2023-07-13のJS: Prisma 5.0.0、Prettier 3.0、Convert to ESM #1098

Merged
merged 21 commits into from Jul 12, 2023

Conversation

azu
Copy link
Member

@azu azu commented Jul 12, 2023

ORMであるPrisma 5.0.0がリリースされました。

実験的な機能だったjsonProtocol/fieldReference/extendedWhereUniqueをStableに変更しています。
Wire ProtocolをJSON Protocolに変更することで、Cold Startの時間が大きく改善されています。

破壊的な変更としてNode.js 14のサポート終了、暗黙的に配列とみなす"array shortcuts"のサポートを削除、非推奨のオプションの削除なども含まれています。
次のページで、アップデート方法が公開されています。


Prettier 3.0がリリースされました。

Markdownで日本語/中国語 ⇔ 英語の間にスペースを入れないように変更、CJKの禁則処理に対応などの変更が含まれています。
trailingCommaのデフォルト値をallに変更やbabelパーサーでのFlow構文のサポートを削除するといった変更も含まれています。
その他にも内部的にESMにも対応するためにAPIの変更、プラグインで非同期パーサをサポート、設定ファイルでESMをサポートなども追加されています。


CommonJSからES Modulesへの移行する方法。トップダウンかボトムアップかという記事では、SecretlintのESM移行を例にどのようにパッケージをCommonJSからES Modulesへ移行するかについて書かれています。

Node.jsではESMからCJSは読み込める互換レイヤーがあるため、依存関係の根本からトップダウンでESMへと移行することで、パッケージを少しずつ移行できることについて書かれています。

この記事ではいわゆるPure ESM package(ESMのみのサポート)の方針についてでしたが、CJSとESMを両方サポートするDual Packageという手法もあります。

Dual Packageの主な手法については次のIssueにまとめてあります。

@azu azu merged commit 6a57ab5 into develop Jul 12, 2023
@azu azu deleted the jser-week-651 branch July 12, 2023 22:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant