While running the tests (to see if I broke anything for #19166) I noticed that they take quite a while...
======================================================================== slowest 20 test durations ========================================================================
359.94s call lib/spack/spack/test/cmd/license.py::test_list_files
41.18s call lib/spack/spack/test/cmd/url.py::test_url_list
37.59s call lib/spack/spack/test/cmd/clean.py::test_function_calls[-a-counters5]
17.31s call lib/spack/spack/test/directory_layout.py::test_yaml_directory_layout_parameters
15.94s call lib/spack/spack/test/bindist.py::test_default_rpaths_create_install_default_layout
13.59s call lib/spack/spack/test/cmd/env.py::test_stack_combinatorial_view[mock_archive0]
13.29s call lib/spack/spack/test/package_sanity.py::test_get_all_packages
12.66s call lib/spack/spack/test/cmd/list.py::test_list_format_html
11.95s call lib/spack/spack/test/bindist.py::test_default_rpaths_install_nondefault_layout
11.28s call lib/spack/spack/test/cmd/env.py::test_stack_view_multiple_views[mock_archive0]
10.87s call lib/spack/spack/test/cmd/env.py::test_stack_view_select_and_exclude[mock_archive0]
10.78s call lib/spack/spack/test/cmd/env.py::test_stack_view_activate_from_default[mock_archive0]
10.43s call lib/spack/spack/test/bindist.py::test_relative_rpaths_create_default_layout
10.31s call lib/spack/spack/test/cmd/env.py::test_view_link_roots[mock_archive0]
10.12s call lib/spack/spack/test/cmd/env.py::test_stack_view_exclude[mock_archive0]
9.79s call lib/spack/spack/test/cmd/env.py::test_stack_view_select[mock_archive0]
9.68s call lib/spack/spack/test/cmd/env.py::test_stack_view_no_activate_without_default[mock_archive0]
9.07s call lib/spack/spack/test/cmd/env.py::test_view_link_all[mock_archive0]
9.02s call lib/spack/spack/test/cmd/url.py::test_url_stats
9.02s call lib/spack/spack/test/cmd/url.py::test_url_summary
To be fair this is on a somewhat old MacBook Air, but still... 6 minutes for checking the licenses is, let's call it ambitious^^. Has anyone taken a look at speeding things up?
And I'm pretty sure the fail of
FAIL lib/spack/spack/test/bindist.py::test_push_and_fetch_keys
should have been an XFAIL or SKIP right? (It skipped a bunch of other pgp-dependent stuff)
This is largely a copy from a comment in #19166, but @alalazo correctly pointed out it deserves its own issue. I don't think it is super urgent as upstream tests (aka Github checks) are fine as a replacement for me as a causal contributor, i.e. I can just not run the tests at all and let github do it's stuff. But I wouldn't want to run these multiple times a day... We can probably disable a significant amount of tests by default (e.g. the license test really only needs to run on Github, no contributor will break spack with it), but some kind of "only test what you changed wrt to develop" intelligence would be ideal.
If you are here and want to work on this: From what I've seen most time got sunk into the regex application, so this should be the place to start.
Pinging various people who might know how to speed this up, feel free to ignore if you deem it low priority: @scheibelp @adamjstewart @becker33
While running the tests (to see if I broke anything for #19166) I noticed that they take quite a while...
To be fair this is on a somewhat old MacBook Air, but still... 6 minutes for checking the licenses is, let's call it ambitious^^. Has anyone taken a look at speeding things up?
And I'm pretty sure the fail of
should have been an XFAIL or SKIP right? (It skipped a bunch of other pgp-dependent stuff)
This is largely a copy from a comment in #19166, but @alalazo correctly pointed out it deserves its own issue. I don't think it is super urgent as upstream tests (aka Github checks) are fine as a replacement for me as a causal contributor, i.e. I can just not run the tests at all and let github do it's stuff. But I wouldn't want to run these multiple times a day... We can probably disable a significant amount of tests by default (e.g. the license test really only needs to run on Github, no contributor will break
spackwith it), but some kind of "only test what you changed wrt todevelop" intelligence would be ideal.If you are here and want to work on this: From what I've seen most time got sunk into the regex application, so this should be the place to start.
Pinging various people who might know how to speed this up, feel free to ignore if you deem it low priority: @scheibelp @adamjstewart @becker33