Opened 16 months ago

Last modified 8 days ago

#32785 needs_review enhancement

Clean up settings for SAGE_CHECK_PACKAGES_DEFAULT_yes, etc.

Reported by: jhpalmieri Owned by:
Priority: minor Milestone: sage-9.9
Component: build Keywords:
Cc: tmonteil Merged in:
Authors: John Palmieri Reviewers:
Report Upstream: N/A Work issues:
Branch: u/jhpalmieri/check-package-defaults (Commits, GitHub, GitLab) Commit: de6db7628799084eba926a8cde84822ee3bef106
Dependencies: Stopgaps:

GitHub link to the corresponding issue

Description

From #32781:

$ git grep SAGE_CHECK_PACKAGES
build/bin/write-dockerfile.sh:ENV SAGE_CHECK_PACKAGES="!cython,!r,!python3,!gap,!cysignals,!linbox,!git,!ppl,!cmake,!rpy2,!sage_sws2rst"
build/bin/write-dockerfile.sh:ENV SAGE_CHECK_PACKAGES="!gfan,!cython,!r,!python3,!gap,!cysignals,!linbox,!git,!ppl,!cmake,!rpy2,!sage_sws2rst"
build/bin/write-dockerfile.sh:ENV SAGE_CHECK_PACKAGES="!gfan,!cython,!r,!python3,!gap,!cysignals,!linbox,!git,!ppl,!cmake,!rpy2,!sage_sws2rst"
build/bin/write-dockerfile.sh:ENV SAGE_CHECK_PACKAGES="!gfan,!cython,!r,!python3,!gap,!cysignals,!linbox,!git,!ppl,!cmake,!rpy2,!sage_sws2rst"
tox.ini:    local:             make -k V=0 SAGE_CHECK=warn SAGE_CHECK_PACKAGES="!cython,!r,!python3,!gap,!cysignals,!linbox,!git,!ppl,!cmake,!rpy2,!sage_sws2rst" {env:TARGETS_PRE:} {posargs:build} && \
tox.ini:    local:             ( [ -z "{env:TARGETS_OPTIONAL:}" ] || make -k V=0 SAGE_CHECK=warn SAGE_CHECK_PACKAGES="!cython,!r,!python3,!gap,!cysignals,!linbox,!git,!ppl,!cmake,!rpy2,!sage_sws2rst" {env:TARGETS_OPTIONAL:} || echo "(error ignored)" ) '

as compared with build/make/Makefile.in:

build/make/Makefile.in:SAGE_CHECK_PACKAGES_DEFAULT_yes := !python3
build/make/Makefile.in:SAGE_CHECK_PACKAGES_DEFAULT_warn :=
build/make/Makefile.in:SAGE_CHECK_PACKAGES_DEFAULT_no :=

We should unify these settings and document why these choices were made.

Change History (17)

comment:1 Changed 16 months ago by jhpalmieri

Comment from #32781: "We should keep doing selftest, even if they are long. Perhaps could such tests be only run by a few bots." I suggest that if tests are known to fail widely, then we should disable them in SAGE_CHECK_PACKAGES_DEFAULT_yes, maybe but it makes sense to leave the default setting for SAGE_CHECK_PACKAGES_DEFAULT_warn empty.

I could maybe imagine adding something like the old git package which had a really long test suite, but passing its tests is not relevant to the functioning of Sage. If we still have packages like this, they could be disabled by default in SAGE_CHECK_PACKAGES_DEFAULT_warn.

comment:2 Changed 16 months ago by mkoeppe

Cc: tmonteil added

comment:3 Changed 14 months ago by mkoeppe

Milestone: sage-9.5sage-9.6

comment:4 Changed 12 months ago by jhpalmieri

I just tested again, and Python's test suite still fails for me on OS X. Do we know why the other choices were made for tox and docker?

comment:5 Changed 9 months ago by mkoeppe

Milestone: sage-9.6sage-9.7

comment:6 Changed 5 months ago by mkoeppe

Milestone: sage-9.7sage-9.8

comment:7 Changed 5 months ago by jhpalmieri

I've been doing some tests on two OS X machines, one Intel, one m2.

  • cmake and curl have their test suites disabled by #30093, so we don't need to worry about them at all. git doesn't even have a Sage test suite any more.
  • giac fails its test suite on both machines.
  • gp2c fails its test suite on both machines.
  • openblas fails to build at all on m2, builds and passes on Intel.
  • ppl fails its test suite on both machines.
  • rpy2 fails its test suite on both machines.
  • python3 and cython have long test suites which often fail (although I didn't try them today), and I think they should be skipped.

So I would propose that we always skip giac, gp2c, ppl, rpy2, python3, and cython. The other standard packages behaved perfectly well: passed their test suite and did it pretty quickly. Maybe they have problems on other platforms.

I didn't try any optional or experimental packages except for igraph, which I tried by mistake. It fails for stupid reasons: No rule to make target `check'. Stop.

comment:8 Changed 5 months ago by mkoeppe

I think the igraph one may be fixed in one of the upgrade tickets

comment:9 Changed 3 months ago by mkoeppe

Configuration on Volker's buildbots: https://trac.sagemath.org/ticket/34081#comment:117

comment:10 Changed 3 months ago by jhpalmieri

The points of agreement between the buildbots and comment:7: giac, python3, cython, rpy2.

On the buildbots among the standard packages: gsl, givaro, zeromq, curl (disabled already), arb, cvxopt, cmake (disabled), networkx, openssl, flint

On the buildbots among other packages: python2, r, normaliz, yasm (not a package), nose (not a package)

From comment:7: gp2c, openblas (on m2), ppl

What about meson_python?

comment:11 Changed 3 months ago by mkoeppe

The meson_python test suite is fast but fails on some platforms (upstream is aware), which is why I set it to "warn" in #34081

comment:12 Changed 3 months ago by jhpalmieri

So how about this for a default: !giac,!python3,!cython,!rpy2,!gp2c,!ppl,?meson_python

comment:13 Changed 3 months ago by mkoeppe

Sounds good.

comment:14 Changed 3 months ago by jhpalmieri

Branch: u/jhpalmieri/check-package-defaults

comment:15 Changed 3 months ago by jhpalmieri

Authors: John Palmieri
Commit: de6db7628799084eba926a8cde84822ee3bef106
Status: newneeds_review

New commits:

de6db76trac 32785: skip some more packages during testing, by default.

comment:16 Changed 2 months ago by jhpalmieri

For what it's worth, I'm now seeing a failure with pari on OS X Intel, but the test suite passes on Apple Silicon.

comment:17 Changed 8 days ago by mkoeppe

Milestone: sage-9.8sage-9.9
Note: See TracTickets for help on using tickets.