Tsd: `tsd install`は時々エラーで失敗します:キャッシュファイルのENOENT

作成日 2015年09月03日  ·  7コメント  ·  ソース: DefinitelyTyped/tsd

毎日のビルドが ENOENT エラーで失敗することがあります。 tsd は、存在しないキャッシュ ファイルを開こうとします。

[ERR!] エラー: ENOENT、「C:\Users***\AppData\Roaming\tsd-cache\borisyankov-DefinitelyTyped\git-raw-fmt1.0\fa\fac3185ed76eb7238c79967983952cc5224e8d36.raw」を開きます

package.json では、npm-install 後に自動的に実行するコマンド "./node_modules/.bin/tsd install" を追加しました。

tsd-debug.log:
[ERR!] cwd : c: *[ERR!] os : Windows_NT 6.2.9200[ERR!] argv: "node" "c:* _node_modules \ tsd \ build \ cli.js" "install"[ERR!] ノード: v0.10.33[ERR!] tsd : 0.6.4[ERR!] エラー: ENOENT、オープン 'C:\Users* _\AppData\Roaming\tsd-cache\borisyankov-DefinitelyTyped\git-raw-fmt1.0\fa\fac3185ed76eb7238c79967983952cc5224rawe8d36.[ERR!] CODE : ENOENT[エラー!] ENOENT、「C:\Users* \AppData\Roaming\tsd-cache\borisyankov-DefinitelyTyped\git-raw-fmt1.0\fa\fac3185ed76eb7238c79967983952cc5224e8d36.raw」を開きます
これはおそらく tsd 自体の問題ではありません。
これは、tsd がファイルを見つけられないことに関連しています。

[ERR!]
エラー: ENOENT、「C:\Users***\AppData\Roaming\tsd-cache\borisyankov-DefinitelyTyped\git-raw-fmt1.0\fa\fac3185ed76eb7238c79967983952cc5224e8d36.raw」を開きます

[ERR!] tsd.json: {"version":"v4","re​​po":"borisyankov/DefinitelyTyped","re​​f":"master","path":"typings","bundle":"typings/ tsd.d.ts","installed":{"jquery/jquery.d.ts":{"commit":"0de1592ef9e3144b925287ca0494f621e12b01c6"},"angularjs/angular.d.ts":{6ebada4a5a5":"7b0b5a5a5": },"angularjs/angular-route.d.ts":{"commit":"76e1dedf0bada455c0b75abeec3206d3aa5bd892"},"requirejs/require.d.ts":{"commit":"75e1dedf0breada255adom9d892"},"requirejs/require.d.ts":{"commit":"75e1dedf0breada255a .ts ":{" commit ":" 76e1dedf0bada455c0b75abeec3206d3aa5bd892 "}、" modernizr / modernizr.d.ts ":{" commit ":" f6c8ca47193fb67947944a3170912672ac3e908e "}、" angular-ui-router ":{"commit":"53439c5a40339b54d926b32e51c738b69b83660d"},"angular-translate/angular-translate.d.ts":{"commit":"38fb591c6eba840e0b0d1c6eba840e0b0d1c6eba840e0b0b53d1c6eba840e0b0b53d1c6eba840e0b0b53d2" {"コミット":"38fb591c6eba840e0b53d1110302b8e4fb04651c"},"cordova-ionic/plugins/keyboard.d.ts":{"コミット":"38fb591c6eba840e0b53d11103d11103c" dova/cordova.d.ts":{"commit":"38fb591c6eba840e0b53d1110302b8e4fb04651c"},"cordova/plugins/Camera.d.ts":{"commit":"38fb591c6eb1110302b8e4fb04651c"},"cordova/plugins/Camera.d.ts":{"commit":"38fb591c6eb15c.ts":{"commit":"38fb591c6eb595c.ts":{"commit":"38fb591c6eb15c.ts":{"commit":"38fb591c6eb15c.ts" ts":{"commit":"38fb591c6eba840e0b53d1110302b8e4fb04651c"},"cordova/plugins/FileTransfer.d.ts":{"commit":"38fb591c6eba840e0b0Device43c20fb591c6eba840e0b0Device43c1d1"fb" ":" 38fb591c6eba840e0b53d1110302b8e4fb04651c "}、" コルドバ/プラグイン/ Splashscreen.d.ts ":{" コミット ":" 38fb591c6eba840e0b53d1110302b8e4fb04651cを "}" コルドバ/プラグイン/ FileSystem.d.ts ":{" コミット ":" 38fb591c6eba840e0b53d1110302b8e4fb04651cを "} ,"cordova/plugins/Contacts.d.ts":{"commit":"38fb591c6eba840e0b53d1110302b8e4fb04651c"},"cordova/plugins/Media.d.ts":{"commit":"38ba43ovac1c6eb1c1c6eb1c6eb1c6eb1c6" StatusBar.d.ts":{"コミット":"38fb591c6eba840e0b53d1110302b8e4fb04651c"},"cordova/plugins/NetworkInformation.d.ts":{"commit":"38fb591c6eba40d.d.ts":{"commit":"38fb591c6eba40d.d.ts":{"commit":"38fb591c6eba40d1" :{"コミット": "38fb591 c6eba840e0b53d1110302b8e4fb04651c "}、" コルドバ/プラグイン/ Vibration.d.ts ":{" コミット ":" 38fb591c6eba840e0b53d1110302b8e4fb04651c "}、" コルドバ/プラグイン/ MediaCapture.d.ts ":{" コミット ":" 38fb591c6eba840e0b53d1110302b8e4fb04651c "}、" コルドバ/plugins/DeviceOrientation.d.ts":{"commit":"38fb591c6eba840e0b53d1110302b8e4fb04651c"},"cordova/plugins/Push.d.ts":{"commit":"38fb591c6ebova183fb0d1fb" .ts":{"コミット":"38fb591c6eba840e0b53d1110302b8e4fb04651c"},"cordova/plugins/WebSQL.d.ts":{"commit":"38fb591c6eba840e0b03c20b81c.ts":{"commit":"38fb591c6eba840e0b03c20b81c.ts":{"commit":"38fb591c6eba840e0b03c2"ステータスb81.c1d1" commit":"38fb591c6eba840e0b53d1110302b8e4fb04651c"},"cordova/plugins/InAppBrowser.d.ts":{"commit":"38fb591c6eba840e0b53d11104c02b8}

[ERR!] .tsdrc を取得できませんでした

bug

最も参考になるコメント

現時点では tsd を使用しないことを強くお勧めします。 タイプは、 @types名前空間の下の npm または JS パッケージ内で直接公開されるようになりました。

全てのコメント7件

こんにちは@L6Echoこの問題を報告していただきありがとうございます。 調査して問題の再現を試みます。

私たちは最近、これに似たものに遭遇しました。 また、npm スクリプトを使用してtsd reinstallを開始し、コンパイル前にすべての依存関係が適切に設定されていることを確認します。

ビルド サーバーからの出力は次のとおりです。

> tsd reinstall


-> running reinstall
[ERR!] cwd  : c:\j\vNext Dev Deploy\Foo.Web
[ERR!] os   : Windows_NT 6.3.9600
[ERR!] argv : "node" "c:\\j\\vNext Dev Deploy\\Foo.Web\\node_modules\\tsd\\build\\cli.js" "reinstall"
[ERR!] node : v0.12.4
[ERR!] tsd  : 0.6.5
[ERR!] Error: path exists but is not a directory C:\Users\jenkins\AppData\Roaming\tsd-cache\borisyankov-DefinitelyTyped\git-raw-fmt1.0\51
[ERR!] CODE : undefined
[ERR!] path exists but is not a directory C:\Users\jenkins\AppData\Roaming\tsd-cache\borisyankov-DefinitelyTyped\git-raw-fmt1.0\51
[ERR!] If you need help, you may report this error at:
    https://github.com/DefinitelyTyped/tsd/issues

[ERR!] .tsdrc could not be retrieved

[ERR!] Please include the following file with any support request:
    c:\j\vNext Dev Deploy\Foo.Web\tsd-debug.log


npm ERR! Windows_NT 6.3.9600
npm ERR! argv "C:\\Program Files\\nodejs\\\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "run" "tsd:install"
npm ERR! node v0.12.7
npm ERR! npm  v2.14.1
npm ERR! code ELIFECYCLE
npm ERR! [email protected] tsd:install: `tsd reinstall`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the [email protected] tsd:install script 'tsd reinstall'.
npm ERR! This is most likely a problem with the Foo package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     tsd reinstall
npm ERR! You can get their info via:
npm ERR!     npm owner ls Foo
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     c:\j\vNext Dev Deploy\Foo.Web\npm-debug.log

これは、CI サーバー (jenkins) でかなり定期的に発生します。 @jwcarroll と同じ出力が得られます。

別のデータ ポイントを説明するために、展開プロセスでもこれが発生します。 約 1 ~ 2 週間前に TSD の使用を開始し、3 つのナイトリー ビルドでこれが発生しました。 ただし、ビルド マシンにログインし、同じディレクトリから同じ "/usr/bin/nodejs /[path-to-project]/node_modules/.bin/tsd install" を実行して診断しようとすると、再現できませんそれと tsd は正常に実行されました。

[ERR!] cwd  : /[path-to-project]
[ERR!] os   : Linux 3.2.0-67-virtual
[ERR!] argv : "/usr/bin/nodejs" "/[path-to-project]/node_modules/.bin/tsd" "install"
[ERR!] node : v4.2.3
[ERR!] tsd  : 0.6.5
[ERR!] Error: ENOENT: no such file or directory, open '/root/.tsd-cache/DefinitelyTyped-DefinitelyTyped/git-raw-fmt1.0/a0/a01aa4eefc1319b5e8fcd210aa759ff041e23d90.raw'
[ERR!] CODE : ENOENT
[ERR!] ENOENT: no such file or directory, open '/root/.tsd-cache/DefinitelyTyped-DefinitelyTyped/git-raw-fmt1.0/a0/a01aa4eefc1319b5e8fcd210aa759ff041e23d90.raw'
This is most likely not a problem with tsd itself
and is related to tsd not being able to find a file.

[ERR!]
Error: ENOENT: no such file or directory, open '/root/.tsd-cache/DefinitelyTyped-DefinitelyTyped/git-raw-fmt1.0/a0/a01aa4eefc1319b5e8fcd210aa759ff041e23d90.raw'
    at Error (native)

[ERR!] tsd.json: {"version":"v4","repo":"DefinitelyTyped/DefinitelyTyped","ref":"master","path":"typings","bundle":"typings/tsd.d.ts","installed":{"jquery/jquery.d.ts":{"commit":"ba424f7ee39717d51c17699a09ac8df312a7e9a1"},"chosen/chosen.jquery.d.ts":{"commit":"52b0ea5c9719831eecf6ba7436660e30061a4b3c"},"core-js/core-js.d.ts":{"commit":"d0adccc436197cc7c3559322721e9df86b892bd6"},"moment/moment.d.ts":{"commit":"d28dd90af5a7ba2b4f18b107ddba3321a5a1f629"},"moment/moment-node.d.ts":{"commit":"d28dd90af5a7ba2b4f18b107ddba3321a5a1f629"},"fullCalendar/fullCalendar.d.ts":{"commit":"d28dd90af5a7ba2b4f18b107ddba3321a5a1f629"},"node/node.d.ts":{"commit":"b9a05cb4c96ae9961bbc41fbd7df9105c3b8fbd0"},"browserify/browserify.d.ts":{"commit":"b9a05cb4c96ae9961bbc41fbd7df9105c3b8fbd0"},"glob/glob.d.ts":{"commit":"b9a05cb4c96ae9961bbc41fbd7df9105c3b8fbd0"},"minimatch/minimatch.d.ts":{"commit":"b9a05cb4c96ae9961bbc41fbd7df9105c3b8fbd0"},"jsdom/jsdom.d.ts":{"commit":"b9a05cb4c96ae9961bbc41fbd7df9105c3b8fbd0"},"react/react.d.ts":{"commit":"b9a05cb4c96ae9961bbc41fbd7df9105c3b8fbd0"},"webpack/webpack.d.ts":{"commit":"ba424f7ee39717d51c17699a09ac8df312a7e9a1"}}}

[ERR!] .tsdrc could not be retrieved

[ERR!] Please include the following file with any support request:
    /[path-to-project]/tsd-debug.log

この問題は、Jenkins サーバーでも週に 1 回程度発生します。 gulp-tsd プラグインを介して tsd を利用しています。 この問題は、開発マシンでは決して見ないでください。 ENOENT コードまたは別のファイル関連の問題で失敗する可能性があります。 問題のあるファイルを探しに行くと、明らかにそこにあります。これは、おそらく非同期ファイルの読み取りの問題であると私に信じさせます。 tsd キャッシュ全体を削除すると、しばらくの間問題が修正され、その後、戻ってくるようです。

  [12:55:08] Using gulpfile D:\ws\project\web\gulpfile.js
  [12:55:08] Starting 'tsd'...
  [12:55:12] [gulp-tsd] execute command: reinstall
  [12:55:12] [gulp-tsd] config: ./tsd.json
  [12:55:12] [gulp-tsd] latest: undefined
  [12:55:12] [gulp-tsd] running...

  ---
  path exists but is not a directory C:\Users\$buildmaster722\AppData\Roaming\tsd-cache\DefinitelyTyped-DefinitelyTyped\git-raw-fmt1.0\53
  D:\ws\project\web\node_modules\gulp-tsd\node_modules\tsd\node_modules\bluebird\js\main\async.js:93
                  throw res.e;
                  ^

EXEC : error : path exists but is not a directory C:\Users\$buildmaster722\AppData\Roaming\tsd-cache\DefinitelyTyped-DefinitelyTyped\git-raw-fmt1.0\53 [D:\ws\project\Build.xml]
      at D:\ws\project\web\node_modules\gulp-tsd\node_modules\tsd\build\xm\fileIO.js:117:28
      at tryCatch1 (D:\ws\project\web\node_modules\gulp-tsd\node_modules\tsd\node_modules\bluebird\js\main\util.js:63:19)
      at Promise$_callHandler [as _callHandler] (D:\ws\project\web\node_modules\gulp-tsd\node_modules\tsd\node_modules\bluebird\js\main\promise.js:695:13)
      at Promise$_settlePromiseFromHandler [as _settlePromiseFromHandler] (D:\ws\project\web\node_modules\gulp-tsd\node_modules\tsd\node_modules\bluebird\js\main\promise.js:711:18)
      at Promise$_settlePromiseAt [as _settlePromiseAt] (D:\ws\project\web\node_modules\gulp-tsd\node_modules\tsd\node_modules\bluebird\js\main\promise.js:868:14)
      at Promise$_settlePromises [as _settlePromises] (D:\ws\project\web\node_modules\gulp-tsd\node_modules\tsd\node_modules\bluebird\js\main\promise.js:1006:14)
      at Async$_consumeFunctionBuffer [as _consumeFunctionBuffer] (D:\ws\project\web\node_modules\gulp-tsd\node_modules\tsd\node_modules\bluebird\js\main\async.js:74:12)
      at Async$consumeFunctionBuffer (D:\ws\project\web\node_modules\gulp-tsd\node_modules\tsd\node_modules\bluebird\js\main\async.js:37:14)
      at doNTCallback0 (node.js:407:9)
      at process._tickCallback (node.js:336:13)
D:\ws\project\Build.xml(69,3): error MSB3073: The command "gulp build" exited with code 1.
EXEC : error : path exists but is not a directory C:\Users\$buildmaster722\AppData\Roaming\tsd-cache\DefinitelyTyped-DefinitelyTyped\git-raw-fmt1.0\53 [D:\ws\project\Build.xml]
      at D:\ws\project\web\node_modules\gulp-tsd\node_modules\tsd\build\xm\fileIO.js:117:28
      at tryCatch1 (D:\ws\project\web\node_modules\gulp-tsd\node_modules\tsd\node_modules\bluebird\js\main\util.js:63:19)
      at Promise$_callHandler [as _callHandler] (D:\ws\project\web\node_modules\gulp-tsd\node_modules\tsd\node_modules\bluebird\js\main\promise.js:695:13)
      at Promise$_settlePromiseFromHandler [as _settlePromiseFromHandler] (D:\ws\project\web\node_modules\gulp-tsd\node_modules\tsd\node_modules\bluebird\js\main\promise.js:711:18)
      at Promise$_settlePromiseAt [as _settlePromiseAt] (D:\ws\project\web\node_modules\gulp-tsd\node_modules\tsd\node_modules\bluebird\js\main\promise.js:868:14)
      at Promise$_settlePromises [as _settlePromises] (D:\ws\project\web\node_modules\gulp-tsd\node_modules\tsd\node_modules\bluebird\js\main\promise.js:1006:14)
      at Async$_consumeFunctionBuffer [as _consumeFunctionBuffer] (D:\ws\project\web\node_modules\gulp-tsd\node_modules\tsd\node_modules\bluebird\js\main\async.js:74:12)
      at Async$consumeFunctionBuffer (D:\ws\project\web\node_modules\gulp-tsd\node_modules\tsd\node_modules\bluebird\js\main\async.js:37:14)
      at doNTCallback0 (node.js:407:9)
      at process._tickCallback (node.js:336:13)
D:\ws\project\Build.xml(69,3): error MSB3073: The command "gulp build" exited with code 1.

[10:39:43] Using gulpfile D:\ws\project\web\gulpfile.js
  [10:39:43] Starting 'tsd'...
  [10:39:45] [gulp-tsd] execute command: reinstall
  [10:39:45] [gulp-tsd] config: ./tsd.json
  [10:39:46] [gulp-tsd] latest: undefined
  [10:39:46] [gulp-tsd] running...
  ---
  ENOENT: no such file or directory, open 'C:\Users\$buildmaster722\AppData\Roaming\tsd-cache\DefinitelyTyped-DefinitelyTyped\git-raw-fmt1.0\d7\d70d12a88d7a6b3f711dadb0fde5b3387c0a860e.raw'
  D:\ws\project\web\node_modules\gulp-tsd\node_modules\tsd\node_modules\bluebird\js\main\async.js:93
                  throw res.e;
                  ^

EXEC : error : ENOENT: no such file or directory, open 'C:\Users\$buildmaster722\AppData\Roaming\tsd-cache\DefinitelyTyped-DefinitelyTyped\git-raw-fmt1.0\d7\d70d12a88d7a6b3f711dadb0fde5b3387c0a860e.raw' [D:\ws\project\build.xml]
      at Error (native)

この件について何か新しい考えはありますか? 私は同じエラーが発生しています

12:26:46 [フロントエンド]エラー:「/ home / jenkins / .tsd-cache / borisyankov-DefinitelyTyped / git-raw-fmt1.0 / 58 / 585e78ba1ed6a3b9d25722f40429c3ba934ea79d.json」を統計できません:エラー:ENOENT:そのようなものはありませんファイルまたはディレクトリ、stat '/home/jenkins/.tsd-cache/borisyankov-DefinitelyTyped/git-raw-fmt1.0/58/585e78ba1ed6a3b9d25722f40429c3ba934ea79d.json'

しかし、ファイルは存在します

# stat /home/jenkins/.tsd-cache/borisyankov-DefinitelyTyped/git-raw-fmt1.0/58/585e78ba1ed6a3b9d25722f40429c3ba934ea79d.json File: ‘/home/jenkins/.tsd-cache/borisyankov-DefinitelyTyped/git-raw-fmt1.0/58/585e78ba1ed6a3b9d25722f40429c3ba934ea79d.json’ Size: 501 Blocks: 8 IO Block: 4096 regular file Device: fd00h/64768d Inode: 4485381 Links: 1 Access: (0644/-rw-r--r--) Uid: ( 1002/ jenkins) Gid: ( 1002/ jenkins) Context: unconfined_u:object_r:user_home_t:s0 Access: 2019-02-21 13:08:24.000000000 +0100 Modify: 2019-02-20 14:25:54.000000000 +0100 Change: 2019-02-21 13:08:24.838670651 +0100 Birth: -

現時点では tsd を使用しないことを強くお勧めします。 タイプは、 @types名前空間の下の npm または JS パッケージ内で直接公開されるようになりました。

このページは役に立ちましたか?
0 / 5 - 0 評価

関連する問題

lazlojuly picture lazlojuly  ·  9コメント

Diullei picture Diullei  ·  70コメント

blakeembrey picture blakeembrey  ·  15コメント

gio82 picture gio82  ·  3コメント

dlaberge picture dlaberge  ·  3コメント