stableバージョンに切り替える latest / berry / stable -> the most recent stable berry (>=2.0.0) release stableは2.0.0以上のリリースの中から、直近の安定バージョンになります。
yarn v3 が出ました。詳しい解説は譲るとして、esbuild integration や パフォーマンス向上が目玉です。 Yarn 3.0 🚀🤖 Performances, ESBuild, Better Patches, ... - DEV Community 流石に v1 はもう古いが、 v2 からの独自路線は受け付けがたい…という立場なのですが(yarn オリジナル作者の sebmck も難色を示しています)、今回は yarn 特有の機能をできるだけ避けて、できるだけ npm や pnpm 等と互換な部分だけで yarn v3 を使います。なので pnp も使いません。eslint や vscode の typescript 等でハマりどころが多すぎます。 ゼロインストールも否定派です。git blob objects のサイズが爆発して仕事にならなくなったことがあります。
yarn dlx を使いたいパッケージをインストールせず一回限りのコマンドを実行したいとき npx コマンドが使えます ただ 普段使いが yarn ですし キャッシュ的な意味でも できれば npm 系コマンドの npx ではなく yarn にしておきたいです ですが yarn の 「yarn run」 は package.json の scripts コマンドやインストール済みのコマンドの bin に指定されたものを実行できるだけです 未インストールパッケージのコマンドは実行できません V2 以降の yarn (berry) なら 「yarn dlx」 というコマンドが用意されていますが V1 の yarn (classic) には dlx コマンドは無いはずです ドキュメントを見ても dlx は見当たらないです 未だに yarn classic をメインに使ってるので これは不便です で
Yarn とは yarn とは雑には alternative npm。高速な Node.js 向けのパッケージマネージャ。 package.json を解釈し、高速にパッケージの依存解決を行ってくれる。 Yarn V2 のインストール方法 Yarn v2 は現状 yarn@berry としてバージョンを指定することでインストール可能。 V1 と V2 の違い 一次情報はこちらのエントリを参照のこと。スクショは公式から引用。 https://dev.to/arcanis/introducing-yarn-2-4eh1 個人的に特に気になっているものに 🍎 (赤いリンゴ) をつけておく。 色々途中なので変化したり間違ってる部分はご容赦ください。 🍏 CLI出力の改善 yarn v1 では絵文字が使われて可愛らしい出力だったが、v2 からは処理の具体的な内容を表示するように変化した。 色はア
CSSStyleSheet インターフェースは、JavaScript でスタイルシートを構築し、操作するための API です。CSSStyleSheet() コンストラクターで新しいスタイルシートを作成し、.replaceSync() メソッドでスタイルを適用できます。 CSSStyleSheet インターフェースは、JavaScript でスタイルシートを構築し、操作するための API です。CSSStyleSheet() コンストラクターで新しいスタイルシートを作成し、.replaceSync() メソッドでスタイルを適用できます。 スタイルが適用された CSSStyleSheet オブジェクトは、document.adoptedStyleSheets プロパティに代入することで、ページ全体に適用されます。 const styleSheet = new CSSStyleSheet();
この記事は Cybozu Frontend Advent Calendar 2023 の 24 日目の記事です。 先日リリースされた ESLint v8.56.0 でオプション reportUnusedDisableDirectives が改善された話です。 元々どういうオプションだった? // eslint-disable-line みたいなルール無効化ディレクティブを書いたけど、しばらくして何かしらのコード修正の影響でもうそのルール違反は発生しなくなって、でも無効化ディレクティブは消し忘れて無駄に残っている、みたいな状態は起こりがちです。 例えば以下のように non null assertion (!) が一時的に必要になって disable したけど、
プログラミング勉強日記 2021年1月8日 TwitterでBabelの存在を知ったので、Babelとはいったい何なのか気になり調べてみた。 Babelとは Babel(読み方:「バベル」)は、次の世代のJavaScriptの標準機能をブラウザのサポートを待たずに使えるようにするNode.js製のツールである。次の世代の標準機能を使って書かれたコードを、それらの機能をサポートしないブラウザでも動くコードに変換する。 簡単に言うと、JavaScriptのコードを新しい書き方から古い書き方に変換するツールである。具体的には、JavaScriptの言語仕様であるES2015以上の仕様のJavaScriptで記述すると、Internet Explorer11といった古いブラウザでは動作しない。そこで、Babelを使ってES2015・ES2016といった仕様で記述したJavaScriptファイルを互
■ はじめに みなさんは自分の関わっているプロジェクトにおけるnpm packageの脆弱性対応をしたことがありますでしょうか? 今回、npm auditを利用して脆弱性対応をした内容をもとにnpm packageの脆弱性対応方法と対応手順をまとめてみました。 npm packageの脆弱性ってなに? npm auditってなに? npm audit fix --forceをやっても脆弱性が消えなかった ライブラリとかpackageの依存関係てなに? 上記に当てはまる人にとっては読む価値のある内容になっていると思います! それではいってみましょう! ■ そもそも脆弱性とは ソフトウェアにおける脆弱性(ぜいじゃくせい)とは、プログラムの不具合や設計上のミスが原因となって発生した情報セキュリティ上の欠陥のことを言います。 この情報セキュリティ上の欠陥が存在すると、悪意ある人に勝手にプログラムを
JavaScript での非同期処理について、身近な例や具体例を交えながら詳細に解説しています。 最後には練習問題も用意しています! 頑張って書いているので、良いと思ったらコメント・いいね・ストック・共有などしてもらえると嬉しいです!! 非同期処理とは 非同期処理とは、プログラムの処理が順番に実行されず、ある処理を実行している間に他の処理を並行して実行することができる仕組みです。非同期処理では、あるタスクが完了するのを待たずに次のタスクが実行されるため、効率的に複数の処理を進めることが可能です。 (by ChatGPT) 非同期処理とは、「同期処理」の対義語で、同期処理は「プログラムの処理が順番に実行され、ある処理が終わるまで次の処理を待つ仕組み」です。 非同期処理の最大のメリットは、 「時間のかかる処理を行っている間に別の処理を行うことができる」 ことです! 身近な例では、部下への仕事の
この記事は、CYBOZU SUMMER BLOG FES '24 (Frontend stage) DAY13 の記事です。 こんにちは、フロリアでエンジニアとして活動している hacchan です。 現在 kintone ではフロリアというプロジェクトの中で、Closure Tools から React への移行作業に取り組んでいます。 以前、そのフロリアのチームの 1 つである Reactone チーム が Storybook をフル活用してテストを実装した話 を紹介しましたが、今回はそのアフターストーリーを紹介します。 Storybook のフル活用はやめた 以前の Reactone チームでは、Storybook の Test Runner を使って、Integration Test を実行するなど、Storybook をフル活用してテストを実装していましたが、新たな領域の刷新を開
date-fns provides the most comprehensive yet simple and consistent toolset for manipulating JavaScript dates in a browser & Node.js.
こんにちは、スターフェスティバル株式会社 エンジニアのsoriです。 今回は1つのサービス内のアプリケーションで使われている日時操作ライブラリMoment.jsを移行した際に気をつけたことなどをお話しします。 なぜ移行したのか Moment.jsは、2020年後半に「今後新機能の開発をせず、新規プロジェクトでの使用を推奨しない」旨アナウンス[1]がありました。 アナウンスとしては、Moment.jsがmutableなAPIを使用しており、immutableなものに変更するためには大きな破壊的な変更が必要になること、 また、バンドルサイズが大きいなどの問題があることが挙げられています。 個人的に使用していた感触としては、枯れたライブラリであり気軽に利用できるものであるのは確かなものの、仕様が緩い点[2]などが見受けられ、堅牢なコーディングを行うことにも障害があるように感じられました。 とはい
はじめに こんにちは。昨年の10月にカミナシに入社したソフトウェアエンジニアの tokuse です。 気が付けば入社してから既に半年以上経っており、光陰矢の如しで驚愕しています! カミナシではフロントエンドを TypeScript で開発しています。そんな中、先日 Object.keys() の仕様に起因する不具合が発生し、その際に Object.keys() が返す配列の順序に関する仕様について詳しく知りました。当稿ではその仕様について説明します(ECMAScript 最新前提です)。 はじめに 問題となった処理 Object.keys() の仕様 まとめ 余談 おわりに 問題となった処理 まず、問題となった処理をサンプルコードで紹介します。次のコードは、オブジェクトの数値キーのうち最大値を取得しようとした処理です。 type UserId = number; type User = {
Material UI v5が2021年9月16日にリリースされ、makeStylesが非推奨になってしまいライブラリをアップデートするためにmakeStylesからstyledに置き換え対応を行いました。 これからv4からv5への移行をこれから行う人のためになればと思いサンプルコードを使って記事にしました。 Material-UI v4 の記法サンプル 実際に行った作業 MUI v5のライブラリを追加 import先の変更 styledを使ったコンポーネントへのスタイリングの適用 完成品 置き換えをした感想 最後に Material-UI v4 の記法サンプル makeStylesを使用して自作hooksを作成して、各コンポーネントにclassNameをあてているDialogになります。 import { makeStyles, createStyles } from '@materia
JavaScriptパッケージシステム「npm」は巨大なバグを抱えていると指摘し、新たなパッケージシステムを開発する「vlt」。npm作者らの参加を発表 npmに代わる新しいJavaScriptのパッケージシステム「vlt」(vōlt:ボールト)を開発しているvlt technologyは、同社にnpmの作者であるIsaac Z. Schlueter氏、npmのスタッフエンジニアリングマネージャであったDarcy Clarke氏、npmのCLIチームであったRuy Adornoらが参加すると発表しました。 Node.jsとnpmが作ったJavaScriptのエコシステム サーバサイドでJavaScriptを実行可能にしたNode.jsの登場と、そのNode.jsを基盤にJavaScriptのアプリケーションやモジュールなどをパッケージングして登録し、自由にダウンロード可能にしたレジストリで
この記事はPrettierを使用している人を非難したり、脱Prettierを推奨する事を目的としていません。 こういった考え方もあるということをひとつの意見としてご覧いただければ幸いです。 勘違いしている人が多そうなので追記します。 Prettierを使わないというのは私が独断で決めた事ではないです。 チームが発足する際の技術選定で合意は取れていますし、私が関与していない別のチームでも同様にPrettier無しで開発しています。 私達のチームはメンバー同士を互いに信頼していますし、細いスタイルで喧嘩を始めるようなメンバーは居ないので安心してください。 はじめに Prettierはコードフォーマッターとして広く使われているツールです。 コードスタイルに関する議論をなくすことを目的としており、ESLintとは異なりデフォルト設定のままですぐに使えるのが特徴です。 さらに、PrettierはJS
Local Storageとは Local StorageとはHTHL5から導入されたWEB APIの一種で、Javascriptでブラウザにデータを記録する仕組みです。 利点 ブラウザにデータを保存できる cookieのようにWEBサーバーにデータを保存するのではなくブラウザに保存するので、 ブラウザを閉じてもユーザーの入力情報などを保持し続けることができます。 保存容量が大きい 主要なブラウザなら5MBまでデータを保存できます。 注意点 データは永続的に保存される こちらでLocal Storageのデータを削除する処理を書かないと、データは永続的に残り続けるので削除する処理を書きましょう。 Javascriptから自由にアクセスできる セキュリティ上非常に大きな注意点です。 ユーザーの個人情報など、機密性の高い情報には使わないようにしましょう。 構文 保存 localStorage.
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く