# Did sitkUtils.PullVolumeFromSlicer() break with Slicer 5.2?

**URL:** <https://discourse.slicer.org/t/did-sitkutils-pullvolumefromslicer-break-with-slicer-5-2/26863>\
**Category:** Development\
**Created:** [December 21, 2022, 12:36am UTC](https://discourse.slicer.org/t/did-sitkutils-pullvolumefromslicer-break-with-slicer-5-2/26863 "2022-12-21T00:36:09Z")\
**Posts on this page:** 1\
**Showing post:** 9

<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:** [December 21, 2022, 2:50am UTC](https://discourse.slicer.org/t/did-sitkutils-pullvolumefromslicer-break-with-slicer-5-2/26863/9 "2022-12-21T02:50:46Z")

</div>

Setting an exact version requirement for a Python package in a complex system is a really bad idea. Dependencies can be so tangled that by setting exact version requirements for a few packages can almost guarantee a failure somewhere. Usually exact version requirement are not even necessary, but it is just because developers are cutting corners (because setting an exact known version is simpler for a developer than exploring what range of versions work).

We ran into the same issue with TotalSegmentator and SimpleITK. If you cannot fix the problem in the package that sets the exact version requirement then you can use this technique to prevent replacement of SimpleITK:

> <https://github.com/lassoan/SlicerTotalSegmentator/blob/70271651d7639bba716dcbd91dcc6e209b3fcdf1/TotalSegmentator/TotalSegmentator.py#L550-L594>

---

_[View the full topic](https://discourse.slicer.org/t/did-sitkutils-pullvolumefromslicer-break-with-slicer-5-2/26863)._
