-
-
Notifications
You must be signed in to change notification settings - Fork 28
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
Test multiple PARI versions #31
Conversation
5c687d6
to
5bdede8
Compare
@videlec Please review, it would be good to include this too in the next cypari2 release. |
5bdede8
to
7722a37
Compare
What is the It would be better to do |
travis is supporting caching: https://docs.travis-ci.com/user/caching/. Using it would significantly speed up pari download and compilation. Though I am not sure if a different cache is automatically used for each environment. |
Ask upstream, seriously. They have a strange version numbering scheme. |
For compilation, we could use ccache indeed. For downloads, Travis CI documents that this is not the intended use of caching: https://docs.travis-ci.com/user/caching/#Things-not-to-cache |
9e829e3
to
9f5e0d3
Compare
I tried to setup ccache, but I'm not entirely sure that it works. In any case, this shouldn't prevent this PR from being merged. |
4d63e83
to
b0c8210
Compare
It should work, though we won't notice a difference on the first build... |
It would be cleaner to have two environment variables |
b0c8210
to
22e0e47
Compare
I don't know how you would do that, but feel free to implement it. |
Caching seems to work now. |
One good thing would actually be to activate ccache for PARI compilation but disable it for cypari2. These are big useless C and .so files that you do not want to keep. |
Why that? ccache can also speed up compilations of Cython-generated C files. |
I tried a simpler script version on the branch test_pari_versions-bis |
I was worried about the cache limit being set to 256M. With a quick
|
In Travis, do you know why does |
Cython takes a while to compile because it uses itself to compile itself to C. And cysignals also uses Cython, so it also needs to be compiled. But |
See #32 |
First of all, the limit can be changed. Second, it seems that the cache is only a bit over 100MB, so 256MB should be large enough. |
Why do you think so? Look at the build logs, you see something like
|
I just realized that caching might not work properly with See also https://ccache.samba.org/manual.html#_compiling_in_different_directories |
Don't the
|
(not sure pypa/pip#4262) |
But travis does support pip cachig (https://docs.travis-ci.com/user/caching/)
|
In theory, yes. In practice, it doesn't actually seem to work: pypa/pip#4242 |
Hmm, the actual issue might be pypa/pip#804 |
45d8695
to
3a8c04a
Compare
We should test: