問題タブ [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.

0 投票する
1 に答える
82 参照

shake-build-system - 複数のビルド構成を並行して処理する

すべてを再ビルドせずに、2 つの異なる構成を使用して 1 セットのソース ファイルをビルドするにはどうすればよいですか?

現在のセットアップでは、build_rel.cfg からすべてのオプションをロードし、すべてをディレクトリ build_rel/ にコンパイルするオプション --config=rel を追加します。

次に実行すると

私は2つのビルドで終わります

ただし、構成を切り替えるたびに、すべてを再構築することになります。これは、すべてのオラクルが「変更」されたためだと思います。変更が異なる構成を使用するビルド間で干渉しないように、すべてのオラクルを 2 つの異なるビルド ディレクトリに固有にしたいと考えています。

データベースの保存場所を指定する -m オプションがあることは知っていますが、常に同期する必要がある 2 つのオプションを指定する必要はありません。

--config オプションが解析された後にオプション shakeFiles を更新する方法はありますか?

別のアイデアは、ビルド構成を含めるためにすべての Oracle をパラメーター化することでしたが、usingConfigFile が Oracle を使用していることに気付き、それも再実装する必要がありました。不格好なようです。

すべてを再構築せずに複数のターゲットを構築する他の方法はありますか? それはとても些細なことのように思えますが、それでも私には理解できません。

0 投票する
2 に答える
52 参照

shake-build-system - この単純なビルドシステムに対するシェイクの進行状況の見積もりが非常に間違っているのはなぜですか?

私は次のビルドシステムを持っています

でビルドしstack buildて実行しstack exec myShake -- --progress aます。

クリーン ビルドをtouch a.in実行してから再度実行すると、シェイクによって非常に間違った進捗予測が表示されます。1000 分以上を予測することもあります。

(5 秒ごとに端末のタイトル バーに進行状況の予測が表示されるので、これを正しく理解していれば、ここでは最初の進行状況の予測についてのみ説明します。このビルド システムの例で得られるのはこれだけです。)

私はスタックとシェイクのバージョン 0.16 で lts-9.6 を使用します (git + stack.yaml のパッケージのエントリを介して)。

0 投票する
1 に答える
59 参照

shake-build-system - node_modules ディレクトリに応じて振る

npm ベースのプロジェクトで Shake を使用していますが、node_modulesフォルダーの処理方法に困惑しています。私が言えることから、フローは単純なはずです。

  • を変更すると、再入力package.jsonが発生します。node_modules
  • node_modulesand/orへのすべての変更main.tsにより、typescript 関連のスクリプトが起動します。この場合、変更のコレクション全体に対して 1 回だけ実行されます。

これらの依存関係をエンコードするにはどうすればよいですか?