Move the figure test builds away from tox-conda#4271
Merged
Cadair merged 3 commits intosunpy:masterfrom Jun 12, 2020
Merged
Conversation
|
Hello @Cadair! Thanks for updating this PR. We checked the lines you've touched for PEP 8 issues, and found:
Comment last updated at 2020-06-12 11:49:56 UTC |
72e8dc9 to
7205253
Compare
Cadair
commented
Jun 10, 2020
Cadair
commented
Jun 10, 2020
Member
Author
|
I think this is ready for review. |
nabobalis
reviewed
Jun 10, 2020
nabobalis
approved these changes
Jun 10, 2020
dstansby
reviewed
Jun 10, 2020
cab39db to
382d160
Compare
Contributor
|
Could you give it a rebase just to check that the doc build works fine? |
Member
Author
|
I am not confident in the stability of the devdeps figure hashes at the moment. I have therefore pulled the backport label until we have this in master for a while and see how it goes. We can add the label back and have this be backported at any point. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This hopefully makes it a lot easier for people to run the figure tests locally.
The reason we can now do this is that because matplotlib build binary wheels, they statically link the version of freetype in the wheel. This means that as long as tox installs matplotlib from wheels (which it should normally) we can be reasonably confident we get the right version of freetype. To make sure this is always the case, we have now put the version of freetype in the hash lib filename which means that if for some reason the wrong version of freetype is used it will fail to run the figure tests with "hash lib not found".
@dstansby pointed out that the hashes should be independant of python version, so we have removed that from the hash lib name, which means that you can now always run
tox -e pyXX-figureand the correct version of mpl and astropy will be installed and then picked up in the name of the hash lib.The only exception to this is the devdeps build, which will link against whatever freetype is available. I am half expecting this to fail on CI as soon as I push it.matplotlib also neatly handles the freetype issue for installations from git. By default when building from git, it will download a tarball of freetype and compile against that, which is (currently?) the same version of freetype as the wheels. Therefore our freetype version checking should be sufficient for both the wheels and the dev build.