#13533 closed enhancement (fixed)
Remove "optional - gcc" from doctests
Reported by: | jdemeyer | Owned by: | mvngu |
---|---|---|---|
Priority: | major | Milestone: | sage-5.4.1 |
Component: | doctest coverage | Keywords: | |
Cc: | Merged in: | sage-5.4.1.rc0 | |
Authors: | Jeroen Demeyer | Reviewers: | Karl-Dieter Crisman, John Palmieri |
Report Upstream: | N/A | Work issues: | |
Branch: | Commit: | ||
Dependencies: | Stopgaps: |
Description
Some doctests are marked
# optional - gcc
but it seems reasonable to require gcc
for doctests. After all, compiling Cython code is an integral part of Sage. Indeed, many doctests already fail without gcc
.
Unfortunately, this exposes #12446, so we need "# known bug
".
Attachments (1)
Change History (22)
Changed 9 years ago by
comment:1 Changed 9 years ago by
- Status changed from new to needs_review
comment:2 follow-ups: ↓ 3 ↓ 4 Changed 9 years ago by
comment:3 in reply to: ↑ 2 Changed 9 years ago by
Replying to kcrisman:
Maybe it's not obvious we should force people to have gcc to run doctests?
The problem is that there are quite a few doctests already in Sage which require a C/C++/Fortran compiler. So we certainly could mark all those "# optional - foo compiler". But then a lot of tests would be missed in normal doctesting. For example, #12446 would not have happened if the "# optional - gcc" wasn't there.
I think it's not too much to ask for a user to have binutils installed in order to run Sage doctests. Why only binutils? If #13515 is merged (which will happen, since it's a blocker), we can ship all the needed compilers with Sage, which means the host system only needs to provide binutils (assembler, linker, archiver...)
comment:4 in reply to: ↑ 2 ; follow-up: ↓ 6 Changed 9 years ago by
Replying to kcrisman:
Maybe it's not obvious we should force people to have gcc to run doctests?
A different —more pragmatic— answer is the following: if a user doesn't have a compiler toolchain, he is very unlikely to be a Sage developer. Why would a non-Sage-developer want to run all doctests?
comment:5 Changed 9 years ago by
comment:6 in reply to: ↑ 4 ; follow-up: ↓ 9 Changed 9 years ago by
Maybe it's not obvious we should force people to have gcc to run doctests?
A different —more pragmatic— answer is the following: if a user doesn't have a compiler toolchain, he is very unlikely to be a Sage developer. Why would a non-Sage-developer want to run all doctests?
Because she is trying to help out? Just checking things work on an obscure platform? Wants to make sure their copy isn't corrupted somehow? I guess a better argument is your first one, that a number of tests already fail without gcc, so we should be consistent (which way, I'm agnostic on).
comment:7 Changed 9 years ago by
So you agree that make all gcc tests non-optional is the better option then? For me, the most important argument is to increase testing coverage.
comment:8 Changed 9 years ago by
I guess I'm agnostic, like I said. I could easily go the other way.
comment:9 in reply to: ↑ 6 Changed 9 years ago by
Replying to kcrisman:
Just checking things work on an obscure platform?
The only way to have a working Sage without gcc is to download a binary. For this obscure platform, there won't be binaries, so you need gcc to build Sage in the first place.
comment:10 Changed 9 years ago by
See my experience at #9191 for why I now agree with you. But can you post a link to the sage-devel or other discussion there was about this? I thought there was a brief one, but I can't find it now (probably it's not titled about gcc on Google groups).
comment:11 Changed 9 years ago by
This looks good. I just have to test it on Linux (due to the floating point issue) but presumably that's where you developed it so I doubt there will be problems.
comment:12 Changed 9 years ago by
How does this ticket interact with #13540?
comment:13 follow-up: ↓ 14 Changed 9 years ago by
I'm having trouble doing any testing of 5.4.beta1 on sage.math - Cython is unavailable to me. I'm not sure why, it's just the usual sage.math binary. Anyway, if someone else can show this works there, I'm ok with it, but I'm reluctant to give final positive review otherwise. But it would suffice to have doctests run on Linux properly.
Naturally, if #13540 were to come about, that would be quite different and this would be partly unnecessary (though the known bug
would still be). I knew there was something else - John, can you post a link to the thread where Robert discussed #13540 first? I just couldn't find it.
comment:14 in reply to: ↑ 13 Changed 9 years ago by
Replying to kcrisman:
Naturally, if #13540 were to come about, that would be quite different and this would be partly unnecessary (though the
known bug
would still be). I knew there was something else - John, can you post a link to the thread where Robert discussed #13540 first? I just couldn't find it.
I think this is it.
comment:15 Changed 9 years ago by
comment:16 follow-up: ↓ 17 Changed 9 years ago by
Okay, sounds good.
comment:17 in reply to: ↑ 16 Changed 9 years ago by
comment:18 Changed 9 years ago by
- Reviewers set to Karl-Dieter Crisman, John Palmieri
- Status changed from needs_review to positive_review
I've now run tests on a few machines (including sage.math), so combined with what Karl-Dieter did, we can give this a positive review.
comment:19 Changed 9 years ago by
- Milestone changed from sage-5.4 to sage-5.5
comment:20 Changed 9 years ago by
- Merged in set to sage-5.5.beta0
- Resolution set to fixed
- Status changed from positive_review to closed
comment:21 Changed 9 years ago by
- Merged in changed from sage-5.5.beta0 to sage-5.4.1.rc0
- Milestone changed from sage-5.5 to sage-5.4.1
This seems to have a different mission than #11162. Maybe it's not obvious we should force people to have gcc to run doctests?