VTK Remote Modules have been added to VTK in 2015 in an attempt to easily add new modules to VTK from external repositories.
At the time, VTK was not very modular and creating modules was not easy as it is now, so it made sense.
However, having such remote modules begs the question, are these modules part of VTK or not ?
If Yes, the VTK maintainers should ensure they build and are being tested as well as any other parts of VTK. If not, then they should not be available as a build option of VTK, yet they are. So VTK remote modules can be considered actual parts of VTK.
With 9.0 and later, VTK is now much more modular than it was before and building VTK modules against VTK is the norm in many projects.
But then what is the use of remote modules ?
Should we add new ones and expand this ?
Should we keep the current ones but add no new ones ?
Should we outright remove them ?
I’d be happy to hear any inputs on this.
Please note there is 4 unmaintained remote modules on the verge of being removed, as this is not acceptable to have unmaintained code in VTK. https://gitlab.kitware.com/vtk/vtk/-/merge_requests/8896
@dgobbi @jcfr @ben.boeckel @cory.quammen @berk.geveci @Charles_Gueunet @Francois_Mazen
List of current remote modules
Here is the list and status of each of the VTK remote modules:
MomentInvariants:
https://gitlab.kitware.com/vtk/MomentInvariants/
Maintained and up to date
PoissonReconstruction:
https://github.com/lorensen/PoissonReconstruction
Unmaintained
PowerCrust:
https://github.com/lorensen/Powercrust
Unmaintained
RenderingLookingGlass
https://github.com/Kitware/LookingGlassVTKModule
Maintained and up to date
VTKSignedTensor:
https://github.com/KitwareMedical/VTKSignedTensor
Unmaintained and out of date
SplineDrivenImageSlicer
https://github.com/martinken/midas-journal-838.git
Unmaintained and out of date
vtkDICOM
https://github.com/dgobbi/vtk-dicom
Maintained and up to date
Note: This can be built as external as well
Related: