Skip to content
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

Refactor how we fetch external data. #851

Merged
merged 1 commit into from
Jul 12, 2018
Merged

Conversation

manthey
Copy link
Contributor

@manthey manthey commented Jun 20, 2018

Prior to this, a custom cmake script (girder.cmake) was used via a direct URL for each external data file. After this change, we use cmake's build-in ExternalData module. This continues to get all external data files listed and automatically untar any .tgz files.

External data file references have been moved from testing/test-data to tests/external-data. Eventually I'd like there to be only one of the tests and testing directories, as having two makes things confusing.

This also deletes some abandoned cmake scripts and removes some unused data files.

As a benefit, data files are now obtained by sha512, which should guarantee that we have the correct file, even if it changes. Before, the download url was used. This makes it so that we only need one entry in the repo per data file instead of two. The only downside is that ExternalData emits a -hash-stamp file in the download directory.

@manthey manthey force-pushed the cmake-external-data branch from 7794631 to 90e4482 Compare July 2, 2018 14:30
@manthey manthey force-pushed the isolines branch 2 times, most recently from 3c1845b to a56a346 Compare July 9, 2018 17:39
Copy link
Member

@aashish24 aashish24 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice.. where did we get the reference code? Just curious.

@manthey
Copy link
Contributor Author

manthey commented Jul 12, 2018

The old code was written by @jbeezley, I think. The new methods I adapted from other Kitware projects, but that was weeks ago and I don't remember which ones.

Prior to this, a custom cmake script (girder.cmake) was used via a
direct URL for each external data file.  After this change, we use
cmake's build-in ExternalData module.  This continues to get all
external data files listed and automatically untar any .tgz files.

External data file references have been moved from testing/test-data to
tests/external-data.  Eventually I'd like there to be only one of the
tests and testing directories, as having two makes things confusing.

This also deletes some abandoned cmake scripts and removes some unused
data files.

As a benefit, data files are now obtained by sha512, which should
guarantee that we have the correct file, even if it changes.  Before,
the download url was used.  This makes it so that we only need one entry
in the repo per data file instead of two.  The only downside is that
ExternalData emits a -hash-stamp file in the download directory.
@manthey manthey force-pushed the cmake-external-data branch from 90e4482 to 5803c2e Compare July 12, 2018 18:56
@manthey manthey merged commit 318c985 into isolines Jul 12, 2018
@manthey manthey deleted the cmake-external-data branch July 12, 2018 20:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants