皆さんnpmパッケージのバージョンを上げるときにハマって依存地獄から抜けられなかったことはありませんか? 私はあります。 複雑怪奇な依存関係を調べてみようとnode_modulesを覗いてみて、そのカオスっぷりに臭いものに蓋をしたことはありませんか? 私はあります。 そこでnode_modules以下について調べてみたのですが、node_modulesにどんな問題点があって、npmやyarn, pnpmは何を目指していたのか時系列順に紐解いた方がわかりやすいことに気づきました。 ここでは初期のnpmが抱えていた問題から今に至るまでを順を追って説明します。 するとnode_modulesの仕組みの他に、各パッケージマネージャの方針の違いが見えてくるはずです。 初期の頃のnpm (~2015年以前) この頃はシンプルで、依存関係はそのままnode_modulesのディレクトリ構造に反映されてい
概要 本記事では、 npm や yarn などの、Node.js におけるパッケージマネージャーを自作することで、その仕組みや挙動の理解を深めようという取り組みを整理した記事になります。 想定読者は以下を満たす人です。 普段 npm や yarn などのパッケージマネージャを使用している package.json 内の dependencies devDependencies ぐらいはわかる npm リポジトリの構成や、パッケージインストールの仕組みとか全然わからんけど、興味がないこともない TypeScript のコードをまぁまぁ読み書きできる 筆者自身も上記のレベルのため、パッケージマネージャに詳しい方が見たら鼻で笑うレベルの内容でもあるので、どうぞお手柔らかにお願いします。 注意事項 本記事ではソースコードを断片的に記載していますが、ハンズオン形式にはなっていないため、コードの全容に
Gain visibility into organizational usage of your software by transforming anonymous downloads, web traffic, and usage into company profiles and journeys. Companies and contact details from those already using your software: As new companies discover and adopt your open source, Scarf provides your sales and marketing teams with up-to-date contact information of your Open-Source-Qualified Leads.
jsconf.eu 2019 に行ってきました。 特に npm や yarn の今後の話とそもそも Registry をどうしていくか、の話があったのでお知らせします。 そもそも Registry をどうしていくかについては次のエントリで話します。 tink: A Next Generation Package Manager npm の次のコマンドラインツールである tink が紹介されていました。 github.com presentation: github.com video: www.youtube.com そもそも npm の仕組み ローカル依存ファイルを読む (package.json, package-lock.json, shrinkwrap.json) 存在しないパッケージのメタデータをfetchする 木構造を計算して、実行する(npm v3 以降だとflattenする
This domain may be for sale!
GNU Stow開発チームは12月3日、ソフトウェアパッケージのインストール管理ツール「GNU Stow 2.1.0」を公開した。9年ぶりの正式版リリースとなり、コードの大幅なリライトが行われている。 GNU StowはMakefileを用いてコンパイルするタイプのソフトウェアに向けたインストール管理ツール。一般的なUNIX系OSで動作する。makeコマンドの実行時に/usr/local/stowディレクトリ以下にファイルをインストールするよう設定し、その後stowコマンドを実行することで/usr/localディレクトリ以下にファイルをインストールできる。 stowではシンボリックリンクを用いてファイルの管理を行うため、同じソフトウェアの異なるバージョンを使い分けたり、またファイルのアンインストールも容易に行える。開発チームはカーネギーメロン大学のローカルソフトウェア管理アプリ「Depot
最近、Linuxではaptやyumなど、パッケージ管理ツールで多くのアプリケーションやライブラリが管理されるようになり、普通に利用している限りはソースからコンパイルして"make install"することがほとんどありません。 とはいっても、マイナーなソフトウェアをインストールしたりとか、まだパッケージ管理されていない最新バージョンのものを使いたい場合などは、ソースからコンパイルして"make install"をしたくなる場合も有るかと思います。 しかし、"make install"した場合の最大の欠点は、インストールしたソフトウェアの管理ができないことにあります。そのため、何が入っているのか分からなくなっているとか、アンインストールが出来ない、などのケースが起こりうるわけです。 特にアンインストールする可能性があるソフト(ほとんどのソフトがそうですが・・・)をインストールする場合は、わざ
NpackdはWindows用のソフトウェアインストール/アンインストール管理フロントエンド。 NpackdはWindows用のオープンソース・ソフトウェア。iPhoneが成功した背景の一つにApp Storeの存在がある。これまでのPCでは各開発者が自由にソフトウェアを配布していたが、それを一カ所に集積した。これにより利用者の利便性があがり、結果として収益性が大きく向上した。 ソフトウェア一覧 同様の試みは他社のスマートフォンはもとより、Mac App StoreとしてPCの領域にまで踏み込んできている。Windowsでもアプリストア開設の話も出てきているくらいだ。そんなアプリストアを先取りして提供するのがNpackdだ。 NpackdはWindows用のアプリケーション管理ソフトウェアだ。起動すると実に多くのソフトウェアが一覧で表示される。一部Microsoft Core XML Se
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く