Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
network:cluster
spack
spack.changes
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File spack.changes of Package spack
------------------------------------------------------------------- Fri Nov 1 06:32:35 UTC 2024 - Egbert Eich <eich@suse.com> - Update to version 0.22.2 * Bugfixes - Forward compatibility with Spack 0.23 packages with language dependencies. - Forward compatibility with `urllib` from Python 3.12.6+. - Bump vendored `archspec` for better aarch64 support. - Fix regression in `{variants.X}` and `{variants.X.value}` format strings. - Ensure shell escaping of environment variable values in load and activate commands. - Fix an issue where `spec[pkg]` considers specs outside the current DAG. - Do not halt concretization on unknown variants in externals. - Improve validation of `develop` config section/ - Explicitly disable `ccache` if turned off in config, to avoid cache pollution. - Improve backwards compatibility in `include_concrete`. - Fix issue where package tags were sometimes repeated. - Make `setup-env.sh` "sourced only" by dropping execution bits. - Make certain source/binary fetch errors recoverable instead of a hard error. - Remove debug statements in package hash computation. - Remove redundant clingo warnings. - Remove hard-coded layout version. - Do not initialize previous store state in `use_store`. * Package updates - `chapel` major update/ ------------------------------------------------------------------- Wed Jul 10 06:54:31 UTC 2024 - Egbert Eich <eich@suse.com> - Update to 0.22.1. * Bug Fixes: - Fix reuse of externals on Linux. - Ensure parent gcc-runtime version >= child. - Ensure the latest gcc-runtime is rpath'ed when multiple exist among link deps. - Improve version detection of glibc. - Improve heuristics for solver. - Make strong preferences override reuse. - Reduce verbosity when C compiler is missing. - Make missing ccache executable an error when required. - Make every environment view containing `python` a `venv`. - Fix external detection for compilers with os but no target. - Fix version optimization for roots. - Handle common implementations of pagination of tags in OCI build caches. - Apply fetched patches to develop specs. - Avoid Windows wrappers for filesystem utilities on non-Windows. - Fix formatting issue in `spack audit`. * Package updates: - Require libiconv for iconv. Notice that glibc/musl also provide iconv, but are not guaranteed to be complete. Set `packages:iconv:require:[glibc]` to restore the old behavior. - protobuf: fix 3.4:3.21 patch checksum. - protobuf: update hash for patch needed when="@3.4:3.21". - git: bump v2.39 to 2.45; deprecate unsafe versions. - gcc: use `-rpath {rpath_dir}` not `-rpath={rpath dir}`. - Remove mesa18 and libosmesa. - Enforce consistency of `gl` providers. - py-matplotlib: qualify when to do a post install. - rust: fix v1.78.0 instructions. - suite-sparse: improve setting of the libs property. - netlib-lapack: provide blas and lapack together. ------------------------------------------------------------------- Thu May 16 17:03:50 UTC 2024 - Egbert Eich <eich@suse.com> - Move-site-config-scope-before-system-scope.patch: Give 'site' scope a lower precedence than 'system' scope. The 'site wide' config scope was meant to be per Spack installation. A single system may have multiple Spack installations, so was is meant for overriding the 'system' wide setting per installation. The Spack package is OS-vendor provided. The vendor provides pr generates a configuration which a local admin may want to override. This can now be done from within the 'system' scope. Previously the vendor-supplied configuration was mixed with the 'system' scope - local modifications collided with vendor autoconfiguration. - Add a build-dependency package which will cause build tools and libraries used frequently by Spack to be installed. All these packages are recommended by the main Spack package already. This package may be used in environments where the installation of recommended packages is disabled by default. ------------------------------------------------------------------- Mon May 13 13:12:22 UTC 2024 - Egbert Eich <eich@suse.com> - Update Spack to version 0.22.0 * New features: - Compiler dependencies: Spack is in the process of making compilers proper dependencies. For this, compiler dependencies are moving from `compilers.yaml` to `packages.yaml` to make this consistent with other externals. For this, dependency graphs will not show the compiler runtime libraries like `gcc-runtime` or `libgfortran`. To minimize disruption, an existing `compilers.yaml` file will continue to work, however, users are encourage to migrate before v0.23. + Packages compiled with `%gcc` now depend on a new package `gcc-runtime`, which contains a copy of the shared compiler runtime libraries. This enables gcc runtime libraries to be installed and relocated when using a build cache. When building minimal Spack-generated container images it is no longer necessary to install libgfortran, libgomp etc. using the system package manager. + Packages compiled with `%oneapi` now depend on a new package `intel-oneapi-runtime`. This is similar to gcc-runtime. This allows us to model library soname compatibility and allows compilers like %oneapi to provide virtuals like sycl (which can also be provided by standalone libraries). + Changes to the optimization criteria of the solver improve the hit-rate of buildcaches by a fair amount. The solver has more relaxed compatibility rules and will not try to strictly match compilers or targets of reused specs. Users can still enforce the previous strict behavior with require: sections in packages.yaml. Note that to enforce correct linking, Spack will not reuse old %gcc and %oneapi specs that do not have the runtime libraries as a dependency. + Spack will reuse specs built with compilers that are not explicitly configured in `compilers.yaml`. Because we can now keep runtime libraries in build cache, we do not require you to also have a local configured compiler to use the runtime libraries. This improves reuse in buildcaches and avoids conflicts with OS updates that happen underneath Spack. + Binary compatibility on `linux` is now based on the `libc` version, instead of on the OS tag. Spack builds now detect the host `libc` (`glibc`) and add it as an implicit external node in the dependency graph. Binaries with a `libc` with the same name and a version less than or equal to that of the detected libc can be reused. + Each package that can provide a compiler is now detectable using spack external find. External packages defining compiler paths are effectively used as compilers, and spack external find -t compiler` can be used as a substitute for `spack compiler find. More details on this transition are in [the docs](https://spack.readthedocs.io/en/latest/getting_started.html#manual-compiler-configuration). - Improved spack find UI for Environments: `spack find` in environments shows information about * What are the roots * Which ones are installed / not installed * What's been added that still needs to be concretized much more clearly. An option `--only-roots`/`-r` has been added to `spack find` that will only show env roots, if you don't want to look at all the installed specs. - Improved command-line string quoting Spack now parses specs in the CLI respecting shell quoting. Instead of: ``` spack install zlib cflags=\"-O2 -g\" ``` you should use: ``` spack install zlib cflags="-O2 -g" ``` The old form will now result in an error. This allows to include special characters, flags like ``` spack intall zlib ldflags='-Wl,-rpath=$ORIGIN/_libs' ``` may now be supplied. To reduce ambiguities during paring, quotes are no longer allowed around `=` and `==`. Commands like: ``` spack install zlib cflags = "-O2 -g" ``` will result in an error. - Revert default spack install behavior to `--reuse` In v0.20 the default concretizer behavior was changed from `--reuse` to `--reuse-deps`, which meant that *every* `spack install` invocation would attempt to build a new version of the requested package / any environment roots. While this is a common ask for *upgrading* and for *developer workflows*, it shouldn't be the default for a package manager. - The `install` command now offers the three options: * `--reuse` (default): reuse as many existing installations as possible. * `--reuse-deps` or `--fresh-roots`: upgrade (freshen) roots but reuse dependencies if possible. * --fresh: install fresh versions of requested packages (roots) and their dependencies. - More control over reused specs Spack now provides better control over which packages to reuse and how. There is a new `concretizer:reuse` config option, which accepts the following properties: * `roots`: true to reuse roots, false to reuse just dependencies * `exclude`: list of constraints used to select which specs not to reuse. * `include`: list of constraints used to select which specs to reuse. * `from`: list of sources for reused specs (some combination of `local`, `buildcache`, or `external`). - New `conflict:` and `prefer:` syntax for package preferences Instead of having to express conflicts and preferences just using `require:`, these can now be expressed explicitly. - `include_concrete` in environments This directive allows to build on the *cncrete* contents of another environment without changing this environment by includeing the concrete specs from this environment's `spack.lock`: ``` spack: specs: [] concretizer: unify: true include_concrete: - /path/to/environment1 - /path/to/environment2 ``` When this environment is concretized, it will bring the already concrete specs from `environment1` and `environment2`, and build on top of them without changing them. - `python-venv` isolation Spack now insert a small `python-venv` package in between `python` and packages that need to install Python code to isolate Spack's build environment and shield Spack form potential issues with an external python. - Packages can now specify whether they may be distributed in source or binary form. * New commands, options and directives - Allow packages to be pushed to build cache after install from source. _ `spack develop`: stage build artifacts in same root as non-dev builds. - Don't delete spack develop build artifacts after install. - `spack find`: add options for local/upstream only. - `spack logs`: print log files for packages (either partially built or installed). - `patch`: support reversing patches. - `develop`: Add `-b`/`--build-directory` option to set build_directory package attribute. - `spack list`: add `--namesapce` / `--repo` option. - spack gc: add options for environments and build dependencies. - Add `--create` to `spack env activate`. * Performance improvements - environment.py: Fix excessive re-reads. - ruamel yaml: Fix quadratic complexity bug. - Refactor to improve `spec format` speed. - Do not acquire a write lock on the env post install if no views. - `asp.py`: fewer calls to `spec.copy()` - `spec.py`: early return in `__str__` - avoid `jinja2` import at startup unless needed. * Other new features of note - `archspec`: update to v0.2.4: bugfixes for `neoverse-v1` and `neoverse-v2` detection. - `spack config` get/blame: with no args, show entire config - `spack env create <env>`: dir if dir-like - Add handling of custom ssl certs in urllib ops. - Add ability to rename environments. - Add config option and compiler support to reuse across OS's. - Support for prereleases. - Only reuse externals when configured. - Environments: Add support for including views. * Binary caches Build cache: make signed/unsigned a mirror property. * Removals, deprecations, and syntax changes - Remove `dpcpp` compiler and package. - `spack load`: remove `--only` argument. * Notable Bugfixes - repo.py: drop deleted packages from provider cache. - Allow `+` in module file names. - `cmd/python`: use runpy to allow multiprocessing in scripts. - Show extension commands with `spack -h`. - Support environment variable expansion inside module projections. - Alert user to failed concretizations. - `shell`: fix `zsh` color formatting for PS1 in environments. - `spack mirror create --all`: include patches. - Update `run-find-external.sh` script to address the deprecation of `compilers.yaml`. ------------------------------------------------------------------- Thu Apr 18 06:54:54 UTC 2024 - Egbert Eich <eich@suse.com> - Add lsb-release and zstd as new requires to match upstream prerequisites. ------------------------------------------------------------------- Thu Apr 4 07:14:54 UTC 2024 - Egbert Eich <eich@suse.com> - Make `patchelf` a mandatory dependency on products where it is always available. ------------------------------------------------------------------- Fri Mar 15 13:35:51 UTC 2024 - Egbert Eich <eich@suse.com> - Update Spack to version 0.21.2 * Bugfixes + Containerize: accommodate nested or pre-existing `spack-env` paths. + Fix `setup-env` script, when going back and forth between instances. + Fix using fully-qualified namespaces from root specs. + Fix a bug when a required provider is requested for multiple virtuals. + OCI buildcaches: * only push in parallel when forking. * use pickleable errors (#42160) + Fix using sticky variants in externals. + Fix a rare issue with conditional requirements and multi-valued variants. * Package updates + `rust`: add v1.75, rework a few variants. + `py-transformers`: add v4.35.2. - Fix path to setup-env.sh in the Apptainer template (bsc#1221471). - Add libgfortran, libfl2 and libzip5 to the Spack runtime container as the Spack build container has the corresponding devel packages but these libraries are not installed in a BCI-style base container by default (bsc#1221503). ------------------------------------------------------------------- Fri Feb 2 14:41:14 UTC 2024 - Egbert Eich <eich@suse.com> - Make python version used configurable. - Filter out more rpmlint errors. ------------------------------------------------------------------- Thu Jan 25 14:07:19 UTC 2024 - Christian Goll <cgoll@suse.com> - Update Spack to version 0.21.1 * Add support for reading buildcaches created by Spack v0.22 * Bugfixes + `spack graph`: fix coloring with environments + `spack info`: sort variants in --variants-by-name + `Spec.format`: error on old style format strings + ASP-based solver: - fix infinite recursion when computing concretization errors, - don't error for type mismatch on preferences, - don't emit spurious debug output. + Improve the error message for deprecated preferences. + Fix multi-word aliases. + Add a warning for unconfigured compiler. + environment: fix an issue with deconcretization/reconcretization of specs. + buildcache: don't error if a patch is missing, when installing from binaries - From version 0.21.0 * following new features: + Better error messages with condition chaining: In v0.18, we added better error messages that could tell you what problem happened, but they couldn't tell you why it happened. 0.21 adds condition chaining to the solver, and Spack can now trace back through the conditions that led to an error and build a tree of causes potential causes and where they came from. + OCI build caches: You can now use an arbitrary OCI registry as a build cache: - For Dockerhub: `$ spack mirror add my_registry oci://user/image` - For another registry (GHCR): `$ spack mirror add my_registry oci://ghcr.io/haampie/spack-test` Then set the login credentials: `$ spack mirror set --push --oci-username ... --oci-password ... my_registry` and push to it: `$ spack buildcache push my_registry [specs...]` You can optionally add a base image to get runnable images: ``` $ spack buildcache push --base-image leap:15.5 my_registry python` Pushed ... as [image]:python-3.11.2-65txfcpqbmpawclvtasuog4yzmxwaoia.spack $ docker run --rm -it [image]:python-3.11.2-65txfcpqbmpawclvtasuog4yzmxwaoia.spack ``` This creates a container image from the Spack installations on the host system, without the need to run `spack install` from a `Dockerfile` or `sif` file. It also addresses the inconvenience of losing binaries of dependencies when `RUN spack install` fails inside `docker build`. Further, the container image layers and build cache tarballs are the same files. This means that `spack install` and `docker pull` use the exact same underlying binaries. If you previously used `spack install` inside of docker build, this feature helps you save storage by a factor two. + Multiple versions of build dependencies: Increasingly, complex package builds require multiple versions of some build dependencies. For example, Python packages frequently require very specific versions of `setuptools`, `cython`, while different physics packages require different versions of Python to build. The concretizer enforced that every solve was unified, i.e., so that there was only one version of every package. The concretizer now supports "duplicate" nodes for build dependencies, but enforces unification through transitive link and run dependencies. This will allow it to better resolve complex dependency graphs in ecosystems like Python. + Cherry-picking virtual dependencies: You can now select only a subset of virtual dependencies from a spec that may provide more. For example, to make mpich your mpi provider, you can be explicit by writing: `hdf5 ^[virtuals=mpi] mpich`. Or, to use, e.g., `intel-parallel-studio` for blas along with an external `lapack` like `openblas`, you could write: ``` strumpack ^[virtuals=mpi] intel-parallel-studio+mkl ^[virtuals=lapack] openblas` ``` The `virtuals=mpi` is an edge attribute, and dependency edges in Spack graphs now track which virtuals they satisfied. + The `spack deconcretize` command gives you control over what you want to update in an already concrete environment. As an example, with an environment built with meson, and you want to update your meson version, you can run: `$spack deconcretize meson` and have everything that depends on meson rebuilt the next time you run spack concretize. In the future, we'll handle this in a single command, but for now you can use this to drop bits of your lockfile and resolve your dependencies again. + UI Improvements: The `spack info` received a rework to make the output more appealing. It is now on par with the rest of Spack's UI. `spack info` now makes much better use of terminal space and shows variants, their values, and their descriptions more clearly. Conditional variants are grouped separately so you can more easily understand how packages are structured. `spack checksum` now allows you to filter versions from your editor, or by version range. It also notifies you about potential download URL changes. + Environments can include definitions: Spack did not previously support using `include:` with The definitions section of an environment, but now it does. You can use this to curate lists of specs and more easily reuse them across environments. + Aliases: You can now add aliases to Spack commands in `config.yaml`, e.g. this might enshrine your favorite args to `spack find` as `spack f`: ``` config: aliases: f: find -lv ``` + Improved autoloading of modules: In this release, you can start using `hide_implicits: true` instead, which exposes only explicitly installed packages to the user, while still autoloading dependencies. On top of that, you can safely use `hash_length: 0`, as this config now only applies to the modules exposed to the user -- you don't have to worry about file name clashes for hidden dependencies. Note: for Tcl this feature requires Modules 4.7 or higher. * Other new commands and directives: + `spack env activate` without arguments now loads a default environment that you do not have to create. + `spack find -H` / `--hashes`: a new shortcut for piping spack find output to other commands. + Add `spack checksum --verify`, fix `--add`. + New `default_args` context manager factors out common args for directives. + `spack compiler find --[no]-mixed-toolchain` lets you easily mix clang and gfortran on Linux. * Performance improvements: + `spack external find execution` is now much faster. + `spack location -i` is now much faster on success. + Drop redundant rpaths post install. + ASP-based solver: avoid cycles in clingo using hidden directive. + Fix multiple quadratic complexity issues in environments. * Other new features of note: + archspec: update to v0.2.2, support for Sapphire Rapids, Power10, Neoverse V2. + Propagate variants across nodes that don't have that variant + Implement fish shell completion. + Can now distinguish between source/binary mirror; don't ping mirror.spack.io as much. + Improve status reporting on `spack install` (add [n/total] display...). ------------------------------------------------------------------- Mon Nov 6 08:04:55 UTC 2023 - Bernhard Wiedemann <bwiedemann@suse.com> - Update to version 0.20.3 with the following changes: * Bug fixes: + Fix a bug where `spack mirror set-url` would drop configured connection info. + Fix a minor issue with package hash computation for Python 3.12. + Improve escaping in Tcl module files. + Make repo cache work on repositories with zero mtime. + Ignore errors for newer, incompatible buildcache version. + Print an error when git is required, but missing. + Ensure missing build dependencies get installed when using `spack install --overwrite`. + Fix an issue where Spack freezes when the build process unexpectedly exits. + Fix a bug where installation failures cause an unrelated `NameError` to be thrown. + Fix an issue where Spack package versions would be incorrectly derived from git tags. + Fix a bug triggered when file locking fails internally. + Prevent `spack external find` to error out when a directory cannot be accessed. + Fix multiple performance regressions in environments. + Add more ignored modules to `pyproject.toml` for `mypy`. * Features: + Spack now supports Python 3.12. ------------------------------------------------------------------- Tue Sep 12 05:32:46 UTC 2023 - Egbert Eich <eich@suse.com> - Update to version 0.20.1 with the following changes: * Bug fixes: + Fix spec removed from an environment where not actually removed if `--force` was not given. + Hotfix for a few recipes that treat CMake as a link dependency. + Fix re-running stand-alone test a second time, which was getting a trailing spurious failure. + Fix reading JSON manifest on Cray, reporting non-concrete specs. + Fix a few bugs when generating Dockerfiles from Spack. + Fix a few long-standing bugs when generating module files. + Fix issues with building Python extensions when using an external Python. + Fix `spack compiler remove`: remove from command line even if they appear in different scopes. * Features: + Speed-up module file generation. + Show external status as `[e]`. + Backport `archspec` fixes. + Improve a few error messages. ------------------------------------------------------------------- Sun Aug 13 12:21:57 UTC 2023 - Egbert Eich <eich@suse.com> - Fix SPACK_ROOT setting in /etc/profile.d/spack.[c]sh (bsc#1214222). - Don't source /etc/os-release directly, use a subshell. ------------------------------------------------------------------- Mon Jun 26 12:26:10 UTC 2023 - Egbert Eich <eich@suse.com> - Add hwloc-devel and sqlite3 to the packages that trigger a `spack external find`. - Change /usr/bin to %{_bindir}. - Make sure, libhwloc and hwloc are installed together when spack is installed. ------------------------------------------------------------------- Thu Jun 1 11:32:36 UTC 2023 - Egbert Eich <eich@suse.com> - Do not attempt to build documentation for 32-bit, s390x and ppc64*. There are build issues on some build targets. ------------------------------------------------------------------- Mon May 22 14:40:17 UTC 2023 - Christian Goll <cgoll@suse.com> - Update to version 0.20.0 with the following features: * Exact versions: Spack did not previously have a way to distinguish a version if it was a prefix of some other version. For example, @3.2 would match 3.2, 3.2.1, 3.2.2, etc. You can now match exactly 3.2 with @=3.2. This is useful, for example, if you need to patch only the 3.2 version of a package * More stable concretization: Now, spack concretize will only concretize the new portions of the environment and will not change existing parts of an environment unless you specify --force. This has always been true for unify:false, but not for unify:true and unify:when_possible environments. * The concretizer has a new --reuse-deps argument that only reuses dependencies. That is, it will always treat the roots of your environment as it would with --fresh. This allows you to upgrade just the roots of your environment while keeping everything else stable * Specs in buildcaches can be referenced by hash: Previously, you could run spack buildcache list and see the hashes in buildcaches, but referring to them by hash would fail. You can now run commands like spack spec and spack install and refer to buildcache hashes directly, e.g. spack install /abc123 * New package and buildcache index websites Our public websites for searching packages have been completely revamped and updated. You can check them out here: Package Index: https://packages.spack.io Buildcache Index: https://cache.spack.io Both are searchable and more interactive than before. Currently major releases are shown; UI for browsing develop snapshots is coming soon. * Default CMake and Meson build types are now Release: Spack has historically defaulted to building with optimization and debugging, but packages like llvm can be enormous with debug turned on. Our default build type for all Spack packages is now Release. This has a number of benefits: much smaller binaries; higher default optimization level; and defining NDEBUG disables assertions, which may lead to further speedups. You can still get the old behavior back through requirements and package preferences * spack checksum can automatically add new versions to package * new command: spack pkg grep to easily search package files * New maintainers directive * Add spack buildcache push (alias to buildcache create) * Allow using -j to control the parallelism of concretization * Add --exclude option to 'spack external find' requires() directive and enhanced package requirements We've added some more enhancements to requirements in Spack. There is a new requires() directive for packages. requires() is the opposite of conflicts() - removed Add-zypper-to-the-valid-container.os_packages-commands.patch as incoperated upstream ------------------------------------------------------------------- Mon Apr 17 06:59:15 UTC 2023 - Egbert Eich <eich@suse.com> - Update to version 0.19.2 with the following bug fixes: * Ignore global variant requirement for packages that do not define it. * Compiler wrapper: improved parsing of linker arguments. * Views: fix support for optional Python extensions. * Views: fix issue where Python executable gets symlinked instead of copied. * Fix a bug where tests were not added when concretizing together. * Increase db timeout from 3s to 60s to improve stability of parallel installs. * Buildcache: improve error handling in downloads. * Module files for packages installed from buildcache have long placeholder paths abbreviated in configure args section. * Ensure file with build environment variables is truncated when writing to it. * spack config update now works on active environments; - Add: Add-zypper-to-the-valid-container.os_packages-commands.patch This adds `zypper` to the valid OS package managers that can be specified in a slack.yaml container description like: spack: ... container: .. os_packages: command: zypper .. - Add: spack_get_libs.sh This scripts obtains library and include paths for spack-build libraries and outputs shell commands which set these as environment variables. Additionally, it generates a command line to prepend these lib directories to LD_LIBRARY_PATH. Thus, the variables can be set in the current shell by running `source $(spack_get_libs.sh foo)`. When using `bash` this script may also be sourced directly. The names of the environment variables are the upper-cased library names with the strings 'LIB_' and 'INC_' prepended. Thus, for a library 'foo', they would be 'INC_FOO' and 'LIB_FOO'. These variables may be used at build time to point the compiler to the include and library files (bsc#1208751). - Drop: Make-sure-spack-environment-is-set-up-in-Dockerfile-template.patch This patch should not be needed. When building using `podman` use: `podman build --format docker ...` to enable the non-OCI compliant instructions in a Dockerfile. - Add info, makeinfo, libcurl-devel, patchelf to the recommended packages to add. Fix: openssl-devel -> libopenssl-devel ------------------------------------------------------------------- Thu Apr 6 09:30:50 UTC 2023 - Egbert Eich <eich@suse.com> - Add 'zypper' as valid command to container.os_packages. This allows to build SUSE container using non-default registries. - Add 'awk', 'git', 'gzip' and 'gunzip' to the requires. - Add 'patchelf' to the recommended packages. ------------------------------------------------------------------- Thu Mar 30 09:34:39 UTC 2023 - Egbert Eich <eich@suse.com> - Avoid running run-find-external.sh twice during installation/ update. - Stop accidental inclusion of %%pre/post/triggerin/un scripts in doc packages. - Adpot new info file installation sceme for Factory. ------------------------------------------------------------------- Thu Mar 23 09:59:40 UTC 2023 - Egbert Eich <eich@suse.com> - run-find-external.sh: Extend the range of versions of MPI flavors to be searched for when asking Spack to look for external packages (bsc#1208751). ------------------------------------------------------------------- Wed Mar 8 19:54:55 UTC 2023 - Egbert Eich <eich@suse.com> - Improve run-find-external.sh: * Extend to run 'spack compiler find'. * Separate triggers for packages and compilers. * Better handle when search patterns match multiple directories. ------------------------------------------------------------------- Wed Mar 1 13:13:34 UTC 2023 - Christian Goll <cgoll@suse.com> - Udpate to 0.19.1 with following bug fixes: * buildcache create: make "file exists" less verbose * spack mirror create: don't change paths to urls * Improve error message for requirements * Fix libtool filter for Fujitsu compilers * FileCache: delete the new cache file on exception - using `--all` flag for `spack external find` in the %triggrin section, as MPI packages were not recognized any more, fixing (bsc#1208751) ------------------------------------------------------------------- Tue Jan 31 08:29:00 UTC 2023 - Egbert Eich <eich@suse.com> - Make sure the spack environment is set up correctly in spack-generated Dockerfiles (boo#1207784): Make-sure-spack-environment-is-set-up-in-Dockerfile-template.patch ------------------------------------------------------------------- Wed Jan 11 13:04:37 UTC 2023 - Egbert Eich <eich@suse.com> - Fix var_path: this regression was introduced with the update to the 0.19.0 release (boo#1207053). - Move repos to /usr/share/spack: /var is strictly for local data. ------------------------------------------------------------------- Tue Nov 22 11:16:26 UTC 2022 - Christian Goll <cgoll@suse.com> - updated to version 0.19.0 with the following changes: * Spack's traditional package preferences are soft, but we've added hard requriements to packages.yaml and spack.yaml * spack install in an environment will no longer add to the specs: list; you'll need to either use spack add <spec> or spack install --add <spec>. * spack uninstall will not remove from your environment's specs: list; you'll need to use spack remove or spack uninstall --remove. * concretizer:unify:true is now the default mode for new environments * include environment configuration from URLs * An increasing number of packages in the ecosystem need the ability to support multiple build systems * package ++variant: enabled variant that will be propagated to dependencies * git. prefix to specify git tags or branches as versions. All of these are valid git versions in * spack ci generate --tests will generate a .gitlab-ci.yml file that not only does builds but also runs tests for built packages * spack test run --explicit will only run tests for packages that are explicitly installed, instead of all packages. * You can add a new shared_linking option to config.yaml to make Spack embed absolute paths to needed shared libraries in ELF executables and shared libraries on Linux * spack spec prints dependencies more legibly. Dependencies in the output now appear at the earliest level of indentation possible (#33406) * You can override package.py attributes like url, directly in packages.yaml * There are a number of new architecture-related format strings you can use in Spack configuration files to specify paths - Improvements from v0.18.0 * spack install --reuse was introduced in v0.17.0, and --reuse is now the default concretization mode. Spack will try hard to resolve dependencies using installed packages or binaries * Spack hashes now include link, run, and build dependencies, as well as a canonical hash of package recipes. Previously, hashes only included link and run dependencies (though build dependencies were stored by environments). We coarsened the hash to reduce churn in user installations, but the new default concretizer behavior mitigates this concern and gets us reuse and provenance. You will be able to see the build dependencies of new installations * concretizer:unify:when_possible will try to resolve a fully unified environment, but if it cannot, it will create multiple configurations of some packages where it has to. with spack find. * Spack now has an updated binary format, with improvements for security. The new format has a detached signature file, and Spack verifies the signature before untarring or decompressing the binary package. The previous format embedded the signature in a tar file, which required the client to run tar before verifying (#30750). Spack can still install from build caches using the old format, but we encourage users to switch to the new format going forward. * The spack bootstrap mirror command can automatically create a mirror for bootstrapping the concretizer and other needed dependencies in an air-gapped environment. * spack env depfile can be used to generate a Makefile from an environment, which can be used to build packages the environment in parallel on a single node * In addition to being conditional themselves, variants can now have conditional values that are only possible for certain configurations of a package. - removed following patches as incorporated upstream: * fix-tumbleweed-naming.patch ------------------------------------------------------------------- Mon Aug 15 19:39:22 UTC 2022 - Dirk Müller <dmueller@suse.com> - avoid bashism in post scripts (bsc#1195391) ------------------------------------------------------------------- Thu Apr 7 12:56:45 UTC 2022 - Egbert Eich <eich@suse.com> - Fix: Fix-error-during-documentation-build-due-to-recursive-module-inclusion.patch This is needed to prevent an AttributeError during 'import spack.environment as some_name' when building Sphinx documentation - due to an outdated Python on SLE. The original version caused errors: 'NameError: name 'uenv' is not defined' when using 'spack env activate' et.al. (bsc#1198212). ------------------------------------------------------------------- Wed Mar 2 12:41:12 UTC 2022 - Egbert Eich <eich@suse.com> - Remove unneeded build dependency. - Make dependencies of spack and spack-recipes symetrical. ------------------------------------------------------------------- Thu Feb 10 13:58:04 UTC 2022 - Egbert Eich <eich@suse.com> - Add openssl-devel, xz-devel and libzip-devel as recommends bsc#1195789. ------------------------------------------------------------------- Wed Jan 12 09:50:56 UTC 2022 - Egbert Eich <eich@suse.com> - Fix run-find-external.sh script: RPM macros are not expanded in external scripts. * Rename: run-find-external.sh to run-find-external.sh.in - Fix list of recommended packages. - Add support for container building using a SLE base container. * Add-support-for-container-building-using-a-SLE-base-container.patch ------------------------------------------------------------------- Mon Jan 10 12:45:19 UTC 2022 - Christian Goll <cgoll@suse.com> - updated to spack 0.17.1 with following chnages: * Allow locks to work under high contention (#27846) * Improve errors messages from clingo (#27707 #27970) * Respect package permissions for sbang (#25764) * Fix --enable-locks behavior (#24675) * Fix log-format reporter ignoring install errors (#25961) * Fix overloaded argparse keys (#27379) * Allow style commands to run with targets other than "develop" (#27472) * Log lock messages to debug level, instead of verbose level (#27408) * Handle invalid unicode while logging (#21447) * spack audit: fix API calls to variants (#27713) * Provide meaningful message for empty environment installs (#28031) * Added opensuse leap containers to spack containerize (#27837) * Revert "patches: make re-applied patches idempotent" (#27625) * MANPATH can use system defaults (#21682) * Add "setdefault" subcommand to `spack module tcl` (#14686) * Regenerate views when specs already installed (#28113) - removed leap-container.patch as incoperated upstream ------------------------------------------------------------------- Tue Dec 14 11:13:37 UTC 2021 - Christian Goll <cgoll@suse.com> - fixed the configuration files /etc/skel/.spack/{config|modules}.yaml so that spack writes to $HOME if started as user ------------------------------------------------------------------- Mon Dec 13 08:19:33 UTC 2021 - Christian Goll <cgoll@suse.com> - made objects.inv (Source5) to be static as the online version is changed dynamically ------------------------------------------------------------------- Tue Dec 7 15:34:12 UTC 2021 - Christian Goll <cgoll@suse.com> - added leap-container.patch which adds leap15 as os to the spack containerize command. ------------------------------------------------------------------- Mon Nov 8 14:55:34 UTC 2021 - Christian Goll <cgoll@suse.com> - updated to version 0.17.0 (Upstream feature/bug references (<ID>) are relative to https://github.com/spack/spack/issues/<ID>). * New concretizer is now default The new concretizer introduced as an experimental feature in v0.16.0 is now the default (#25502). The new concretizer is based on the clingo logic programming system, and it enables us to do much higher quality and faster dependency solving The old concretizer is still available via the concretizer: original setting, but it is deprecated and will be removed in v0.18.0. * Binary Bootstrapping To make it easier to use the new concretizer and binary packages, Spack now bootstraps clingo and GnuPG from public binaries. If it is not able to bootstrap them from binaries, it installs them from source code. With these changes, you should still be able to clone Spack and start using it almost immediately. * Reuse existing packages (experimental) The most wanted feature from our 2020 user survey and the most wanted Spack feature of all time (#25310). spack install, spack spec, and spack concretize now have a --reuse option, which causes Spack to minimize the number of rebuilds it does. The --reuse option will try to find existing installations and binary packages locally and in registered mirrors, and will prefer to use them over building new versions. This will allow users to build from source far less than in prior versions of Spack. This feature will continue to be improved, with configuration options and better CLI expected in v0.17.1. It will become the default concretization mode in v0.18.0. * Better error messages We have improved the error messages generated by the new concretizer by using unsatisfiable cores. Spack will now print a summary of the types of constraints that were violated to make a spec unsatisfiable (#26719). * Conditional variants Variants can now have a when="<spec>" clause, allowing them to be conditional based on the version or other attributes of a package (#24858). * Git commit versions In an environment and on the command-line, you can now provide a full, 40-character git commit as a version for any package with a top-level git URL. e.g., spack install hdf5@45bb27f58240a8da7ebb4efc821a1a964d7712a8. Spack will compare the commit to tags in the git repository to understand what versions it is ahead of or behind. * Override local config and cache directories You can now set SPACK_DISABLE_LOCAL_CONFIG to disable the ~/.spack and /etc/spack configuration scopes. SPACK_USER_CACHE_PATH allows you to move caches out of ~/.spack, as well (#27022, #26735). This addresses common problems where users could not isolate CI environments from local configuration. * Improvements to Spack Containerize For added reproducibility, you can now pin the Spack version used by spack containerize (#21910). The container build will only build with the Spack version pinned at build recipe creation instead of the latest Spack version. * New commands for dealing with tags The spack tags command allows you to list tags on packages (#26136), and you can list tests and filter tags with spack test list (#26842). * Copy and relocate environment views as stand-alone installations (#24832) * spack diff command can diff two installed specs (#22283, #25169) * spack -c <config> can set one-off config parameters on CLI (#22251) * spack load --list is an alias for spack find --loaded (#27184) * spack gpg can export private key with --secret (#22557) * spack style automatically bootstraps dependencies (#24819) * spack style --fix automatically invokes isort (#24071) * build dependencies can be installed from build caches with --include-build-deps (#19955) * spack audit command for checking package constraints (#23053) * spack can now fetch from CVS repositories (yep, really) (#23212) * spack monitor lets you upload analysis about installations to a * spack monitor server (#23804, #24321, #23777, #25928)) * spack python --path shows which python Spack is using (#22006) * spack env activate --temp can create temporary environments (#25388) * --preferred and --latest options for spack checksum (#25830) * SPACK_PYTHON environment variable sets which python spack uses (#21222) * SPACK_SKIP_MODULES lets you source setup-env.sh faster if you don't need modules (#24545) - removed following patches as incomperated upstream: * added-dockerfile-for-opensuse-leap-15.patch - removed as not needed any more: * basic-exclude-pattern-for-external-find.patch * Fix-documentation-so-that-parser-doesn-t-stumble.patch - updated patches: * Adapt-shell-scripts-that-set-up-the-environment-for-different-shells.patch * added-target-and-os-calls-to-output-of-spack-spec-co.patch * Fix-error-during-documentation-build-due-to-recursive-module-inclusion.patch * fix-tumbleweed-naming.patch * Make-spack-paths-compliant-to-distro-installation.patch - added: * Fix-Spinx-configuration-to-avoid-throwing-errors.patch * Set-modules-default-to-lmod.patch - updated requires to actual sphinx version, so that the documentation builds - Included source: objects.inv ------------------------------------------------------------------- Fri Oct 15 17:00:57 UTC 2021 - Egbert Eich <eich@suse.com> - Fix sysuser file name. ------------------------------------------------------------------- Fri Oct 1 05:55:10 UTC 2021 - Egbert Eich <eich@suse.com> - Utilize sysuser infrastructure to set group spack. ------------------------------------------------------------------- Wed Sep 29 20:32:58 UTC 2021 - Antoine Ginies <aginies@suse.com> - update to version 0.16.3 (JSC#SLE-22137): * clang/llvm: fix version detection * Fix use of quotes in Python build system * Ensure all roots of an installed environment are marked explicit in db * Fix fetching for Python 3.8 and 3.9 * locks: only open lockfiles once instead of for every lock held ------------------------------------------------------------------- Fri Aug 6 14:28:20 UTC 2021 - Christian Goll <cgoll@suse.com> - added tar and make as requirement ------------------------------------------------------------------- Wed Jul 7 16:09:21 UTC 2021 - Christian Goll <cgoll@suse.com> - added README-oo-wiki which is the raw version of the opensuse wiki ------------------------------------------------------------------- Tue Jul 6 21:45:21 UTC 2021 - Egbert Eich <eich@suse.com> - Fix patch Fix-error-during-documentation-build-due-to-recursive-module-inclusion.patch to actually work correctly. The updated version makes sure modules are not called recursively even if modules are loaded in an out-of-order fashion from python-Sphinx. - Remove duplicates in spec file. ------------------------------------------------------------------- Wed Jun 2 14:04:26 UTC 2021 - Antoine Ginies <aginies@suse.com> - fix typo to export prefix in patch (bsc#1191395): Adapt-shell-scripts-that-set-up-the-environment-for-different-shells.patch ------------------------------------------------------------------- Tue May 25 08:55:42 UTC 2021 - Christian Goll <cgoll@suse.com> - update to version 0.16.1 * Major performance improvement for spack load and other commands. * spack fetch is now environment-aware. (#19166) * Numerous fixes for the new, clingo-based concretizer. * Supoprt for automatically bootstrapping clingo from source. * Python 3.10 support: collections.abc * Fix import issues by using __import__ instead of Spack package import. * Bugfixes and --source-dir argument for spack location. * Better support for externals in shared prefixes. * spack build-env now prefers specs defined in the active environment. * Remove erroneous warnings about quotes in from_sourcing_files. * Fix clearing cache of InternalConfigScope. * Bugfix for active when pkg is already active error. * Make SingleFileScope able to repopulate the cache after clearing it. * Channelflow: Fix the package. * More descriptive error message for bugs in package.py * Use package-supplied autogen.sh * Respect -k/verify-ssl-false in _existing_url method. ------------------------------------------------------------------- Mon May 3 06:34:46 UTC 2021 - Egbert Eich <eich@suse.com> - Add gcc-c++ to the required packages (bsc#1185519). - Add alternative c++ & fortran compilers to the triggers list. ------------------------------------------------------------------- Tue Mar 30 14:31:26 UTC 2021 - Christian Goll <cgoll@suse.com> - added run-find-external.sh which calls the command in post `spack external find` as nobody and not as root ------------------------------------------------------------------- Tue Mar 23 08:32:49 UTC 2021 - Christian Goll <cgoll@suse.com> - added libbz2-devel as dependency as spack requires this, as soon as the bzip2 binary is found and removed warning for this corner case in rpmlinrc ------------------------------------------------------------------- Fri Mar 19 15:04:20 UTC 2021 - Christian Goll <cgoll@suse.com> - set the right MODULEPATH in /etc/profile.d/spack.[cs]h ------------------------------------------------------------------- Fri Feb 26 22:06:36 UTC 2021 - Egbert Eich <eich@suse.com> - Remove BuildRequires for patterns-base-basesystem and distribution-release. ------------------------------------------------------------------- Fri Feb 26 10:40:00 UTC 2021 - Christian Goll <cgoll@suse.com> - update to version 0.16.1 * intel-oneapi support through new packages * HIP/ROCm support (#19715, #20095) * concretization enhancements * environment install reporting fix (#20004) * avoid import in ABI compatibility info (#20236) * restore ability of dev-build to skip patches (#20351) * spack find -d spec grouping (#20028) * spack smoke test support (#19987, #20298) * abstract spec comparisons (#20341) * performance improvements for binary relocation (#19690, #20768) * additional sanity checks for variants in builtin packages (#20373) * do not pollute auto-generated configuration files with empty lists or dicts - added file: basic-exclude-pattern-for-external-find.patch * adds the functionality to exclude binaries for external search so that the call 'installdbgsymbols' can be prohibited as this leads to an endless loop when drkonqui is installed ------------------------------------------------------------------- Thu Feb 4 06:54:13 UTC 2021 - Egbert Eich <eich@suse.com> - Add * Fix-documentation-so-that-parser-doesn-t-stumble.patch: * Fix-error-during-documentation-build-due-to-recursive-module-inclusion.patch Fix documentation building. - Fix texinfo file installation. ------------------------------------------------------------------- Fri Dec 11 15:09:07 UTC 2020 - Christian Goll <cgoll@suse.com> - added patch for more reproduceable output for the doc package * added file: added-target-and-os-calls-to-output-of-spack-spec-co.patch ------------------------------------------------------------------- Tue Dec 8 14:19:00 UTC 2020 - Christian Goll <cgoll@suse.com> - added test for /etc/spack/no_rpm_trigger ------------------------------------------------------------------- Wed Dec 2 12:33:44 UTC 2020 - Christian Goll <cgoll@suse.com> - added %triggerin and %triggerpostun for the packages which can be detected by spack ------------------------------------------------------------------- Wed Nov 25 10:58:48 UTC 2020 - Christian Goll <cgoll@suse.com> - updated to 0.16.0 - added find for external packages - added dockerfile for leap * added patchfile added-dockerfile-for-opensuse-leap-15.patch ------------------------------------------------------------------- Tue Nov 24 13:45:24 UTC 2020 - Egbert Eich <eich@suse.com> - Add documentation (man and info pages, pdf doesn't build currently). * Do not ship documentation sources. - Do not distribute Dockerfiles and other container related material, yet. This needs to be fixed so that the samples work with SUSE. - Fully integrate spack into SUSE directory structure, fix paths where required. * Fix setup scripts to work correctly in above environment. ------------------------------------------------------------------- Mon Nov 16 14:42:32 UTC 2020 - Christian Goll <cgoll@suse.com> - added profile file for csh - enabled projections - updated README.SUSE ------------------------------------------------------------------- Wed Nov 11 19:56:11 UTC 2020 - Christian Goll <cgoll@suse.com> - added patches to be more on the traditional file system hierarchy and avoid explicit version in tumbleweed. * added file Make-spack-paths-compliant-to-distro-installation.patch * added file fix-tumbleweed-naming.patch ------------------------------------------------------------------- Fri Sep 11 07:50:30 UTC 2020 - Ana Guerrero Lopez <aguerrero@suse.com> - Initial release. Version 0.15.4 * Make-spack-paths-compliant-to-distro-installation.patch Make spack paths compliant to distro installation.
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor