タグ ESM
人気順 5 users 50 users 100 users 500 users 1000 usersimport / exportの記法だけではない、CommonJS modulesとES modulesの違い
本記事はsyumai Advent Calendar 2024 4日目の記事です。 内容としては、主にWeb Developer Conference 2024の休憩中に@NozomuIkutaさんと行った雑談を記事化したものです。 内容に何か問題があれば、本記事のコメント欄や、Xなどでご連絡ください。 require(esm)の登場 2024年、ついにNode.jsのCommonJS modulesから、E... 続きを読む
process.getBuiltinModule(id) は TypeScript を ESM 化させるか?
こんにちは teppeis です。普段は開発本部長をやってますが、ブログフェスに駆り出されました! 本日は Node v22.3.0 に続いて v20.16.0 にもバックポートされた process.getBuiltinModule(id) について解説します。 問題: 同期的な条件付き require を ESM 化できない Node v22 にて、フラグ付きで CJS (CommonJS Modul... 続きを読む
Node.js の進化に伴い不要となったかもしれないパッケージたち
tl;dr はじめに 2024 年の 4 月 24 日に Node.js 22 がリリースされました。ESM を 条件付きで require する機能や、--run フラグによる npm スクリプトのパフォーマンス改善などが v22 で追加され、2009 年に Ryan Dahl が Node.js をリリースしてから 15 年が経つ今も、Node.js は進化を続けています[1]。 こうして No... 続きを読む
require(ESM)とECMAScript仕様
Meguro.es #27 @ oRo 続きを読む
100秒で理解するESM(ESModules)
ESMとは まず、ESMの定義から見てみましょう。 JavaScript Primer には、以下のように書かれていました。 ECMAScriptモジュールは、ES2015で導入されたJavaScriptファイルをモジュール化する言語標準の機能です。 jsprimer - [ES2015] ECMAScriptモジュール この定義を見て、「2015年から?」「それまではどうしてたの?... 続きを読む
Node.jsに入る新しいCJSからESMへの読み込み方法の紹介 - hiroppy's site
新しくCJSとESMの間での解決方法が変わる提案が出てきました。 まだマージされてませんが、すでに複数の承認があり、この方針から変わることはないように見えるので紹介したいと思います。 module: support require()ing synchronous ESM graphs by joyeecheung · Pull Request #51977 · nodejs/node Summary This patch... 続きを読む
社内で使う npm パッケージの作成に Deno を採用した話 - Cybozu Inside Out | サイボウズエンジニアのブログ
こんにちわ。フロントエンドエキスパートチームの@nus3_です。 最近、社内用の npm パッケージを作る必要があり、そのパッケージは依存が少なく、実装もシンプルだったので、npm パッケージの作成には Deno と dnt を採用しました。 dnt とは dnt は Deno で実装したモジュールを CJS、ESM に対応した npm パッケージに... 続きを読む
TypeScriptのmoduleオプションの話、あるいはTypeScript開発者の苦悩、あるいはCJSとESMの話
皆さんこんにちは。早速ですが、TypeScriptのmoduleオプションはご存じでしょうか。moduleオプションは、例えば次のような値をサポートしています。 commonjs umd es2015 esnext node16 nodenext 皆さんは、moduleオプションが何を設定するオプションなのか一言で説明できますか? 実は、TypeScriptの熟練者であってもmo... 続きを読む
CommonJSからES Modulesへの移行する方法。トップダウンかボトムアップか
Secretlint v7でCommonJS からES Modulesへの移行を行いました。 Secretlint v7.0.0をリリースしました。Pure ESMへの書き直し この記事では、CommonJS(CJS)からES Modules(ESM)への移行を行った経緯と、移行する方法について紹介します。 CJSからESMへの移行は、率直に言えば単調な作業で、メリットが見えにくい作業で... 続きを読む
🌕 moonでのmonorepo管理とpackemonでのCJS/ESMのdual package
🌕 moonでのmonorepo管理とpackemonでのCJS/ESMのdual package 🌕 moon 一貫性を持ったmonorepo管理ツール for JavaScript ハッシュを使ったファイルキャッシュ プロジェクトのパッケージ間の依存関係の分析とタスク実行 Node.js/npmパッケージマネージャーのバージョン管理と一貫性 TypeScriptのProject Referendcesの... 続きを読む
Vite 3 が採用した CJS Proxy による Dual Package 構成
2022 年現在、Node.js 界隈は ESM (ES Module) への移行の過渡期であり、特に既存プロジェクトにおいては CJS (CommonJS) 構成であることがまだまだ多い。また、Pure ESM な npm パッケージは、CSJ プロジェクトからの利便性が悪く、dynamic import が必須で非同期化を強いられたり TypeScript の設定変更が必要だったり... 続きを読む
TypeScript 4.7 と Native Node.js ESM
TypeScript 4.7 がリリースされたので、Node.js ESM 対応の現状をまとめておく。 @teppeis さんの TypeScript 4.5 以降で ESM 対応はどうなるのか? を先に読んでおくと、以降の話も読み進めやすいかも。 このエントリの中でも、teppeis さんの定義した用語をそのまま用いさせてもらう。 * CommonJS (CJS): 従来式の Nod... 続きを読む
TypeScript 4.5 以降で ESM 対応はどうなるのか?
先日リリースされた TypeScript 4.5 Beta で、待望の Node.js ESM 対応がアナウンスされました。 その後、ユーザーからのフィードバックを経て、TypeScript チームは TS 4.5(11/16 リリース予定)では ESM 対応を stable リリースせず、Nightly のまま継続検討することを決定しました[1]。 今後どうなるかは分かりませ... 続きを読む
Get Ready For ESM. JavaScript Modules will soon be a… | by Sindre Sorhus | Jan, 2021 | ? Sindre Sorhus’ blog
JavaScript Modules will soon be a reality for Node.js package maintainers. This blog post is targeted Node.js package maintainers. At the end of April 2021, Node.js 10 will be end-of-life, which means that package maintainers can target Node.js 12. This Node.js version has full support for JavaSc... 続きを読む
Node.jsのECMAScript Modulesの紹介 - 技術探し
www.meetup.com ここで話したことの日本語版です。 blog.hiroppy.me ECMAScript Modulesとは? HTML 実装状況 ESM 特徴 ESM in Node.js なぜ時間がかかったのか? どのようにNode.jsではESMとCJSを判断し解決するか? .mjs ? Package Mode package.json .mjs と .cjs ルール WHATWG URLに準拠する 使用できない変数 明示... 続きを読む
Node.jsの新しいモジュール方式の実験的導入 - 技術探し
内容まとめ ESM事前知識 PR CoreへのPR 初期提案実装 リゾルバアルゴリズム 使用法 .mjsがエントリーポイントの場合 --entry-type package.jsonのtypeフィールド 特定ファイルのモジュール形式をロックしたい場合 Node.jsのCoreへESMとCJSの新しい方式が実験的フェイズ(stability: 1)として入ります。 ESM対応は安定化ま... 続きを読む
GraphQL でファイルをアップロードしたい - esm アジャイル事業部 開発者ブログ
こんにちは、hibariya です。さいきん GraphQL でのファイルアップロード方法について知りたいなと思いちょっと検索してみたところ、すぐにはこれといった方法に辿りつけなかったので気になって調べました。手元で試した感じだと GraphQL multipart request specification という仕様が良さそうでしたので、今日はそのこ... 続きを読む
RubyConf 2018 (Los Angeles, CA) に行きました - esm アジャイル事業部 開発者ブログ
RuboCop や Active Record Oracle enhanced adapter などのコミッターをやっているコミュニティマネージャの @koic です。 2018年11月13日(火) から 2018年11月15日(木) の間、カルフォルニア州のロサンゼルスで開催された RubyConf 2018 に行きました。 rubyconf.org 渡航までの準備については、個人の日記の方に書いて... 続きを読む
アジャイル事業部でオリジナルのプランニングポーカーデッキを作りました - esm アジャイル事業部 開発者ブログ
イベントで配布するノベルティとして、オリジナルのプランニングポーカーデッキを作成しました。 RubyKaigi 2018のスポンサーブースで配布したので、すでに持っている方もいるかもしれません。 11/1, 2 に開催されるRubyWorld Conference 2018のスポンサーブースでもお配りいたします。 参加される方はぜひお立ちよりく... 続きを読む
Rails / OSS パッチ会 2018年9月のお知らせ - esm アジャイル事業部 開発者ブログ
Rails / OSS パッチ会を2018年9月12日(水)に開催します。 この会をひとことでいうと、日頃のお仕事で使っている Rails をはじめとする OSS への upstream にパッチを送る会です。 会には Ruby と Rails のコミッターである顧問の a_matsuda もいますので、例えば Rails に送るパッチのネタがあるけれど、パッチを送るに... 続きを読む
学生向け RubyKaigi 2018 招待ツアーを行いました - esm アジャイル事業部 開発者ブログ
終了して 2 ヶ月たってしまいましたが、5/31 - 6/2 に開催された、RubyKaigi 2018 に 3 名の学生を招待しました。 https://esminc.doorkeeper.jp/events/73118 招待の内容としては、以下の費用を補助するというものでした。 RubyKaigi 本編の参加チケット RubyKaigi 公式パーティーの参加チケット RubyKaigi 会場までの... 続きを読む
Node.jsとECMAScript Modules - 技術探し
2018 - 03 - 22 Node.jsとECMAScript Modules JavaScript Node tc39 Tweet 覚えておくべきこと ESMを使いたい場合は、拡張子を.mjsにする .mjsの拡張子は省略可能である ESMのファイルをトップレベルではCJSでインポート出来ない CJSのファイルをインポートするのにnamed importは行えない ESMのパスはwhatwg... 続きを読む
JavaScriptでモジュールを使う時代に! ブラウザで覚えるES Modules入門 - ICS MEDIA
JavaScriptの新しい仕様には、モジュールという仕組みがあります 。現時点では一部のブラウザしか対応していませんが、 ECMAScript 2015のModules の標準仕様として策定されているため、やがて全てのブラウザで使えるようになっていくでしょう。この機能は、ES2015 Modules、ES6 Modules、ES Modules、ESMなどと呼ばれています(以下、ES Modul... 続きを読む
リモート勤務を始めて10ヶ月経ちました - esm アジャイル事業部 開発者ブログ
2017 - 10 - 05 リモート勤務を始めて10ヶ月経ちました こんにちは、富山在住の kunitoo です。 リモート勤務はじめました にもありますが、昨年12月20日から出身地である 富山県 に引っ越し、リモート勤務という体制で働き始めました。 約10ヶ月間リモート勤務を行なった感想は、スムーズにリモート勤務に移行でき、 日々の業務も問題なく進めていけたと感じています。 リモート勤務を実... 続きを読む
Node.jsのES Modulesサポートの現状確認と備え - teppeis blog
2017 - 08 - 31 Node.jsのES Modulesサポートの現状確認と備え この話を今日のNode学園で話すので、ご興味あればどうぞ。まだ空きがあるようです。 nodejs.connpass.com ECMAScript 2015で待望のES Modules(ESM)の仕様が策定されたものの実装がなかなか進まない、という話を 1年前に発表した 。 その後、 ブラウザでのES Mod... 続きを読む