[vtk-developers] VTK ExternalData default object store
Brad King
brad.king at kitware.com
Tue May 21 11:24:38 EDT 2013
On 05/21/2013 10:59 AM, David Cole wrote:
> But with your solution, *everybody* has to do work to achieve
> non-duplication of very large data files when they do multiple builds
> of VTK. *Everybody*.
Previously, everybody had to checkout VTKData and perhaps VTKLargeData.
Actually that is still true because we haven't converted test inputs yet.
ITK has been getting along for over 2 years without an external default.
> I thought the whole main point of ExternalData was to download each
> item needed *exactly* *once* and to enable non-duplication of each item.
No, the main point of ExternalData is to version the data with the
source without keeping the large files in the repository. A shared
persistent data store is an *optimization*.
Not everybody needs to enable such an optimization:
* Only developers typically have many build trees. They will learn
to use the optimization if they are bothered by lots of copies.
* Users will typically have only one build tree. Power users may have
more but then they are more like developers.
* Packagers (e.g. for distros) will have only one build tree. They
will expect that the build doesn't touch anything outside.
ITK generates release tarballs using a script that puts all the data
objects needed by that version in .ExternalData/ in the tarball. We
can do the same. This way no network access is needed to build from
a release tarball, and no external store is needed.
-Brad
More information about the vtk-developers
mailing list