Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge spack develop as of 2023/07/10 into jcsda_emc_spack_stack #295

Conversation

climbfuji
Copy link
Collaborator

@climbfuji climbfuji commented Jul 10, 2023

Description

The title says it all. This PR needs to be tested with JCSDA/spack-stack#672.

There are still a few places in the merged code that have tags # DH* 20230710 for double checking, and also there is a list of files for which I had to resolve conflicts: JCSDA/spack-stack#672 (comment)

Lastly, spack from this version on somehow uses the @= syntax in certain places, for example in the output of spack compiler find on macOS. I had to update the meta modules Python script accordingly (8635085), and then black forced me to reformat it almost entirely (98957cf).

Notes from Alex:

Issue(s) addressed

n/a

Dependencies

n/a

Impact

See JCSDA/spack-stack#672

Checklist

manuelakuhn and others added 30 commits June 22, 2023 03:09
* py-networkx: add 3.1

* Update var/spack/repos/builtin/packages/py-networkx/package.py

Co-authored-by: Adam J. Stewart <[email protected]>

* Add default variant

---------

Co-authored-by: Adam J. Stewart <[email protected]>
…` bug (spack#38297)

* hpx: Add conflict with some GCC versions and +rocm due to valarray bug

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103022

* remove conflict for %[email protected] since there is none

---------

Co-authored-by: eugeneswalker <[email protected]>
No changes to the build system, no changes to `package.py` needed.

Changelog: qt/qtbase@v5.15.9-lts-lgpl...v5.15.10-lts-lgpl

Main change taking up space:
- bundled 3rdparty/pcre2 updated from 10.39 to 10.40 (spack now includes 10.42, and we don't put specific version requirements in `package.py`)
* py-platformdirs: add 3.5.3

* py-typing-extensions: add 4.6.3
…ck#38038)

* Add libxml2 dependency and increase version to v1.20

* Update var/spack/repos/builtin/packages/openturns/package.py

Co-authored-by: Alec Scott <[email protected]>

* Add v19

* Add libxml2 variant

* Fix variant specification

---------

Co-authored-by: Marc Schouler <[email protected]>
Co-authored-by: Alec Scott <[email protected]>
It installs the LFortran runtime library and
LFortran can compile codes to binaries. The interactive mode does not
work yet with LLVM > 11, that has to be fixed upstream.

Co-authored-by: Wileam Y. Phan <[email protected]>
* py-notebook: add 6.5.4

* [@spackbot] updating style on behalf of manuelakuhn

* Update var/spack/repos/builtin/packages/py-notebook/package.py

Co-authored-by: Adam J. Stewart <[email protected]>

* Fix version of py-nbclassic dependency

---------

Co-authored-by: Adam J. Stewart <[email protected]>
Also remove the custom `autoreconf` method as it does not seem to be
necessary and potentially hides useful output provided by the default.
* zen4 support for vasp
* encourage openmp support in fftw/blas when +openmp
* enable gamma and non-collinear builds
* Add rust v1.70.0 and simplify package logic by moving bootstrap to dedicated package

* Fix formatting of rust-bootstrap package file

* Re-enable Rust as extendable

* Add nightly version to rust and rust-bootstrap

* Manually inject openssl certs into environment

* Add master and beta versions to rust

* Add additional documentation for using rust development releases

* Remove @AndrewGaspar as maintainer
* py-bcbio-gff: adding new version 0.7.0

* emblmygff3: adding new package

* emblmygff3: adding py-setuptools dep
* Add recipe for iterative-stats

* Fix branch name and remove comment

* Add git link

* Add package maintainer

* Enforce multiple requested changes

* Update var/spack/repos/builtin/packages/py-iterative-stats/package.py

Co-authored-by: Adam J. Stewart <[email protected]>

* Update checksum

* Fix openturns dependency specification

* Add python variant spec to openturns

---------

Co-authored-by: Marc Schouler <[email protected]>
Co-authored-by: Adam J. Stewart <[email protected]>
* py-pytest: add 7.3.2

* [@spackbot] updating style on behalf of manuelakuhn

* Swap py-importlib-metadata dependency order

* Restrict python version for older versions
* libEnsemble: add v0.10.0

* Make new deps required

* Fixes to deps

* Update var/spack/repos/builtin/packages/py-libensemble/package.py

Co-authored-by: Adam J. Stewart <[email protected]>

* Fix build, run

* Reorder required deps

---------

Co-authored-by: Adam J. Stewart <[email protected]>
…38403)

Remove `--enable-mca-no-build=btl-uct` check for ucx spec
as it is already fixed in the openmpi open-mpi/ompi#6666
Copy link
Collaborator

@srherbener srherbener left a comment

Choose a reason for hiding this comment

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

I tested on my mac arm64 laptop. spack-stack built successfully and jedi-bundle built successfully (but I had to uninstall git from homebrew and use /usr/bin/git instead due to _iconv symbol not found issue).

I tried running ctest and ran into the _iconv symbol not found issue as well.

@climbfuji
Copy link
Collaborator Author

I tested on my mac arm64 laptop. spack-stack built successfully and jedi-bundle built successfully (but I had to uninstall git from homebrew and use /usr/bin/git instead due to _iconv symbol not found issue).

I tried running ctest and ran into the _iconv symbol not found issue as well.

Yes, very annoying. The ctest problem comes from cmake being installed via homebrew. I am testing a minimal homebrew set up right now.

@climbfuji
Copy link
Collaborator Author

I am finding bugs over bugs in this particular version of spack, very unhappy with it. I think we need to rethink our strategy and only update from spack when they create official releases, plus cherry-pick individual updates in between (as long as we do merge commits in the spack fork for updates from upstream) if needed.

@AlexanderRichert-NOAA
Copy link
Collaborator

Darn. What kinds of bugs?

Have you tested with v0.20.1? That one's pretty recent so it should have most or all of the package changes we might want (bufr, netcdf-c, ...).

@climbfuji
Copy link
Collaborator Author

climbfuji commented Jul 21, 2023

spack#39046
spack#39049

--> these are major issues breaking all macOS builds

We have one error from the merge in cmake. This is from the attempt to make everything static (which I am opposed to):

        if self.spec["openssl"].satisfies("~shared"):
            args.append(
                "-DOPENSSL_CRYPTO_LIBRARY={0};{1}".format(
                    find_libraries("libcrypto", self.spec["openssl"].prefix.lib, shared=False),
                    find_libraries(
                        "libz",
                        self.spec["zlib"].prefix.lib,
                        shared=self.spec["zlib"].satisfies("+shared"),
                    ),
                )
            )

I need to remove this, because openssl is no longer a dependency of cmake (see rest of the package). Done in 2796f78

@AlexanderRichert-NOAA
Copy link
Collaborator

I'm pretty sure the openssl dependency comes in through curl. It should be fixable by changing the if condition to if self.spec.satisfies("^openssl~shared"):

@climbfuji
Copy link
Collaborator Author

I'm pretty sure the openssl dependency comes in through curl. It should be fixable by changing the if condition to if self.spec.satisfies("^openssl~shared"):

Note that the entire block that I just removed is not in spack develop. Is it really needed?

@AlexanderRichert-NOAA
Copy link
Collaborator

It's a change I made as part of the batch of NCO-related changes, and intend to push to main spack once my PR for the openssl package itself is merged.

@climbfuji
Copy link
Collaborator Author

climbfuji commented Jul 21, 2023 via email

…ge.py, openssl is no longer a dependency for make
@climbfuji climbfuji force-pushed the feature/merge_spack_develop_20230710 branch from 2796f78 to a3acfa3 Compare July 22, 2023 00:17
@climbfuji climbfuji added the bug Something is not working label Jul 22, 2023
@climbfuji
Copy link
Collaborator Author

Ok, I’ll put it back in with your suggestion.

On Jul 21, 2023, at 5:52 PM, Alex Richert @.***> wrote: It's a change I made as part of the batch of NCO-related changes, and intend to push to main spack once my PR for the openssl package itself is merged. — Reply to this email directly, view it on GitHub <#295 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AB5C2RPXZSBTSH4BDWASDI3XRMI2TANCNFSM6AAAAAA2ETHNHY. You are receiving this because you were assigned.

Done. Here is another spack bug:
spack#39055

Copy link
Collaborator

@srherbener srherbener left a comment

Choose a reason for hiding this comment

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

Mac and JEDI testing look good

@AlexanderRichert-NOAA AlexanderRichert-NOAA merged commit d005394 into JCSDA:jcsda_emc_spack_stack Aug 8, 2023
12 of 13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something is not working INFRA JEDI Infrastructure
Projects
No open projects
Development

Successfully merging this pull request may close these issues.