summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2023-10-23audit: add check for GitLab patches (#40656)Michael Kuhn4-14/+73
GitLab's .patch URLs only provide abbreviated hashes, while .diff URLs provide full hashes. There does not seem to be a parameter to force .patch URLs to also return full hashes, so we should make sure to use the .diff ones.
2023-10-23ngspice: new version 41 and option osdi (#40664)Olivier Cessenat1-0/+4
2023-10-23geant4: add patch for when using the system expat library (#40650)Juan Miguel Carceller2-0/+51
Co-authored-by: jmcarcell <jmcarcell@users.noreply.github.com>
2023-10-23nghttp2: add v1.57.0 (#40652)Harmen Stoppels1-0/+1
2023-10-233proxy: respect compiler choice (#39240)Aiden Grossman1-2/+4
2023-10-23concretizer verbose: show progress in % too (#40654)Harmen Stoppels1-3/+6
2023-10-23py-cython: new version, python 3.11 upperbound (#40343)Harmen Stoppels1-0/+4
2023-10-23Docs: Update spec variant checks plus python quotes and string formatting ↵Tamara Dahlgren9-164/+176
(#40643)
2023-10-23libtheora: fix GitLab patch (#40657)Michael Kuhn1-2/+2
GitLab's .patch URLs do not provide stable/full hashes, while .diff URLs do. See #40656 for more information.
2023-10-23knem: fix GitLab patch (#40662)Michael Kuhn1-2/+2
GitLab's .patch URLs do not provide stable/full hashes, while .diff URLs do. See #40656 for more information.
2023-10-23gobject-introspection: fix GitLab patch (#40661)Michael Kuhn1-2/+2
GitLab's .patch URLs do not provide stable/full hashes, while .diff URLs do. See #40656 for more information.
2023-10-23garfieldpp: fix GitLab patch (#40660)Michael Kuhn1-2/+2
GitLab's .patch URLs do not provide stable/full hashes, while .diff URLs do. See #40656 for more information.
2023-10-23vtk: fix GitLab patch (#40659)Michael Kuhn1-2/+2
GitLab's .patch URLs do not provide stable/full hashes, while .diff URLs do. See #40656 for more information.
2023-10-23libxml2: fix GitLab patch (#40658)Michael Kuhn1-2/+2
GitLab's .patch URLs do not provide stable/full hashes, while .diff URLs do. See #40656 for more information.
2023-10-22Add Score-P 8.3 and dependencies (#40478)Bill Williams3-2/+10
Includes Score-P 8.3 and Cubew/cubelib 4.8.2.
2023-10-22glib: add patch with a fix for PTRACE_0_EXITKILL (#40655)Juan Miguel Carceller1-0/+7
Co-authored-by: jmcarcell <jmcarcell@users.noreply.github.com>
2023-10-22 zlib-ng: add v2.1.4 (#40647)Harmen Stoppels1-2/+11
2023-10-22py-kiwisolver: add a new version (#40653)Juan Miguel Carceller1-0/+1
Co-authored-by: jmcarcell <jmcarcell@users.noreply.github.com>
2023-10-22Docs: Add version range example to conditional dependencies (#40630)Tamara Dahlgren1-9/+36
* Docs: Add version range example to conditional dependencies * Add when context manager example
2023-10-21intel-tbb: patch patch for Apple's patch (#40640)Martin Aumüller2-1/+3
While e.g. GNU patch 2.7.6 (as provided by homebrew) would apply the previous version of this patch without problems, Apple's patch 2.0-12u11-Apple fails to find out which file to patch. Adding two lines to the patch fixes that. Renamed the patch in order to not require a `spack clean -m`.
2023-10-21py-kombu: fix setuptools bound (#40646)Harmen Stoppels1-1/+4
2023-10-21py-kombu: pick older version of py-setuptools (#40642)Scott Wittenburg1-1/+1
2023-10-20[add] py-dict2css: new package (#40552)Lydéric Debusschère1-0/+21
Co-authored-by: LydDeb <lyderic.debusschere@eolen.com>
2023-10-20gromacs: add 2022.6, 2023.2, 2023.3 versions (#38906)Andrey Alekseenko1-0/+3
* gromacs: add 2022.6, 2023.2 versions * gromacs: add version 2023.3
2023-10-20py-fenics-ffcx: update to v0.7 (#40569)Garth N. Wells1-3/+20
2023-10-20concretize separately: show concretization time per spec as they concretize ↵Harmen Stoppels4-98/+47
when verbose (#40634)
2023-10-20gromacs +cp2k: build in CI (#40494)Harmen Stoppels8-7/+623
* gromacs +cp2k: build in CI * libxsmm: x86 only * attempt to fix dbcsr + new mpich * use c11 standard * gromacs: does not depend on dbcsr * cp2k: build with cmake in CI, s.t. dbcsr is a separate package * cp2k: cmake patches for config files and C/C++ std * cp2k: remove unnecessary constraints due to patch
2023-10-20py-corner: new package (#40546)Lydéric Debusschère1-0/+22
* [add] py-corner: new package * py-corner: remove py-wheel dependence with respect to reviewing commentary --------- Co-authored-by: LydDeb <lyderic.debusschere@eolen.com>
2023-10-20ASP-based solver: minimize weights over edges (#40632)Massimiliano Culpo3-0/+74
With the introduction of multiple build dependencies from the same package in the DAG, we need to minimize a few weights accounting for edges rather than nodes. If we don't do that we might have multiple "optimal" solutions that differ only in how the same nodes are connected together. This commit ensures optimal versions are picked per parent in case of multiple choices for a dependency.
2023-10-20TensorFlow/Keras/TensorBoard: add v2.14.0 (#40297)Adam J. Stewart4-125/+96
Co-authored-by: adamjstewart <adamjstewart@users.noreply.github.com>
2023-10-20add recipes for sphinx-book-theme and its dependencies if unknown (#40312)Claire Guilbaud3-0/+69
* add recipes for sphinx-book-theme and its dependencies if unknown * fix version and mission https * fix based on reviewers remarks
2023-10-20[add] py-fraction: new package (#40554)Lydéric Debusschère1-0/+22
Co-authored-by: LydDeb <lyderic.debusschere@eolen.com>
2023-10-20[add] py-cssutils: new package (#40551)Lydéric Debusschère1-0/+21
Co-authored-by: LydDeb <lyderic.debusschere@eolen.com>
2023-10-20[add] py-css-parser: new package (#40550)Lydéric Debusschère1-0/+19
Co-authored-by: LydDeb <lyderic.debusschere@eolen.com>
2023-10-20py-statsmodels: add 0.14.0 (#39156)Manuela Kuhn1-23/+32
* py-statsmodels: add 0.14.0 * Fix style * Update var/spack/repos/builtin/packages/py-statsmodels/package.py Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com> * Update var/spack/repos/builtin/packages/py-statsmodels/package.py Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com> * Remove python limits * Remove comment --------- Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
2023-10-20py-dcm2bids: add v3.1.0 (#40447)Manuela Kuhn1-3/+7
* py-dcm2bids: add 3.1.0 * Fix python restriction
2023-10-20py-bidscoin: add v4.1.1 and py-argparse-manpage: add new package (#40414)Manuela Kuhn2-4/+35
* py-bidscoin: add 4.1.1 * Fix style * Fix restrictions for dependencies
2023-10-20Add package py-macs3 and dependencies (#40498)snehring3-0/+74
* py-cykhash: adding new package py-cykhash * py-hmmlearn: adding new package py-hmmlearn * py-macs3: adding new package py-macs3 * py-macs3: adding python version restriction and other changes.
2023-10-20schema/compilers.py: fix validation of 2+ entries (#40627)Harmen Stoppels1-54/+52
Fix the following syntax which validates only the first array entry: ```python "compilers": { "type": "array", "items": [ { "type": ... } ] } ``` to ```python "compilers": { "type": "array", "items": { "type": ... } } ``` which validates the entire array. Oops...
2023-10-20Drop support for external PythonX.Y (#40628)Adam J. Stewart1-1/+1
On some systems, multiple pythonx.y are placed in the same prefix as pythonx (where only one of them is associated with that pythonx). Spack external detection for Python was willing to register all of these as external versions. Moreover, the `package.py` for Python was able to distinguish these. This can cause an issue for some build systems, which will just look for python3 for example, so if that python3 is actually python3.6, and the build system needs 3.7 (which spack may have found in the same prefix, and offered as a suitable external), it will fail when invoking python3. To avoid that issue, we simply avoid treating pythonx.y as external candidates. In the above case, Spack would only detect a Python 3.6 external, and the build would be forced to use a Spack-built Python 3.7 (which we consider a good thing).
2023-10-19TAU: Respect ~fortran for +mpi (#40617)wspear1-2/+3
2023-10-19vtk-m: update to latest release (#40624)Vicente Bolea1-1/+1
2023-10-20perl: change permissions in order to apply patch on version 5.38.0 (#40609)Lydéric Debusschère1-4/+16
Co-authored-by: Harmen Stoppels <harmenstoppels@gmail.com>
2023-10-19build(deps): bump actions/checkout from 4.1.0 to 4.1.1 (#40584)dependabot[bot]8-26/+26
2023-10-19build(deps): bump mypy from 1.6.0 to 1.6.1 in /lib/spack/docs (#40603)dependabot[bot]1-1/+1
2023-10-19build(deps): bump mypy from 1.6.0 to 1.6.1 in /.github/workflows/style (#40602)dependabot[bot]1-1/+1
2023-10-19build(deps): bump urllib3 from 2.0.6 to 2.0.7 in /lib/spack/docs (#40583)dependabot[bot]1-1/+1
2023-10-19py-rasterio: add v1.3.9 (#40621)Adam J. Stewart1-0/+2
2023-10-19add nvechip to sundials components when mfem+rocm (#40512)Cody Balos1-0/+2
2023-10-19Improve setup build / run / test environment (#35737)Harmen Stoppels22-416/+565
This adds a `SetupContext` class which is responsible for setting package.py module globals, and computing the changes to environment variables for the build, test or run context. The class uses `effective_deptypes` which takes a list of specs (e.g. single item of a spec to build, or a list of environment roots) and a context (build, run, test), and outputs a flat list of specs that affect the environment together with a flag in what way they do so. This list is topologically ordered from root to leaf, so that one can be assured that dependents override variables set by dependencies, not the other way around. This is used to replace the logic in `modifications_from_dependencies`, which has several issues: missing calls to `setup_run_environment`, and the order in which operations are applied. Further, it should improve performance a bit in certain cases, since `effective_deptypes` run in O(v + e) time, whereas `spack env activate` currently can take up to O(v^2 + e) time due to loops over roots. Each edge in the DAG is visited once by calling `effective_deptypes` with `env.concrete_roots()`. By marking and propagating flags through the DAG, this commit also fixes a bug where Spack wouldn't call `setup_run_environment` for runtime dependencies of link dependencies. And this PR ensures that Spack correctly sets up the runtime environment of direct build dependencies. Regarding test dependencies: in a build context they are are build-time test deps, whereas in a test context they are install-time test deps. Since there are no means to distinguish the build/install type test deps, they're both. Further changes: - all `package.py` module globals are guaranteed to be set before any of the `setup_(dependent)_(run|build)_env` functions is called - traversal order during setup: first the group of externals, then the group of non-externals, with specs in each group traversed topological (dependencies are setup before dependents) - modules: only ever call `setup_dependent_run_environment` of *direct* link/run type deps - the marker in `set_module_variables_for_package` is dropped, since we should call the method once per spec. This allows us to set only a cheap subset of globals on the module: for example it's not necessary to compute the expensive `cmake_args` and w/e if the spec under consideration is not the root node to be built. - `spack load`'s `--only` is deprecated (it has no effect now), and `spack load x` now means: do everything that's required for `x` to work at runtime, which requires runtime deps to be setup -- just like `spack env activate`. - `spack load` no longer loads build deps (of build deps) ... - `spack env activate` on partially installed or broken environments: this is all or nothing now. If some spec errors during setup of its runtime env, you'll only get the unconditional variables + a warning that says the runtime changes for specs couldn't be applied. - Remove traversal in upward direction from `setup_dependent_*` in packages. Upward traversal may iterate to specs that aren't children of the roots (e.g. zlib / python have hundreds of dependents, only a small fraction is reachable from the roots. Packages should only modify the direct dependent they receive as an argument)