You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The fix for #1579 requires us to pass all dependencies in to the configure step. We currently have a clever optimization that passes in --enable-tests or --enable-benchmarks if their dependencies are present. This reduces rebuilds due to changing cabal_macros.h files.
I spent some time trying to figure out how to move this decision to earlier in the build process. However, it got a bit head-scratching. I'll keep it in mind as I make more changes atop this.
For now, --exact-configuration is only enabled when allow-newer is set to true. The optimization is only disabled when allow-newer is set. Once this is fixed, I think --exact-configuration should always get passed.
The text was updated successfully, but these errors were encountered:
Some comments I was going to commit, might as well put here instead:
-- 'Stack.Package.packageDependencies' needs to know
-- that we are going to enable tests / benchmarks.
-- This way, we can have the dependencies when
-- figuring out configuration options in
-- Stack.Types.Build.configureOpts, used by
-- "Stack.ConstructPlan". We should probably also
-- move the --enable-* arg generation to there too.
The fix for #1579 requires us to pass all dependencies in to the configure step. We currently have a clever optimization that passes in
--enable-tests
or--enable-benchmarks
if their dependencies are present. This reduces rebuilds due to changingcabal_macros.h
files.I spent some time trying to figure out how to move this decision to earlier in the build process. However, it got a bit head-scratching. I'll keep it in mind as I make more changes atop this.
For now,
--exact-configuration
is only enabled whenallow-newer
is set totrue
. The optimization is only disabled whenallow-newer
is set. Once this is fixed, I think--exact-configuration
should always get passed.The text was updated successfully, but these errors were encountered: