タグ

ブックマーク / zenn.dev/sosukesuzuki (5)

  • 【翻訳】Prettier を Rust で書き換えたプロジェクトに $20k の報奨金を支払うプログラムは Biome が勝ちました

    この記事は vjeux 氏によって Prettier 公式ブログに投稿された「$20k Bounty was Claimed!」を許可をもらって翻訳したものです。 もとのタイトルを翻訳するのが難しかったので、できるだけわかりやすいものに翻訳しました。 PrettierというJavaScriptのコードフォーマッターは、人々がコードを書く様々な方法を慎重に扱うことで、驚くほど広く採用されています。この時点で、フォーマットロジックは安定しており、私たちの三項演算子に関する作業が完了すれば、それは満足のいく状態になるでしょう。 これは、次の重要な側面に注目できるということを意味します:パフォーマンス。Prettierは決して速いとは言えませんが、ほとんどの使用例には十分な速さです。これはいつも不満足な感じがしたので、何かをすることを望んでいました。それには、友好的な競争以上の方法はありません。

    【翻訳】Prettier を Rust で書き換えたプロジェクトに $20k の報奨金を支払うプログラムは Biome が勝ちました
    teppeis
    teppeis 2023/11/28
    寄付企業の中にCybozuの名前が!
  • PrettierのNode.jsサポートポリシーを決めたので紹介します

    PrettierというソフトウェアはNode.jsで動作します。他のNode.jsで動作するソフトウェアと同様に、Prettierも、サポート対象のNode.jsのバージョンを決めています。 たとえば、Prettier v2.x は Node.js 10.13.0 以降のみで動作します。それより前の Node.js でももしかしたら動くかもしれませんが、それは想定されていません。CIでもテストしてません。 現在 Prettier v3.0 の開発を進めていて、どの Node.js までサポートしようか、という議論になりました。結論が出て、今後同じような議論を避けるためにポリシーを決めたので、理由と共に紹介しようと思います。 先に結論 https://github.com/prettier/prettier/wiki/The-policy-to-drop-Node.js-version に書

    PrettierのNode.jsサポートポリシーを決めたので紹介します
    teppeis
    teppeis 2023/07/01
    EOL+最大1年見るらしい。手厚い
  • JavaScript で文字数を length で数えるのはやめようの実例

    はじめに JavaScript において文字数を String の length で取得すると、期待した値が得られないことがある。この記事では、実際に String の length を使うことによって発生した Prettier のバグを紹介する。 前提 JavaScript の String には length というプロパティが存在する。このlengthプロパティは文字列の文字数を表すものではない。 実際には、文字列中に含まれるUTF-16のコードユニットの数を返す。つまり、ASCIIをはじめとしたBMPに含まれるものであれば我々の期待する文字数が返ってくるが、一部の漢字やemojiなどについてはそうはならない。 たとえば、漢字の𠮟(U+20B9F)はサロゲートペアであり、2つのコードユニットで表される。そのため、length は 2 になる。

    JavaScript で文字数を length で数えるのはやめようの実例
  • actionlint を Node.js で実行する node-actionlint

    Linda_ppさんが開発したactionlintというコマンドラインツールがあります。 これは GitHub Actions のワークフローファイルを静的に解析して、事前にわかる問題を指摘してくれるツールです。詳細については開発者である Linda_pp さんが書いたブログ記事を読むことをおすすめします。 私は GitHub Actions をよく使います。しかし、ワークフローファイルの記述を誤ってしまい、実際に動かしてから些細なミスに気がつくことがよくあります。これには非常にストレスを感じていました。 actionlint はこの問題を見事に解決してくれました。コマンドラインからactionlintと入力すれば、適切に問題を指摘してくれます。 作ったもの 課題 私は普段 Node.js を使って様々なものを開発しています。actionlintGo で書かれており、Node.js

    actionlint を Node.js で実行する node-actionlint
    teppeis
    teppeis 2021/07/26
    Goのプログラムをwasmに変換してnpmから使う話
  • Next.js で Node.js の API がいつ入ったのかわかる表を作る

    Node.js の API がいつ入ったのかを調べる必要が出てきた。 もちろんリリースノートを見たり、ドキュメントの History を見れば調べられることが多いが、普通に面倒くさいので、いい感じの表とかを自動で生成できたら嬉しい。 どうやら公式ドキュメントは Markdown で管理されており、Added の情報はその Markdown の中のコメントに YAML として書かれているらしい。 なので、Markdown の内容を fetch して Markdown としてパースし、その中の特定のコメントをさらに YAML としてパースすることでデータがとれそうだった。 そして、そのデータをビルド時にひっぱってくる静的サイトがあればいつでも見れて便利だし、ビルド時にしか fetch しないので比較的行儀も良い。 ということで作ったみた。 実際のサイトはこちら https://nodejs-a

    Next.js で Node.js の API がいつ入ったのかわかる表を作る
    teppeis
    teppeis 2021/06/08
    deprecatedとか削除されたAPIの情報も欲しくなってくる
  • 1