Merge branch 'feature/2.6-release' into 'master'
ref:spack/dune-spack\> On release 2.6 PDELab had a very old requirement for
CMake and didn't allow to install the module properly. i.e. other modules were
not able to resolve its CMake targets correctly. This issue was solved for
release 2.7.
See merge request [spack/dune-spack!26]
[spack/dune-spack!26]: gitlab.dune-project.org/spack/dune-spack/merge_requests/26
On release 2.6 PDELab had a very old requirement for CMake and didn't allow to install the module properly.
i.e. other modules where not able to resolve its CMake targets correctly. This issue was solved for release 2.7.
Merge branch 'bugfix/iteration-variables' into 'master'
ref:spack/dune-spack\> Spack's weird overall architecture makes temporary
variables in the package scope really dangerous. In my case, an iteration
variable 'module' caused the perl package to fall over\...
See merge request [spack/dune-spack!21]
[spack/dune-spack!21]: gitlab.dune-project.org/spack/dune-spack/merge_requests/21
Spack's weird overall architecture makes temporary variables in the
package scope really dangerous. In my case, an iteration variable
'module' caused the perl package to fall over...
Merge branch 'feature/reduce-variants' into 'master'
ref:spack/dune-spack\> I really do not see much value in e.g. having a switch
to build without BLAS. Instead, cheap upstream dependencies are always built
and expensive ones have a variant. This reduces variant bloat.
See merge request [spack/dune-spack!20]
[spack/dune-spack!20]: gitlab.dune-project.org/spack/dune-spack/merge_requests/20
I really do not see much value in e.g. having a switch to build
without BLAS. Instead, cheap upstream dependencies are always built
and expensive ones have a variant. This reduces variant bloat.
Merge branch 'feature/variant-dependencies' into 'master'
ref:spack/dune-spack\> The previous approach had the big downside of bypassing
the specified variants through the specified dependencies of variants. E.g.
dune+pdelab~functions would silently ignore the ~functions aspect, because
+pdelab enforces the installation of dune-functions. This introduces even more
subtle bugs as more Dune modules are added to the package as any
Dune-module-dependent logic in the package needs to be duplicated for each
Dune module that depends on the module that originally introduced that logic
(yuck!).
There is no direct mechanism in Spack to specify such dependencies in a way
that enforces the correct variants on dependent modules. I have now added
conflicts between variants that reflect the Dune module dependencies. In that
case dune+pdelab~functions would throw an error.
This comes at the cost that a command such as
spack install dune+pdelab
is not possible anymore. Instead the user needs to specify the dependent
modules as well:
spack install dune+pdelab+functions+typetree
Note that in order to remove some burden from users, I removed the variants
for the core modules - they are always installed.
See merge request [spack/dune-spack!19]
[spack/dune-spack!19]: gitlab.dune-project.org/spack/dune-spack/merge_requests/19
The previous approach had the big downside of bypassing
the specified variants through the specified dependencies
of variants. E.g. dune+pdelab~functions would silently ignore
the ~functions aspect, because +pdelab enforces the installation
of dune-functions.
There is no direct mechanism in Spack to specify such
dependencies in a way that enforces the correct variants
on dependent modules. I have now added conflicts between variants
that reflect the Dune module dependencies. In that case
dune+pdelab~functions would throw an error.
This comes at the cost that a command such as
spack install dune+pdelab
is not possible anymore. Instead the user needs to specify
the dependent modules as well:
spack install dune+pdelab+functions+typetree
Note that in order to remove some burden from users,
I removed the variants for the core modules - they are always
installed.
Merge branch 'feature/dune-testtools' into 'master'
ref:spack/dune-spack\> This module is special as it works with the Dune
virtualenv.
See merge request [spack/dune-spack!11]
[spack/dune-spack!11]: gitlab.dune-project.org/spack/dune-spack/merge_requests/11
Merge branch 'feature/enforce-variants' into 'master'
ref:spack/dune-spack\> In my case, some system libraries still slipped in
though I do not know how exactly.
See merge request [spack/dune-spack!9]
[spack/dune-spack!9]: gitlab.dune-project.org/spack/dune-spack/merge_requests/9