前々回あたりの記事(→いよいよComposerとかを入れて環境を仕上げるの巻)で作ったcomposer.jsonにSmartyを追加してcomposer updateしたら地味にハマったので今回はそのメモ書き。
以前作ったcomposer.jsonはこれ↓
[cc lang=”javascript”]
{
“require”: {
“rodneyrehm/plist”: “dev-master”
}
}
[/cc]
これにsmartyを追加します。
[cc lang=”javascript”]
{
“require”: {
“rodneyrehm/plist”: “dev-master”,
“smarty/smarty”: “v3.1.15”
}
}
[/cc]
で、
composer update。
すると、smartyはまだインストールされていないので勝手にsvn checkutされてきます。
通常はこれでOK。
前回rodneyrehm/plistをインストールした時にrequire_onceしてあるautoload.php経由でSmartyも読み込まれるので、すぐにでもSmartyが使えるようになります。
・・・なるはずだったのですが。。。
composer updateがエラーで失敗します。
[RuntimeException]
Package could not be downloaded
めちゃくちゃ時間かかる上に何度や手もエラーが出やがります。
・・・で。
困ったときのGoogle先生。
ComposerのGitHubでIssueとして全く同じ症状が上がっていて、そこに答えが書いてありました。
[RuntimeException] Package could not be downloaded for smarty · Issue #2352 · composer/composer · GitHub
I found the reason. Filesystem was mounted via vboxsf and svn checkout fails each time. After i moved all data to local disk it was fixed.
こ れ だ !
たしかにVirtualBoxのフォルダ共有機能を使ってホストのフォルダーをマウントしてそこでcomposer updateしてました。
そこで、いったん/rootにcp -Rしたあとcomposer updateしたところ、svn checkoutがくっそ早いしエラーも出なかったです。
フォルダの共有機能便利なんですが、こんな罠がありました。
なむなむ。
0 Comments.