問題タブ [shake-build-system]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
shake-build-system - Shake の依存関係が明示的に「必要」なのはなぜですか?
エラーが発生しやすいと思われるパターンを示す最初の使用例を見つけました。Shake
それらを読んで参照するneed contentsときになぜ必要なのですか?これは、要求を避けることができるようにするためですか?readFileLinescmdApplicativeDo
haskell - Haskell シェイク: ディレクトリを構築するための特別なルール
ディレクトリの作成mkdirが適切なツールではない場合があります。git cloneまたはrsyncまたはの場合がありますmount。したがって、次のようなルールがある場合:
予想されるように"project" </> "tool"、ディレクトリはproject何よりも先に作成され、git clone実行さえされません。これを回避する方法はありますか?
ここで新しいRuleものが必要になると思いますが、ドキュメントは最小限であり、コードが混乱しすぎて、実用的なソリューションを思いつくことができませんでした。
haskell - Shake: ファイル名がアプリオリにわからない場合の進め方
ShakeWeb アプリケーションを構築するためのセットアップを試みています。.jsビルド プロセスの最後に、結果のファイルと.cssファイルの名前をコンテンツ ハッシュに従って変更したいと考えています (キャッシュ バスティングの目的で)。
これはもちろん、のようなファイルの最終的な名前がわからないことを意味しますapp-<hash>.min.js。
最終的なものを構築するためのルールindex.htmlは名前について知る必要があるため、次のようなものが必要になります
私はphonyの行に沿ってアクションを使用しようとしました
phonyこれは機能しますが、アクションがファイルを生成することになっていないため、見苦しく見えます。
この問題にアプローチする最善の方法は何でしょうか?
shake-build-system - シェイクビルドで失敗した場合のエラー検出とビルドレポート
テストスイートにシェイクを使用しています。のセットとして表される複数の独立したテストがありRuleます。これらのルールのいずれかが失敗すると、テストは失敗します。最後に、すべてのテスト ステータスを含むレポートを作成します。
私の問題は次のとおりです。
a) どのテストが実行または失敗したかを検出する必要があります。実際、私は を使用してごまかしてactionOnExceptionいますが、それは各ルールの各コマンドのボイラープレートが多く、複雑です (IORef失敗したステータスを保存するには、ステータス ファイルを作成するか、操作する必要があります)。
b) 最終レポートの一部として Shake レポートを書きたいのですshakeReportが、エラーが発生した場合にファイルを書きません。私の唯一の解決策は、--no-build --report out.html便利ではないビルドを再度実行することです。
編集:実際にはテストが実行されており、依存関係を構築しています。ビルドはおおよそ次のようになります。
ありがとうございました。