* py-jupyter-core add new version and setuptools dependency
* update checksums to use pypi
* fixup url and python dep type
* Update var/spack/repos/builtin/packages/py-jupyter-core/package.py
Co-Authored-By: Adam J. Stewart <ajstewart426@gmail.com>
* new package: py-dateparser
* take setup.py dependencies into account
* fixup help->description
* reorder dependencies
* drop version constraints not enforced in setup.py
netcdf-fortran@4.5: will error if netcdf-c has been built with MPI
support:
```
configure: error:
-----------------------------------------------------------------------
The NetCDF C library is built with parallel I/O feature enabled, but
the Fortran compiler '.../lib/spack/env/gcc/gfortran' supplied in this configure command
does not support MPI-IO. Please use one that does. If parallel I/O
feature is not desired, please use a NetCDF C library with parallel
I/O feature disabled. Abort.
-----------------------------------------------------------------------
```
Copy logic from netcdf-c to add an `mpi` variant.
* pybind11: test get_include path
Helper for non-CMake downstream projects to find the pybind11
header location.
* pybind11: return proper get_include()
use our prefix instead of letting pybind11 trying to self-determine
it from given conda/virtualenv/global rules.
Co-Authored-By: Adam J. Stewart <ajstewart426@gmail.com>
* new package: py-ics
* drop 0.5 and move to tar-ball
* Update var/spack/repos/builtin/packages/py-ics/package.py
Co-Authored-By: Adam J. Stewart <ajstewart426@gmail.com>
* Update var/spack/repos/builtin/packages/py-ics/package.py
Co-Authored-By: Adam J. Stewart <ajstewart426@gmail.com>
* mpi4py 3.0.3
Adds support for Python 3.8 with new Cython files.
I tried to build 3.0.0 with Python 3.8 and this builds as well,
therefor I added no conflict.
* mpi4py: update dependency version ranges
* update py-jupyter-notebook
* add setuptools dependency for newer version
the whole jupyter collection seems to use setuptools in case of
certain setup.py-arguments from the very beginning. However the latest
ones actually require it, otherwise the build will fail
* add newly introduced dependencies
* dependency constraints
* drop terminal variant and update python dep
* added relion 3.0.8 [latest stable version in 3.0 branch] as well as 3.1_beta
* relion 3.1 beta compiles without Benchmarking build type see https://github.com/3dem/relion/issues/533
* relion 3.0.X - 3.1 now supports latest cmake@3
* flux: add `url_for_version` to support their C4 repo model
Flux uses a fork of ZeroMQ's Collective Code Construction Contract
(https://github.com/flux-framework/rfc/blob/master/spec_1.adoc).
This model requires a repository fork for every stable release that has
patch releases. For example, 0.8.0 and 0.9.0 are both tags within the
main repository, but 0.8.1 and 0.9.5 would be releases on the v0.8 and
v0.9 forks, respectively.
* flux: add latest versions
* flux: remove master from `when=@0.X:,master` statements
Now that #1983 has been merged, master > 0.X.0.
* flux-core: remove extraneous `99` patch version in `when` range
Replace `when=@:0.11.99` with `when=@:0.11` since the intention is to
include all patch versions of `0.11`.
* flux-core: fix `setup_build_environment` after changes in #13411
In #13411, `setup_environment` was split into `setup_build_environment`
and `setup_run_environment`, with the `spack_env` and `run_env`
arguments being changed to `env`. Somehow the flux package was the only
one to not have its `spack_env` references in the function changed to
`env`.
* flux: add runtime environment variables that Flux checks
with older versions of Flux (i.e, 0.0:0.13), FLUX_CONNECTOR_PATH must be
set by spack to prevent failures in certain
scenarios (https://github.com/flux-framework/flux-core/issues/2456).
the flux binary also sets some other environment variables, which can be
listed by running `flux -v start`. I added a few of those just to be
sure that the Spack-installed paths are used, rather than
system-installed ones.
* flux: add optional testing dependencies to maximize test coverage
Install optional dependencies to ensure that only spack-installed
software is detected and that all tests are run when `spack install
--test` is used.
Flux's test suite will test for the existance of valgrind, jq, and any
MPI installation. If it detects them (even if they are system-installed
and outside the spack environment), it will run optional tests against
them. I noticed on my machine that the valgrind tests were running
against the system-install valgrind.
* flux-sched: switch to new `setup_run_environment` API
* r-gstat: new package at 2.0-3
* Update var/spack/repos/builtin/packages/r-gstat/package.py
Co-Authored-By: Adam J. Stewart <ajstewart426@gmail.com>
* Update var/spack/repos/builtin/packages/r-gstat/package.py
Co-Authored-By: Adam J. Stewart <ajstewart426@gmail.com>
* Improvements of saga-gis package
* Added explicit version ranges for old saga-gis version
* Update var/spack/repos/builtin/packages/saga-gis/package.py
Creative usage of redefinition of getter method
Co-Authored-By: Adam J. Stewart <ajstewart426@gmail.com>
* Update var/spack/repos/builtin/packages/saga-gis/package.py
Co-Authored-By: Adam J. Stewart <ajstewart426@gmail.com>
* Update var/spack/repos/builtin/packages/saga-gis/package.py
Co-Authored-By: Adam J. Stewart <ajstewart426@gmail.com>
* Adding flecsph package
* Correcting header
* Boost version update
* Correcting Flake8 errors
* Correcting headers
* Develop preferred in FleCSI
* Removing FleCSPH branch of FleCSI
* MeshToolKit package
* formatting
* Formatting
* Correcting MSTK package
* Format
* Update var/spack/repos/builtin/packages/mstk/package.py
Co-Authored-By: Adam J. Stewart <ajstewart426@gmail.com>
* Update var/spack/repos/builtin/packages/mstk/package.py
Co-Authored-By: Adam J. Stewart <ajstewart426@gmail.com>
* Update var/spack/repos/builtin/packages/mstk/package.py
Co-Authored-By: Adam J. Stewart <ajstewart426@gmail.com>
* Update var/spack/repos/builtin/packages/mstk/package.py
Co-Authored-By: Adam J. Stewart <ajstewart426@gmail.com>
* Update var/spack/repos/builtin/packages/mstk/package.py
Co-Authored-By: Adam J. Stewart <ajstewart426@gmail.com>
* Update var/spack/repos/builtin/packages/mstk/package.py
Co-Authored-By: Adam J. Stewart <ajstewart426@gmail.com>
* Update var/spack/repos/builtin/packages/mstk/package.py
Co-Authored-By: Adam J. Stewart <ajstewart426@gmail.com>
* Update var/spack/repos/builtin/packages/mstk/package.py
Co-Authored-By: Adam J. Stewart <ajstewart426@gmail.com>
* Update var/spack/repos/builtin/packages/mstk/package.py
Co-Authored-By: Adam J. Stewart <ajstewart426@gmail.com>
* Update var/spack/repos/builtin/packages/mstk/package.py
Co-Authored-By: Adam J. Stewart <ajstewart426@gmail.com>
* Update package.py
* Format
* Format
* Correcting package behavior
* Correcting format
* Corrections
* Update var/spack/repos/builtin/packages/mstk/package.py
Co-Authored-By: Adam J. Stewart <ajstewart426@gmail.com>
* Multiline
* r-dada2: new package at 1.14
* r-dada2: add gmake dependency
* Update var/spack/repos/builtin/packages/r-dada2/package.py
Co-Authored-By: Adam J. Stewart <ajstewart426@gmail.com>
* new package: py-scs
* rename
* flake8
* Update var/spack/repos/builtin/packages/py-scs/package.py
Co-Authored-By: Adam J. Stewart <ajstewart426@gmail.com>
* Update the module files for cbtf-krell and openspeedshop adding man paths and needed papi and libmonitor paths.
* Update module files for new API.
* Use the same python for both develop and release branches.
* add support for static (via ~shared) and use vtk-m 1.2
* updating vtkh package to output cmake configure file and pinning it to vtkm 1.2
* trying a different cmake for vtkh
* removing problematic b
* making conduit respect ~python
* fixing ascent python logic
* update ascent package
* consistant cmake usage
* conditionally add tbb in ascent if vtkh
* applying becker fix
* adding vtkh tag
* fixing vtkh tagged version
* updating ascent and conduit for static builds
* enabling openmp
* reverting files that should not have been changed
* ascent updates
* more robust handling of variants
* fixing ascent package typo
* ascent: add optional support for mfem
* enable mfem conduit support for ascent
* add optional adios dep to conduit
* remove ver req from conduit
* ascent: remove confusing comment
* tweaks to conduit and ascent pkg recipes
* fix typo in conduit package
* pref conduit master
* fixing mfem typo for ascent
* reverting files
* adding mirror for bzip
* changing mfem to depend on conduit@master to get updated relay
* restore use of conduit 0.3.1 or greater for mfem
* set master as prefered conduit version
* allow mfem to use conduit master
* adding rover package and editing ascent
* updating vtkm cmake dep
* updates from axom
* guard ascent python support on +shared
* removing rover to simply ascent package
* add fortran variant to conduit, to allow us to turn off conduit support even when a fortran compiler is specified
* fix fortran compiler check so it can work on cray systems
* working towards cuda fix for vtkm lagrange filter
* update ascent package with more variants, and patch to avoid nvcc issue
* hdf5 flags fix for BGQ
* flake8
* extra guards for cuda patch
* conduit and ascent fortran fix
* fix patch for non cuda case
* add test variant to conduit, tweak ascent pkg
* change min ver of cmake used for ascent
* h5z-zfp package: unset FC when ~fortran
* conform to expected upstream solution
* pinning vtkm
* going back to vtkm master
* add back vtk-m variant for shared libs
* update ascent and vtkh packages
* wire up option to run tests during install
* add post install test
* add testing to ascent
* tweak for blueos xl
* add ctest output on error for run_tests
* enable ctest output on error for run_tests
* add testing of the using-with-make example
* update using-with-make examples
* typo in ascent using-with-cmake test
* fix ascent using test exe names
* more fixes, less sleep
* more fixes, less sleep ...
* remove unwired up version
* improvments suggested on review
* adding new cmake
* Update package.py
* Update package.py
* changes post cori os update
* fix cray hack
* Update package.py
Fixing 'fix'. Inconsistent variable names in conduit package
* type in spack recipes
* add zfp support to conduit
* fix indent error in conduit pkg
* move to use build phases, add sphinx rtd as dep, fix ex names in tests
* add conduit 0.5.0 release
* flake8
* remove old cray hack
* incorp feedback from review
* fix to use proper build env sig
* Fix gcc recipe for RHEL7.
+ It appears that macOS related changes to the gcc recipe broke gcc on RHEL7.
This bug manifests as `libstdc++.so: undefined reference to libiconv` when gcc
is used.
+ Fixes#13452 by moving
`--with-libiconv-prefix={0}'.format(spec['libiconv'].prefix)` into the darwin
OS section of the configuration.
+ Change qualification of `depends_on(libiconv)` to limit dependency to macOS.
* Replace deprecated 'setup_environment' with 'setup_run_environment'.
* Fix cut and paste error.
* Rename 'run_env' to just 'env'.
* Add versinos 1.13.3, 1.13.2, 1.12.12, and 1.12.11
* Replace setup_environment/setup_dependent_environment with
setup_build_environment and setup_dependent_{build, run}_environment
according to 9ddc98e
* Add dependency and patch perl-dbfile
There are two problems for the building of `perl-dbfile`:
1) this package depends on the package `berkeley-db`
2) fix the building using a patch, which locates the position of `berkeley-db` and modify the configuration file for the building
* Update and reformat the script package.py
* Simplify the patch
* Update package.py
* Update package.py
* This filter_file was difficult to maintain and is no longer needed.
* Clarify lack of support for HDF5 in serial QE.
* Update QE and HDF5 conflicts based on user feedback.
* Add Lizard (LZ5)
Add a new package for Lizard, formerly LZ5, a very fast compressor
and decompressor library.
* c-blosc2: use external lizard
Use an external Lizard (LZ5) dependency and add missing
"when="s for other compressor dependents.
* Fixes for libbeagle
This PR fixes a couple of issues with the libbeagle package.
- Use args.append('--with-cuda=%s' % self.spec['cuda'].prefix)
- Disable the default of compiling with -march=native as Spack now
inserts architecture specific flags
- Set BEAST_LIB in the beast1 package not in libbeagle.
* Use new setup_run_environment method
* Add master branch as version to HPX package
* Remove C++98 option from HPX package
* Add option to turn off examples in HPX package
* Add MPI variant to HPX package
Rename the `spack diy` command to `spack dev-build` to make the use case clearer.
The `spack diy` command has some useful functionality for developers using Spack to build their dependencies and configure/build/install the code they are developing. Developers do not notice it, partly because of the obscure name.
The `spack dev-build` command has a `-u/--until PHASE` option to stop after a given phase of the build. This can be used to configure your project, run cmake on your project, or similarly stop after any stage of the build the user wants. These options are analogous to the existing `spack configure` and `spack build` commands, but for developer builds.
To unify the syntax, we have deprecated the `spack configure` and `spack build` commands, and added a `-u/--until PHASE` option to the `spack install` command as well.
The functionality in `spack dev-build` (specifically `spack dev-build -u cmake`) may be able to supersede the `spack setup` command, but this PR does not deprecate that command as that will require slightly more thought.
* mysql: Use correct python command
python~pythoncmd does not provide a python symlink for python3, so make
sure we pick the right command.
* mysql: Adapt to build env changes
* hypre: Add new variants to expost existing features.
* hypre: Add new variants to expose existing features.
* hypre: Shorten description line.
* hypre: Add an explicit else clause to disable some features.
It seems that 3.4.2 includes a change that is supposed to fix parallel
builds (https://lists.gnu.org/archive/html/bug-bison/2019-08/msg00000.html).
Instead, it actually breaks it for me (with -j48) with errors such as:
```
mv: cannot stat 'examples/c/reccalc/scan.stamp.tmp': No such file or directory
Makefile:9323: recipe for target 'examples/c/reccalc/scan.stamp' failed
```
* Ace package. Initial commit
* Correcting header now with licence.
* Using sha256
* Making requested changes:removing import line, urls and checksums in one line, and making it an MakefilePackage.
* Removing extra line
This PR ensures that environment activation sets all environment variables set by the equivalent `module load` operations, except that the spec prefixes are "rebased" to the view associated with the environment.
Currently, Spack blindly adds paths relative to the environment view root to the user environment on activation. Issue #12731 points out ways in which this behavior is insufficient.
This PR changes that behavior to use the `setup_run_environment` logic for each package to augment the prefix inspections (as in Spack's modulefile generation logic) to ensure that all necessary variables are set to make use of the packages in the environment.
See #12731 for details on the previous problems in behavior.
This PR also updates the `ViewDescriptor` object in `spack.environment` to have a `__contains__` method. This allows for checks like `if spec in self.default_view`. The `__contains__` operator for `ViewDescriptor` objects checks whether the spec satisfies the filters of the View descriptor, not whether the spec is already linked into the underlying `FilesystemView` object.
Boost iostream autodetects the compression libraries libzstd and
liblzma outside of the Spack environment.
This commit disables mentioned libraries. In the future if the
Spack zstd/lzma packages were added as dependencies of the Spack
Boost package, additional work could be done to build Boost with
the Spack-built versions of these libraries.
For some reason, newer versions of qt fail to build because they cannot
find certain system libraries such as libatomic and libdl.
Leaving the qmake compiler set to gcc seems to fix the problem.
Fixes#13221
* DataSpaces: 1.8.0
Add a newer release of DataSpaces for ADIOS2.
Also add missing `-fPIC` flags since this is a static library.
* ADIOS2: Dataspaces, libffi, libfabric
Add missing dependencies to ADIOS2. Without explicit control,
those dependencies might get picked up from the system environment
and will cause unstable builds.
* Hide transitive SST dependencies
* ADIOS2: Simplify SST CMake Flags
As proposed by Chuck
* Methods setting the environment now do it separately for build and run
Before this commit the `*_environment` methods were setting
modifications to both the build-time and run-time environment
simultaneously. This might cause issues as the two environments
inherently rely on different preconditions:
1. The build-time environment is set before building a package, thus
the package prefix doesn't exist and can't be inspected
2. The run-time environment instead is set assuming the target package
has been already installed
Here we split each of these functions into two: one setting the
build-time environment, one the run-time.
We also adopt a fallback strategy that inspects for old methods and
executes them as before, but prints a deprecation warning to tty. This
permits to port packages to use the new methods in a distributed way,
rather than having to modify all the packages at once.
* Added a test that fails if any package uses the old API
Marked the test xfail for now as we have a lot of packages in that
state.
* Added a test to check that a package modified by a PR is up to date
This test can be used any time we deprecate a method call to ensure
that during the first modification of the package we update also
the deprecated calls.
* Updated documentation
From Python docs:
--
'surrogateescape' will represent any incorrect bytes as code points in
the Unicode Private Use Area ranging from U+DC80 to U+DCFF. These
private code points will then be turned back into the same bytes when
the surrogateescape error handler is used when writing data. This is
useful for processing files in an unknown encoding.
--
This will allow us to process files with unknown encodings.
To accommodate the case of self-extracting bash scripts, filter_file
can now stop filtering text input if a certain marker is found. The
marker must be passed at call time via the "stop_at" function argument.
At that point the file will be reopened in binary mode and copied
verbatim.
* use "surrogateescape" error handling to ignore unknown chars
* permit to stop filtering if a marker is found
* add unit tests for non-ASCII and mixed text/binary files
Provide up to date specs for build options
Remove non-production versions
Format using autopep8 and flake8
Separate cmake options in adios2 2.4.0 version
Keep default as True as much as possible
Support for Python 2 and 3 for adios2 versions <= 2.4.0
Starting v2.5.0 only Python 3 is supported
Addressing review suggestions
* Add new ACTS releases
* Update ACTS dependency requirements
* We can actually be more specific here
* The material plugin is gone as of ACTS v0.10.0
* Add 0.10.4 release
* Remove material mapping plugin
It was merged into core as of 0.10.x, and given ACTS' youth it is unlikely to have actual users at this point in time.