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

Simplify icon4py dependencies #839

Merged
merged 17 commits into from
Oct 12, 2023
Merged

Simplify icon4py dependencies #839

merged 17 commits into from
Oct 12, 2023

Conversation

halungge
Copy link
Contributor

@halungge halungge commented Oct 3, 2023

Goes together with icon4py PR C2SM/icon4py#281
In order to simplify the spack build we only take into acccount what is relevant for the blueline (integration with icon-dsl)

  • remove dependencies
  • only run relevant tests when running with --test=root option unit
    • tests for gt4py stencils in model
    • tests for icon4pytools

@halungge
Copy link
Contributor Author

halungge commented Oct 3, 2023

still need to run all the tests, jenkins seems to be down..

@github-actions
Copy link
Contributor

github-actions bot commented Oct 3, 2023

PR Preview Action v1.4.4
Preview removed because the pull request was closed.
2023-10-12 07:35 UTC

@@ -181,13 +180,13 @@ def install(self, pkg, spec, prefix):
elif self.spec.version == ver('=0.0.8'):
build_dirs = [
'tools', 'model/atmosphere/dycore',
'model/atmosphere/diffusion', 'model/driver', 'model/common/'
'model/atmosphere/diffusion', 'model/common/'
Copy link
Contributor

Choose a reason for hiding this comment

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

good catch.

@abishekg7
Copy link
Contributor

launch jenkins py-icon4py

@abishekg7
Copy link
Contributor

Could you also open an icon4py PR to undo these changes. Let's remove srun parts and keep the archiveArtifacts in both spack-PR and spack-PR-stable C2SM/icon4py@32e8f6a#diff-a4c32fa97c322b4231c64e094103cc11e718aa9eb1cf00432778cfcc4255af32

@jenkins-apn
Copy link

tsa

🟢 unit test
Test
🟢summary
🟢 integration test
Test
🟢cdo-spack_info
🟢cdo-spack_spec
🟢clang-format-spack_info
🟢clang-format-spack_spec
🟢claw-spack_info
🟢claw-spack_spec
🟢cosmo-dycore-spack_info
🟢cosmo-dycore-spack_spec
🟢cosmo-dycore_+cuda_+gt1_+build_tests-spack_spec
🟢cosmo-dycore_~cuda_+gt1-spack_spec
🟢cosmo-eccodes-definitions-spack_info
🟢cosmo-eccodes-definitions-spack_spec
🟢cosmo-spack_info
🟢dawn-spack_info
🟢dawn-spack_spec
🟢dawn4py-spack_info
🟢dawn4py-spack_spec
🟢dusk-spack_info
🟢dusk-spack_spec
🟢eccodes-spack_info
🟢eccodes-spack_spec
🟢eckit-spack_info
🟢eckit-spack_spec
🟢fckit-spack_info
🟢fckit-spack_spec
🟢fdb-fortran-spack_info
🟢fdb-fortran-spack_spec
🟢fdb-spack_info
🟢fdb-spack_spec
🟢flexpart-cosmo-spack_info
🟢flexpart-fdb-spack_info
🟢flexpart-fdb-spack_spec
🟢flexpart-ifs-spack_info
🟢flexpart-ifs-spack_spec
🟢flexpart-opr-spack_info
🟢flexpart-opr-spack_spec
🟢gridtools-spack_info
🟢gridtools-spack_spec
🟢gridtools_+cuda-spack_spec
🟢gridtools_~cuda-spack_spec
🟢icon-ham-spack_info
🟢icon-ham-spack_spec
🟢icon-spack_info
🟢icon-spack_spec
🟢dace_icon.-O1-spack_spec
🟢icon_serialization=create_claw=std-spack_spec
🟢icontools-spack_info
🟢icontools-spack_spec
🟢infero-spack_info
🟢infero_+onnx_+tf_c-spack_spec
🟢int2lm-spack_info
🟢int2lm-spack_spec
🟢int2lm_+parallel-spack_spec
🟢libcdi-pio-spack_info
🟢libcdi-pio-spack_spec
🟢libfyaml-spack_spec
🟢libgrib1-spack_info
🟢libgrib1-spack_spec
🟢libtorch-spack_info
🟢libtorch-spack_spec
🟢metkit-spack_info
🟢metkit-spack_spec
🟢nvidia-blas-spack_info
🟢nvidia-blas-spack_spec
🟢nvidia-lapack-spack_info
🟢nvidia-lapack-spack_spec
🟢oasis-spack_info
🟢oasis-spack_spec
🟢omni-xmod-pool-spack_info
🟢omni-xmod-pool-spack_spec
🟢onnx-runtime-spack_info
🟢onnx-runtime-spack_spec
🟢py-asttokens-spack_info
🟢py-asttokens-spack_spec
🟢py-black-spack_info
🟢py-black-spack_spec
🟢py-boltons-spack_info
🟢py-boltons-spack_spec
🟢py-cytoolz-spack_info
🟢py-cytoolz-spack_spec
🟢py-devtools-spack_info
🟢py-devtools-spack_spec
🟢py-editables-spack_info
🟢py-editables-spack_spec
🟢py-executing-spack_info
🟢py-executing-spack_spec
🟢py-factory-boy-spack_info
🟢py-factory-boy-spack_spec
🟢py-fprettify-spack_info
🟢py-fprettify-spack_spec
🟢py-frozendict-spack_info
🟢py-frozendict-spack_spec
🟢py-ghex-spack_info
🟢py-ghex-spack_spec
🟢py-gridtools-cpp-spack_info
🟢py-gridtools-cpp-spack_spec
🟢py-gt4py-spack_info
🟢py-gt4py-spack_spec
🟢py-hatchling-spack_info
🟢py-hatchling-spack_spec
🟢py-icon4py-spack_info
🟢py-icon4py-spack_spec
🟢py-inflection-spack_info
🟢py-inflection-spack_spec
🟢py-isort-spack_info
🟢py-isort-spack_spec
🟢py-lark-spack_info
🟢py-lark-spack_spec
🟢py-nanobind-spack_info
🟢py-nanobind-spack_spec
🟢py-pathspec-spack_info
🟢py-pathspec-spack_spec
🟢py-pytest-factoryboy-spack_info
🟢py-pytest-factoryboy-spack_spec
🟢py-pytest-mpi-spack_info
🟢py-pytest-mpi-spack_spec
🟢py-pytest-spack_info
🟢py-pytest-spack_spec
🟢py-scikit-build-core-spack_info
🟢py-scikit-build-core-spack_spec
🟢py-setuptools-spack_info
🟢py-setuptools-spack_spec
🟢py-sphinxcontrib-jquery-spack_info
🟢py-sphinxcontrib-jquery-spack_spec
🟢py-tabulate-spack_info
🟢py-tabulate-spack_spec
🟢py-toolz-spack_info
🟢py-toolz-spack_spec
🟢py-typing-extensions-spack_info
🟢py-typing-extensions-spack_spec
🟢pytorch-fortran-proxy-spack_info
🟢pytorch-fortran-proxy-spack_spec
🟢pytorch-fortran-spack_info
🟢pytorch-fortran-spack_spec
🟢rttov-spack_info
🟢rttov-spack_spec
🟢scales-ppm-spack_info
🟢scales-ppm-spack_spec
🟢serialbox-spack_info
🟢serialbox-spack_spec
🟢tensorflowc-spack_info
🟢tensorflowc-spack_spec
🟢yaxt-spack_info
🟢yaxt-spack_spec
🟢zlib_ng-spack_info
🟢zlib_ng-spack_spec
🟢 system test
Test
🟢ClangFormat-install_default
🟢Claw-install_default
🟢CosmoEccodesDefinitions-install_version_2_19_0_7
🟢CosmoEccodesDefinitions-install_version_2_25_0_1
🟢Eccodes-install_2_19_0
🟢Eckit-install_1_20_0_gcc
🟢Eckit-install_1_20_2_gcc
🟢Eckit-install_1_20_2_nvhpc
🟢Fckit-install_default
🟢Fdb-install_5_10_8_gcc
🟢Fdb-install_5_10_8_nvhpc
🟢FdbFortran-install
🟢FlexpartFdb-w_mch
🟢FlexpartFdb-wo_mch
🟢FlexpartIfs-install_latest
🟢FlexpartOpr-install
🟢GridTools-install_version_1_1_3_gcc
🟢Int2lm-install_c2sm_master_gcc
🟢Int2lm-install_version_3_00_gcc
🟢Int2lm-install_version_3_00_nvhpc
🟢Int2lm-install_version_3_00_nvhpc_fixed_definitions
🟢LibGrib1-install_version_22_01_2020
🟢LibTorch-install_default
🟢Libfyaml-install_default
🟢Metkit-install_1_9_2_gcc
🟢Metkit-install_1_9_2_nvhpc
🟢OmniXmodPool-install_version_0_1
🟢OnnxRuntime-install_default
🟢PyAsttokens-install_default
🟢PyBlack-install_default
🟢PyBoltons-install_default
🟢PyCytoolz-install_default
🟢PyDevtools-install_default
🟢PyEditables-install_default
🟢PyExecuting-install_default
🟢PyFactoryBoy-install_default
🟢PyFprettify-install_default
🟢PyFrozendict-install_default
🟢PyGhex-install_version_0_3_1
🟢PyGridtoolsCpp-install_default
🟢PyHatchling-install_default
🟢PyInflection-install_default
🟢PyIsort-install_default
🟢PyLark-install_default
🟢PyNanobind-install_default
🟢PyNumpy-install_default
🟢PyPathspec-install_default
🟢PyPytest-install_default
🟢PyPytestFactoryboy-install_default
🟢PyPytestMpi-install_pympi_default
🟢PyScikitBuildCore-install_py_scikit_build_core_default
🟢PySetuptools-install_default
🟢PySphinxcontribJquery-install_default
🟢PyTabulate-install_default
🟢PyToolz-install_default
🟢PyTypingExtensions-install_default
🟢Serialbox-install_serialbox_2_6_1
🟢Serialbox-install_serialbox_2_6_2_python
🟢TensorflowC-install_2_6_0
🟢ZLibNG-install_version_2_0_0

@jenkins-apn
Copy link

balfrin

🟢 unit test
Test
🟢summary
🟢 integration test
Test
🟢cdo-spack_info
🟢cdo-spack_spec
🟢clang-format-spack_info
🟢clang-format-spack_spec
🟢claw-spack_info
🟢claw-spack_spec
🟢cosmo-dycore-spack_info
🟢cosmo-dycore-spack_spec
🟢cosmo-dycore_+cuda_+gt1_+build_tests-spack_spec
🟢cosmo-dycore_~cuda_+gt1-spack_spec
🟢cosmo-eccodes-definitions-spack_info
🟢cosmo-eccodes-definitions-spack_spec
🟢cosmo-spack_info
🟢cosmo-spack_spec
🟢cosmo_cosmo_target=gpu_+serialize_+claw_+zlib_ng_+oasis-spack_spec
🟢cosmo_cosmo_target=gpu_~cppdycore-spack_spec
🟢dawn-spack_info
🟢dawn-spack_spec
🟢dawn4py-spack_info
🟢dawn4py-spack_spec
🟢dusk-spack_info
🟢dusk-spack_spec
🟢eccodes-spack_info
🟢eccodes-spack_spec
🟢eckit-spack_info
🟢eckit-spack_spec
🟢fckit-spack_info
🟢fckit-spack_spec
🟢fdb-fortran-spack_info
🟢fdb-fortran-spack_spec
🟢fdb-spack_info
🟢fdb-spack_spec
🟢flexpart-cosmo-spack_info
🟢flexpart-cosmo-spack_spec
🟢flexpart-fdb-spack_info
🟢flexpart-fdb-spack_spec
🟢flexpart-ifs-spack_info
🟢flexpart-ifs-spack_spec
🟢flexpart-opr-spack_info
🟢flexpart-opr-spack_spec
🟢gridtools-spack_info
🟢gridtools-spack_spec
🟢gridtools_+cuda-spack_spec
🟢gridtools_~cuda-spack_spec
🟢icon-ham-spack_info
🟢icon-ham-spack_spec
🟢icon-spack_info
🟢icon-spack_spec
🟢dace_icon.-O1-spack_spec
🟢icon_serialization=create_claw=std-spack_spec
🟢icontools-spack_info
🟢icontools-spack_spec
🟢infero-spack_info
🟢infero_+onnx_+tf_c-spack_spec
🟢int2lm-spack_info
🟢int2lm-spack_spec
🟢int2lm_+parallel-spack_spec
🟢libcdi-pio-spack_info
🟢libcdi-pio-spack_spec
🟢libfyaml-spack_spec
🟢libgrib1-spack_info
🟢libgrib1-spack_spec
🟢libtorch-spack_info
🟢libtorch-spack_spec
🟢metkit-spack_info
🟢metkit-spack_spec
🟢nvidia-blas-spack_info
🟢nvidia-blas-spack_spec
🟢nvidia-lapack-spack_info
🟢nvidia-lapack-spack_spec
🟢oasis-spack_info
🟢oasis-spack_spec
🟢omni-xmod-pool-spack_info
🟢omni-xmod-pool-spack_spec
🟢onnx-runtime-spack_info
🟢onnx-runtime-spack_spec
🟢py-asttokens-spack_info
🟢py-asttokens-spack_spec
🟢py-black-spack_info
🟢py-black-spack_spec
🟢py-boltons-spack_info
🟢py-boltons-spack_spec
🟢py-cytoolz-spack_info
🟢py-cytoolz-spack_spec
🟢py-devtools-spack_info
🟢py-devtools-spack_spec
🟢py-editables-spack_info
🟢py-editables-spack_spec
🟢py-executing-spack_info
🟢py-executing-spack_spec
🟢py-factory-boy-spack_info
🟢py-factory-boy-spack_spec
🟢py-fprettify-spack_info
🟢py-fprettify-spack_spec
🟢py-frozendict-spack_info
🟢py-frozendict-spack_spec
🟢py-ghex-spack_info
🟢py-ghex-spack_spec
🟢py-gridtools-cpp-spack_info
🟢py-gridtools-cpp-spack_spec
🟢py-gt4py-spack_info
🟢py-gt4py-spack_spec
🟢py-hatchling-spack_info
🟢py-hatchling-spack_spec
🟢py-icon4py-spack_info
🟢py-icon4py-spack_spec
🟢py-inflection-spack_info
🟢py-inflection-spack_spec
🟢py-isort-spack_info
🟢py-isort-spack_spec
🟢py-lark-spack_info
🟢py-lark-spack_spec
🟢py-nanobind-spack_info
🟢py-nanobind-spack_spec
🟢py-pathspec-spack_info
🟢py-pathspec-spack_spec
🟢py-pytest-factoryboy-spack_info
🟢py-pytest-factoryboy-spack_spec
🟢py-pytest-mpi-spack_info
🟢py-pytest-mpi-spack_spec
🟢py-pytest-spack_info
🟢py-pytest-spack_spec
🟢py-scikit-build-core-spack_info
🟢py-scikit-build-core-spack_spec
🟢py-setuptools-spack_info
🟢py-setuptools-spack_spec
🟢py-sphinxcontrib-jquery-spack_info
🟢py-sphinxcontrib-jquery-spack_spec
🟢py-tabulate-spack_info
🟢py-tabulate-spack_spec
🟢py-toolz-spack_info
🟢py-toolz-spack_spec
🟢py-typing-extensions-spack_info
🟢py-typing-extensions-spack_spec
🟢pytorch-fortran-proxy-spack_info
🟢pytorch-fortran-proxy-spack_spec
🟢pytorch-fortran-spack_info
🟢pytorch-fortran-spack_spec
🟢rttov-spack_info
🟢rttov-spack_spec
🟢scales-ppm-spack_info
🟢scales-ppm-spack_spec
🟢serialbox-spack_info
🟢serialbox-spack_spec
🟢tensorflowc-spack_info
🟢tensorflowc-spack_spec
🟢yaxt-spack_info
🟢yaxt-spack_spec
🟢zlib_ng-spack_info
🟢zlib_ng-spack_spec
🔴 system test
Test
🔴Cdo-install_default
🟢ClangFormat-install_default
🟢Claw-install_default
🟢CosmoEccodesDefinitions-install_version_2_19_0_7
🟢CosmoEccodesDefinitions-install_version_2_25_0_1
🟢Eccodes-install_2_19_0
🟢Eckit-install_1_20_0_gcc
🟢Eckit-install_1_20_2_gcc
🟢Eckit-install_1_20_2_nvhpc
🟢Fckit-install_default
🟢Fdb-install_5_10_8_gcc
🟢Fdb-install_5_10_8_nvhpc
🟢FdbFortran-install
🟢FlexpartCosmo-install
🟢FlexpartFdb-w_mch
🟢FlexpartFdb-wo_mch
🟢FlexpartIfs-install_latest
🟢FlexpartOpr-install
🟢GridTools-install_version_1_1_3_gcc
🟢GridTools-install_version_1_1_3_nvhpc
🟢Icon-install_2_6_6_gcc
🟢Icon-install_2_6_6_nvhpc
🟢Icon-install_nwp_gpu
🟢IconTools-install_2_5_2
🟢LibCdiPio-install_default
🟢LibTorch-install_default
🟢Libfyaml-install_default
🟢Metkit-install_1_9_2_gcc
🟢Metkit-install_1_9_2_nvhpc
🟢OmniXmodPool-install_version_0_1
🟢OnnxRuntime-install_default
🟢PyAsttokens-install_default
🟢PyBlack-install_default
🟢PyBoltons-install_default
🟢PyDevtools-install_default
🟢PyEditables-install_default
🟢PyExecuting-install_default
🟢PyFactoryBoy-install_default
🟢PyFprettify-install_default
🟢PyFrozendict-install_default
🟢PyGhex-install_version_0_3_1
🟢PyGridtoolsCpp-install_default
🟢PyGt4py-install_version_1_1_1
🟢PyGt4py-install_version_1_1_2
🟢PyGt4py-install_version_1_1_4
🟢PyHatchling-install_default
🔴PyIcon4py-install_version_0_0_5
🔴PyIcon4py-install_version_0_0_6
🔴PyIcon4py-install_version_0_0_7
🔴PyIcon4py-install_version_0_0_8
🟢PyInflection-install_default
🟢PyIsort-install_default
🟢PyLark-install_default
🟢PyNanobind-install_default
🟢PyNumpy-install_default
🟢PyPathspec-install_default
🟢PyPytest-install_default
🟢PyPytestFactoryboy-install_default
🟢PyPytestMpi-install_pympi_default
🟢PyScikitBuildCore-install_py_scikit_build_core_default
🟢PySetuptools-install_default
🟢PySphinxcontribJquery-install_default
🟢PyTabulate-install_default
🟢PyToolz-install_default
🟢PyTypingExtensions-install_default
🟢PytorchFortran-install_version_0_4
🟢PytorchFortranProxy-install_version_0_4
🟢ScalesPPM-install_default
🟢Serialbox-install_serialbox_2_6_1
🟢Serialbox-install_serialbox_2_6_2_python
🟢TensorflowC-install_2_6_0
🟢Yaxt-install_default
🟢ZLibNG-install_version_2_0_0

WARNING: Serial tests did not run for system tests

@jenkins-apn
Copy link

daint

🟢 unit test
Test
🟢summary
🟢 integration test
Test
🟢cdo-spack_info
🟢cdo-spack_spec
🟢clang-format-spack_info
🟢clang-format-spack_spec
🟢claw-spack_info
🟢claw-spack_spec
🟢cosmo-dycore-spack_info
🟢cosmo-dycore-spack_spec
🟢cosmo-dycore_+cuda_+gt1_+build_tests-spack_spec
🟢cosmo-dycore_~cuda_+gt1-spack_spec
🟢cosmo-eccodes-definitions-spack_info
🟢cosmo-eccodes-definitions-spack_spec
🟢cosmo-spack_info
🟢cosmo-spack_spec
🟢cosmo_cosmo_target=gpu_+serialize_+claw_+zlib_ng_+oasis-spack_spec
🟢cosmo_cosmo_target=gpu_~cppdycore-spack_spec
🟢dawn-spack_info
🟢dawn-spack_spec
🟢dawn4py-spack_info
🟢dawn4py-spack_spec
🟢dusk-spack_info
🟢dusk-spack_spec
🟢eccodes-spack_info
🟢eccodes-spack_spec
🟢eckit-spack_info
🟢eckit-spack_spec
🟢fckit-spack_info
🟢fckit-spack_spec
🟢fdb-fortran-spack_info
🟢fdb-fortran-spack_spec
🟢fdb-spack_info
🟢fdb-spack_spec
🟢flexpart-cosmo-spack_info
🟢flexpart-cosmo-spack_spec
🟢flexpart-fdb-spack_info
🟢flexpart-fdb-spack_spec
🟢flexpart-ifs-spack_info
🟢flexpart-ifs-spack_spec
🟢flexpart-opr-spack_info
🟢flexpart-opr-spack_spec
🟢gridtools-spack_info
🟢gridtools-spack_spec
🟢gridtools_+cuda-spack_spec
🟢gridtools_~cuda-spack_spec
🟢icon-ham-spack_info
🟢icon-ham-spack_spec
🟢icon-spack_info
🟢icon-spack_spec
🟢dace_icon.-O1-spack_spec
🟢icon_serialization=create_claw=std-spack_spec
🟢icontools-spack_info
🟢icontools-spack_spec
🟢infero-spack_info
🟢infero_+onnx_+tf_c-spack_spec
🟢int2lm-spack_info
🟢int2lm-spack_spec
🟢int2lm_+parallel-spack_spec
🟢libcdi-pio-spack_info
🟢libcdi-pio-spack_spec
🟢libfyaml-spack_spec
🟢libgrib1-spack_info
🟢libgrib1-spack_spec
🟢libtorch-spack_info
🟢libtorch-spack_spec
🟢metkit-spack_info
🟢metkit-spack_spec
🟢nvidia-blas-spack_info
🟢nvidia-blas-spack_spec
🟢nvidia-lapack-spack_info
🟢nvidia-lapack-spack_spec
🟢oasis-spack_info
🟢oasis-spack_spec
🟢omni-xmod-pool-spack_info
🟢omni-xmod-pool-spack_spec
🟢onnx-runtime-spack_info
🟢onnx-runtime-spack_spec
🟢py-asttokens-spack_info
🟢py-asttokens-spack_spec
🟢py-black-spack_info
🟢py-black-spack_spec
🟢py-boltons-spack_info
🟢py-boltons-spack_spec
🟢py-cytoolz-spack_info
🟢py-cytoolz-spack_spec
🟢py-devtools-spack_info
🟢py-devtools-spack_spec
🟢py-editables-spack_info
🟢py-editables-spack_spec
🟢py-executing-spack_info
🟢py-executing-spack_spec
🟢py-factory-boy-spack_info
🟢py-factory-boy-spack_spec
🟢py-fprettify-spack_info
🟢py-fprettify-spack_spec
🟢py-frozendict-spack_info
🟢py-frozendict-spack_spec
🟢py-ghex-spack_info
🟢py-ghex-spack_spec
🟢py-gridtools-cpp-spack_info
🟢py-gridtools-cpp-spack_spec
🟢py-gt4py-spack_info
🟢py-gt4py-spack_spec
🟢py-hatchling-spack_info
🟢py-hatchling-spack_spec
🟢py-icon4py-spack_info
🟢py-icon4py-spack_spec
🟢py-inflection-spack_info
🟢py-inflection-spack_spec
🟢py-isort-spack_info
🟢py-isort-spack_spec
🟢py-lark-spack_info
🟢py-lark-spack_spec
🟢py-nanobind-spack_info
🟢py-nanobind-spack_spec
🟢py-pathspec-spack_info
🟢py-pathspec-spack_spec
🟢py-pytest-factoryboy-spack_info
🟢py-pytest-factoryboy-spack_spec
🟢py-pytest-mpi-spack_info
🟢py-pytest-mpi-spack_spec
🟢py-pytest-spack_info
🟢py-pytest-spack_spec
🟢py-scikit-build-core-spack_info
🟢py-scikit-build-core-spack_spec
🟢py-setuptools-spack_info
🟢py-setuptools-spack_spec
🟢py-sphinxcontrib-jquery-spack_info
🟢py-sphinxcontrib-jquery-spack_spec
🟢py-tabulate-spack_info
🟢py-tabulate-spack_spec
🟢py-toolz-spack_info
🟢py-toolz-spack_spec
🟢py-typing-extensions-spack_info
🟢py-typing-extensions-spack_spec
🟢pytorch-fortran-proxy-spack_info
🟢pytorch-fortran-proxy-spack_spec
🟢pytorch-fortran-spack_info
🟢pytorch-fortran-spack_spec
🟢rttov-spack_info
🟢rttov-spack_spec
🟢scales-ppm-spack_info
🟢scales-ppm-spack_spec
🟢serialbox-spack_info
🟢serialbox-spack_spec
🟢tensorflowc-spack_info
🟢tensorflowc-spack_spec
🟢yaxt-spack_info
🟢yaxt-spack_spec
🟢zlib_ng-spack_info
🟢zlib_ng-spack_spec
🔴 system test
Test
🟢Cdo-install_default
🟢ClangFormat-install_default
🟢Claw-install_default_build_only
🟢CosmoDycore-install_c2sm_master_cuda
🟢CosmoDycore-install_c2sm_master_no_cuda
🟢CosmoDycore-install_version_6_0
🟢CosmoEccodesDefinitions-install_version_2_19_0_7
🟢CosmoEccodesDefinitions-install_version_2_25_0_1
🟢Eccodes-install_2_19_0
🟢Eckit-install_1_20_0_gcc
🟢Eckit-install_1_20_2_gcc
🟢Eckit-install_1_20_2_nvhpc
🟢Fckit-install_default
🟢Fdb-install_5_10_8_gcc
🟢Fdb-install_5_10_8_nvhpc
🟢FdbFortran-install
🟢FlexpartCosmo-install
🟢FlexpartFdb-w_mch
🟢FlexpartFdb-wo_mch
🟢FlexpartIfs-install_latest
🟢FlexpartOpr-install
🟢GridTools-install_version_1_1_3_gcc
🟢GridTools-install_version_1_1_3_nvhpc
🟢Icon-install_2_6_6_gcc
🟢IconTools-install_2_5_2
🟢Infero-install_onnx
🟢Infero-install_tf_c
🟢Int2lm-install_c2sm_master_gcc
🟢Int2lm-install_c2sm_master_nvhpc
🟢Int2lm-install_version_3_00_gcc
🟢Int2lm-install_version_3_00_nvhpc_fixed_definitions
🟢LibCdiPio-install_default
🟢LibTorch-install_default
🟢Libfyaml-install_default
🟢Metkit-install_1_9_2_gcc
🟢Metkit-install_1_9_2_nvhpc
🟢NvidiaBlas-install_default
🟢NvidiaLapack-install_default
🟢Oasis-install_master_nvhpc
🟢OmniXmodPool-install_version_0_1
🟢OnnxRuntime-install_default
🟢PyAsttokens-install_default
🟢PyBlack-install_default
🟢PyBoltons-install_default
🟢PyCytoolz-install_default
🟢PyDevtools-install_default
🟢PyEditables-install_default
🟢PyExecuting-install_default
🟢PyFactoryBoy-install_default
🟢PyFprettify-install_default
🟢PyFrozendict-install_default
🟢PyGhex-install_version_0_3_1
🟢PyGridtoolsCpp-install_default
🟢PyGt4py-install_version_1_1_1
🟢PyGt4py-install_version_1_1_2
🟢PyGt4py-install_version_1_1_4
🟢PyHatchling-install_default
🔴PyIcon4py-install_version_0_0_5
🔴PyIcon4py-install_version_0_0_6
🔴PyIcon4py-install_version_0_0_7
🔴PyIcon4py-install_version_0_0_8
🟢PyInflection-install_default
🟢PyIsort-install_default
🟢PyLark-install_default
🟢PyNanobind-install_default
🟢PyNumpy-install_default
🟢PyPathspec-install_default
🟢PyPytest-install_default
🟢PyPytestFactoryboy-install_default
🟢PyPytestMpi-install_pympi_default
🟢PyScikitBuildCore-install_py_scikit_build_core_default
🟢PySetuptools-install_default
🟢PySphinxcontribJquery-install_default
🟢PyTabulate-install_default
🟢PyToolz-install_default
🟢PyTypingExtensions-install_default
🟢PytorchFortran-install_version_0_4
🟢PytorchFortranProxy-install_version_0_4
🟢Rttov-install_version_13_1_gcc
🟢Rttov-install_version_13_1_nvhpc
🟢ScalesPPM-install_default
🟢Serialbox-install_serialbox_2_6_1
🟢Serialbox-install_serialbox_2_6_2_python
🟢TensorflowC-install_2_6_0
🟢Yaxt-install_default
🟢ZLibNG-install_version_2_0_0
🟢daint_cpu_cce
🟢daint_cpu_gcc
🟢daint_cpu_nvhpc
🟢daint_cpu_nvhpc_out_of_source
🟢daint_gpu_nvhpc
🟢daint_dsl_nvhpc
🟢nvhpc_cpu_double
🟢nvhpc_gpu_double

WARNING: Serial tests did not run for system tests

@jonasjucker
Copy link
Contributor

I have vacation this week. Will review it on Monday.

A brief look at the changeset reveals that you break builds of older version.
Also these multiple calls to pytest expose a lot of details of icon4py to the spack recipe. It will change with time and require a modification of the recipe, same as for the folder-mapping.
Couldn't you define a config for pytest in icon4py repo that lets pytest know what to test?
This would be much less work on the long run

@halungge
Copy link
Contributor Author

halungge commented Oct 5, 2023

I have vacation this week. Will review it on Monday.

A brief look at the changeset reveals that you break builds of older version. Also these multiple calls to pytest expose a lot of details of icon4py to the spack recipe. It will change with time and require a modification of the recipe, same as for the folder-mapping. Couldn't you define a config for pytest in icon4py repo that lets pytest know what to test? This would be much less work on the long run

I discussed this also Abishek, in the meantime we have also merged a PR in icon4py which makes a lot of the dependencies optional, with this I can actually run the tests relevant for icon integration by using a pytest marker. Icon4py PR is almost ready for this. I will need to change this one. I will ping you again when I am done.

Generally, we should have a discussion on versioning and releases. Currently in icon4py so much is going on and changing a lot, that I think it is reasonable to always integrate but we cannot guarantee to never break backward versions. That costs too much time.

@halungge halungge force-pushed the simplify-icon4py-dependencies branch from 38bda3b to fd24c8b Compare October 6, 2023 19:38
@halungge
Copy link
Contributor Author

halungge commented Oct 9, 2023

I would actually withdraw all the version of py-icon4py that were running all greenline tests immediately. That is version 0.0.8, I think. Which would of course mean also removing it from the icon package.

@jonasjucker
Copy link
Contributor

@halungge Just let me know once you are ready for a review.

@halungge halungge force-pushed the simplify-icon4py-dependencies branch from ee15320 to 74f9478 Compare October 10, 2023 09:55
@halungge
Copy link
Contributor Author

launch jenkins py-icon4py

@jenkins-apn
Copy link

tsa

🟢 unit test
Test
🟢summary
🟢 integration test
Test
🟢py-icon4py-spack_info
🟢py-icon4py-spack_spec

@jenkins-apn
Copy link

balfrin

🟢 unit test
Test
🟢summary
🟢 integration test
Test
🟢py-icon4py-spack_info
🟢py-icon4py-spack_spec
🔴 system test
Test
🟢PyIcon4py-install_version_0_0_5
🟢PyIcon4py-install_version_0_0_6
🟢PyIcon4py-install_version_0_0_7
🔴PyIcon4py-install_version_0_0_8

WARNING: Serial tests did not run for system tests

@jenkins-apn
Copy link

daint

🟢 unit test
Test
🟢summary
🟢 integration test
Test
🟢py-icon4py-spack_info
🟢py-icon4py-spack_spec
🔴 system test
Test
🟢PyIcon4py-install_version_0_0_5
🟢PyIcon4py-install_version_0_0_6
🟢PyIcon4py-install_version_0_0_7
🔴PyIcon4py-install_version_0_0_8

WARNING: Serial tests did not run for system tests

when='@0.0.8:',
type=('build', 'run'))
depends_on('py-pytest-mpi', when='@0.0.8:', type='build')
def patch(self):
Copy link
Contributor

Choose a reason for hiding this comment

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

I am not sure if we want to name it patch.
This has a special meaning in spackl, and it will be applied for every install.

I propose to give it a more meaningful name, i.e. like overwrite_pytest_ini or something.
Also you can decorate it with something like
@on_package_attributes(run_tests=True) to be exectuted only in case
--test=root is set.

Copy link
Contributor Author

@halungge halungge Oct 11, 2023

Choose a reason for hiding this comment

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

yes that is precisely why I use patch. I want it to run before the install

Copy link
Contributor

Choose a reason for hiding this comment

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

If it is simply that you can use
@run_before("install") decorator.

Just make sure it is a valid phase for python packages.

Copy link
Contributor

Choose a reason for hiding this comment

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

But it's up to your flavour.

Copy link
Contributor

@jonasjucker jonasjucker left a comment

Choose a reason for hiding this comment

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

Please also remove the failing test for removed version of icon4py in system_test.py.

And run the test for icon too: launch jenkins icon, since you change the icon-recipe as well

@halungge
Copy link
Contributor Author

launch jenkins py-icon4py icon

@jenkins-apn
Copy link

@halungge halungge merged commit 87a8a48 into main Oct 12, 2023
3 checks passed
@halungge halungge deleted the simplify-icon4py-dependencies branch October 12, 2023 07:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants