Avoid using rust-boostrap, switch to zlib instead of zlib-ng as provider for zlib-api #1718
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
In
configs/common/packages.yaml: avoid usingrust-boostrap, switch tozlibinstead ofzlib-ngas provider forzlib-apiReasons:
rust-bootstrapwas used as a workaround while we had issues downloading and building dependencies with the realrustpackages. Now, we have tools to createcargomirrors that can be used by spack to install on air-gapped systems. Further, there is much criticism of therust-bootstrappackage itself, because it is maintained manually and not necessarily kept in sync withrust. Lastly, removing therust-bootstrapvariants here and the corresponding modifications we made in the spack package recipes allows us to minimize differences in the spack packages betweenspack-stack-devand upstream.zlib-ngsounded promising at first, but the reality is a little different. For many reasons, one of them being Intel library linking issues, we had to resort to using the nativezlibpackage instead, overwrite thezlib-apiprovider in the site configs, and mark the externalzlibpackages asbuildable: false. We did this for several RDHPCS and all NRL systems. It seems safer to make the defaultzliband leave it to the site maintainers whetherzlibshould be an external package, built by spack, or whether thezlib-apidefinition should be overwritten on a per-site basis config with another provider, if so desired.For now, the site configs can remain as they are. We need to update them anyway when we move to spack v1.0.0 in the next few weeks, at which point we can remove the redundant
zlib-apiredefinitions in the site configs.Dependencies
None
Issues addressed
See detailed description above
Applications affected
All (but in practice most of the critical systems already use
zlibinstead ofzlib-ng).Systems affected
All
Testing
zlibchange tested every day for the sites that already use itChecklist
All dependency PRs/issues have been resolved and this PR can be merged.