Opened 2 years ago
Closed 22 months ago
#29901 closed enhancement (fixed)
.github/workflows/: Test all optional packages, add workflow for testing all experimental packages
Reported by:  mkoeppe  Owned by:  

Priority:  major  Milestone:  sage9.2 
Component:  porting  Keywords:  
Cc:  jhpalmieri, novoselt, ghkliem, mjo  Merged in:  
Authors:  Matthias Koeppe  Reviewers:  Jonathan Kliem 
Report Upstream:  N/A  Work issues:  
Branch:  6afe959 (Commits, GitHub, GitLab)  Commit:  6afe959a174db2339f5f10bcad8c4a535ec66cf2 
Dependencies:  #29174, #29823, #20104  Stopgaps: 
Description (last modified by )
Follow up from #29341.
Change History (38)
comment:1 Changed 2 years ago by
 Dependencies set to #29174
comment:2 Changed 2 years ago by
 Dependencies changed from #29174 to #29174, #29823
comment:3 Changed 2 years ago by
 Description modified (diff)
comment:4 Changed 2 years ago by
 Branch set to u/mkoeppe/_github_workflows___test_all_optional_packages__add_workflow_for_testing_all_experimental_packages
comment:5 Changed 2 years ago by
 Commit set to f5822220769074ede32a160e77119b8af2cd47a7
comment:6 Changed 2 years ago by
 Commit changed from f5822220769074ede32a160e77119b8af2cd47a7 to f87c885fa0ae9298830e4c2f4394092eef4fb60c
Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:
f87c885  .github/workflows/: Test all optional packages, add workflow for testing all experimental packages

comment:7 Changed 2 years ago by
.github/workflows/: Test all optional packages, add workflow for testing all experimental packages · mkoeppe/sage@f87c885 https://github.com/mkoeppe/sage/actions/runs/141135018
.github/workflows/: Test all optional packages, add workflow for testing all experimental packages · mkoeppe/sage@f87c885 https://github.com/mkoeppe/sage/actions/runs/141135010
comment:8 Changed 2 years ago by
 Dependencies changed from #29174, #29823 to #29174, #29823, #20104
comment:9 Changed 2 years ago by
 Commit changed from f87c885fa0ae9298830e4c2f4394092eef4fb60c to efb14c3d6742bbb55cdb968266b8f94246f2e203
Branch pushed to git repo; I updated commit sha1. New commits:
94ec3c9  Add sage package updatelatest command

cb7a291  Fixup rebase

1d36a2e  build/bin/sagesystempython: Try python first

a91ecab  Merge branch 't/29890/build_bin_sage_system_python__try__python__first' into t/20104/automatic_updates_of_pip_type_packages

ba6fbb5  Merge branch 't/20104/automatic_updates_of_pip_type_packages' into t/29901/_github_workflows___test_all_optional_packages__add_workflow_for_testing_all_experimental_packages

4dc7367  .github/workflows: Replace explicit optional/experimental lists by using sagepackage

efb14c3  Suppress linebreaks

comment:10 Changed 2 years ago by
https://github.com/mkoeppe/sage/runs/789828733
Error processing tar file(exit status 1): write /sage/local/share/pari/elldata/ell366: no space left on device Error response from daemon: Error processing tar file(exit status 1): write /sage/local/share/stein_watkins/a.010.bz2: no space left on device
comment:11 Changed 2 years ago by
Maybe we don't need to test database_stein_watkins
much: if database_stein_watkins_mini
works, then since they use the same spkginstall.in, the only issue, I think, is whether the big tarball is corrupt.
comment:12 Changed 2 years ago by
Right. There was apparently a point to having that old category of "huge" packages. Wondering how that got lost. > #29919 (Restore "huge" package type)
comment:13 Changed 2 years ago by
 Commit changed from efb14c3d6742bbb55cdb968266b8f94246f2e203 to 2a38f513dae5c822f478eff3f2c0062d8b4fd046
Branch pushed to git repo; I updated commit sha1. New commits:
2a38f51  .github/workflows/toxoptional.yml: Do not test huge packages

comment:14 Changed 2 years ago by
 Commit changed from 2a38f513dae5c822f478eff3f2c0062d8b4fd046 to 1fcafe87709abc9ca29d4cf8ec508667924f7fca
Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:
1fcafe8  .github/workflows/toxoptional.yml: Do not test huge packages

comment:15 Changed 2 years ago by
 Commit changed from 1fcafe87709abc9ca29d4cf8ec508667924f7fca to bd703e4d3e152544adef1cf6c9b28259f3e04e51
Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:
bd703e4  .github/workflows/toxoptional.yml: Do not test huge packages

comment:16 Changed 2 years ago by
comment:17 Changed 2 years ago by
Filtering out the known huge packages works now.
But there are many timeouts. Will need to split "optional" into 2 parts.
comment:18 Changed 22 months ago by
 Cc novoselt added
comment:19 Changed 22 months ago by
 Commit changed from bd703e4d3e152544adef1cf6c9b28259f3e04e51 to fc59886f1637525ab439daa2ec8500a52da80c01
Branch pushed to git repo; I updated commit sha1. New commits:
fc59886  Merge tag '9.2.beta5' into t/29901/_github_workflows___test_all_optional_packages__add_workflow_for_testing_all_experimental_packages

comment:20 Changed 22 months ago by
 Commit changed from fc59886f1637525ab439daa2ec8500a52da80c01 to 1a408a8027f5163c651e59374fbd160730f22935
Branch pushed to git repo; I updated commit sha1. New commits:
1a408a8  .github/workflows/toxoptional.yml: Split jobs

comment:21 Changed 22 months ago by
 Commit changed from 1a408a8027f5163c651e59374fbd160730f22935 to 50556a79d6b6b5a4913bc3a7a2e981d7201bfefb
Branch pushed to git repo; I updated commit sha1. New commits:
50556a7  Fixup syntax

comment:22 Changed 22 months ago by
Tests for experimental packages at https://github.com/mkoeppe/sage/actions/runs/170318716
Tests for optional packages at https://github.com/mkoeppe/sage/actions/runs/170362341
comment:23 Changed 22 months ago by
 Cc ghkliem mjo added
 Status changed from new to needs_review
comment:24 Changed 22 months ago by
Still exceeds 2 x 6h on ubuntuxenial
, need to split it up more
comment:25 Changed 22 months ago by
 Commit changed from 50556a79d6b6b5a4913bc3a7a2e981d7201bfefb to 6e3051d862a4e96f3865ba640616a116b01c1201
Branch pushed to git repo; I updated commit sha1. New commits:
6e3051d  Split up into more jobs

comment:26 Changed 22 months ago by
comment:27 Changed 22 months ago by
Should remove the testing of sage_numerical_backends_cplex
, sage_numerical_backends_gurobi
, which require the commercial packages to be installed first
comment:28 Changed 22 months ago by
 Commit changed from 6e3051d862a4e96f3865ba640616a116b01c1201 to 6afe959a174db2339f5f10bcad8c4a535ec66cf2
comment:29 Changed 22 months ago by
Why are there green checkmarks, if things haven't worked out?
https://github.com/mkoeppe/sage/runs/876312084?check_suite_focus=true
comment:30 Changed 22 months ago by
Targets listed in TARGETS_OPTIONAL
ignore errors.
comment:31 followup: ↓ 33 Changed 22 months ago by
Why is that? There is probably a good reason, but I'm curious. How do I efficiently use it then.
comment:32 Changed 22 months ago by
Unfortunately a test run can only get a red or a green status on GH Actions.
TARGETS_OPTIONAL
is designed for additional tests of things that are likely to fail  such as ptest
in tox.yml
, which always has 1 or 2 failures that we don't want to be signaled by a red status.
There's only a rather shallow reason why currently use TARGETS_OPTIONAL
for testing the optional and experimental packages. At the moment the majority of the optional and experimental packages fail, so all of these test runs will fail. Thus there is no information either way. But the green checkmarks look more friendly.
We can change this when we have made some progress in #29900 (Metaticket: Fix optional and experimental packages for Sage 9.2).
comment:33 in reply to: ↑ 31 Changed 22 months ago by
Replying to ghkliem:
How do I efficiently use it then.
Look at the "This run" tab of the whole workflow and search for package names that you're interested in.
comment:34 followup: ↓ 35 Changed 22 months ago by
Thanks. Yes, sounds reasonable.
From my point of view, optional should mean almost as safe as sage itself and experimental is for all stuff that might or might not work (I guess there are runtime failures as well that make stuff experimental). So adding a doctesting framework for this seems great.
comment:35 in reply to: ↑ 34 Changed 22 months ago by
Replying to ghkliem:
From my point of view, optional should mean almost as safe as sage itself and experimental is for all stuff that might or might not work (I guess there are runtime failures as well that make stuff experimental).
Yes, I agree with this interpretation.
comment:36 Changed 22 months ago by
 Reviewers set to Jonathan Kliem
 Status changed from needs_review to positive_review
I think this is a good improvement as it is.
comment:37 Changed 22 months ago by
Thanks!
comment:38 Changed 22 months ago by
 Branch changed from u/mkoeppe/_github_workflows___test_all_optional_packages__add_workflow_for_testing_all_experimental_packages to 6afe959a174db2339f5f10bcad8c4a535ec66cf2
 Resolution set to fixed
 Status changed from positive_review to closed
The present version has an explicit list of the packages to the workflow scripts. This could be made less maintenanceintensive by #29902
New commits:
trac 29754: remove packages backporting Python 3 components to Python 2.
Merge commit 'c559f26caf56378c8c4a5652f577986b4f5d431c' of git://trac.sagemath.org/sage into t/29754/nopy2backports
.github/workflows/cicygwin*: Remove build of removed package singledispatch
Merge branch 't/29745/cleanupspkgrstfiles' into t/29174/remove_autotools_spkg
build/pkgs/autotools: Remove
Merge branches 't/29823/_github_workflows_ci_cygwin___remove_build_of_removed_packages' and 't/29174/remove_autotools_spkg' into t/29901/_github_workflows___test_all_optional_packages__add_workflow_for_testing_all_experimental_packages
.github/workflows/: Test all optional packages, add workflow for testing all experimental packages