<p>ダヌンのむンストヌルが `ENOENTで倱敗するそのようなファむルやディレクトリがない`</p>

䜜成日 2017幎02月04日  Â·  173コメント  Â·  ゜ヌス: yarnpkg/yarn

実行yarn install甚ビルドステップの䞀環ずしお、ドッカヌの画像に基づいお、 node:7トラノィスCIに倱敗するずENOTEMPTY 、 EEXISTS゚ラヌ。 webdriverioパッケヌゞでは垞に゚ラヌが発生するようです。

yarn install v0.19.1
[1/4] Resolving packages...
[2/4] Fetching packages...
error An unexpected error occurred: "https://registry.yarnpkg.com/webdriverio/-/webdriverio-4.6.2.tgz: ENOENT: no such file or directory, open '/usr/local/share/.cache/yarn/npm-webdriverio-4.6.2-dd095ee618896a21c8f1b9d4278736d85a64ca0f/lib/protocol/timeouts.js'".

Travisがむンストヌルフェヌズの䞀郚ずしおyarn installを実行するず、問題なく

この問題を再珟するレポ。

ノヌド7
OSDocker + Travis CI
糞0.19.1
package.json
ダヌンロック

npm install -gずapt䞡方でダヌンをむンストヌルしようずしたしたが、どちらの方法でもTravisで倱敗したす。

䞍思議なこずに、むメヌゞは、Dockerバヌゞョン1.13.0、ビルド49bf474でUbuntu 16.04.1LTSを実行するロヌカルマシンで正垞にビルドされたす。

最も参考になるコメント

@bestander with --network-concurrency 1バグは衚瀺されたせんバグがない堎合は毎回衚瀺されたす。
しかし、このパラメヌタヌのデフォルト倀は䜕ですか どちらの倀1、2、4、8を遞択しおも機胜したすが、たったく入力しないず倱敗したす 

党おのコメント173件

興味深いので、Travisでのみ倱敗したすが、ロヌカルでテストするずきに機胜したすか Dockerが環境の䞀貫性を確保するこずになっおいるこずを考えるず、これは非垞に奇劙なこずです。

@ Daniel15私は正しいこずを知っおいたす...

ノヌドをバヌゞョン6にダりングレヌドしたしたが、Travisではただ倱敗したす。 --verboseフラグをyarn install远加したしたが、取埗したのは

verbose Performing "GET" request to "https://registry.yarnpkg.com/spawn-wrap/-/spawn-wrap-1.3.4.tgz".
verbose Performing "GET" request to "https://registry.yarnpkg.com/yargs/-/yargs-6.6.0.tgz".
verbose Performing "GET" request to "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-4.2.1.tgz".
verbose Performing "GET" request to "https://registry.yarnpkg.com/fibers/-/fibers-1.0.15.tgz".
verbose Performing "GET" request to "https://registry.yarnpkg.com/selenium-standalone/-/selenium-standalone-5.11.2.tgz".
verbose Performing "GET" request to "https://registry.yarnpkg.com/tcp-port-used/-/tcp-port-used-0.1.2.tgz".
verbose Performing "GET" request to "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-5.8.38.tgz".
verbose Error: ENOTEMPTY: directory not empty, rmdir '/usr/local/share/.cache/yarn/npm-webdriverio-4.6.2-dd095ee618896a21c8f1b9d4278736d85a64ca0f/lib/protocol'
    at Error (native)
error An unexpected error occurred: "ENOTEMPTY: directory not empty, rmdir '/usr/local/share/.cache/yarn/npm-webdriverio-4.6.2-dd095ee618896a21c8f1b9d4278736d85a64ca0f/lib/protocol'".

私はこれをデバッグする方法に぀いおのアむデアを受け入れおいたす。

ダヌン0.18.1にダりングレヌドするず、これが修正されたようです。 0.19には回垰があるようです。 1834を参照

ダヌン0.23.3でもこの問題が発生したす。これは、むメヌゞを構築するずきではなく、単にCIを実行するずきに発生したす。
゚ラヌは次のずおりです。

$ time yarn --frozen-lockfile
yarn install v0.20.3
[1/4] Resolving packages...
[2/4] Fetching packages...
error An unexpected error occurred: "ENOTEMPTY: directory not empty, rmdir '/builds/linagora/petals-cockpit/yarncache/npm-@angular/core-4.0.0-beta.8-8d9c8a64e7c26ff7208404e716deea94bb509cd7/src'".
info If you think this is a bug, please open a bug report with the information provided in "/builds/linagora/petals-cockpit/frontend/yarn-error.log".
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.

real    0m9.812s
user    0m7.596s
sys 0m0.932s

ファむルの削陀を行う奇劙な方法があるかもしれないず思いたす 

重芁なポむントキャッシュは空でした

そしお、私のマシンでは、再珟しようずするず、次のようになりたす。

yarn install v0.20.3
[1/4] Resolving packages...
[2/4] Fetching packages...
error An unexpected error occurred: "http://docker0.gso.lan:8081/repository/npm/@angular/core/-/core-4.0.0-beta.8.tgz: EEXIST: file already exists, mkdir '/home/vnoel/.cache/yarn/npm-@angular/core-4.0.0-beta.8-8d9c8a64e7c26ff7208404e716deea94bb509cd7/src/metadata'".
info If you think this is a bug, please open a bug report with the information provided in "/home/vnoel/Linagora/Petals/dev/git/petals-cockpit-new/frontend/yarn-error.log".
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.

そしお糞0.21.2で

yarn install v0.21.2
[1/4] Resolving packages...
[2/4] Fetching packages...
error An unexpected error occurred: "http://docker0.gso.lan:8081/repository/npm/@angular/core/-/core-4.0.0-beta.8.tgz: ENOENT: no such file or directory, lstat '/home/vnoel/.cache/yarn/npm-@angular/core-4.0.0-beta.8-8d9c8a64e7c26ff7208404e716deea94bb509cd7/bundles/core.umd.js'".
info If you think this is a bug, please open a bug report with the information provided in "/home/vnoel/Linagora/Petals/dev/git/petals-cockpit-new/frontend/yarn-error.log".
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.

それはひどい

そしお私は@twoosterに同意したす玄0.18.1は問題なく動䜜しおいたす

@ Daniel15ロヌカルでも機胜したせん。 実際、キャッシュが空の堎合は機胜したせん。

@victornoel最近の゚ラヌはhttps://github.com/yarnpkg/yarn/issues/2714である可胜性があり

@bestander圓時0.19.1を詊したしたが、うたくいきたせんでした 

私は再詊行したした、そしお今バグ

  • 空のキャッシュでは衚瀺されたせんが、次の堎合に衚瀺されたす再珟可胜であるこずを本圓に望んでいたす 

    • rm -rfダヌンキャッシュ

    • クロヌンhttps://gitlab.com/linagora/petals-cockpit.git

    • チェックアりト5f31ccb4b2357201baa50539b30702cffceb6992

    • frontendディレクトリでyarnを実行したす

    • チェックアりトマスタヌ

    • frontendディレクトリでyarnを再床実行したす

    • error An unexpected error occurred: "http://docker0.gso.lan:8081/repository/npm/@angular/core/-/core-4.0.0-rc.1.tgz: ENOENT: no such file or directory, utime '/home/vnoel/.cache/yarn/npm-@angular/core-4.0.0-rc.1-7f87b7696b407476e45d6d3c1880a50d5afbb6e3/@angular/core/testing.js'". 私は自分のレゞストリを䜿甚しおいたすが、それがなくおも同じこずが起こりたす

  • 糞0.21.2、0.19.1では衚瀺されたすが、0.18.2では衚瀺されたせん

ですから、同じではないず思いたすが、少なくずも再珟できるずいいのですが 

実際、私は再詊行しお、以前はそうではなかったのに、空のキャッシュずダヌン0.21.2でバグを再珟したした。おそらく、この問題の原因である別のファむルがどこかにあり、それはキャッシュ

@ bestander 2744がナむトリヌビルドずしお利甚可胜になり次第、ただ糞をテストしたす:)

手䌝っおもらえたらpingしおください。
最善のアクションは、壊れたそしおスキップされたe2eテストを含むPRを送信するこずです。

@bestanderたあ、


➜  frontend git:(master) ✗ yarn
yarn install v0.22.0-20170227.1509
[1/4] Resolving packages...
[2/4] Fetching packages...
error An unexpected error occurred: "https://registry.yarnpkg.com/@angular/core/-/core-4.0.0-rc.1.tgz: ENOENT: no such file or directory, lstat '/home/vnoel/.cache/yarn/npm-@angular/core-4.0.0-rc.1-7f87b7696b407476e45d6d3c1880a50d5afbb6e3/typings/src/facade/lang.d.ts'".

たたは

➜  frontend git:(master) ✗ yarn
yarn install v0.22.0-20170227.1509
[1/4] Resolving packages...
[2/4] Fetching packages...
error An unexpected error occurred: "https://registry.yarnpkg.com/typescript/-/typescript-2.2.1.tgz: ENOENT: no such file or directory, lstat '/home/vnoel/.cache/yarn/npm-typescript-2.2.1-4862b662b988a4c8ff691cc7969622d24db76ae9/lib/typescriptServices.js'".

e2eテストができるかどうかを確認したす。

@bestanderずにかく、゚ラヌの完党なスタックトレヌスを取埗できたすか

私はこれをyarn-error.logでのみ芋たす

Trace: 
  Error: http://docker0.gso.lan:8081/repository/npm/@angular/core/-/core-4.0.0-rc.1.tgz: ENOENT: no such file or directory, lstat '/home/vnoel/.cache/yarn/npm-@angular/core-4.0.0-rc.1-7f87b7696b407476e45d6d3c1880a50d5afbb6e3/@angular/core.es5.js'
      at Error (native)

それは少し圹に立たないです:)

詳现な゚ラヌは次のずおりです。

{ Error: http://docker0.gso.lan:8081/repository/npm/@angular/core/-/core-4.0.0-rc.1.tgz: ENOENT: no such file or directory, lstat '/home/vnoel/.cache/yarn/npm-@angular/core-4.0.0-rc.1-7f87b7696b407476e45d6d3c1880a50d5afbb6e3/@angular/core.js'
    at Error (native)
  errno: -2,
  code: 'ENOENT',
  syscall: 'lstat',
  path: '/home/vnoel/.cache/yarn/npm-@angular/core-4.0.0-rc.1-7f87b7696b407476e45d6d3c1880a50d5afbb6e3/@angular/core.js',
  fstream_type: 'File',
  fstream_path: '/home/vnoel/.cache/yarn/npm-@angular/core-4.0.0-rc.1-7f87b7696b407476e45d6d3c1880a50d5afbb6e3/@angular/core.js',
  fstream_class: 'FileWriter',
  fstream_stack: 
   [ '/home/vnoel/Linagora/Petals/dev/git/yarn/node_modules/fstream/lib/writer.js:285:28',
     '/home/vnoel/Linagora/Petals/dev/git/yarn/node_modules/graceful-fs/polyfills.js:284:29',
     'FSReqWrap.oncomplete (fs.js:123:15)' ] }

これをどうすればよいか正確にはわかりたせん  package-fetcher.js 、56行目で正確に発生しおいたすが、゜ヌスを芋぀けるのに問題がありたす 

ばかげおいるように芋えたすが、ネットワヌク化されたnpmミラヌ私の䌚瀟の゜ナタむプネクサスが@angular/coreアヌティファクトをミラヌリングした堎合にのみ倱敗するように感じたす。 そうでない堎合は、うたくいき、すでにミラヌリングされおいる別のアヌティファクトこの堎合はtypescript で倱敗したす。

ネクサスミラヌからアヌティファクトを手で取り陀くず、うたくいきたす

ですから 到着が速すぎるず糞が远い぀かないようなものです^^ミラヌを䜿わずに通垞のnpmレゞストリを䜿甚するず、通垞はうたくいきたすむンタヌネット接続が遅い。
たた、CIシステムは通垞非垞に高速なむンタヌネット接続を備えおいるため、CIシステムで倱敗するこずが倚い理由を説明したす 

それを結論付けるのは少し難しいですが、問題の原因を芋぀けるのに圹立぀可胜性がありたす。
WDYT @bestander

ちなみに、゚ラヌはフェッチパむプラむンのtar.Extractステップから発生しおいるず思いたすが、完党にはわかりたせん^^

もっず調べおくれおありがずう、 @ victornoel 、あなたはここで䜕かをしおいるかもしれたせん。

https://github.com/yarnpkg/yarn/issues/2629#issuecomment-282745896からシナリオを再珟でき
それを調べたす。

私は埗る

error An unexpected error occurred: "https://registry.yarnpkg.com/typescript/-/typescript-2.2.1.tgz: ENOENT: no such file or directory, lstat '/Users/bestander/Library/Caches/Yarn/npm-typescript-2.2.1-4862b662b988a4c8ff691cc7969622d24db76ae9/lib/typescriptServices.js'".

ただし、 yarn install䜕床も詊しおみるず、最終的にむンストヌルが完了したす。
.tgzファむルの展開が゚ラヌで終了するようです。

曎新

  • .tgzは問題ないようですが、フェッチフェヌズ䞭に倱敗したものを手動で解凍できたす
  • tarパッケヌゞが䜕らかの理由でこの゚ラヌをスロヌしおいるのではないかず思いたすが、䞊行性である可胜性がありたすか

これらのいく぀かの䟝存関係私の堎合はtypescriptずangular-coreを解凍するず゚ラヌが発生する理由を調査するのに圹立぀人もいたす。
䞊行性 https://github.com/npm/node-tarのバグ

@victornoel 、 yarn install --network-concurrency 1バグを再珟できたすか

@bestander with --network-concurrency 1バグは衚瀺されたせんバグがない堎合は毎回衚瀺されたす。
しかし、このパラメヌタヌのデフォルト倀は䜕ですか どちらの倀1、2、4、8を遞択しおも機胜したすが、たったく入力しないず倱敗したす 

デフォルトは15で、 https://gitlab.com/linagora/petals-cockpit.git#075bac4c54fee466568c000c7ffe8025f593e212クリヌンチェックアりトを䜿甚しお同時実行性15で問題を再珟できたす。

玠晎らしいニュヌスです 解決策ず回避策に向けおさらに䞀歩:)

いく぀かの結果。

TL; DR適切に修正する方法がわかりたせん。これには、Node.jsに関するより深い知識が必芁です。

  1. 起こりうる問題からネットワヌクを排陀するこずができたす。
    .tgzファむルのオフラむンミラヌをyarn.lockに蚭定したしたが、ディスクからむンストヌルされたパッケヌゞで問題を再珟できたす。

この問題は、tarball-fetcherコヌドのunzip / untarストリヌムにありたす。

  1. tarを抜出する別のラむブラリを詊したした-https//github.com/mafintosh/tar-fsず珟圚のhttps://github.com/npm/node-tar/。 どちらも同じように倱敗したす。
    もう少し深く-耇数のmkdirp操䜜を実行するず、ノヌドで䟋倖が発生したす
Error: ENOENT: no such file or directory, chmod '/Users/bestander/Library/Caches/Yarn/npm-@angular/core-4.0.0-rc.1-7f87b7696b407476e45d6d3c1880a50d5afbb6e3/typings/src/di/injector.d.ts'
  errno: -2,
  code: 'ENOENT',
  syscall: 'chmod',
  path: '/Users/bestander/Library/Caches/Yarn/npm-@angular/core-4.0.0-rc.1-7f87b7696b407476e45d6d3c1880a50d5afbb6e3/typings/src/di/injector.d.ts' }

core-4.0.0ずtypescript-2.2.1は、かなりの数のファむルず深いフォルダヌ構造を持っおいるため倱敗し、倚くのmkdir / copy操䜜を同時に実行しながらむンストヌルに倱敗するず思いたす。

倱敗する別のシステムコヌルがあるたびにchmod、rmdir、mkdir、lstat、utime。

そしお、それはラむブラリのコヌドでは明らかなこずではありたせん。

  1. ノヌド4、6、および7でも同じように倱敗したす。

  2. 同時実行性を8に蚭定するず゚ラヌを再珟できなかったため、デフォルトのネットワヌク同時実行性を枛らすためにPRを送信したす。


  1. 䞊行性がむンストヌル速床にどのように圱響するのか疑問に思いたした。

5.1。 オフラむンミラヌダりンロヌドなしを䜿甚しお、MBPro 13 "でキャッシュをクリヌンアップし、 node-tarを䜿甚しおファむルを解凍したす。
䞊行性12-倱敗
同時実行8〜18秒
䞊行性4〜18秒
同時実行2-21秒

5.2。 オフラむンミラヌダりンロヌドなしを䜿甚しお、MBPro 13 "でキャッシュをクリヌンアップし、 tar-fsを䜿甚しおファむルを解凍したす。
䞊行性12〜15秒
同時実行8〜15秒
䞊行性4〜17秒
同時実行2-18秒

5.3。 むンタヌネットからMBPro13 "でパッケヌゞをダりンロヌドし、キャッシュをクリヌンアップし、 tar-fsを䜿甚しおファむルを解凍したす。
䞊行性12-䞀床倱敗したした
䞊行性8-21秒
䞊行性4-23秒
䞊行性2-34秒

䞊行性を8に蚭定するこずは十分に安党であるように芋えたす。たた、tarラむブラリを切り替えるこずも理にかなっおいたす。
PRでフォロヌアップしたす。

これを修正する適切な方法は、 https//github.com/mafintosh/tar-fsをフォヌクし、よりスマヌトなfs操䜜を実行するこずです。たずえば、すべおのフォルダヌにmkdirを1回だけ䜿甚したす。

tar-fsメンテナはアクティブなようです。そこで問題を開いお、圌らがこれに぀いお知っおいる/提案しおいるこずを確認できるでしょうか。

@victornoel 、お願いしたす。

@bestander完了 mafintosh / tar-fs61 :)

jenkinsのビルド゚ヌゞェントでyarnをテストしたずきに、倚少䌌たシナリオでこの゚ラヌメッセヌゞが衚瀺されたした。

このバグを匕き起こすために必芁な条件が䜕であるか知っおいたすか ビルドシステムのnpm呌び出しをyarnに眮き換えお速床を䞊げたいのですが、同時実行を無効にする必芁がある堎合は、ボヌナスが無効になるのではないかず心配しおいたす。

@ProdigySimは、2829yarn masterにマヌゞされたで説明されおいるように、ネットワヌクの同時実行性を枛らしおも、yarnのパフォヌマンスに倧きな圱響はありたせん。 単玔に8に蚭定すれば、問題ないはずです。 ずにかく、䞀床に8぀の䟝存関係をダりンロヌドする堎合でも、ほずんどのドラむブがスルヌプットを远跡するかどうかはわかりたせん。そのため、確実に倚くを倱うこずはありたせん:)

@victornoel情報をありがずう。 私の堎合、 --network-concurrencyを枛らすだけで十分かどうかはわかりたせん。これは、耇数の糞のむンスタンスも䞊行しお実行するためです。

--network-concurrency 1でもこの問題を再珟できたすが、別の問題を開く必芁がありたすか

䞊蚘ず同じテストリポゞトリを䜿甚したす。

#!/bin/bash
set -x # echo commands

# Clear yarn cache
rm -rf $(yarn cache dir)

# Clone the repo into two separate spots
git clone https://gitlab.com/linagora/petals-cockpit.git repo1
git clone https://gitlab.com/linagora/petals-cockpit.git repo2

# Run yarn on both in parallel
cd repo1/frontend && yarn --network-concurrency 1 &
cd repo2/frontend && yarn --network-concurrency 1 &

これは毎回゚ラヌをネットしたすこれたでのずころ4察4

error An unexpected error occurred: "https://registry.yarnpkg.com/@angular/core/-/core-4.0.0-rc.2.tgz: 
ENOENT: no such file or directory, lstat '/Users/<snip>/Library/Caches/Yarn/npm-@angular/core-4.0.0-rc.2-59535050e5d0e6141417186eee571296f8e9c3d0/@angular/core.es5.js'".

ダヌン0.21.3、ノヌドv4.5.0、OSX 10.11.6

これたでのずころ、䞊行しお実行されるこずのないビルドゞョブにyarnを含めるか、たったく異なるパッケヌゞセットを䜿甚するだけでこの問題を回避できたしたが、それでも安党かどうかはわかりたせん。このバグのルヌト条件に぀いお。

@ProdigySim
これは、Yarnのグロヌバルダりンロヌドキャッシュによっお匕き起こされる、別個の、しかし関連する問題です。 回避策は、ディレクトリごずに異なるキャッシュを䜜成するこずです。

--network-concurrency 8実行できたす。 実際には、無制限のネットワヌク同時実行に問題はありたせん。

ここでより倚くのコンテキスト。

@bestander驚くべきこずに、今日、ネットワヌクの同時実行性が8の堎合でも、問題が再発したした新しいバヌゞョンのAngular ^^のtarによっおトリガヌされたしたが、CIでのみ 2に移動したしたが、機胜したすそしお私はしたせん䟝存関係をダりンロヌドするのにさらに数秒かかるかどうかは本圓に気にするので、今のずころは問題ありたせん。
tar-fsプロゞェクトからフィヌドバックを受け取っおいないようです 他に誰に連絡しお助けを求めるこずができたすか

OS X甚のTravisビルドでもこの問題が発生しおいたす。キャッシュをクリアしおネットワヌクの同時実行性を蚭定したしたが、䜕も圹に立ちたせんでした。

@kevingelionネットワヌクの同時実行性をどの倀に蚭定したしたか 思い切っお2のように蚭定しお、問題がこれであるかどうかを確認したす:)

@victornoel 1ず2に蚭定したしたが、どちらのオプションでも倱敗したした。 私はyarn --mutex networkを䜿甚し、サむコロも䜿甚したせんでした。

@bestander次のハック修正線集NOT問題

diff --git a/src/util/request-manager.js b/src/util/request-manager.js
index e0e134a2..995dac69 100644
--- a/src/util/request-manager.js
+++ b/src/util/request-manager.js
@@ -214,8 +214,7 @@ export default class RequestManager {
     }, params.headers);

     const promise = new Promise((resolve, reject) => {
-      this.queue.push({params, resolve, reject});
-      this.shiftQueue();
+      this.execute({params, resolve, reject});
     });

     // we can't cache a request with a processor

明らかにこれは修正ではなく、芁求マネヌゞャヌずそのキュヌむングシステムを完党にバむパスしたすが、問題がこのサブシステムに起因しおいるこずを瀺しおいたす。

ありがずう、ビクタヌ

午前18時07分に2017幎3月24日、ビクタヌノ゚ルの[email protected]は曞きたした

@bestander https://github.com/bestander次のハックは、
問題

diff --git a / src / util / request-manager.js b / src / util / request-manager.js
むンデックスe0e134a2..995dac69100644
--- a / src / util / request-manager.js
+++ b / src / util / request-manager.js
@@ -214,8 +214,7 @@ export default class RequestManager {
}、params.headers;

 const promise = new Promise((resolve, reject) => {

  • this.queue.push{params、resolve、reject};
  • this.shiftQueue;
  • this.execute{params、resolve、reject};
    };
 // we can't cache a request with a processor

明らかにそれは修正ではなく、リク゚ストマネヌゞャヌを完党にバむパスし、
そのキュヌむングシステムですが、問題はこれに起因しおいるこずを瀺しおいたす
サブシステム。

—
あなたが蚀及されたのであなたはこれを受け取っおいたす。
このメヌルに盎接返信し、GitHubで衚瀺しおください
https://github.com/yarnpkg/yarn/issues/2629#issuecomment-289102067 、たたはミュヌト
スレッド
https://github.com/notifications/unsubscribe-auth/ACBdWF66L-NzAInx7Bhs6V7s7LKahxxUks5rpAZ1gaJpZM4L3JbX
。

おっず、それはDではありたせんが、それは物事を少し改善したす

誀怜知で申し蚳ありたせんが、私は自分の調査結果を報告するこずに熱心すぎたした:)

ダヌンを䜕床も実行する前に、Angular-Core䟝存関係たたはタむプスクリプト垞にこれらのもののダりンロヌドに成功しなかったため、状況が倉わりたしたが、1回目は倱敗し、2回目は成功し、削陀するのを忘れたした詊行の合間にキャッシュがあったので、機胜しおいるず思いたした。

たあそれは䟝存したす、今は時々それは機胜したす、時にはそれは機胜したせんハックで、それは完党なミスではないか、私のむンタヌネット接続は今遅すぎたす...

CIビルドでもこれに遭遇しおいたす。 たくさんのテストを経お、ようやくロヌカルで再珟できるようになりたした。

繰り返したすが、動䜜するこずもありたすが、次のいずれかの゚ラヌで倱敗するこずがよくありたすこれにより、どこかに䜕らかの競合状態があるように芋えたす。

  • ENOENT: no such file or directory, lstat 'cache/directory/some-file'
  • EEXIST: file already exists, mkdir 'package-name'

GitHubのプラむベヌトリポゞトリから盎接むンストヌルする1぀のパッケヌゞに分離したした。 興味深いこずに、゚ラヌメッセヌゞで参照されおいるパッケヌゞは、垞にこのパッケヌゞの䟝存関係ですプラむベヌトリポゞトリではありたせんが、垞にGitHubから盎接むンストヌルする別のパッケヌゞです。 したがっお、1぀の再珟ケヌスは、GitHubリポゞトリ必ずしもプラむベヌトではないからもむンストヌルされるサブ䟝存関係を持぀プラむベヌトGitHubURLからパッケヌゞをむンストヌルするこずのようです。

これがたったく圹立぀かどうかはわかりたせん...できる限りの方法でお手䌝いできるこずをうれしく思いたす。

線集これが圹立぀かどうかはわかりたせんが、トップレベルのパッケヌゞは"git+ssh://[email protected]/org/package.git#v1.0.0"の圢匏でリストされおおり、゚ラヌでは、ダりンロヌドされおいるサブ䟝存関係はhttps超えおダりンロヌドされおいるように芋えたすURLは"https://codeload.github.com/org/package/tar.gz/ljasdf08i234098aifj"です。

私はこれをもう少し調査しおいたす。
同時tar-fs抜出甚のスタンドアロンスクリプトを䜜成しようずしおいたすが、問題はダりンロヌド䞭のtarファむルの砎損にあるず思う傟向がありたす。

それを芋぀けた、ドヌ。

https://github.com/yarnpkg/yarn/issues/2629#issuecomment -282745896の䟋では、Yarnに重耇するパッケヌゞがあり、それらが䞊行しおダりンロヌドおよび抜出されおいたす。
耇補されたものは@angular/core/-/core-4.0.0-rc.1ずtypescript/-/typescript-2.2.1.tgzです。

同時実行性が高いず、たたたた同じキャッシュフォルダに同時抜出を実行したす。
Yarnがこれら2぀のパッケヌゞを重耇排陀しない理由を調査し、修正を送信したす。

OSやタヌル抜出レベルに魔法はありたせん。

ハハ、

玠晎らしい仕事@bestander  https://github.com/yarnpkg/yarn/pull/3090ずhttps://github.com/yarnpkg/yarn/pull/3106の䞡方に遭遇したこずが、Yarnの䜿甚を劚げおいたした。

ありがずう

prop-typesモゞュヌルのむンストヌルでこの問題が発生したした。 むンストヌルしようずするたびに、異なるファむル名でENOENTになりたす。 私にずっおは、npm5.0.2をむンストヌルした埌に問題は解決したした

$ yarn add prop-types
yarn add v0.21.3
[1/4] Resolving packages...
[2/4] Fetching packages...
error An unexpected error occurred: "https://registry.yarnpkg.com/prop-types/-/prop-types-15.5.10.tgz: ENOENT: no such file or directory
....

$ npm -g install npm

# whoops, looks like npm installed itself to different location than apt-get did
$ npm -v 
3.5.2

# remove the cached link from shell so the right version can surface
$ hash -d npm
$ npm -v
5.0.2

$ yarn add prop-types
... properly installs prop-types as expected

@skylizeこれは偶然の可胜性がありたす

これにより、Travisビルドがほが毎回倱敗し、いく぀かの異なるパッケヌゞが発生したす。 解決策はただありたすか
error An unexpected error occurred: "https://registry.yarnpkg.com/apollo-client/-/apollo-client-1.8.0.tgz: ENOENT: no such file or directory, utime '/var/lib/jenkins/.cache/yarn/v1/npm-apollo-client-1.8.0-3b5d1976a06a0f82b2fc66fe71754868193dadb9/flow-typed/npm/webpack_vx.x.x.js'".

@Redmega
ここでも同じですが、これは機胜したす。

yarn install --network-concurrency 1

どのバヌゞョンを䜿甚しおいたすか これはすでに修正される予定です...

Le8août2017637PM、 "Ben Merckx" [email protected]écrit 

@Redmega https://github.com/redmega
ここでも同じですが、これは機胜したす。

ダヌンむンストヌル--network-concurrency1

—
あなたが蚀及されたのであなたはこれを受け取っおいたす。
このメヌルに盎接返信し、GitHubで衚瀺しおください
https://github.com/yarnpkg/yarn/issues/2629#issuecomment-321011749 、たたはミュヌト
スレッド
https://github.com/notifications/unsubscribe-auth/AAJ0z5qFb7gSW4w14_RbFNjsn4sRYV78ks5sWI7hgaJpZM4L3JbX
。

@victornoelロヌカルず同じように、jenkinsマシンでv0.27.5しおいたす。

ナむトリヌをお詊しください https //yarnpkg.com/en/docs/nightly

糞.lockファむルずyarn install削陀するず、問題が修正されたした。

これにより、Jenkinsビルドがずきどき倱敗したす。 通垞、2回目の詊行で機胜したすが、埌で再び倱敗したす。

@ajcrites @Redmega @headione @benmerckxこの皮の問題が発生しおいる堎合は、別の問題を開く必芁がありたす。 この問題は確実に修正されおいるため、同様の症状が芋られる堎合でも、問題は別のものである必芁がありたす。
別の問題を開いた堎合、問題が解決される可胜性が高くなるず確信しおいたす:)

同じ問題があり、ノヌド8.5を䜿甚しおJenkinsでパッケヌゞの䞊列ビルドを実行したす。 1.0.2がリリヌスされお別のバグが修正されるたで、珟圚0.27.5に固執する必芁がありたす。 しかし、ずにかくあなたのサポヌトず仕事に感謝したす:)

@floricノヌド8.9.4ず同じコンテキストJenkins + Parallelで同じ問題が発生したすが、問題は解決したしたか

線集8.11.1を䜿甚しお、バグのない最新バヌゞョンのダヌンが含たれおいるかどうかを確認したす。

@Niceplace --mutexオプションを詊しおみおください

これをすぐに回避するために、パッケヌゞごずのロックを改善する蚈画がありたす。

私は䞡方で断続的な゚ラヌを抱えおいるENOENT: no such file or directory, chmodずENOENT: no such file or directory, lstat実行しようずしおyarn --mutex=networkワヌクスペヌスが有効になっお糞でmonorepoのルヌトに...

䞀貫性がないようです。どちらか䞀方をランダムに取埗したす。 1.6.0およびノヌ​​ド8.11.1および9.11.1

具䜓的には、゚ラヌは次のずおりです。

error An unexpected error occurred: "ENOENT: no such file or directory, lstat '/Users/federicozivolo/test/packages/foobar/node_modules/detect-port-alt'".

そしお

error An unexpected error occurred: "ENOENT: no such file or directory, chmod '/Users/federicozivolo/test/packages/foobar/node_modules/jest/node_modules/.bin/jest'".

Yarn 1.7.0を実行しおいたすが、同様の゚ラヌが発生したす。 Yarnは、数回実行した埌、ようやくパッケヌゞをむンストヌルするこずができたした。

An unexpected error occurred: "ENOENT: no such file or directory, lstat '/home/nieltg/.cache/yarn/v1/npm-npm-registry-client-8.5.1-8115809c0a4b40938b8a109b8ea74d26c6f5d7f1/lib/dist-tags/fetch.js'".

線集
yarn --network-concurrency 1を䜿甚したしたが、゚ラヌが発生したす。 ゚ラヌずyarn-error.logファむルの別のサンプルを次に

An unexpected error occurred: "ENOENT: no such file or directory, copyfile '/home/nieltg/.cache/yarn/v1/npm-core-js-2.5.7-f972608ff0cead68b841a16a932d0b183791814e/library/fn/date/now.js' -> '/mnt/c/Users/nieltg/Projects/React/React-16-Demo/node_modules/core-js/library/fn/date/now.js'".

Yarn1.7.0を䜿甚しおいたす。 そしお、私は同じ行動がただ私に起こっおいるこずを確認するこずができたす。

それは完党にランダムです。 起こるこずもあれば、起こらないこずもありたす。

私が最埌に受け取ったのは

error An unexpected error occurred: "ENOENT: no such file or directory, lstat '/root/.yarn-cache/v1/npm-@storybook/addon-actions-3.4.5-ba0d0c0c74357c0852e0b890b40

この゚ラヌは、Windows Subsystem forLinuxのYarn1.9.2で頻繁に発生したす。

今日、パむプラむンがyarn installを䞊行しお実行するJenkinsCIで壊れたパッケヌゞで同様の問題が発生したした。 それは数日前にうたく働いおいたした。
yarn install --network-concurrency 1修正されたしたコメントに蚘茉され

なぜこれが閉鎖されたのですか それはただ起こりたす

Toms-MacBook-Pro-2:design-to-code tommedema$ yarn install
yarn install v1.9.4
[1/4] 🔍  Resolving packages...
[2/4] 🚚  Fetching packages...
[3/4] 🔗  Linking dependencies...
error An unexpected error occurred: "ENOENT: no such file or directory, lstat '/Users/tommedema/projects/vg/design-to-code/packages/vgcli/node_modules/fs-extra'".
info If you think this is a bug, please open a bug report with the information provided in "/Users/tommedema/projects/vg/design-to-code/yarn-error.log".
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
Toms-MacBook-Pro-2:design-to-code tommedema$ yarn install --network-concurrency 1
yarn install v1.9.4
[1/4] 🔍  Resolving packages...
[2/4] 🚚  Fetching packages...
[3/4] 🔗  Linking dependencies...
[4/4] 📃  Building fresh packages...
✹  Done in 24.85s.

私の堎合、2぀のパッケヌゞでyarn remove fs-extraずyarn add fs-extraを実行するず消え、この䟝存関係が効果的にアップグレヌドされるこずに泚意しおください。

こんにちは、私は䜕かを芋぀けたず思いたす。

fsずrxjsを䜿甚しお、指定したディレクトリ内のファむルを再垰的に䞀芧衚瀺するコヌドに手を出しおみたしたが、 lstat埅たないず倱敗する可胜性が高いこずがわかりたした。 lstat呌び出す前に終了する必芁がありたす。

これで環境が圱響を受けるかどうかをテストするために、単玔なNPMパッケヌゞasync-dirtree-testを䜜成したした。 私はWSLを䜿甚しおいたすが、同時実行数が少なくおも、 node_modulesなどの子ディレクトリが倚数あるディレクトリの凊理䞭に倱敗する可胜性が高いこずがわかりたした。

たあ、この問題がWSL固有のものかどうかはただわかりたせん。 珟圚、Linux、Macなどの別の環境でテストするこずはできたせん。

@nieltg他のいく぀かを圢䜜るのに圹立぀かもしれない芳察を共有したかった。 私はホストずしおWSLのDockerCEずDockerfor Windowsを䜿甚しおいるので、WSLでDockerを䜿甚するずネむティブに感じたすが、実際にはホストはWindowsの䞖界でネむティブに動䜜したすしたがっお、Dockerfilesは実際に/ c / foobarをDocker゚ンゞンのc/ foobar。 これは、バむンディングを䜿甚する堎合に非垞に関連性がありたすコンテナヌ内で、コンテナヌ内の/ usr / srcが最終的にc/ src / foobarになるようにロヌカルフォルダヌをマりントしおいたすただし、Dockerfileはバむンディングを/ c /ずしお衚瀺したす。 src / foobar/ usr / srcパスの自動翻蚳を参照しおください

これらのロヌカルフォルダヌの1぀、コンテナヌ内でyarn installを実行するず、WSLで盎接実行するのず同じ゚ラヌが発生するためDockerは関䞎したせん、この区別は重芁です。

䞀方、 mkdir /tmp/src && cp ./package.json /tmp/src/ && cd /tmp/src && yarn installだけの堎合、すべおが完党に成功し、 mv /tmp/src/node_modules /c/src/foobar/で十分であり、問​​題がないので、これが珟圚の回避策です。 /tmpはDockerストアずしお存圚するこずに泚意しおくださいすべおのIOは、事実䞊ファむル内のパヌティションであるため、OSにずっおは単䞀のファむルのように芋えたす。

ここではdockerを䜿甚するのは理想的ではないこずは知っおいたすが、IO自䜓はそうではなく、他の人がこれを回避するのに圹立぀可胜性があるため、高速ファむルハンドルが問題になる可胜性があるこずを瀺唆しおいるようです。

...気が散っお提出するのが早すぎた。 ずにかく、私の脳は珟圚他の堎所にありたすが、埌で戻っお、あなたのアプロヌチずDockerを䜿甚しおテストを考案し、さらに結論を出すこずができるかどうかを確認したす。

再開

最近、Azure Devops以前のVisual Studio Team ServicesでCIビルドを実行し、yarn1.10.1を䜿甚しお同じ皮類の゚ラヌが発生し始めたした。

倱敗しおいる実際の䟝存関係は、私が知る限りランダムであるように思われたすが、 yarn installは、 ENOENT: no such file or directory, open '/usr/local/share/.cache/yarn........゚ラヌで断続的にフォヌルオヌバヌしおいたす。 ビルドが機胜する堎合、次は倱敗したす。

yarn install --network-concurrency 1の回避策は私たちにずっおはうたくいくようです。

@ Marclev78同じ゚ラヌですが、 yarn install --network-concurrency 1が機胜しおいないようです

@ Marclev78同じこずですが、Azure Devopsでyarn1.10.1を䜿甚し、゚ラヌが発生したす。

Error: https://registry.yarnpkg.com/core-js/-/core-js-1.2.7.tgz: ENOENT: no such file or directory, utime 'C:\Users\grpsshagent\AppData\Local\Yarn\Cache\v1\npm-core-js-1.2.7-652294c14651db28fa93bd2d5ff2983a4f08c636\fn\string\pad-left.js'

ロヌカルでは、すべおが期埅どおりに機胜したす。

私もこの゚ラヌが発生しおいるず簡単に蚀うためにここにいたす。

error An unexpected error occurred: "ENOENT: no such file or directory, chmod '/usr/local/opt/asdf/installs/nodejs/8.12.0/.npm/bin/atob'".

残念ながら、グロヌバルノヌドバむナリのyarnを攟棄し、これが修正されるたでnpmに戻らなければならないず思いたす。

悲しいこずに、この問題は最近私たちのCIビルドも悩たせ始めたした;

@rainabbaの提案はWSLで私のために働いた

曞き蟌み操䜜ず読み取り操䜜の動䜜も異なるず思いたす。 私のハックでも、ノヌドのfs.writeFilebluebird promisifyでラップされおいたすを呌び出すずきに゚ラヌが頻繁に発生したす。 すべおのむンスタンスで、曞き蟌み゚ラヌが発生した盎埌にファむルが存圚するこずを確認できたす。

文字列XMLファむルの内容をfs.writeFileに送信したす。これにより、最終的に次のように呌び出されたすが、远加のデバッグを䜿甚しおカスタムビルドをセットアップするために必芁なチャレンゞを行う準備ができおいるかどうかわかりたせん。このC ++プロゞェクトからの出力。これにより、ノヌドたたはこのC ++モゞュヌルに埓っお、暩利が実際にどこで感じられおいるかを正確に確認できたす。

結論ずしお、曞き蟌みは倱敗しおいたせんが、ノヌドは曞き蟌みが倱敗しおいないず信じおいるので、私にずっお意味のあるシナリオは、c + plusモゞュヌルが成功しおいるが、内郚的にファむルをチェックしお倱敗し、レポヌトがノヌドに戻ったず感じないこずです次に、実際の曞き蟌みが発生するため、ファむルを確認しようずするず、そこにあり、゚ラヌは意味をなしたせん。

https://github.com/nodejs/node/blob/master/src/node_file.cc#L1795

@bestanderその問題を再開させる方法はありたすか 明らかにこれは修正されおおらず、倚くの人々に圱響を䞎えおいたす。

これを確認するこずは、yarn1.12ずAzurePipelinesでも匕き続き発生したす。

皆様のご確認ありがずうございたした。
その゚ラヌには耇数の理由があるようです。
問題を再開したすが、これをデバッグするためのコミュニティヘルプが必芁です。

ダヌン1.11でも発生したすが、1.10では発生したせん

@ bestander-関連 https://github.com/yarnpkg/yarn/issues/6312

もしそうなら、そこにいく぀かの玠晎らしい再珟䜜業がありたす

私もこの問題の圱響を受けおいたす。

Windows 10 / WSL

"ENOENT: no such file or directory, lstat '/mnt/c/Users/<username>/.cache/yarn/v4/<random_file_in_random_package>"

@limonte WSLにはしばらくの間゚ラヌがあり、 npm install / yarnむンストヌルの実行時に同様の゚ラヌがランダムにスロヌされおいたした。 䞀床にたくさんのファむルがハヌドドラむブにコピヌされたずきに起こっおいたした。 糞自䜓が原因ではない可胜性があるため、最新のWindowsバヌゞョン1809以降を䜿甚しおいるこずを確認しおください。

Extracting tar content of undefinedの問題も芋られたす。

error https://registry.yarnpkg.com/eslint/-/eslint-4.19.1.tgz: Extracting tar content of undefined failed, the file appears to be corrupt: "ENOENT: no such file or directory, stat '/tmp/yarncache.KTKNZ/v4/npm-eslint-4.19.1-32d1d653e1d90408854bfb296f076ec7e186a300/node_modules/eslint/lib/rules/no-compare-neg-zero.js'"

これたでのずころ、オプション--network-concurrency 1を䜿甚しお1぀の同時ネットワヌク接続のみを䜿甚するこずでこれを軜枛したした。 しかし、これは䞀時的な解決策です。

node:11.5.0-alpineでも問題を確認できたす。

error An unexpected error occurred: "ENOENT: no such file or directory, lstat '/app/node_modules/<random_pacakge>

問題は、パッケヌゞのgitリポゞトリバヌゞョンぞのリンクに関連しおいるように芋えるこずに気づきたした。

再珟

package.json

{
  "dependencies": {
    "react-navigation-core": "https://github.com/react-navigation/react-navigation-core",
    "react-navigation-hooks": "https://github.com/react-navigation/react-navigation-hooks"
  }
}

rm -rf node_modules && yarn cache clean && yarn

回避策

network-concurrency 1蚭定するず、毎回問題が解決したす。

npm installも機胜したす。

ノヌト

䟝存関係リストからいずれかのパッケヌゞを削陀しおも゚ラヌは発生せず、それらのパッケヌゞの公開されたnpmバヌゞョンを䜿甚するこずもありたせん。

毎回違う゚ラヌを出すようです。 これは、ファむルが異なればランダムに発生し、゚ラヌもわずかに異なるようです。

error https://registry.yarnpkg.com/core-js/-/core-js-1.2.7.tgz: Extracting tar content of undefined failed, the file appears to be corrupt: "ENOENT: no such file or directory, chmod  '/home/cameron/.cache/yarn/v4/npm-core-js-1.2.7-652294c14651db28fa93bd2d5ff2983a4f08c636/node_modules/core-js/library/modules/es6.reflect.apply.js'"

バリ゚ヌション

  • ENOENT: no such file or directory, chmod
  • ENOENT: no such file or directory, stat
  • ENOENT: no such file or directory, open
  • EEXIST: file already exists, mkdir

その他のメッセヌゞ

info There appears to be trouble with your network connection. Retrying...

確かに、私はあなたのpackage.jsonを䜿甚しお再珟しようずしたしたが、最初の詊行で゚ラヌが衚瀺されたした。

WSLファむルシステムは、すでに配眮されおいるNTFS fsずどのレむダヌず盞互䜜甚したすか

マりントされたドラむブ䞀般的な䟋では/ cたたは/ mnt / cで、たたはそれらのマりントの1぀の倖郚で、この゚ラヌが発生したすか 代替案〜/。などをテストし、違いを報告するこずに泚意しおください。

私の盎感は私をし぀こくしおいたすが、Dockerの経隓に問題があるので、これを個別に確認する必芁がありたす。

[2/4]パッケヌゞの取埗...
゚ラヌhttps://registry.yarnpkg.com/smartwrap/-/smartwrap-1.0.10.tgz 未定矩のtarコンテンツの抜出に倱敗したした。ファむルはcoのようです
rrupt "ENOENTそのようなファむルたたはディレクトリはありたせん。'C\ Users \ Administrator \ AppData \ Local \ Yarn \ Cache \ v4 \ npm-smartwrap-1.0.10-873ef350dを開きたす
4ee1262fed4a80a55634d86ae1faf48 \ node_modules \ smartwrap \ ejq '"
infoこのコマンドのドキュメントに぀いおは、 https//yarnpkg.com/en/docs/cli/globalにアクセスしおください。

マりントされたドラむブ䞀般的な䟋では/ cたたは/ mnt / cで、たたはそれらのマりントの1぀の倖郚で、この゚ラヌが発生したすか 代替案〜/。などをテストし、違いを報告するこずに泚意しおください。

これが起こっおいる䞀貫しお再珟可胜なケヌスはありたすか 私にずっおはかなりランダムですが、マりントされたドラむブですべおのyarn addし、これは頻繁に発生したす。

マりントされたドラむブず~䞡方で、 https //github.com/yarnpkg/yarn/issues/2629#issuecomment-451638917を再珟できたした。

たた、 https //github.com/yarnpkg/yarn/issues/2629#issuecomment -282745896を再珟しようずしたしたが、最埌のパッケヌゞのフェッチに倱敗し続けたした。これは、無関係であるず確信しおいたす。

過去数時間に同じ問題が発生したした。 ダヌンはさたざたなパッケヌゞのむンストヌルにランダムに倱敗し、䞊蚘の゚ラヌを瀺しおいたした。

ダヌンキャッシュをリセットし、ネットワヌク同時実行1で再むンストヌルしお実行しようずしたしたが、どちらも機胜したせんでした。

私にずっお問題を解決したのは、別のネットワヌクにです、すべおが魔法のように機胜したした。

この問題は、いく぀かの非垞に特定のネットワヌク゚ラヌの誀った凊理の回埩に関連しおいる可胜性があるずいう予感がありたす。 埌で調べたす。

前のコメントを確認できたす。 network-concurrency蚭定しおも効果はありたせん。 電話ホットスポットに切り替えるず、問題が解決したした。 私の環境Windows 10Linuxサブシステム-Ubuntu

私はWSLを䜿甚しおいお、少し奇劙な深くネストされたフォルダヌ構造を持぀geo-tzパッケヌゞでこの問題が発生しおいたした。 --network-timeoutず--network-concurrencyを詊しおみたしたが、どこにも行きたせんでした。 ただし、Windowsで長いパスを有効にするずこのSuperUserの投皿を参照、正垞に機胜するようになりたした。 おそらく、これはWSLの他の人々を助けるかもしれたせん。 線集するのが早すぎたようです。 それは機胜しおいお、䟝存関係のリンクはより高速ですが、今床は同じ゚ラヌが再び衚瀺されたす。

ただCIを壊しおいたす...

Jenkinsスレヌブノヌドずしお機胜するDebianLinuxマシンで実行されおいるYarn1.13.0でも同じ問題が発生したす。 ロヌカルのyarnリポゞトリサヌバヌがあるため、ビルド䞭に、パブリックむンタヌネットリポゞトリサヌバヌからの物理的なダりンロヌドはありたせんたたはほずんどありたせん。

yarn install v1.13.0
[1/4] Resolving packages...
[2/4] Fetching packages...
error An unexpected error occurred: "http://sqrep01.rsint.net:4873/lodash/-/lodash-4.17.10.tgz: ENOENT: no such file or directory, open '/home/jenkins/.cache/yarn/v4/npm-lodash-4.17.10-1b7793cf7259ea38fb3661d4d38b3260af8ae4e7/node_modules/lodash/.yarn-tarball.tgz'".

実際のファむルは、リポゞトリサヌバヌずファむルシステムの䞡方に存圚したす。
ビルドを再開するず、ビルドが成功するか、他のランダムなファむルで倱敗する可胜性がありたす。
デフォルトのネットワヌク同時実行蚭定は倉曎したせんでした。

同䞊- 1.14でも、これはただ問題です

Arguments: 
  /home/jeff/n/bin/node /usr/share/yarn/bin/yarn.js install

PATH: 
  /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/mnt/c/Windows/System32:/mnt/c/Windows:/mnt/c/Windows/System32/wbem:/mnt/c/Windows/System32/WindowsPowerShell/v1.0:/mnt/c/Program Files (x86)/NVIDIA Corporation/PhysX/Common:/mnt/c/Windows/System32:/mnt/c/Windows:/mnt/c/Windows/System32/wbem:/mnt/c/Windows/System32/WindowsPowerShell/v1.0:/mnt/c/Windows/System32/OpenSSH:/mnt/c/Program Files/NVIDIA Corporation/NVIDIA NvDLISR:/mnt/c/Program Files/Git/cmd:/mnt/c/Users/jkono/AppData/Local/Microsoft/WindowsApps:/mnt/c/Users/jkono/AppData/Local/hyper/app-2.1.2/resources/bin:/mnt/c/Users/jkono/AppData/Local/Programs/Microsoft VS Code/bin:/home/jeff/n/bin

Yarn version: 
  1.14.0

Node version: 
  10.15.1

Platform: 
  linux x64

Trace: 
  Error: ENOENT: no such file or directory, scandir '/mnt/c/Users/jkono/dev/PROJECT/node_modules/@storybook/addon-links/src'

たた

➜  yarn cache dir
/mnt/c/Users/jkono/home/.cache/yarn/v4

これはかなり厄介です。これはロヌカルマシンずciマシンで毎日芋られたす。

これが私たちにずっおもCIで垞に起こっおいるこずを確認する

こんにちは、この問題がCIで発生するこずを確認したす。
これは問題のある行です。

゚ラヌhttps://registry.yarnpkg.com/core-js/-/core-js-1.2.7.tgz 未定矩のtarコンテンツの抜出に倱敗したした。ファむルが砎損しおいるようです "ENOENTそのようなファむルたたはディレクトリはありたせん。 chmod '/ usr / local / share / .cache / yarn / v4 / npm-core-js-1.2.7-652294c14651db28fa93bd2d5ff2983a4f08c636 / node_modules / core-js / es7 / regexp.js' "
infoこのコマンドのドキュメントに぀いおは、 https//yarnpkg.com/en/docs/cli/installにアクセスしおください。

同じ問題が今日、私たちのオヌプン゜ヌスプロゞェクトの1぀で起こり始めたした。

ここで倱敗したビルドを芋るこずができたす
https://travis-ci.com/quid/refraction/builds/103692106

そしおここで成功するもの --network-concurrency 1 
https://travis-ci.com/quid/refraction/builds/103693682

問題の蚺断に圹立぀こずを願っおいたす

リポゞトリの゜ヌスコヌドは次のずおりです。
https://github.com/quid/refraction

倚分これは誰かを助けたす
Jenkins CIでの問題は、Jenkinsがアプリの䞊列ビルドをトリガヌするこずでした。぀たり、2぀たたはそれ以䞊のシェルスクリプトが同時に「yarninstall」をトリガヌし、ビルドプロセスの1぀がyarn-cacheをさらに_削陀したした。 「yarninstall」を開始する前に完党に_「yarncacheclean」を䜿甚。 もちろん、これは他の糞プロセスにずっお臎呜的な問題でした。
次に、キャッシュクリヌニングを削陀し、yarnコマンドを次のように倉曎したした。
yarn install --verbose --prefer-offline --mutex file:/tmp/.yarn-mutex --network-concurrency 1
_-- verbose_は実際には必芁ありたせんそしお挿入されたす
child-concurrency 1
.yarnrcで。
これで、䞊列ビルドがトリガヌされるず、yarnは別のYarnプロセスがアクティブであるこずを怜出し、終了するたで埅機したした。 これにより、CIの「そのようなファむルがない」問題が解決されたした。

この圢匏のパッケヌゞ参照を䜿甚するず、ロヌカルマシンでこの問題が発生したす。

"connect-js-adapter-tls": "git+https://github.com/jeremyjs/connect-js-adapter-tls.git#v3.2.2",

泚目すべき特城プラむベヌトパッケヌゞ、github url、git + https、タグ付きgitリファレンス

私のために再珟するステップ

  1. きれいな状態そのような参照をすべお削陀し、 yarn installたす。 それはうたくいきたす。
  2. そのようなすべおの参照をpackage.json远加し盎しお、 yarn install再床実行したす。これらの参照が远加された埌、最初の実行でも正垞に機胜したす。
  3. その埌、 yarn installさらに実行するず、倉曎がない限り機胜したす。
  4. ただし、パッケヌゞを倉曎しおyarn installを実行するず、゚ラヌが発生したす。
  5. その埌、そのようなパッケヌゞをすべお削陀しおyarn installを実行しおも、゚ラヌは発生したせん。 これでステップ1に戻りたす。

゚ラヌは次のようになりたす。

error An unexpected error occurred: "ENOENT: no such file or directory, open '/Users/jeremy/Library/Caches/Yarn/v4/npm-connect-js-adapter-tls-3.2.2-0c97726d92c21183a7fb7334344eb5047e8bc158/node_modules/connect-js-adapter-tls/.yarn-metadata.json'".

すべおのgitタグ参照を削陀するず、同じ動䜜が芋られたす。 だから私はそれが問題になるこずはないず信じおいたす。
すなわち

"connect-js-adapter-tls": "git+https://github.com/jeremyjs/connect-js-adapter-tls.git",

npm installを実行するず、゚ラヌも発生したす。

npm ERR! premature close

npm ERR! A complete log of this run can be found in:
npm ERR!     /Users/jeremy/.npm/_logs/2019-03-20T04_38_38_739Z-debug.log

npm-debug.log https 

フォロヌアップずしお、 package.jsonスクリプトを䜜成する回避策を䜿甚しお、むンストヌルする前にキャッシュからこれらのパッケヌゞをクリヌンアップしたした。

"install-clean": "yarn cache clean connect-js-adapter-tls connect-js-api connect-js-codec connect-js-encode-decode connect-protobuf-messages && yarn install"

この問題が䜕であるかただ䜕か考えはありたすか
この䟋では、CIDockerコンテナヌ内の䞀郚ずしおyarn installを実行しおおり、これらず同じ゚ラヌが発生しおいたす。 yarn cache cleanを詊したした

この時点で他に䜕を詊すべきかわからず、ビルドが停止したす。 😬

ダン、-network-concurrency 1で実行しおみたしたか 私は䌌たようなものを持っおいたす
シナリオずそれは私の問題を解決したした。
2019幎4月2日22:17、「DanVanBrunt」 [email protected]は次のように曞いおいたす。

この問題が䜕であるかただ䜕か考えはありたすか
私たちの堎合、CIの䞀郚ずしおyarn installを実行しおいたすdocker内
コンテナずこれらの同じ゚ラヌを取埗したす。 ダヌンキャッシュクリヌンを詊したした

この時点で他に䜕を詊すべきかわからず、ビルドが停止したす。 😬

—
このスレッドにサブスクラむブしおいるため、これを受け取っおいたす。
このメヌルに盎接返信し、GitHubで衚瀺しおください
https://github.com/yarnpkg/yarn/issues/2629#issuecomment-479283590 、たたはミュヌト
スレッド
https://github.com/notifications/unsubscribe-auth/AFU4O1iKA-HBd62Hema1ETmuUlMro_GLks5vdAEOgaJpZM4L3JbX
。

私たちのCIの問題も解決した@tevaum 。 たた、ビルドの速床が倧幅に䜎䞋したした。 ひどいですが、回避策だけです。

ええ。 それは悪い欠点です。 あなたは2たたは4のような小さな数で詊すこずができたす...それ
少し速くなりたすが、私にずっおは、機胜した唯䞀の倀は1/でした

したがっお、実際の修正が満足するたで埅぀必芁がありたす;
2019幎4月4日00:26、「kunokdev」 [email protected]は次のように曞いおいたす。

@tevaum https://github.com/tevaumは、CIの問題も解決したした。
たた、ビルドの速床が倧幅に䜎䞋したした。 ずおもひどい。

—
あなたが蚀及されたのであなたはこれを受け取っおいたす。

このメヌルに盎接返信し、GitHubで衚瀺しおください
https://github.com/yarnpkg/yarn/issues/2629#issuecomment-479735791 、たたはミュヌト
スレッド
https://github.com/notifications/unsubscribe-auth/AFU4O1a9lHn41K0eEQT9zZZzOoATiT61ks5vdXD8gaJpZM4L3JbX
。

これは修正されたすか これにより、耇数のプロゞェクトで糞が䜿甚できなくなりたした

ここに蚘茉されおいるミュヌテックスオプションを䜿甚しおください https //yarnpkg.com/en/docs/cli/#toc -concurrency-and-mutex

Yarnのキャッシュ䜿甚量は、マルチプロセスで䜿甚するのは安党ではなく、これがこのような゚ラヌの理由です。

たたは、 https //yarnpkg.com/en/docs/cli/cache#change -the-cache-path-for-yarn-に蚘茉されおいる--cache-folderオプションを䜿甚しお、プロセスごずのキャッシュフォルダヌを蚭定するこずもできたす。

ミュヌテックスオプションを䜿甚するこずの欠点は、マシン党䜓に1぀のyarnむンスタンスしかないこずです他のむンスタンスはアクティブなプロセスが終了するたで埅機したす。぀たり、CIゞョブ間で同時実行性がたったくありたせん。

プロセスごずのキャッシュフォルダの欠点は、I / Oが増加し、キャッシュの再利甚が少なくなるために朜圚的な可胜性が倱われるこずです。

理想的な解決策は、ノヌドにファむルロック機胜がないため非垞に簡単ではないプロセスセヌフなキャッシュ実装を実装するこずです唯䞀の信頌できるオプションはミュヌテックスディレクトリを䜜成するこずのようです。 次善の策は、䞊列アヌムごずのキャッシュフォルダヌを䜿甚するこずです。これにより、同じアヌムで同時実行ずキャッシュの再利甚が可胜になりたす。

ミュヌテックスのものではないず思いたす。 私ず他の䜕人かは、Dockerむメヌゞのビルド段階で、䞀床に1本の糞を実行したす私の堎合、DockerfileではRUN yarn installです。 これにより、その環境で他のプロセスが同時に実行されおいないこずがかなり確実になりたす。

これをチェックしおください、最小限の耇補の䟋少なくずも私のOSXの堎合

728 22:49:55 iMac ~/tmp/ynse$ ls
Dockerfile  package.json
729 22:49:58 iMac ~/tmp/ynse$ cat Dockerfile
FROM node
ADD . /app
WORKDIR /app
RUN yarn

730 22:50:00 iMac ~/tmp/ynse$ cat package.json
{
  "dependencies": {
    "react-navigation-core": "https://github.com/react-navigation/react-navigation-core",
    "react-navigation-hooks": "https://github.com/react-navigation/react-navigation-hooks"
  }
}
731 22:50:03 iMac ~/tmp/ynse$ docker build -t yt .
Sending build context to Docker daemon  15.87kB
Step 1/4 : FROM node
 ---> 39337023f8d4
Step 2/4 : ADD . /app
 ---> aa86b2d7f191
Step 3/4 : WORKDIR /app
 ---> Running in 83baa8603935
Removing intermediate container 83baa8603935
 ---> 80741f170292
Step 4/4 : RUN yarn
 ---> Running in 0718118bdcd6
yarn install v1.3.2
warning package.json: No license field
info No lockfile found.
warning No license field
[1/4] Resolving packages...
[2/4] Fetching packages...
[1/4] Resolving packages...
[2/4] Fetching packages...
[1/4] Resolving packages...
[2/4] Fetching packages...
info If you think this is a bug, please open a bug report with the information provided in "/app/yarn-error.log".
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
error An unexpected error occurred: "https://registry.yarnpkg.com/lodash/-/lodash-4.17.11.tgz: EEXIST: file already exists, mkdir '/usr/local/share/.cache/yarn/v1/npm-lodash-4.17.11-b39ea6229ef607ecd89e2c8df12536891cac9b8d'".
^C
732 22:50:23 iMac ~/tmp/ynse$

@ nopik -Yarn 1.3.2は非垞に叀く、そのバヌゞョンの埌に倚数の修正がありたした。 Docker内の最新の1぀を䜿甚しおみたしたか

実際、そのノヌドむメヌゞはかなり叀いものでした。 これは、dockerhubノヌドから数分前にダりンロヌドされた新しいもの

Sending build context to Docker daemon  15.87kB
Step 1/4 : FROM node
 ---> a9c1445cbd52
Step 2/4 : ADD . /app
 ---> Using cache
 ---> 26ed37136c09
Step 3/4 : WORKDIR /app
 ---> Using cache
 ---> b2339e7d25af
Step 4/4 : RUN yarn
 ---> Running in cdbdfd9c373c
yarn install v1.15.2
warning package.json: No license field
info No lockfile found.
warning No license field
[1/4] Resolving packages...
[2/4] Fetching packages...
[1/4] Resolving packages...
[2/4] Fetching packages...
[1/4] Resolving packages...
[2/4] Fetching packages...
error An unexpected error occurred: "ENOTEMPTY: directory not empty, rmdir '/usr/local/share/.cache/yarn/v4/npm-lodash-4.17.11-b39ea6229ef607ecd89e2c8df12536891cac9b8d/node_modules/lodash'".
info If you think this is a bug, please open a bug report with the information provided in "/app/yarn-error.log".
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.

@BYKこの

コンピュヌタヌ珟圚はモバむルにアクセスしたら、数日で詊しおみたす。 非垞に奇劙に芋えたすが、ディレクトリは䞀貫しおいたす。 再珟ケヌスに感謝し、䜕が起こっおいるのか芋おみたす。

@ nopik-ログを詳しく芋るず、実際に耇数のYarnむンスタンスが䞊行しお実行されおいるこずが

@BYK確かに、これらのパッケヌゞの1"scripts": { "build": "yarn babel --out-dir dist && del-cli 'dist/**/__tests__' && yarn tsc --emitDeclarationOnly", "prepare": "yarn build" } 、もう1぀には異なるスクリプトがありたすが、準備䞭はただyarnを実行しおいたす。むンストヌル䞭にyarnによっお起動されたすか

@ Nopik-別のむンストヌルではなく、単にスクリプトを実行しおいるだけなので、これらが問題を匕き起こすずは思わないでください。 たた、これらのスクリプトはI / Oフェヌズの埌に実行されたす。 耇数のyarn installむンスタンスをトリガヌする䜕か他のものがあるはずです。

私はそれがおそらく同時に走っおいる糞の耇数のむンスタンスであるこずに同意したす。 問題は、これがyarn 1回のCLI呌び出しで発生するこずです。 これを再珟するのにdockerは必芁ありたせん。

私の、確かに情報䞍足の理論は、それは準備ステップに関連するものであり、yarnがgitパッケヌゞを「ビルド」するための远加のむンスタンスを起動する可胜性があるずいうものです。 特に、ビルドする必芁がある共通のパッケヌゞにそれぞれ䟝存するのは2぀の䟝存関係であるに違いありたせん。 Yarnは賢く、それぞれの個別のパッケヌゞを䞊行しおビルドしようずしたすが、同じキャッシュの堎所に2぀のパッケヌゞをビルドしようずするず倱敗したす。

私たちの堎合、耇数のダヌンむンスタンスはありたせん。

私たちのシステムは、独自のDockerむメヌゞで実行されたす。 シングル_ダヌンむンストヌル_がありたす。 それは突然誀動䜜し始め、今ではネットワヌクの同時実行性を1に蚭定しないず䜜業できたせん。
糞自䜓が䞀晩で倉化しない限り、その糞が特定の条件で問題を起こしおいるこず以倖は問題は芋られたせん。

--mutex fileたたは--mutex networkでこの問題を解決しようずするず、必然的におそらくこのバグに遭遇するでしょう

぀たり、 yarn installを実行するず、成功しおも、別のyarnコマンドを実行するこずはできなくなりたす。

ダン、-network-concurrency 1で実行しおみたしたか 私にも同様のシナリオがあり、それで問題は解決したした。

@ tevaum-たさにそれが問題でした。 ありがずう
耇数のむンスタンスを実行するずは思わなかったスクリプトがありたしたが、実際に実行されおいたした。 🀊‍♂

@tevaumも私のために解決したした。 ありがずうございたした。

--mutexファむルたたは--mutexネットワヌクでこの問題を解決しようずするず、必然的におそらくこのバグ6650に遭遇したす6か月間開いおいる/未解決

@sarink —ミュヌテックスオプションのバグにも遭遇したした。 蚀及しおいただきありがずうございたす。

yarnは、すべおが正垞であるず蚀いたす。

PS C:\Users\chtacklind\Desktop\git\Project> yarn --verbose
yarn install v1.10.1
verbose 0.282 Checking for configuration file "C:\\Users\\chtacklind\\Desktop\\git\\Project\\.npmrc".
verbose 0.284 Found configuration file "C:\\Users\\chtacklind\\Desktop\\git\\Project\\.npmrc".
verbose 0.285 Checking for configuration file "C:\\Users\\chtacklind\\.npmrc".
verbose 0.286 Checking for configuration file "C:\\Program Files\\nodejs\\etc\\npmrc".
verbose 0.288 Checking for configuration file "C:\\Users\\chtacklind\\Desktop\\git\\Project\\.npmrc".
verbose 0.289 Found configuration file "C:\\Users\\chtacklind\\Desktop\\git\\Project\\.npmrc".
verbose 0.29 Checking for configuration file "C:\\Users\\chtacklind\\Desktop\\git\\.npmrc".
verbose 0.291 Checking for configuration file "C:\\Users\\chtacklind\\Desktop\\.npmrc".
verbose 0.295 Checking for configuration file "C:\\Users\\chtacklind\\.npmrc".
verbose 0.297 Checking for configuration file "C:\\Users\\.npmrc".
verbose 0.3 Checking for configuration file "C:\\Users\\chtacklind\\Desktop\\git\\Project\\.yarnrc".
verbose 0.301 Found configuration file "C:\\Users\\chtacklind\\Desktop\\git\\Project\\.yarnrc".
verbose 0.302 Checking for configuration file "C:\\Users\\chtacklind\\.yarnrc".
verbose 0.309 Found configuration file "C:\\Users\\chtacklind\\.yarnrc".
verbose 0.312 Checking for configuration file "C:\\Program Files\\nodejs\\etc\\yarnrc".
verbose 0.317 Checking for configuration file "C:\\Users\\chtacklind\\Desktop\\git\\Project\\.yarnrc".
verbose 0.318 Found configuration file "C:\\Users\\chtacklind\\Desktop\\git\\Project\\.yarnrc".
verbose 0.319 Checking for configuration file "C:\\Users\\chtacklind\\Desktop\\git\\.yarnrc".
verbose 0.326 Checking for configuration file "C:\\Users\\chtacklind\\Desktop\\.yarnrc".
verbose 0.327 Checking for configuration file "C:\\Users\\chtacklind\\.yarnrc".
verbose 0.333 Found configuration file "C:\\Users\\chtacklind\\.yarnrc".
verbose 0.336 Checking for configuration file "C:\\Users\\.yarnrc".
verbose 0.346 current time: 2019-05-12T11:56:12.800Z
[1/4] Resolving packages...
success Already up-to-date.
Done in 0.33s.

それでもyarn --checkするずビルドが詊行されたすが、垞に倱敗したす。

最埌に文字化けした゚ラヌメッセヌゞが衚瀺されるこずがありたす。

PS C:\Users\chtacklind\Desktop\git\Project> yarn --check-files --network-concurrency 1 --mutex file:C:/.yarn-mutex --verbose
yarn install v1.10.1
verbose 0.286 Checking for configuration file "C:\\Users\\chtacklind\\Desktop\\git\\Project\\.npmrc".
verbose 0.288 Found configuration file "C:\\Users\\chtacklind\\Desktop\\git\\Project\\.npmrc".
verbose 0.289 Checking for configuration file "C:\\Users\\chtacklind\\.npmrc".
verbose 0.29 Checking for configuration file "C:\\Program Files\\nodejs\\etc\\npmrc".
verbose 0.291 Checking for configuration file "C:\\Users\\chtacklind\\Desktop\\git\\Project\\.npmrc".
verbose 0.292 Found configuration file "C:\\Users\\chtacklind\\Desktop\\git\\Project\\.npmrc".
verbose 0.293 Checking for configuration file "C:\\Users\\chtacklind\\Desktop\\git\\.npmrc".
verbose 0.294 Checking for configuration file "C:\\Users\\chtacklind\\Desktop\\.npmrc".
verbose 0.295 Checking for configuration file "C:\\Users\\chtacklind\\.npmrc".
verbose 0.296 Checking for configuration file "C:\\Users\\.npmrc".
verbose 0.302 Checking for configuration file "C:\\Users\\chtacklind\\Desktop\\git\\Project\\.yarnrc".
verbose 0.304 Found configuration file "C:\\Users\\chtacklind\\Desktop\\git\\Project\\.yarnrc".
verbose 0.305 Checking for configuration file "C:\\Users\\chtacklind\\.yarnrc".
verbose 0.306 Found configuration file "C:\\Users\\chtacklind\\.yarnrc".
verbose 0.307 Checking for configuration file "C:\\Program Files\\nodejs\\etc\\yarnrc".
verbose 0.308 Checking for configuration file "C:\\Users\\chtacklind\\Desktop\\git\\Project\\.yarnrc".
verbose 0.311 Found configuration file "C:\\Users\\chtacklind\\Desktop\\git\\Project\\.yarnrc".
verbose 0.313 Checking for configuration file "C:\\Users\\chtacklind\\Desktop\\git\\.yarnrc".
verbose 0.314 Checking for configuration file "C:\\Users\\chtacklind\\Desktop\\.yarnrc".
verbose 0.315 Checking for configuration file "C:\\Users\\chtacklind\\.yarnrc".
verbose 0.316 Found configuration file "C:\\Users\\chtacklind\\.yarnrc".
verbose 0.317 Checking for configuration file "C:\\Users\\.yarnrc".
verbose 0.32 current time: 2019-05-12T11:56:20.033Z
[1/4] Resolving packages...
[2/4] Fetching packages...
verbose 2.344 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\Local\\Yarn\\Cache\\v2\\.tmp\\ef8122f161347726dd1763e1dca6eeef.d34344cbdf2ff518a03c08fc5f46827c9d66e543.prepare\\.npmrc".
verbose 2.344 Checking for configuration file "C:\\Users\\chtacklind\\.npmrc".
verbose 2.345 Checking for configuration file "C:\\Program Files\\nodejs\\etc\\npmrc".
verbose 2.345 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\Local\\Yarn\\Cache\\v2\\.tmp\\ef8122f161347726dd1763e1dca6eeef.d34344cbdf2ff518a03c08fc5f46827c9d66e543.prepare\\.npmrc".
verbose 2.346 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\Local\\Yarn\\Cache\\v2\\.tmp\\.npmrc".
verbose 2.346 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\Local\\Yarn\\Cache\\v2\\.npmrc".
verbose 2.346 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\Local\\Yarn\\Cache\\.npmrc".
verbose 2.346 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\Local\\Yarn\\.npmrc".
verbose 2.347 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\Local\\.npmrc".
verbose 2.347 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\.npmrc".
verbose 2.347 Checking for configuration file "C:\\Users\\chtacklind\\.npmrc".
verbose 2.348 Checking for configuration file "C:\\Users\\.npmrc".
verbose 2.348 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\Local\\Yarn\\Cache\\v2\\.tmp\\ef8122f161347726dd1763e1dca6eeef.d34344cbdf2ff518a03c08fc5f46827c9d66e543.prepare\\.yarnrc".
verbose 2.349 Checking for configuration file "C:\\Users\\chtacklind\\.yarnrc".
verbose 2.35 Found configuration file "C:\\Users\\chtacklind\\.yarnrc".
verbose 2.351 Checking for configuration file "C:\\Program Files\\nodejs\\etc\\yarnrc".
verbose 2.352 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\Local\\Yarn\\Cache\\v2\\.tmp\\ef8122f161347726dd1763e1dca6eeef.d34344cbdf2ff518a03c08fc5f46827c9d66e543.prepare\\.yarnrc".
verbose 2.353 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\Local\\Yarn\\Cache\\v2\\.tmp\\.yarnrc".
verbose 2.358 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\Local\\Yarn\\Cache\\v2\\.yarnrc".
verbose 2.359 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\Local\\Yarn\\Cache\\.yarnrc".
verbose 2.36 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\Local\\Yarn\\.yarnrc".
verbose 2.361 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\Local\\.yarnrc".
verbose 2.362 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\.yarnrc".
verbose 2.363 Checking for configuration file "C:\\Users\\chtacklind\\.yarnrc".
verbose 2.364 Found configuration file "C:\\Users\\chtacklind\\.yarnrc".
verbose 2.366 Checking for configuration file "C:\\Users\\.yarnrc".
[1/4] Resolving packages...
[2/4] Fetching packages...
verbose 2.541 Performing "GET" request to "https://registry.yarnpkg.com/typescript/-/typescript-3.3.3333.tgz".
verbose 3.263 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\Local\\Yarn\\Cache\\v2\\.tmp\\6621674c4e43b664dde14df71eaf0cc8.09d44d8abc94f728f1c5ea93c22fe9b4f87d9076.prepare\\.npmrc".
verbose 3.264 Checking for configuration file "C:\\Users\\chtacklind\\.npmrc".
verbose 3.265 Checking for configuration file "C:\\Program Files\\nodejs\\etc\\npmrc".
verbose 3.266 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\Local\\Yarn\\Cache\\v2\\.tmp\\6621674c4e43b664dde14df71eaf0cc8.09d44d8abc94f728f1c5ea93c22fe9b4f87d9076.prepare\\.npmrc".
verbose 3.268 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\Local\\Yarn\\Cache\\v2\\.tmp\\.npmrc".
verbose 3.27 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\Local\\Yarn\\Cache\\v2\\.npmrc".
verbose 3.271 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\Local\\Yarn\\Cache\\.npmrc".
verbose 3.273 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\Local\\Yarn\\.npmrc".
verbose 3.278 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\Local\\.npmrc".
verbose 3.279 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\.npmrc".
verbose 3.28 Checking for configuration file "C:\\Users\\chtacklind\\.npmrc".
verbose 3.281 Checking for configuration file "C:\\Users\\.npmrc".
verbose 3.283 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\Local\\Yarn\\Cache\\v2\\.tmp\\6621674c4e43b664dde14df71eaf0cc8.09d44d8abc94f728f1c5ea93c22fe9b4f87d9076.prepare\\.yarnrc".
verbose 3.285 Checking for configuration file "C:\\Users\\chtacklind\\.yarnrc".
verbose 5.007 Error: https://registry.yarnpkg.com/typescript/-/typescript-3.3.3333.tgz: Extracting tar content of undefined failed, the file appears to be corrupt: "ENOENT: no such file or directory, stat 'C:\\Users\\chtacklind\\AppData\\Local\\Yarn\\Cache\\v2\\npm-typescript-3.3.3333-171b2c5af66c59e9431199117a3bcadc66fdcfd6\\lib\\tsserver.js'"nd\\AppData\\Local\\Yarn\\Cache\\v2\\.tmp\\6621674c4e43b664dde14df71eaf0cc
    at MessageError.ExtendableBuiltin (C:\Program Files (x86)\Yarn\lib\cli.js:243:66)
    at new MessageError (C:\Program Files (x86)\Yarn\lib\cli.js:272:123)pData\\Local\\Yarn\\Cache\\v2\\.tmp\\.yarnrc".
    at Extract.<anonymous> (C:\Program Files (x86)\Yarn\lib\cli.js:56849:14)a\\Local\\Yarn\\Cache\\v2\\.yarnrc".
    at Extract.emit (events.js:194:15)on file "C:\\Users\\chtacklind\\AppData\\Local\\Yarn\\Cache\\.yarnrc".
    at Extract.module.exports.Extract.destroy (C:\Program Files (x86)\Yarn\lib\cli.js:131115:17)nrc".
    at onunlock (C:\Program Files (x86)\Yarn\lib\cli.js:130992:26)nd\\AppData\\Local\\.yarnrc".
    at C:\Program Files (x86)\Yarn\lib\cli.js:43373:25rs\\chtacklind\\AppData\\.yarnrc".
    at C:\Program Files (x86)\Yarn\lib\cli.js:43339:23rs\\chtacklind\\.yarnrc".
    at C:\Program Files (x86)\Yarn\lib\cli.js:56799:13acklind\\.yarnrc".
    at FSReqWrap.oncomplete (fs.js:153:21)ile "C:\\Users\\.yarnrc".
error https://registry.yarnpkg.com/typescript/-/typescript-3.3.3333.tgz: Extracting tar content of undefined failed, the file appears to be corrupt: "ENOENT: no such file or directory, stat 'C:\\Users\\chtacklind\\AppData\\Local\\Yarn\\Cache\\v2\\npm-typescript-3.3.3333-171b2c5af66c59e9431199117a3bcadc66fdcfd6\\lib\\tsserver.js'"
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
PS C:\Users\chtacklind\Desktop\git\Project>

時々異なる゚ラヌで

...
[2/4] Fetching packages...
verbose 2.635 Performing "GET" request to "https://registry.yarnpkg.com/typescript/-/typescript-3.3.3333.tgz".
verbose 3.465 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\Local\\Yarn\\Cache\\v2\\.tmp\\6621674c4e43b664dde14df71eaf0cc8.09d44d8abc94f728f1c5ea93c22fe9b4f87d9076.prepare\\.npmrc".
verbose 3.466 Checking for configuration file "C:\\Users\\chtacklind\\.npmrc".
verbose 3.467 Checking for configuration file "C:\\Program Files\\nodejs\\etc\\npmrc".
verbose 3.468 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\Local\\Yarn\\Cache\\v2\\.tmp\\6621674c4e43b664dde14df71eaf0cc8.09d44d8abc94f728f1c5ea93c22fe9b4f87d9076.prepare\\.npmrc".
verbose 3.469 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\Local\\Yarn\\Cache\\v2\\.tmp\\.npmrc".
verbose 3.47 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\Local\\Yarn\\Cache\\v2\\.npmrc".
verbose 3.471 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\Local\\Yarn\\Cache\\.npmrc".
verbose 3.473 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\Local\\Yarn\\.npmrc".
verbose 3.474 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\Local\\.npmrc".
verbose 3.48 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\.npmrc".
verbose 3.481 Checking for configuration file "C:\\Users\\chtacklind\\.npmrc".
verbose 3.482 Checking for configuration file "C:\\Users\\.npmrc".
verbose 3.483 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\Local\\Yarn\\Cache\\v2\\.tmp\\6621674c4e43b664dde14df71eaf0cc8.09d44d8abc94f728f1c5ea93c22fe9b4f87d9076.prepare\\.yarnrc".
verbose 3.485 Checking for configuration file "C:\\Users\\chtacklind\\.yarnrc".
verbose 3.486 Found configuration file "C:\\Users\\chtacklind\\.yarnrc".
verbose 3.49 Checking for configuration file "C:\\Program Files\\nodejs\\etc\\yarnrc".
verbose 3.492 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\Local\\Yarn\\Cache\\v2\\.tmp\\6621674c4e43b664dde14df71eaf0cc8.09d44d8abc94f728f1c5ea93c22fe9b4f87d9076.prepare\\.yarnrc".
verbose 3.493 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\Local\\Yarn\\Cache\\v2\\.tmp\\.yarnrc".
verbose 3.494 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\Local\\Yarn\\Cache\\v2\\.yarnrc".
verbose 3.495 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\Local\\Yarn\\Cache\\.yarnrc".
verbose 3.496 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\Local\\Yarn\\.yarnrc".
verbose 3.497 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\Local\\.yarnrc".
verbose 3.501 Checking for configuration file "C:\\Users\\chtacklind\\AppData\\.yarnrc".
verbose 3.503 Checking for configuration file "C:\\Users\\chtacklind\\.yarnrc".
verbose 3.504 Found configuration file "C:\\Users\\chtacklind\\.yarnrc".
verbose 3.505 Checking for configuration file "C:\\Users\\.yarnrc".
[1/4] Resolving packages...
[2/4] Fetching packages...
verbose 4.608 Error: EPERM: operation not permitted, unlink 'C:\Users\chtacklind\AppData\Local\Yarn\Cache\v2\npm-typescript-3.3.3333-171b2c5af66c59e9431199117a3bcadc66fdcfd6\.yarn-tarball.tgz'
error An unexpected error occurred: "EPERM: operation not permitted, unlink 'C:\\Users\\chtacklind\\AppData\\Local\\Yarn\\Cache\\v2\\npm-typescript-3.3.3333-171b2c5af66c59e9431199117a3bcadc66fdcfd6\\.yarn-tarball.tgz'".
info If you think this is a bug, please open a bug report with the information provided in "C:\\Users\\chtacklind\\Desktop\\git\\Project\\yarn-error.log".
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
PS C:\Users\chtacklind\Desktop\git\Project>

--mutex指定しおいおも、2぀のダヌンプロセスが実行されおいるこずに泚意しおください。

このパッケヌゞには、実行する必芁のあるtsc prepareステップを持぀git䟝存関係があるこずに泚意しおください。 そのパッケヌゞには、同じプロセスを必芁ずするgit䟝存関係もありたす。 ダヌンが同じパッケヌゞを同じ堎所に開梱しようずしおいるこずは明らかであり、競合状態になっおいたす。

蚀われおも糞が耇数のむンスタンスを実行しおいるのはなぜですか

曎新ずしお、 yarn install --network-concurrency 1 --mutex network䜿甚は、いずれかのオプションの䜿甚が䞀郚の時間でしか成功しない傟向がある堎合は垞に機胜するようです。

では、この問題の解決策は䜕ですか
Ubuntu Linux18.04でyarn1.16を䜿甚しおいたす
そしお、私はただこの゚ラヌメッセヌゞを受け取りたす

error予期しない゚ラヌが発生したした「ENOENTそのようなファむルたたはディレクトリはありたせん、lstat '/ home / user / workspace / project / packages / components / node_modules / source-map-support'」。

私のコマンドは

yarn install --check-files --frozen-lockfile --network-concurrency 1

そしお、私はこの゚ラヌを2回に1回受け取りたす
PS私はモノレポで働いおいるので、糞のワヌクスペヌスを有効にしたした
PPS
ダブルチェックしたした
--mutexファむルたたは--mutexネットワヌクを远加しおも効果はありたせん。

䜜品がスクリプトを入れおいるこずを確認できる唯䞀の解決策

until
    yarn install --check-files --frozen-lockfile;
do
    echo "Surprise, surprise. Let's try again..."
done

:(

Fwiw、 synpを䜿甚しおyarn.lockをpackage-lock.jsonに倉換し、 yarnをnpmで怜玢/眮換するだけで、npmに切り替えるこずができたした。 、およびnpm installたす。 これは骚の折れるプロセスだず思いたしたが、npmは倧幅に進歩し、玄30分しかかからず、今ではどこでも機胜したす。

ここでの問題は、䜕がうたくいかないのかずいう本圓に単玔な䟋がないずいうこずのようです。 問題を確実に再珟する簡単なpackage.jsonを投皿したしたが、含たれおいるパッケヌゞはやや耇雑です。

問題は、コンパむル/むンストヌル準備に時間がかかる共有の「リヌフ」/ヒントを持぀䟝存関係ツリヌがあり、yarnがこの準備を2回同時に実行しようずする堎合にあるず思われたす。 各むンスタンスは、共有された予枬可胜な堎所で「準備」されおおり、䞡方が同時に同じ堎所に「曞き蟌む」こずはできたせん䞀方はファむルを削陀し、もう䞀方はファむルがただ存圚するこずを期埅したす。

私は、この理論をテストするための「準備」手順を膚らたせた簡単な抂念実蚌パッケヌゞを䜜成する぀もりでしたが、時間がありたせんでした。 倚分誰か他の人が私がそれに到達する前にこの理論をテストするこずができたすか

これは、耇数のYarnむンスタンスが同時に実行されおいる堎合に発生したす。 ここに蚘茉されおいる--mutexオプションを䜿甚できたす https //yarnpkg.com/en/docs/cli/#toc -concurrency-and-mutex

@BYKこれで問題ない堎合も倚いようです。 他の人は、このオプションが圌らに他の問題を匕き起こすこずさえ瀺したした。

@ cinderblock 6650ぱッゞケヌスのようであり、この問題の解決に実際に圱響を䞎えるこずはありたせん。 あなたが蚀及する他の䟋は、別のむンストヌル䞭にむンストヌルモヌドでトリガヌされる糞です。これは、パッケヌゞのむンストヌル䞭に別のむンストヌルをトリガヌするべきではないため、おそらく問題のあるパッケヌゞです。 これは--ignore-scriptsによっおも回避できたす。これもお勧めです。

他にリヌドがある堎合は、共有しおください。そうすれば、誰かがこれをデバッグするためにより倚くの時間を費やすこずができたす。

@BYK installスクリプト内で意図的にyarn install䜿甚しおいる人を芋たこずがありたせん。 この問題を匕き起こすこの些现なpackage.jsonを芋たしたか 確かに、この゚ラヌを匕き起こすのは䟝存パッケヌゞの䜕かであり、おそらくそれらには、あなたが参照しおいるinstallが埋め蟌たれおいたす。 ただし、そのpackage.jsonはnpmたす...

関連しお、 --ignore-scriptsはどのように/どこで掚奚されたすか 倚くのパッケヌゞは、むンストヌル埌のスクリプトに䟝存しお機胜したす。

関連しお、-ignore-scriptsはどのように/どこで掚奚されたすか 倚くのパッケヌゞは、むンストヌル埌のスクリプトに䟝存しお機胜したす。

ああ、私はここでそれをお勧めしたした、そしお私はダヌンの倚くのメンバヌがこれに぀いお声を䞊げおいたず思いたす。 😀ほずんどのパッケヌゞは問題ありたせんが、むンストヌル埌のスクリプトに䟝存するパッケヌゞがいく぀かありたす。

この些现なpackage.jsonを芋たしたか

はい。ただし、「些现な」 package.jsonファむルでも非垞に倧きな䟝存関係ツリヌが生成される可胜性があるため、些现なこずだず蚀っおも、次のいずれかの方法で解釈する傟向があるこずを陀けば、それほど倉わりたせん。

  • 糞が安っぜすぎるので、この_trivial_package.jsonファむルを凊理するこずさえできたせん
  • この問題は_trivial_package.jsonファむルで再珟できたすが、それでも修正できない/修正しないでください

それらのどれも圹に立たないので、私はあなたのコメントを無芖する傟向がありたす。

実際の問題では、yarnをミュヌテックスで実行するには、すべおのyarnむンスタンスを--mutexフラグで呌び出す必芁があるため、これで問題が解決するかどうかを確認する最良の方法は、 --install.mutex networkを远加するこずです。 .yarnrcファむルhttps://yarnpkg.com/en/docs/yarnrc#toc-cli-argumentsを参照。 ずはいえ、最初のむンストヌルが別のむンストヌルをトリガヌするず、デッドロックが発生する可胜性がありたす。2番目のむンストヌルはメむンのむンストヌルが終了するのを埅ち、メむンのむンストヌルはこのスクリプトで呌び出されたダヌンでブロックされお終了するため、実際にはそうではありたせん。スレッド/プロセスセヌフキャッシュシステムを実装する以倖に、この問題を修正する方法を知っおいたす。これは、 node提䟛するロックプリミティブではほが䞍可胜です。 最も近いものはこの適切なロックパッケヌゞのように芋えたすが、私たちの誰もそれを詊す時間がありたせんでした。 これをキャッシュの曞き蟌み/読み取りコヌドに実装するこずに興味がある堎合は、私がお手䌝いしたす。

@BYKああ、そのように倖れたらお詫びしたす。 それたでは、問題を解決するのに十分な蒞留が行われおいなくおも、゚ラヌを確実に再珟する方法を芋たこずがありたせんでした。 それがそのコメントの私の党䜓的な掚進力でした。

私の氞続性を蚱しおください、しかし私はただミュヌテックスオプションがどのように解決策であるかわかりたせん。 ミュヌテックスで実行しおみたしたが、それでも同時にダヌンを実行したした。 たぶん私は私のテストで間違いを犯しyarn --mutex ...するず、そのオプションが子むンスタンスに枡されるず予想しおいたしたたずえば、 makeように。 たた、 --install.mutex networkを.yarnrcファむルに远加しおも無駄になるずいう提案を詊したした同じ゚ラヌ。 --verboseは、オプションがロヌドされおいるこずを確認したす。

たぶん私たちは別の方向からこれに来るこずができたすか npmがそうではないこずをしおいる糞は䜕ですか npmにこれず同じ問題がないのはなぜですか

@BYK 、 mutexフラグを䜿甚するこずは完党に受け入れられたせん。これは、远加のダヌンバグがあり、それによっお_別のダヌンコマンドを実行できなくなるためです_...これは、「キヌをロックしたした私の車」は、「心配しないでください、私はそれを考えたしたこの䟿利なツヌルを䜿甚しお、すべおの窓ずドアのロックを叩くだけです。これで、車を再びロックするこずはできなくなりたす」 🙄

些现なpackage.jsonあろうずなかろうず、これは解決策や回避策がない倧きな問題であり、倚くの人が糞を完党に䜿甚できなくしたす。 もっず泚目されるはずです。 特にそれが_ 2幎間開いおいるこずを考えるず。

@sarink

@BYK 、ミュヌテックスフラグの䜿甚は完党に受け入れられたせん。これは、远加の

私はそのようなバグに気づいおいたせん、それがすでに報告されおいるならば、あなたは私にそれを指摘するこずができたすか --mutex機胜する方法は、最初のむンスタンスが終了するたで、同じミュヌテックスを䜿甚する他のyarnむンスタンスが実行されないようにするこずです。 ですから、あなたの蚀うこずあなたの描写ではないは、私には「期埅通りに機胜する」ように聞こえたす。

些现なpackage.jsonであろうずなかろうず、これは解決策や回避策がない倧きな問題であり、倚くの人が糞を完党に䜿甚できなくしたす。 もっず泚目されるはずです。 特に2幎間オヌプンしおいるこずを考えるず。

「糞を倚くの人に完党に䜿甚できないようにする」ず「2幎間開いおいる」ずいう自分の文章の内郚矛盟に぀いお考えおみおください。 この号には56人の参加者しかいたせん。これには、玄5人のダヌンメンテナヌず合蚈138のコメントが含たれ、そのほずんどが同じこずを巡回しおいたす。 これは「倚くの人」ではありたせん。これは_䞀郚の_人であり、圌らにずっお重芁であるこずは確かですが、1行のコヌド修正を送信し、完党に提䟛されおいる゜フトりェアの修正を芁求するだけで、これを重芁芖しおいる人はいないようです。それらに無料。

@軜量コンクリヌトブロック

私の氞続性を蚱しおください、しかし私はただミュヌテックスオプションがどのように解決策であるかわかりたせん。

氞続性に関しお蚱すこずは䜕もありたせん、あなたが問題を解決しようずしおいるので、それは実際に祝われるべきです:)

実行䞭のyarn--mutex ...がそのオプションを子むンスタンスに枡すこずを期埅しおいたしたたずえば、makeが行うように。

受け継がれおいないず確信しおいたす。

たた、-install.mutexネットワヌクを.yarnrcファむルに远加しおも無駄になるずいう提案を詊したした同じ゚ラヌ。 --verboseは、オプションがロヌドされおいるこずを確認したす。

それは非垞に興味深いです。 .yarnrcファむルを無芖しお、新しいyarnむンスタンスが別のディレクトリからトリガヌされたこずが原因である可胜性がありたす。 そのオプションでグロヌバル.yarnrcファむルを䜿甚するこずをお勧めしたすが、それは適切な解決策ではないず思いたす。 これを詊しお、以前に予想したように実際にむンストヌルがブロックされるかどうかを確認する必芁がありたす。

たぶん私たちは別の方向からこれに来るこずができたすか npmがそうではないこずをしおいる糞は䜕ですか npmにこれず同じ問題がないのはなぜですか

Yarnずnpmは動䜜が非垞に異なるずいう倚様な考え方に感謝したす。これは、ここでは実際には圓おはたらないず思いたす。 どのパッケヌゞが独自のむンストヌルの䞀郚ずしおダヌンむンストヌルをトリガヌするかを特定できれば、解決策を芋぀けるこずができたす。 たぶん、 yarn実行可胜ファむルを、呌び出し元、cwd、および枡されたすべおの匕数をログに蚘録し、通垞どおりyarnを実行しお有甚なデバッグ情報を取埗し、そこから続行するbashスクリプトに眮き換えるこずができたすか

究極の解決策は、前述したように同時実行に適したキャッシュの実装ですが、より倚くのデバッグ情報があれば、より安䟡な回避策を芋぀けるこずができるかもしれたせん。

この@cinderblockにご協力いただき、

究極の解決策は、前述したように同時実行に適したキャッシュの実装ですが、より倚くのデバッグ情報があれば、より安䟡な回避策を芋぀けるこずができるかもしれたせん。

単玔化された同時実行凊理を提䟛できるはずだず思いたす。たずえば、ビルドステップ䞭に他のyarnむンスタンスが呌び出された堎合、トップダヌンプロセスによるキャッシュ操䜜はほずんどないはずです。 少なくずも、それは私が期埅するこずです。 考えられるスクリプトを呌び出す前に、キャッシュがディスクにフラッシュされるこずを確認するず、うたくいく可胜性がありたす。 ただし、実装がどれほど耇雑かはわかりたせん。

@BYKああ サブパッケヌゞがスクリプトでyarn ...を呌び出しおいる可胜性に぀いおは考えおいたせんnpm installが倱敗しない理由は、その䟝存関係がyarn ...実行するずきに、実行されおいるむンスタンスが1぀しかないためだず思いたすか

ランニングの問題をなんずか解決できたした

yarn cache clean
rm ./yarn.lock
yarn install

ただし、このプロセスには時間がかかりたす。これは、aキャッシュがなくなり、ロックファむルが削陀されたためにすべおのパッケヌゞが再床ダりンロヌドされるためです。

これはロヌカルマシンで解決する可胜性がありたすが、bitriseで䜿甚する堎合、ダヌンの問題は残りたす。 れロからきれいな画像です。 シングルダヌンプロセスが実行されおいる堎合でも、ネットワヌクの同時実行性が必芁です。

@BYK

テレはこの号の参加者はわずか56人で、これには5人たでのダヌンメンテナヌず合蚈138のコメントが含たれ、そのほずんどが同じこずを巡回しおいたす。

これは、このリポゞトリではかなり高い数倀のようです。 これは、すべおの未解決および未解決の問題の䞭で最も高いコメントの合蚈であり、参加者数が最も倚いものの1぀です。

さらに、おそらく関連する問題を調査しおいるずきに、関連する可胜性のある問題を抱えおいる人をかなり倚く芋たした。 残念なこずに、これらの人々の倚くは、糞党䜓をあきらめるか、糞ロックファむルが倉曎されるたびに--network-cocurrency 1を実行するコストを飲み蟌んでしたいたした。 それが䞋付き文字であるこずがようやくわかるたで、私は自分のプロゞェクトの1぀でたさにそれを行っおいたした。

これは「倚くの人」ではありたせん。これは䞀郚の人であり、圌らにずっお重芁であるこずは確かですが、1行のコヌド修正を送信し、完党に提䟛されおいる゜フトりェアの修正を芁求するだけで、これを重芁芖しおいる人はいないず思いたす。それらに無料。

糞は、人々が簡単に飛び蟌むこずができるタむプのプロゞェクトではありたせん。 これは、倚くのこずを非同期的に実行する耇雑なシステムです。぀たり、デバッガヌを䜜成しおスタックを䞊っお䜕が起こっおいるかを確認するこずはできたせん。 そのため、このコヌドベヌスを理解するのは決しお簡単ではなく、倉曎するのはさらに困難です。 地獄、この時点で私はすでに数日間の环積時間をコヌドの読み取りに費やしたしたが、関連するテストを含む単玔なパッチでさえも提出するのに十分な自信がありたせん。 私は20幎以䞊の経隓を積んでおり、コヌドの読み取りが私の専門分野の1぀であるこずを考えるず、平均的な開発者に最倧のチャンスを䞎えるこずはできたせん。

蚀い換えれば、あなたにずっお迅速で簡単な1行の修正は、プロゞェクトの内郚䜜業に粟通しおいない人にずっおは、倧きな数日間のプロゞェクトになる可胜性がありたす。 これは、さたざたなコミュニティに存圚する暗黙のポリシヌに぀いお説明する前です。 いく぀かのプロトコルに埓わなかった、適切なテストを䜜成しなかった、適切な仕様に埓わなかった、たたは文曞化されおいないコヌディング暙準に達しおいない修正を行っただけで、さたざたなオヌプン゜ヌスプロゞェクトで少なくずもいく぀かのPRが拒吊されたした。 これは、郚倖者ずしお倧芏暡なプロゞェクトに有意矩に貢献するずいう課題になる可胜性がありたす。

これが本圓にあなたにずっお単䞀行の修正であるならば、それをしないこずで他の人を批刀する長い投皿を曞くよりも、その修正を曞くほうが速いのではないでしょうか

どのパッケヌゞが独自のむンストヌルの䞀郚ずしおダヌンむンストヌルをトリガヌするかを特定できれば、解決策を芋぀けるこずができたす。

ここにこの皮の動䜜を瀺すパッケヌゞの䟋がありたすが、そこにはyarn installは衚瀺されたせん bob buildが衚瀺されない限り、この問題はコマンドは"prepare": "node ./scripts/generate-mappings", 。

究極の解決策は、前述したように同時実行に適したキャッシュの実装ですが、より倚くのデバッグ情報があれば、より安䟡な回避策を芋぀けるこずができるかもしれたせん。

優れた出発点は、そのような状況が怜出された堎合の譊告です怜出可胜であるず想定。 䞊行性に適したキャッシュは、yarnコミュニティの少なくずも1人のメンバヌによる集䞭的な取り組みでなければならないようです。

Updateは、機胜する回避策を芋぀けたした.... gitサブモゞュヌルを䜜成し、パッケヌゞの堎所をロヌカルフォルダヌにしたす。 理想的ではありたせんが、機胜したす。

CircleCIでもこの問題が発生しおおり、倧きな問題です。 この問題は、github.comおよびおそらくLinuxOSXで動䜜したすでホストされおいるパッケヌゞの䜿甚に関連しおいるようです。 mutexおよびnetwork-concurrencyオプションは䜕もしたせん。

"my-js-lib" " ssh//[email protected] dgobaud / my-js-ib1.0.0"

それを削陀するず、CircleCIで機胜したす。 ロヌカルでは、OSXのyarn1.17.0で動䜜したす。

ただし、ノヌド12.8.1およびyarn 1.17.3のCircleCIでは機胜したせんcircle image circleci / nodelatest

たたはノヌド8.15.0ずダヌン1.12.3円画像circleci / node8.15.0

#!/bin/bash -eo pipefail
yarn install --mutex network --network-concurrency 1
yarn install v1.12.3
[1/4] Resolving packages...
warning Resolution field "[email protected]" is incompatible with requested version "mixin-deep@^1.2.0"
warning Resolution field "[email protected]" is incompatible with requested version "set-value@^2.0.0"
warning Resolution field "[email protected]" is incompatible with requested version "set-value@^0.4.3"
[2/4] Fetching packages...
info [email protected]: The platform "linux" is incompatible with this module.
info "[email protected]" is an optional dependency and failed compatibility check. Excluding it from installation.
[3/4] Linking dependencies...
[4/4] Building fresh packages...
$ cd functions && yarn install
yarn install v1.12.3
[1/5] Validating package.json...
[2/5] Resolving packages...
warning Resolution field "[email protected]" is incompatible with requested version "mixin-deep@^1.2.0"
warning Resolution field "[email protected]" is incompatible with requested version "set-value@^2.0.0"
warning Resolution field "[email protected]" is incompatible with requested version "set-value@^2.0.1"
[3/5] Fetching packages...
[1/5] Validating package.json...
[2/5] Resolving packages...
[3/5] Fetching packages...
error https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz: Extracting tar content of undefined failed, the file appears to be corrupt: "ENOENT: no such file or directory, chmod '/home/circleci/.cache/yarn/v4/npm-lodash-4.17.15-b447f6670a0455bbfeedd11392eff330ea097548/node_modules/lodash/_arrayReduceRight.js'"
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
info There appears to be trouble with your network connection. Retrying...
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
Exited with code 1

--network-concurrency 1は成功し、-network-concurrency 8は倱敗したす、circleCI / node10

YarnがEEXISTずEOENTで倱敗する必芁がある理由を誰かが理解するのを手䌝っおもらえたすか

EEXISTの堎合、Yarnがそれに぀いお譊告し、ファむルをオヌバヌラむドするこずを期埅したす。
EOENTの堎合、Yarnが欠萜しおいるフォルダヌを䜜成するこずを期埅したすこれが通垞問題の原因です。

副䜜甚がある可胜性があるこずを理解しおいるので、フラグを䜿甚しおこの動䜜をより厳密にするこずができたすたたはその逆。

しかし、これらの゚ラヌを回避するこずのポむントは䜕ですか それらは誰にずっおも圹に立ちたせん。

@BYK申し蚳ありたせんが、あなたのコメントを芋たした

私はそのようなバグに気づいおいたせん、それがすでに報告されおいるならば、あなたは私にそれを指摘するこずができたすか --mutex機胜する方法は、最初のむンスタンスが終了するたで、同じミュヌテックスを䜿甚する他のyarnむンスタンスが実行されないようにするこずです。 ですから、あなたの蚀うこずあなたの描写ではないは、私には「期埅通りに機胜する」ように聞こえたす。

これはバグです https  https://github.com/yarnpkg/yarn/issues/6650 珟圚はこのスレッドの「もっず履歎を衚瀺」

この号の参加者は56人だけです

たあ、それはフェアポむントだず思いたす

このバグはただyarnv1.19.1にありたす。 YarnTeamがこの非垞に厄介なバグを修埩しない理由がわかりたせん。
これが私の.yarnrc 、圹に立ちたせん。

save-prefix ""
--install.check-files true
--add.check-files true
--remove.check-files true
--install.frozen-lockfile true
--add.frozen-lockfile true
--remove.frozen-lockfile true
--install.mutex network
--install.mutex file

npx lerna clean && ./yarn-install-in-loop.shするず圹立぀こずがわかりたした。
私のmonorepo内のすべおのnode_modulesディレクトリをクリヌンアップ削陀するこずは圹に立ちたす。

@gitowiecは確認できたす。 私のコンテナ化されたyarn install呌び出しは、ファむルシステム䞊で䜕かを競うデヌタであり、 yarnを単䞀の.yarnrcファむルに制限しようずするたびに倱敗したす。 私はあきらめおnpm戻りたす。

私の問題は、gitリポゞトリから耇数のレベル぀たり、私のパッケヌゞ-> gitパッケヌゞ-> gitパッケヌゞ-> gitパッケヌゞを介しおパッケヌゞの䟝存関係があるこずであるこずがわかりたした。 たた、むンストヌル䞭のキャッシュはnpm​​ず比范しおうたく機胜したせんでしたnpmは1回だけチェックアりトしたすが、同じむンストヌル䞭に同じパッケヌゞを耇数回チェックアりトしたす。
npmに戻りたす。 v6以降はうたく機胜したす。

䞊蚘のように、この問題はただ存圚したす。 以䞋は、テストに合栌するためにcircleciのconfig.ymlに远加したものです。
- run: name: Yarn Install source ~/setyarnpath.sh i=5; until yarn; do echo "Yarn failed. Retrying..."; ((i--)); if [[ "$i" == '0' ]]; then break; fi; done

私も同じ問題を抱えおいたした。 macOSずdocker-composeを䜿甚し、ホスト[1]ボリュヌムにコヌドずnode_modulesを入れたした。

node_modulesを匿名ボリュヌム内に倉曎したしたが、名前付きボリュヌムも機胜する

docker-composeファむルが次の堎所から倉曎されたした

services:
  ...
  web:
    build: .
    volumes:
      - .:/home/example
    ports:
      - "3000:3000"
    ...

に

services:
  ...
  web:
    build: .
    volumes:
      - .:/home/example
      - /home/example/node_modules
    ports:
      - "3000:3000"
    ...

[1] https://success.docker.com/article/different-types-of-volumes

最近のyarnで新しい゚ラヌが発生し、この問題の新しい症状であるず考えおいたす。

yarn stdout [1/4] Resolving packages...
yarn stdout [2/4] Fetching packages...
yarn stderr error https://registry.yarnpkg.com/prettier/-/prettier-1.19.1.tgz: Extracting tar content of undefined failed, the file appears to be corrupt: "EEXIST: file already exists, mkdir '/home/pi/.cache/yarn/v6/npm-prettier-1.19.1-f7d7f5ff8a9cd872a7be4ca142095956a60797cb-integrity/node_modules/prettier'"
yarn stdout info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
yarn stderr Process stalled
yarn stderr Active handles:
yarn stderr   - Socket
yarn stderr   - Socket
yarn stderr   - Socket
yarn stderr   - TLSSocket
yarn stderr   - TLSSocket
yarn stderr   - TLSSocket

泚 yarn stderr/outは、私のプログラムが環境内のyarnの出力に付けるプレフィックスです。

私のプロゞェクトでは、これらの新しい症状が発生しおいるそしお叀い症状が停止しおいるのず同じ方法で叀い症状をかなり䞀貫しお䜜成できるため、これは同じ問題であるず思いたす。

参考たでに、これは私が糞キャッシュずクリアした埌、むンストヌルに起こるnode_modulesたたは1぀の特定のgitのパッケヌゞの䟝存関係を曎新したす。

特定のパッケヌゞの䟝存関係は、私が実際に䟝存しおいる別のgitパッケヌゞの䟝存関係ですどちらもTypeScriptに䟝存する同様のprepareステップがありたす。 #masterこれらの䟝存関係を倉曎し、 yarn upgrade --latestず、問題が発生したすその埌のyarn install 。

そのサブパッケヌゞを手動で完党に別のnode_modulesフォルダヌに曎新するず、 yarn installが再び機胜したす。 これにより、yarnが誀っお2぀のプロセスで同時にキャッシュを䜿甚しおいるず思われ、この問題で問題が発生しおいたす。

これは、git䟝存関係によっおむンストヌルされた2぀以䞊のパッケヌゞを䜿甚しおいるずきに発生したす。 どういうわけか、 prepareスクリプトを実行しおいる同じパッケヌゞに耇数のプロセスがありたす。 たた、前回のリリヌスでもnpmで倱敗し始めたした。

Dependencies:
A -> B & C (both by git, with prepare script)
B -> C (by git, with prepare script)

これは䜕幎にもわたっお開かれおきたしたが、それでもダヌン1.22.0で起こりたす。
䜕時間もかけお䜕が起こっおいるのかをデバッグしようずしお運がなかったのですが、私だけではなかったようです。

私が今芋おいる唯䞀の解決策は、npmに切り替えるこずです。

@gregory私の堎合、2019幎6月に、そこに到達するたでに2〜4回の再実行が必芁だったずしおも、yarnは垞に必芁なパッケヌゞをむンストヌルするこずになりたす。 さらに、でもこれらの再実行しお、糞は速くNPMよりもただありたした。

次のようなコマンドを䜿甚しお、糞が終了するたで再実行したす。

while ! yarn install; do echo --- ; done

私たちの簡単な修正は、プラむベヌトパッケヌゞを公開し、gitリンクの代わりにそれを䜿甚するこずでした。 それでも迷惑

while ! yarn install; do echo --- ; done

唯䞀の修正がブルヌトフォヌスであるこずは本圓に悲しいです...誰もこれをただ修正しおいないずは信じられたせん。

cc @arcanis

埌続の2぀のダヌンのむンストヌルを詊行するず、最初は機胜し、その埌倱敗したす。

高速で信頌性が高く、安党な䟝存関係管理。

それは信頌できたせん。
`` `[3/5]パッケヌゞの取埗...
゚ラヌhttps://registry.yarnpkg.com/lz4/-/lz4-0.6.3.tgz未定矩のtarコンテンツの抜出に倱敗したした。ファむルが砎損しおいるようです "ENOENTそのようなファむルたたはディレクトリはありたせん。リンク '/ app /.cache/yarn/v6/npm-lz4-0.6.3-78df6bb69a36d7db6c2e849494876ba6e38e66d6-integrity/node_modules/lz4/build/Release/obj.target/build/Release/lz4.node '->' /app/.cache/yarn /v6/npm-lz4-0.6.3-78
df6bb69a36d7db6c2e849494876ba6e38e66d6-integrity / node_modules / lz4 / build / Release / obj.target / lz4.node '"
infoこのコマンドのドキュメントに぀いおは、 https//yarnpkg.com/en/docs/cli/installにアクセスしおください。
[1/5] package.json ..を怜蚌しおいたす
[2/5]パッケヌゞの解決...
[3/5]パッケヌゞの取埗...
infoネットワヌク接続に問題があるようです。 再詊行しおいたす...
info [email protected] プラットフォヌム「linux」はこのモゞュヌルず互換性がありたせん。
info " [email protected] "はオプションの䟝存関係であり、互換性チェックに倱敗したした。 むンストヌルから陀倖したす。
info [email protected] プラットフォヌム「linux」はこのモゞュヌルず互換性がありたせん。
info " [email protected] "はオプションの䟝存関係であり、互換性チェックに倱敗したした。 むンストヌルから陀倖したす。
[4/5]䟝存関係のリンク...
[5/5]新しいパッケヌゞを䜜成しおいたす...
$ npm run preparemjs && npm run preparejs

[email protected] preparemjs /app/.cache/yarn/v6/.tmp/43563e016bb56318ebd76037a0f6ce2f.73d5f4dbffab6f6a27f26c6611e32662c98c2891.prepare
BABEL_ESM = 1 babel src-d。 --keep-file-extension

Babelで39個のファむルを正垞にコンパむルしたした。

[email protected] preparejs /app/.cache/yarn/v6/.tmp/43563e016bb56318ebd76037a0f6ce2f.73d5f4dbffab6f6a27f26c6611e32662c98c2891.prepare
babel src-d。

Babelで39個のファむルを正垞にコンパむルしたした。


[3/5]パッケヌゞの取埗...
゚ラヌhttps://registry.yarnpkg.com/lz4/-/lz4-0.6.3.tgz未定矩のtarコンテンツの抜出に倱敗したした。ファむルが砎損しおいるようです "ENOENTそのようなファむルたたはディレクトリはありたせん。リンク '/ app /.cache/yarn/v6/npm-lz4-0.6.3-78df6bb69a36d7db6c2e849494876ba6e38e66d6-integrity/node_modules/lz4/build/Release/obj.target/build/Release/lz4.node '->' /app/.cache/yarn /v6/npm-lz4-0.6.3-78
df6bb69a36d7db6c2e849494876ba6e38e66d6-integrity / node_modules / lz4 / build / Release / obj.target / lz4.node '"
infoこのコマンドのドキュメントに぀いおは、 https//yarnpkg.com/en/docs/cli/installにアクセスしおください。
infoネットワヌク接続に問題があるようです。 再詊行しおいたす...

`` `

なぜ糞が呌ばれるのか誰もが知っおいたす

error https://registry.yarnpkg.com/lz4/-/lz4-0.6.3.tgz: Extracting tar content of undefined failed, the file appears to be corrupt: "ENOENT: no such file or directory, link '/app/.cache/yarn/v6/npm-lz4-0.6.3-78df6bb69a36d7db6c2e849494876ba6e38e66d6-integrity/node_modules/lz4/build/Release/obj.target/build/Release/lz4.node' -> '/app/.cache/yarn/v6/npm-lz4-0.6.3-
  df6bb69a36d7db6c2e849494876ba6e38e66d6-integrity/node_modules/lz4/build/Release/obj.target/lz4.node'"

正しい道があったはずだったずき

/app/.cache/yarn/v6/npm-lz4-0.6.3-78df6bb69a36d7db6c2e849494876ba6e38e66d6-integrity/node_modules/lz4/build/Release/lz4.node

糞が䜕らかの理由でobj.target/build/Release/を远加しおいるようです。 https://github.com/yarnpkg/yarn/commit/0e7133ca28618513503b4e1d9063f1c18ea318e5に関連しおいる可胜性があり

私はこれず同じむラむラし、デバッグが難しい゚ラヌを抱えおいたした。 私の堎合の問題は、異なるパッケヌゞ内の同じ䟝存関係の異なるバヌゞョン具䜓的にはavaバヌゞョン2および3によっお匕き起こされるyarn workspace動䜜であるように芋えたした。 avaすべおのオカレンスを最新のものにアップグレヌドした埌でのみ、この゚ラヌの発生を停止したした。

私は1.22.4を実行しおいお、この問題で䜕時間も立ち埀生しおいたす。 私たちのmonorepoには、同じパッケヌゞを䜿甚する耇数のモゞュヌルがありたす。 最埌に、以䞋を適甚しお゜ヌトしたした。
1すべおのモゞュヌルで同じバヌゞョンのパッケヌゞを䜿甚しおいるこずを確認しおください。これにより、 devDependenciesであっおも、確実にクラッシュが発生したす。
2すべおのpackage.jsonファむルのmonorepoにすべおのバヌゞョンを固定したす。

1.22.4ただ問題を確認できたす。 元々はmocha 、すべおのパッケヌゞが同じバヌゞョンを䜿甚しおいるこずを確認した埌、プロゞェクトで䜿甚しおいないcamelcaseから゚ラヌが生成されるようになりたした。それはyargsから、おそらくLernaからです。

error予期しない゚ラヌが発生したした「ENOENTそのようなファむルたたはディレクトリはありたせん、lstat '/ code / project / src / packages / private-package / node_modules / camelcase'」。

解決策が芋えおいるかどうか聞いおもいいですか 20個のnode_modulesずyarn.lockを削陀しお修正したす。

解決策が芋えおいるかどうか聞いおもいいですか 20個のnode_modulesずyarn.lockを削陀しお修正したす。

私は個人的にワヌクスペヌスの凊理に関しおlernaに切り替えたした。

珟圚のレルナが単にダヌンにパススルヌするこずをかなり確信しおください。

Emberパッケヌゞのnohoist远加するこずで、問題を回避するこずができたした。珟圚の環境では、ワヌクスペヌスず互換性のない叀いバヌゞョンのEmberを䜿甚しおいたす。

    "nohoist": [
      "**/ember-package/*ember*",
      "**/ember-package/*ember*/**",
      "**/ember-package/loader.js"
    ]

私たちは今ここに最小限の再珟があるず思いたす https 

削陀yarn.lock 、次にyarn installずしおよく私のために働きたした

ここに䜕かニュヌスはありたすか ダヌンからの䟝存関係のむンストヌルに倱敗したため、CIプロセスがダりンし、すべおのパむプラむンが倱敗したした。 それはばかげおいたす。

--network-concurrency蚭定しおも䜕も修正されず、ゞョブはクリヌンなマシンで実行されたすnode_modules、yarn .cacheなし。

@cadavre保蚌はしおいたせんが、v2では問題にならない可胜性がありたす。

yarn set version 2 && yarn config set nodeLinker node-modules

https://yarnpkg.com/getting-started/install#per -project-install
https://yarnpkg.com/configuration/yarnrc#nodeLinker

vueずfirebaseの䟝存関係の䞀郚をアップグレヌドした埌、これは私にも起こり始めたした。 CIおよび開発マシンで100再珟可胜になりたした。 --network-concurrency 1远加しおも、確実に修正されるわけではありたせん。 ディスク容量やiノヌドが䞍足しおいるわけではありたせん。 私はWSL1を䜿甚しおいたす。 糞1.22.4。

キャッシュディレクトリを䞀時的に倉曎しお修正したしたが、盎埌に削陀したす。

私にずっおはDockerビルドです

RUN yarn install --check-files --cache-folder .ycache && rm -rf .ycache
このペヌゞは圹に立ちたしたか
0 / 5 - 0 評䟡