並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 1824件

新着順 人気順

node.jsの検索結果1 - 40 件 / 1824件

  • PHPやNode.jsなどに任意コマンド実行の脆弱性、原因はWindows仕様の理解不足

    多くのプログラミング言語の処理系に、攻撃者が任意のコマンドを実行できる深刻な脆弱性が見つかった。JPCERTコーディネーションセンター(JPCERT/CC)と情報処理推進機構(IPA)が共同運営する脆弱性対策情報ポータルサイト「JVN(Japan Vulnerability Notes)」で2024年4月15日に公開された。 脆弱性が確認されたのは「PHP」「Rust」「Haskell」の各言語処理系とJavaScript/TypeScriptの処理系「Node.js」、音声や動画をダウンロードできる高機能なコマンド「yt-dlp」である。ただし、この脆弱性の影響を受けるOSはWindowsだけで、LinuxやmacOSなどの他のOSには影響しない。 多くのプログラミング言語は、プログラムの中からOS上でコマンドを実行する機能を持つ。Windowsでは言語処理系が「CreateProces

      PHPやNode.jsなどに任意コマンド実行の脆弱性、原因はWindows仕様の理解不足
    • Node.js の進化に伴い不要となったかもしれないパッケージたち

      tl;dr はじめに 2024 年の 4 月 24 日に Node.js 22 がリリースされました。ESM を 条件付きで require する機能や、--run フラグによる npm スクリプトのパフォーマンス改善などが v22 で追加され、2009 年に Ryan Dahl が Node.js をリリースしてから 15 年が経つ今も、Node.js は進化を続けています[1]。 こうして Node.js 自身が強化されていくにつれ、以前はサードパーティーのパッケージを使用して実現することが一般的であった機能が Node.js のみで実現可能となり、当該パッケージが不要となるような場合があります。冒頭に引用した Ben Holmes の動画では、そのように不要となったパッケージとして dotenv node-fetch chalk mocha が挙げられていますが、この記事では「これら

        Node.js の進化に伴い不要となったかもしれないパッケージたち
      • JSR の紹介

        JSR の紹介

          JSR の紹介
        • TypeScriptの環境構築から分かる、Jestを使用したテストの方法 | DevelopersIO

          こんにちは、戸田です。 このブログではTypeScriptの環境構築からJestを使用した簡単な四則演算のテストの方法を解説します。 環境構築 まずは環境構築をします。 今回はかなりシンプルな環境を構築します。 今回使用した環境は以下です。 Node.js v21.5.0 TypeScript v5.4.0 Jest v29.7.0 TypeScriptのインストール package.jsonをセットアップする npm init -y TypeScriptをインストールする npm install typescript --save-dev Node.jsのプログラムに必要な型宣言ファイルnode.d.tsをインストール npm install @types/node --save-dev TypeScriptの設定ファイルtsconfig.jsonを初期化 npx tsc --init

            TypeScriptの環境構築から分かる、Jestを使用したテストの方法 | DevelopersIO
          • Node.js、ロケットに乗った亀「Rocket Turtle」が正式マスコットに

            Node.jsのマスコットキャラクターが2月に決まり、発表されていました。 先週発表されたNode.js 22の記事を書くに当たり、資料を調べているうちに気がつきましたので紹介したいと思います(「Node.js v22 で変わること - Speaker Deck」というスライドで知りました。ありがとうございます)。 Node.jsのマスコットキャラクターはGitHubのIssue「Have a mascot · Issue #828 · nodejs/admin」で議論されて……

              Node.js、ロケットに乗った亀「Rocket Turtle」が正式マスコットに
            • 次のLTS版となる「Node.js 22」正式リリース。WebAssembly GCがデフォルトで利用可能に

              次のLTS版となる「Node.js 22」正式リリース。WebAssembly GCがデフォルトで利用可能に JavaScriptランタイム「Node.js」の最新バージョンとなる「Node.js 22」正式版がリリースされました。 Node.jsは偶数バージョンがリリースされてから6カ月の後に、30カ月の長期サポート期間(LTS:Long Term Support)に入ります。Node.js 22も、6カ月後の2024年10月にLTSとなる予定です。 Node.js 22 is here Featuring: require()ing ESM graphs, WebSocket client, updates of the V8 JavaScript engine, and more. Big thank you to @_rafaelgss and @satanacchio for t

                次のLTS版となる「Node.js 22」正式リリース。WebAssembly GCがデフォルトで利用可能に
              • Node.js — Node.js 22 is now available!

                We're excited to announce the release of Node.js 22! Highlights include require()ing ES modules, a WebSocket client, updates of the V8 JavaScript engine, and more! Node.js 22 will enter long-term support (LTS) in October, but until then, it will be the "Current" release for the next six months. We encourage you to explore the new features and benefits offered by this latest release and evaluate th

                  Node.js — Node.js 22 is now available!
                • Node.js v22 で変わること

                  2024/04/24 令和トラベルで発表した Node.js v22 で変わることの話です。

                    Node.js v22 で変わること
                  • Node.js + TypeScriptのモジュールを整理してみる

                    はじめにlink 最近受けるNode.js + TypeScript環境の相談の中で、CommonJSやECMAScript Modulesのあたりで落とし穴にはまっている人が多いという事に気づいた。 Node.jsは歴史的にCommonJSとECMAScript Modules(以後ESMと表記)がどうしても入り乱れる環境にあり、これにTypeScriptのモジュールが加わると組み合わせでさらに複雑度が増すのが現状である。 説明する際に口頭より整理した文章が欲しいと思ったので記事にする。 以下のリポジトリで検証コードを管理している。 https://github.com/koh110/module_test Node.jsモジュールチェックシートlink まず最初にNode.jsにおけるCommonJSとESMの挙動について整理する。 いきなり書かれても把握できないかもしれないが、一旦こ

                      Node.js + TypeScriptのモジュールを整理してみる
                    • Node.js — Trip report: Node.js collaboration summit (2024 London)

                      About twice per year, Node.js contributors and community members get together in an unconference called the Node.js collaboration summit. At the summit, we share knowledge about the project and the ecosystem, brainstorm solutions to technical and non-technical issues, make progress in decision-making discussions, and push forward new initiatives. The first collaboration summit of 2024 was held on

                        Node.js — Trip report: Node.js collaboration summit (2024 London)
                      • Migrating 500+ tests from Mocha to Node.js | Astro

                        Over a month ago, we discussed a possible migration to the Node.js test runner. While we were sufficiently happy with Mocha, we are always looking to make our CI jobs faster. Relying on a test runner baked inside our runtime had some advantages for our main monorepo: Two fewer dependencies to install and maintain in our monorepo: mocha and chai. Maintainability: there are more people involved in t

                          Migrating 500+ tests from Mocha to Node.js | Astro
                        • BatBadBut: You can't securely execute commands on Windows

                          BatBadBut: You can't securely execute commands on Windows Posted on April 9, 2024 • 10 minutes • 2109 words Table of contents Introduction TL;DR CVSS Score Technical Details Root Cause Wrapping CreateProcess Parsing rule of cmd.exe Mitigation Escaping double quotes? As a Developer As a User As a Maintainer of the runtime Conclusion Appendix Appendix A: Flowchart to determine if your applications a

                            BatBadBut: You can't securely execute commands on Windows
                          • Deno、プロジェクト作成フローを刷新 ー Deno Deployの開発者体験が大幅に向上

                            4月4日、Deno Deployが新しいプロジェクト作成フローを発表した。 Deno Deployは、ウェブ上でJavaScript / TypeScriptを簡単かつ高速にデプロイして実行するためのプラットフォーム。 このクラウドベースのサービスは、V8アイソレートクラウドを利用しており、npmをネイティブでサポートしているほか、グローバルに分散されたキーバリューストア、キュー、cronなどの組み込みのクラウドプリミティブを提供している。 新しいプロジェクト作成フローでは、GitHubリポジトリからのプロジェクト作成がより簡単になった。自動的なフレームワーク検出により、GitHubリポジトリとの接続時にフレームワークが自動的に検出され、それに応じて適切な設定が行われる。 また、ビルドステップのオプションが追加され、プロジェクトに応じてビルドが必要な場合は、GitHub Actionsを使

                              Deno、プロジェクト作成フローを刷新 ー Deno Deployの開発者体験が大幅に向上
                            • JavaScriptパッケージシステム「npm」は巨大なバグを抱えていると指摘し、新たなパッケージシステムを開発する「vlt」。npm作者らの参加を発表

                              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のアプリケーションやモジュールなどをパッケージングして登録し、自由にダウンロード可能にしたレジストリで

                                JavaScriptパッケージシステム「npm」は巨大なバグを抱えていると指摘し、新たなパッケージシステムを開発する「vlt」。npm作者らの参加を発表
                              • You don't need Node.js

                                Node.jsはいらない場合がある、むしろいらない場合の方が多いかもしれない、 そしてDenoとBunを使い分けて代替する方法を説明するという記事です。 Post Node.js ランタイムの登場 Node.js のあとにできたランタイムがいくつも登場しています。 Deno Bun WinterJS LLRT この中でも、人気であるDenoとBunを中心に考えていきます。 DenoやBunに変えるメリット これがなければNode.jsから変える必要はないと思います。 私は、以下の3つが、2ランタイムに共通して言える大きなメリットだと思います: ネイティブTypeScriptサポート 高速 Web標準 ネイティブTypeScriptサポート 現在、JavaScriptを記述するときは、TypeScriptを利用することが多いと思います。 Node.jsでTypeScriptを使うとき。tsc

                                  You don't need Node.js
                                • Bun 1.1ついにリリース ー 新APIが多数追加、Windowsへの本格対応、Node.jsとの互換性向上

                                    Bun 1.1ついにリリース ー 新APIが多数追加、Windowsへの本格対応、Node.jsとの互換性向上
                                  • JavaScriptランタイム「Bun 1.1」正式リリース。Windows版登場、Node.jsとの互換性向上、前バージョンより高速化など

                                    JavaScriptランタイム「Bun 1.1」正式リリース。Windows版登場、Node.jsとの互換性向上、前バージョンより高速化など BunはJavaScriptとTypeScriptのランタイム機能を備えるだけでなく、トランスパイラ、バンドラ、タスクランナー、npm互換のパッケージマネージャなど、JavaScript/TypeScriptのツールチェーンを統合したソフトウェアです。 Bun 1.1ではこれまで提供されていたLinux版、macOS版に加えて、Windows版が追加されたのが最大の特徴です。 Bun 1.1でWindows版が登場 Bun 1.1はPowerShellから下記のコマンドで簡単にインストール可能です。画像左は、Bunの作者であるJarred Sumner氏。 Bunは以前から高速な動作も特徴の1つとして説明しています。下記はWindows上で「bun

                                      JavaScriptランタイム「Bun 1.1」正式リリース。Windows版登場、Node.jsとの互換性向上、前バージョンより高速化など
                                    • 2024-03-27のJS: Firefox 124、Chrome 123、Node.jsドキュメンタリー

                                      JSer.info #686 - Firefox 124がリリースされました。 Firefox 124.0, See All New Features, Updates and Fixes Firefox 124 for developers - Mozilla | MDN AbortSignal.any()のサポート、WebDriver BiDiの対応改善が含まれています。 また、フラグ付きでSharedArrayBuffer.prototype.grow()とArrayBuffer.prototype.resize()のサポートなども行われています。 Chrome 123がリリースされました。 New in Chrome 123  |  Blog  |  Chrome for Developers CSSのlight-dark()のサポート、Service worker Static

                                        2024-03-27のJS: Firefox 124、Chrome 123、Node.jsドキュメンタリー
                                      • MochaからNode.jsテストランナーへの移行で何が起きたか ー Astroチームが解説

                                        3月26日、Astroチームが「MochaからNode.jsへの500以上のテストの移行」と題した記事を公開した。この記事では、AstroのテストランナーをNode.jsに移行する過程での詳細な経験が紹介されている。 3月26日、Astroチームが「MochaからNode.jsへの500以上のテストの移行」と題した記事を公開した。この記事では、AstroのテストランナーをNode.jsに移行する過程での詳細な経験が紹介されている。 Astroチームは、開発環境の最適化を図るため、MochaからNode.jsへのテストランナーの移行を検討していた。その理由の一つとして、CIのジョブの高速化を挙げており、Mochaには十分な満足感があったものの、常に改善を模索していた。 具体的な利点として、AstroのメインモノレポであるAstro monorepoにおいて、MochaとChaiの2つの依存関

                                          MochaからNode.jsテストランナーへの移行で何が起きたか ー Astroチームが解説
                                        • Node.js v20がVercelで利用可能に ー 新規プロジェクトのデフォルトバージョンへ

                                          2024/03/26、VercelがNode.js v20 LTSを利用可能になったと発表した。 Node.js 20は、BuildsとVercel Functionsで完全にサポートされる。 Builds は、Vercelでのデプロイメントプロセスを管理し、アプリケーションのビルド、バンドル、最適化を行う機能である。Vercel Functions は、サーバーレス関数をホストするための機能であり、バックエンドのロジックを処理するために使用される。 Node.js 20をVercelで利用するのは簡単だ。プロジェクトの設定ページで、「一般」セクションにある「Node.jsバージョン」にて 20.xを選択できる。また、Vercelでの新規プロジェクトのデフォルトバージョンはNode.js 20となる。 Node.js 20は、パフォーマンスの向上やプロジェクト内のサードパーティライブラリへ

                                            Node.js v20がVercelで利用可能に ー 新規プロジェクトのデフォルトバージョンへ
                                          • Node.js: The Documentary | An origin story

                                            Back in 2008, most people thought of JavaScript as just a client-side language. But when Google's V8 appeared, young developer Ryan Dahl made the connection between non-blocking servers, V8, and JavaScript. It was by combining these key elements that he was able to create the now hugely popular Node.js. What young Ryan Dahl probably didn't expect was how much forking drama would follow. Join us

                                              Node.js: The Documentary | An origin story
                                            • Node.js18を20にアップデートして、jestの実行速度を3倍にした - くらしのマーケット開発ブログ

                                              こんにちは!バックエンドエンジニアのハラノです。 くらしのマーケットのシステムの中には、Node.js(NestJS)を使用したマイクロサービスが存在しており、今回 Node.js のバージョンアップを行いました。 バージョンアップの方針及び、実際にアップデートを行う際に出てきた問題とその対策をご紹介します。 バージョンアップの方針 バージョンアップの結果 各種対応において、発生した問題と対応 TypeScript のバージョンアップ NestJS のバージョンアップ @nestjs/common から HttpService, HttpModule が削除された Inject にInject(TestRepository.name)のように、クラス名を渡している部分について、依存関係の解決が行えなくなっていた RxJS のtoPromiseが Deprecated になった TypeOR

                                                Node.js18を20にアップデートして、jestの実行速度を3倍にした - くらしのマーケット開発ブログ
                                              • require(esm) in Node.js

                                                Recently I landed experimental support for require()-ing synchronous ES modules in Node.js, a feature that has been long overdue. In the pull request, I commented with my understanding about why it did not happen sooner before this pull request in 2024. This post expands on that comment a bit more. The opinions in this post are my own and reflect my perception of the ESM development in Node.js as

                                                • 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 adds require() support for synchronous ESM graphs under the flag --experimental-r... 新しい提案 この仕組みを利用する場合、--experimental-require-moduleフラグが必要となります。 以下は、わかりやすいようにpackage typeを指定せずにデフォルトはCJS

                                                    Node.jsに入る新しいCJSからESMへの読み込み方法の紹介 - hiroppy's site
                                                  • state of mozaic.fm | ドクセル

                                                    iPod + Broadcast = Podcast なぜか TBS ラジオが Podcast 配信をし ており、それをきっかけにラジオにハマる ● ● ● ● 文化系トークラジオ Life ウィークエンドシャッフル バナナムーンゴールド etc etc etc 周りに共有できる人がほぼいない日陰趣 味だった (200X 年ごろ)。

                                                      state of mozaic.fm | ドクセル
                                                    • Node.js — Node v21.7.0 (Current)

                                                      2024-03-06, Version 21.7.0 (Current), @RafaelGSS prepared by @marco-ippolito Text Styling util.styleText(format, text): This function returns a formatted text considering the format passed. A new API has been created to format text based on util.inspect.colors, enabling you to style text in different colors (such as red, blue, ...) and emphasis (italic, bold, ...). const { styleText } = require('n

                                                        Node.js — Node v21.7.0 (Current)
                                                      • 次世代フレームワークRemixで簡単なフルスタック開発を体験する - RAKUS Developers Blog | ラクス エンジニアブログ

                                                        はじめに こんにちは。フロントエンド開発課に所属している新卒1年目のm_you_sanと申します。 最近話題のRemixを使って、シンプルなTodoアプリを作成する方法をご紹介します。 Todoアプリの作成を通じて、簡単なフルスタック開発を体験していただければと思います。 はじめに プロジェクトの作成 モデルの定義 Root Routeについて ルーティングについて 一覧画面の作成 新規追加画面の作成 編集画面の作成 削除機能の追加 まとめ プロジェクトの作成 はじめに以下のコマンドを実行して、プロジェクトを作成します。 ※Node.js v18以上、npm v7以上がインストールされていることが前提です。 npx create-remix@latest --template remix-run/indie-stack 今回はindie-stackというテンプレートを使用しています。 この

                                                          次世代フレームワークRemixで簡単なフルスタック開発を体験する - RAKUS Developers Blog | ラクス エンジニアブログ
                                                        • Node.js で X(Twitter)、Bluesky、Mastodon に JSON データから同時投稿(クロスポスト)する

                                                          Node.js で X(Twitter)、Bluesky、Mastodon に JSON データから同時投稿(クロスポスト)する JSON データから X(Twitter)、Bluesky、Mastodon などの SNS にクロスポストする JavaScript(Node.js)を書いてみたので GitHub で公開しました。 私事ながら、現状、SNS としては X (旧 Twitter)、Bluesky、Mastodon を日常的に使っていて (Threads と Nostr も使っていますが特に Threads は放置気味......)、全部じゃないにしても、一部の投稿については、これらすべてのサービスに同時投稿したいなと、なんとなく思っていました。 巷にはそういう Web サービスも探せばあるとは思うんですが、なるべく自前でやろうということで、週末に思い立って手を付けたら見事に週末

                                                            Node.js で X(Twitter)、Bluesky、Mastodon に JSON データから同時投稿(クロスポスト)する
                                                          • Deno、モダンなJavaScript/TypeScriptに最適化したパッケージレジストリ「JSR」パブリックベータ公開。Node.js、Bun、Cloudflareなどにも対応

                                                            JavaScript/TypeScriptランタイムの「Deno」を開発提供しているDeno Land Inc.は、モダンなJavaScriptおよびTypeScriptに最適化した新しいパッケージレジストリ「JSR」をパブリックベータとして公開しました。 現在、JavaScriptのパッケージレジストリは、Node.js用に構築され、GitHubが運営するnpm(Node Pacage Manager)が事実上の標準となっています。 参考:GitHubがnpmの買収を発表、JavaScriptのパッケージ管理サービス。将来的にはGitHubとnpmを統合へ npmにはさまざまな機能を備えたパッケージモジュールが大量に登録されており、この豊富なパッケージモジュールの存在がNode.jsの大きな利点となっています。そのため、現在ではDeno、Bun、Cloudflare Workersなど後

                                                              Deno、モダンなJavaScript/TypeScriptに最適化したパッケージレジストリ「JSR」パブリックベータ公開。Node.js、Bun、Cloudflareなどにも対応
                                                            • Deno、コンパイルで生成される実行ファイルが最大半分にまで軽量化。Deno 1.41リリースで

                                                              JavaScriptランタイムのDenoの最新版「Deno 1.41」が2月21日にリリースされ、「deno compile」で単一ファイルとして生成されるアプリケーションの実行ファイルが最大で50%まで小さくなると発表されました。 Deno 1.41 is here - ~50% smaller deno compile binaries - official Linux ARM64 builds - ARM64 canary builds - better Node.js compat - LSP improvements and morehttps://t.co/LPqUqXDBle — Deno (@deno_land) February 22, 2024 Denoにはアプリケーションごとコンパイルして単一の実行ファイルが生成できる「Deno Compile」機能があります。 De

                                                                Deno、コンパイルで生成される実行ファイルが最大半分にまで軽量化。Deno 1.41リリースで
                                                              • 2024-02-27のJS: Firefox 123、Remix 2.7.0(Remix Vite is Stable)、2023年のNode.jsまとめ

                                                                JSer.info #682 - Firefox 123がリリースされました。 Firefox 123.0, See All New Features, Updates and Fixes Firefox 123 for developers - Mozilla | MDN <template>要素がshadowrootmode属性をサポート、Date.parse()の互換性向上、103 Early Hintsのrel=preloadをサポートなどが含まれています。 また、実験的な機能としてWeb Codecs APIをサポートが追加されています。 Remix 2.7がリリースされました。 Remix Vite is Now Stable | Remix Remix 2.7ではSPAモードがStableに、baseオプションのサポート、Remix ViteがCloudflare Pages

                                                                  2024-02-27のJS: Firefox 123、Remix 2.7.0(Remix Vite is Stable)、2023年のNode.jsまとめ
                                                                • npxを使って一時的に特定バージョンのnodeとnpmで「npm install」する|TechRacho by BPS株式会社

                                                                  小ネタです、タイトルにはnpm installと書きましたがもちろんnpm startなどにも使えます。 TL;DR npx --package=node@16.20.2 --package=npm@8.19.4 -- npm install 説明 最近はNodeインストール時にデフォルトで一緒にインストールされるnpx、これは例えば npx create-next-app@latest (https://nextjs.org/docs/app/api-reference/create-next-appより など、その場で手軽にnodeパッケージを実行する時に使われたりします。 ところでこのnpxは実行したいコマンドのパッケージのバージョンを指定するオプションがありますが、さらに 実行したいコマンドと別にパッケージのバージョンを指定できる、しかも--packageの書式なら複数OK という

                                                                    npxを使って一時的に特定バージョンのnodeとnpmで「npm install」する|TechRacho by BPS株式会社
                                                                  • Bun v1.0.29リリース ー bun:testに新たなマッチャーが追加、シェルのリダイレクトサポート

                                                                      Bun v1.0.29リリース ー bun:testに新たなマッチャーが追加、シェルのリダイレクトサポート
                                                                    • Node.jsのメモリ制限 (2024年版)

                                                                      Node.jsのメモリ制限については以下の記事に記述があります。 しかし、現在の挙動はやや異なるようです。 結論から言うと デフォルトでは、システム (cgroup等) から取得した制限があればそれがそのまま設定、そうでなければ32bit環境では700MiB, 64bit環境では1400MiBの制限が設定されます。 V8のメモリ制限 Node.jsはJavaScriptエンジンとしてV8を利用しています。 V8のGCは世代別GCになっています。ほとんどのオブジェクトは生成されてすぐに不要となるため、メモリ使用量にはそれほど貢献しません。メモリ使用量に貢献するような長命なオブジェクトは、数回のGCを生き抜いた後old generation領域に移されます。したがって、V8のメモリ使用量の制限は実質的にこのold generation領域のサイズ制限によって決まると考えてよいでしょう。 このo

                                                                        Node.jsのメモリ制限 (2024年版)
                                                                      • TypeScriptでもモジュラーモノリス、Node.jsでシステム構築するUbie

                                                                        ここまで見てきた3社の事例は、いずれもプログラミング言語「Ruby」とそのWebアプリケーションフレームワーク「Ruby on Rails(以下、Rails)」で開発したアプリケーションにモジュラーモノリスを導入するものだった。Railsでアプリを開発すると通常はモノリスになるため、サービスの成長によって巨大なモノリスが出来上がる。これをモジュラーモノリス化することで、開発生産性を上げていた。 モジュラーモノリスはアーキテクチャーなので、実際にはプログラミング言語やフレームワークには依存しない。freeeの事例でも、Railsのシステムに加え、開発言語として「Go」を採用したシステムにモジュラーモノリスを導入していた。 今回は、開発言語として「TypeScript」、そのサーバーサイド実行環境として「Node.js」を採用したUbieの事例を取り上げる。同社は、消費者向けの症状検索エンジン

                                                                          TypeScriptでもモジュラーモノリス、Node.jsでシステム構築するUbie
                                                                        • AWS、高速起動にこだわった軽量なJavaScriptランタイム「LLRT」(Low Latency Runtime)をオープンソースで公開。AWS Lambdaでの利用にフォーカス

                                                                          AWS、高速起動にこだわった軽量なJavaScriptランタイム「LLRT」(Low Latency Runtime)をオープンソースで公開。AWS Lambdaでの利用にフォーカス Amazon Web Services(AWS)は、実験的な実装としてサーバレス環境のAWS Lambdaで使うことにフォーカスした軽量なJavaScriptランタイム「LLRT」(Low Latency Runtime)をオープンソースで公開しました。 LLRTはRustで開発され、JavaScriptエンジンにはQuickJSを採用しています。 LLRTの最大の特徴は、現在のJavaScriptランタイムにおいて性能向上のために搭載されているJITコンパイラをあえて搭載せず、よりシンプルで軽量なランタイムとして実装することで高速に起動することにこだわっている点です。 これにより(Node.jsやDenoや

                                                                            AWS、高速起動にこだわった軽量なJavaScriptランタイム「LLRT」(Low Latency Runtime)をオープンソースで公開。AWS Lambdaでの利用にフォーカス
                                                                          • What it was like working for GitLab

                                                                            I joined GitLab in October 2015, and left in December 2021 after working there for a little more than six years. While I previously wrote about leaving GitLab to work on Inko, I never discussed what it was like working for GitLab between 2015 and 2021. There are two reasons for this: I was suffering from burnout, and didn't have the energy to revisit the last six years of my life (at that time)I w

                                                                            • Node.js Community Debate Intensifies Over Enabling Corepack by Default and Potentially Unbundling npm - Socket

                                                                              Node.js Community Debate Intensifies Over Enabling Corepack by Default and Potentially Unbundling npmThe Node community is wrestling with the decision to enable Corepack by default, which has sparked a debate about the potential of removing npm from the Node.js binary. A heated debate is happening in the Node.js community over a proposal to enable Corepack by default that was opened in November 20

                                                                                Node.js Community Debate Intensifies Over Enabling Corepack by Default and Potentially Unbundling npm - Socket
                                                                              • 2023年、Denoはこんなに進化していた ー Node.jsとの互換性強化、Deno.serve()、WebGPU…

                                                                                2月3日、Denoは「Deno in 2023」と題した記事を公開した。昨年(2023年)一年間においてDenoがどのような進化を遂げたかを解説している。 2月3日、Denoは「Deno in 2023」と題した記事を公開した。昨年(2023年)一年間においてDenoがどのような進化を遂げたかを解説している。以下に内容を抜粋して紹介する。詳細は元記事を参照していただきたい。 Nodeとnpmとの互換性強化 Denoは2023年の改善を経て、Nodeの組み込みAPIをサポートし、npmモジュールの読み込みに対応した。これによりNodeとの互換性が向上し、既存のNodeプロジェクトをスムーズにDenoに移行できるようになった。 シンプルで高速なWebサーバー Deno.serve() Denoが導入したDeno.serve()関数により、Webサーバーの作成が大幅に簡略化された。イベントループ

                                                                                  2023年、Denoはこんなに進化していた ー Node.jsとの互換性強化、Deno.serve()、WebGPU…
                                                                                • Node.jsで機能やパッケージの非推奨メッセージを通知する方法

                                                                                  ライブラリやツールなどを作っているときに、特定の機能やパッケージを非推奨にする場合があります。 これらの非推奨はリポジトリ上のREADMEやIssueなどに書いても、利用者が気づかないことがあります。 そのため、利用者が気付けるように非推奨の機能やパッケージを使った場合に警告を出す方法を紹介します。 非推奨にはいくつかの段階があり、それに応じてやり方を変えられるので、それぞれの方法を紹介します。 パッケージの非推奨化: npm deprecate <package> <message> コードレベルの非推奨化: JSDocタグの@deprecated 実行時の非推奨化: process.emitWarning() パッケージの非推奨化: npm deprecate <package> <message> npmのパッケージレベルで、そのパッケージが非推奨であることを通知するにはnpm de

                                                                                    Node.jsで機能やパッケージの非推奨メッセージを通知する方法