Skip to content

dealii: add msg= to conflicts statements#8509

Merged
alalazo merged 3 commits intospack:developfrom
davydden:pkg/dealii_conflict_msg
Jun 21, 2018
Merged

dealii: add msg= to conflicts statements#8509
alalazo merged 3 commits intospack:developfrom
davydden:pkg/dealii_conflict_msg

Conversation

@davydden
Copy link
Copy Markdown
Member

@davydden davydden commented Jun 19, 2018

@jppelteret this is as much as we can do now to help users. Let me know if you prefer to reword anything. Although it's not a fix to the issue, I marking it as such as right now we can't do more.

fixes #8504

@christianbaensch would the following error be more helpful (see the bottom of this message, which is more descriptive now) :

$ spack spec [email protected]~mpi~petsc^openblas+ilp64
Input spec
--------------------------------
[email protected]~mpi~petsc
    ^openblas+ilp64

Concretized
--------------------------------
==> Error: Conflicts in concretized spec "[email protected]%[email protected]+adol-c+arpack+assimp build_type=DebugRelease ~cuda cuda_arch= +doc+gmsh+gsl+hdf5~int64+metis~mpi+nanoflann+netcdf+oce+optflags+p4est~petsc~python+scalapack+slepc+sundials+trilinos arch=darwin-highsierra-x86_64 /c5hwxhx"

List of matching conflicts for spec:

    [email protected]%[email protected]+adol-c+arpack+assimp build_type=DebugRelease ~cuda cuda_arch= +doc+gmsh+gsl+hdf5~int64+metis~mpi+nanoflann+netcdf+oce+optflags+p4est~petsc~python+scalapack+slepc+sundials+trilinos arch=darwin-highsierra-x86_64
        ^[email protected]%[email protected]+atomic+chrono~clanglibcpp cxxstd=default +date_time~debug+exception+filesystem~graph~icu+iostreams+locale+log+math~mpi+multithreaded~numpy+program_options+python+random+regex+serialization+shared+signals~singlethreaded+system~taggedlayout+test+thread+timer~versionedlayout+wave arch=darwin-highsierra-x86_64
            ^[email protected]%[email protected]+shared arch=darwin-highsierra-x86_64
            ^[email protected]%[email protected]+dbm~optimizations patches=123082ab3483ded78e86d7c809e98a804b3465b4683c96bd79a2fd799f572244 +pic+pythoncmd~shared~tk~ucs4 arch=darwin-highsierra-x86_64
                ^[email protected]%[email protected] arch=darwin-highsierra-x86_64
                    ^[email protected]%[email protected] arch=darwin-highsierra-x86_64
                        ^[email protected]%[email protected]~symlinks~termlib arch=darwin-highsierra-x86_64
                            ^[email protected]%[email protected]+internal_glib arch=darwin-highsierra-x86_64
                ^[email protected]%[email protected]+systemcerts arch=darwin-highsierra-x86_64
                    ^[email protected]%[email protected]+optimize+pic+shared arch=darwin-highsierra-x86_64
                ^[email protected]%[email protected]~functions arch=darwin-highsierra-x86_64
        ^[email protected]%[email protected]~doc+ncurses+openssl+ownlibs~qt arch=darwin-highsierra-x86_64
        ^[email protected]%[email protected] build_type=RelWithDebInfo +graphviz arch=darwin-highsierra-x86_64
            ^[email protected]%[email protected] patches=57f972940a10d448efbd3d5ba46e65979ae4eea93681a85e1d998060b356e0d2,b72914fe38e54a6fc25f29019e0a0786705c4f61ce20d414cc2010c8d62448c7 arch=darwin-highsierra-x86_64
                ^[email protected]%[email protected] patches=3877ab548f88597ab2327a2230ee048d2d07ace1062efe81fc92e91b7f39cd00 +sigsegv arch=darwin-highsierra-x86_64
                    ^[email protected]%[email protected] arch=darwin-highsierra-x86_64
            ^[email protected]%[email protected]+lex arch=darwin-highsierra-x86_64
                ^[email protected]%[email protected]+bzip2+curses+git~libunistring+libxml2 patches=9acdb4e73f67c241b5ef32505c9ddf7cf6884ca8ea661692f21dca28483b04b8 +tar+xz arch=darwin-highsierra-x86_64
                    ^[email protected]%[email protected]~python arch=darwin-highsierra-x86_64
                        ^[email protected]%[email protected] arch=darwin-highsierra-x86_64
                    ^[email protected]%[email protected] arch=darwin-highsierra-x86_64
                ^[email protected]%[email protected] arch=darwin-highsierra-x86_64
            ^[email protected]%[email protected]~expat~ghostscript~go~gtkplus~gts~guile~io~java~libgd~lua~ocaml~pangocairo~perl~php~python~qt~r~ruby~sharp~tcl arch=darwin-highsierra-x86_64
                ^[email protected]%[email protected] arch=darwin-highsierra-x86_64
                    ^[email protected]%[email protected]+cpanm patches=0eac10ed90aeb0459ad8851f88081d439a4e41978e586ec743069e8b059370ac +shared+threads arch=darwin-highsierra-x86_64
                ^[email protected]%[email protected] arch=darwin-highsierra-x86_64
                ^[email protected]%[email protected] arch=darwin-highsierra-x86_64
        ^[email protected]%[email protected] cxxstd=default patches=ca08c28bdb15582c30777f9303d1986e4c09b3d514776494f3fbf5f19381bfda +shared arch=darwin-highsierra-x86_64
        ^[email protected]%[email protected] build_type=Release ~gdb~int64 patches=4991da938c1d3a1d3dea78e49bbebecba00273f98df2a656e38b83d55b281da1 +real64+shared arch=darwin-highsierra-x86_64
        ^[email protected]%[email protected] patches=68686ba5ec4df3691264f8ac04d1f1eb3e4585cc2dfefa1dc460c5ba2e096934 arch=darwin-highsierra-x86_64
        ^[email protected]%[email protected]~X11+tbb arch=darwin-highsierra-x86_64
        ^[email protected]%[email protected] cpu_target= +ilp64 patches=47cfa7a952ac7b2e4632c73ae199d69fb54490627b66a62c681e21019c4ddc9d +pic+shared threads=none ~virtual_machine arch=darwin-highsierra-x86_64
        ^[email protected]%[email protected]~cuda~openmp patches=d2df9294f7667f75172e71d50af738fc283bf6b4891298ca7a253eaa8bcdd7e6 +pic~tbb arch=darwin-highsierra-x86_64

1. "+hdf5" conflicts with "dealii~mpi" [Can not enable hdf5 without MPI]
2. "+arpack" conflicts with "dealii~mpi" [Can not enable arpack without MPI]
3. "+slepc" conflicts with "dealii~petsc" [It is not possible ot enable slepc interfaces without petsc.]
4. "+slepc" conflicts with "dealii~mpi" [Can not enable slepc without MPI]
5. "+gmsh" conflicts with "dealii@:8.5.1" [Interface to gmsh is supported starting from 9.0.0, please explicitly disable this variant via ~gmsh]
6. "+gsl" conflicts with "dealii@:8.4.2" [Interface to gsl is supported starting from 8.5.0, please explicitly disable this variant via ~gsl]
7. "+assimp" conflicts with "dealii@:8.5.1" [Interface to assimp is supported starting from 9.0.0, please explicitly disable this variant via ~assimp]
8. "+adol-c" conflicts with "dealii@:8.5.1" [Interface to adol-c is supported starting from 9.0.0, please explicitly disable this variant via ~adol-c]
9. "+trilinos" conflicts with "dealii~mpi" [Can not enable trilinos without MPI]
10. "+nanoflann" conflicts with "dealii@:8.5.1" [Interface to nanoflann is supported starting from 9.0.0, please explicitly disable this variant via ~nanoflann]
11. "^openblas+ilp64" conflicts with "dealii@:8.5.1" [64bit BLAS is only supported from 9.0.0]
12. "+netcdf" conflicts with "dealii~mpi" [Can not enable netcdf without MPI]
13. "+scalapack" conflicts with "dealii@:8.5.1" [Interface to scalapack is supported starting from 9.0.0, please explicitly disable this variant via ~scalapack]
14. "+scalapack" conflicts with "dealii~mpi" [Can not enable scalapack without MPI]
15. "+sundials" conflicts with "dealii@:8.5.1" [Interface to sundials is supported starting from 9.0.0, please explicitly disable this variant via ~sundials]
16. "+p4est" conflicts with "dealii~mpi" [Can not enable p4est without MPI]

@davydden davydden requested a review from jppelteret June 19, 2018 08:47
Copy link
Copy Markdown
Contributor

@jppelteret jppelteret left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for taking the time to rewrite the conflicts and add the error messages!

'adol-c']:
conflicts('+{0}'.format(p), when='@:8.5.1',
msg='Interface to {0} is supported starting from 9.0.0'
', please explicitly disable this variant '
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe to have a more complete statement, we could change this to

The interface to {0} is supported from version 9.0.0 onwards. Please explicitly disable this variant.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Whoops. I see why this should not get a "." at the end of the second statement. So ignore that part of the suggestion.

'via ~{0}'.format(p))

conflicts('+slepc', when='~petsc',
msg='It is not possible ot enable slepc interfaces '
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ot -> to

for p in ['gsl', 'python']:
conflicts('+{0}'.format(p), when='@:8.4.2',
msg='Interface to {0} is supported starting from 8.5.0'
', please explicitly disable this variant '
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we please change this along the lines of my first suggestion?

for p in ['arpack', 'hdf5', 'netcdf', 'p4est', 'petsc', 'scalapack',
'slepc', 'trilinos']:
conflicts('+{0}'.format(p), when='~mpi',
msg='Can not enable {0} without MPI'.format(p))
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe something more directive would be suitable?

To enable {0} it is necessary to build deal.II with MPI support enabled.

@davydden
Copy link
Copy Markdown
Member Author

@jppelteret I improved the wording following your suggestions. Please have a look.

@jppelteret
Copy link
Copy Markdown
Contributor

Thanks @davydden. Looks great!

@alalazo alalazo merged commit e378d4e into spack:develop Jun 21, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

deal.II v8.5.1 does not concretise with current default options

4 participants