# March 24, 2018: Nightly build manually re-triggered after fixing regression due to rename of vtkNRRDReader, vtkNRRDWriter to vtkTeemNRRD{R,W}

**URL:** <https://discourse.slicer.org/t/march-24-2018-nightly-build-manually-re-triggered-after-fixing-regression-due-to-rename-of-vtknrrdreader-vtknrrdwriter-to-vtkteemnrrd-r-w/2413>\
**Category:** Development\
**Created:** [March 24, 2018, 5:45am UTC](https://discourse.slicer.org/t/march-24-2018-nightly-build-manually-re-triggered-after-fixing-regression-due-to-rename-of-vtknrrdreader-vtknrrdwriter-to-vtkteemnrrd-r-w/2413 "2018-03-24T05:45:22Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![jcfr](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/jcfr/32/17825_2.png) [@jcfr](https://discourse.slicer.org/u/jcfr)\
**Post date:** [March 24, 2018, 5:45am UTC](https://discourse.slicer.org/t/march-24-2018-nightly-build-manually-re-triggered-after-fixing-regression-due-to-rename-of-vtknrrdreader-vtknrrdwriter-to-vtkteemnrrd-r-w/2413/1 "2018-03-24T05:45:22Z")

</div>

What happen ?

- `vtkNRRDReader`, `vtkNRRDWriter` classes were renamed to `vtkTeemNRRDReader` and `vtkTeemNRRDWriter` in [r27102](http://viewvc.slicer.org/viewvc.cgi/Slicer4?view=revision&revision=27102)
- Project impacted by the rename were all updated 👍
- but the update of the MultiVolumeExplorer hash was done after commit `r27102` and the associated reference in [Slicer/SuperBuild.cmake](https://github.com/Slicer/Slicer/blob/69a9d7738d37f6cb141e9b1e2f38931bbe57853f/SuperBuild.cmake#L217-L223) had **NOT** been updated as part of commit `r27102` 👎
- To fix this, the MultiVolumeExplorer hash was updated in [r27105](http://viewvc.slicer.org/viewvc.cgi/Slicer4?view=revision&revision=27105) 👍

Next time ?

- Let’s make sure to update references of impacted [Slicer Remote Module](https://www.slicer.org/wiki/Documentation/Nightly/Developers/Build_system/Remote_Module) or any other external projects (files `Slicer/SuperBuild/External_*.cmake`) also impacted in the commit introducing the breaking change.

Dashboard ?

- existing macOS and Windows entries were manually removed

- For these reasons, the dashboard will not show anything in the “Update” column.

---

<div class="post-metadata">

**Author:** ![ihnorton](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/ihnorton/32/9_2.png) [@ihnorton](https://discourse.slicer.org/u/ihnorton)\
**Post date:** [March 24, 2018, 10:40am UTC](https://discourse.slicer.org/t/march-24-2018-nightly-build-manually-re-triggered-after-fixing-regression-due-to-rename-of-vtknrrdreader-vtknrrdwriter-to-vtkteemnrrd-r-w/2413/2 "2018-03-24T10:40:42Z")

</div>

Sorry about that. I’m not sure if it is possible with cmake, but would be nice if there was a way to ensure that out-of-tree code can’t break the build.

---

<div class="post-metadata">

**Author:** ![jcfr](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/jcfr/32/17825_2.png) [@jcfr](https://discourse.slicer.org/u/jcfr)\
**Post date:** [March 25, 2018, 2:08am UTC](https://discourse.slicer.org/t/march-24-2018-nightly-build-manually-re-triggered-after-fixing-regression-due-to-rename-of-vtknrrdreader-vtknrrdwriter-to-vtkteemnrrd-r-w/2413/3 "2018-03-25T02:08:46Z")

</div>

> [@ihnorton](#):
>
> possible with cmake, but would be nice if there was a way to ensure that out-of-tree code can’t break the build

It is already possible to configure Slicer setting a hash of your choice for external project [1][2], would it help to have the same option for Slicer Remote ?

[1] [ExternalProject\_SetIfNotDefined](https://github.com/Slicer/Slicer/blob/69a9d7738d37f6cb141e9b1e2f38931bbe57853f/CMake/ExternalProjectDependency.cmake#L956-L961)  
[2] and [example of usage](https://github.com/Slicer/Slicer/blob/69a9d7738d37f6cb141e9b1e2f38931bbe57853f/SuperBuild/External_RapidJSON.cmake#L23-L33)

---

<div class="post-metadata">

**Author:** ![ihnorton](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/ihnorton/32/9_2.png) [@ihnorton](https://discourse.slicer.org/u/ihnorton)\
**Post date:** [March 25, 2018, 10:39am UTC](https://discourse.slicer.org/t/march-24-2018-nightly-build-manually-re-triggered-after-fixing-regression-due-to-rename-of-vtknrrdreader-vtknrrdwriter-to-vtkteemnrrd-r-w/2413/4 "2018-03-25T10:39:32Z")

</div>

I meant more along the lines of `make -k` (continue after failure excluding failed target dependees). We wouldn’t want to run the whole build like that, but it would be fine for remotes.

---

<div class="post-metadata">

**Author:** ![lassoan](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/lassoan/32/13_2.png) [@lassoan](https://discourse.slicer.org/u/lassoan)\
**Post date:** [March 25, 2018, 12:01pm UTC](https://discourse.slicer.org/t/march-24-2018-nightly-build-manually-re-triggered-after-fixing-regression-due-to-rename-of-vtknrrdreader-vtknrrdwriter-to-vtkteemnrrd-r-w/2413/5 "2018-03-25T12:01:49Z")

</div>

For users, a partially successful package would simply appear to be broken: some features are missing/not working). Missing parts of the core could cause various additional errors in extensions. I would rather not have a package with so many issues at all.
