2022年2月4日

slug
2022-02-04
date
Feb 4, 2022
summary
hoist、丸香
status
Published
tags
プログラミング
type
Post
Property
 
yarnのhoistingを理解する
yarnのv3がそろそろ来そうな気配を感じるものの、恐らくまだしばらくは node_modulesと付き合う事になりそうなので、今一度 yarnにおける node_modulesの hoisting について理解しなおそう、ということを試みた記事です。 前半は hoist ってそもそも何?的な話で、後半は仕組みの話です。 後半まで飛ばしたいかたは こちらからどぞ 。 transitive dependenciesをより上位のディレクトリに hoist (巻き上げ)すること。 推移的である 依存関係のこと。(日本語の正式名称的なものがあるのかどうかは知らない。たぶんなさそう) 推移的である とはどういうことか、一階述語論理で書くと以下のようになる。 Note: 一階述語論理とは?については 以前記事を書いたので参考にどぞ をパッケージの集合上の依存関係としたとき、 という関係のこと。離散数学にでてくる「関係の推移律」というやつ。 なんだか難しそうに見えるかもしれないが、要は単純に 依存関係の依存関係は依存関係 ということ。(逆にこの書き方のほうがかえってややこしいか) つまり、 というパッケージが というパッケージに依存していて、さらに が というパッケージに依存しているとき、 は に依存していると言え、そのような依存の依存という関係にあるパッケージのことを transitive dependency と呼ぶ。 シンプルに、トップレベルの dependencies以外は transitive dependencies であるというのがわかりやすいかも。 例えばトップレベルでは と に依存しており、さらに は 、 は 、
yarnのhoistingを理解する
 
nmHoistingLimits: 'workspaces'
 
 
神保町にある「丸香」といううどん屋を「生活記録」を読んでいて思い出した。
前の職場が小川町にあったので、よくこのあたりのランチには行った。
東京でトップ10に入るであろう好きな場所だ。
小川町から神保町へ道路が湾曲してるのも好きだ。
この間、三省堂に行った時はまる亀うどんを食べたな。
サクッと食べれて美味しいうどんなので、また行きたい。
東京に住んでいるくせにあまりその辺りのチェーン店に行ったことがないのだ。
 
 
 

© Yoshiyuki Hisamatsu 2021 - 2022