# Slicer 5.0 deprecation discussion/wiki

**URL:** <https://discourse.slicer.org/t/slicer-5-0-deprecation-discussion-wiki/2377>\
**Category:** Development\
**Created:** [March 19, 2018, 7:42pm UTC](https://discourse.slicer.org/t/slicer-5-0-deprecation-discussion-wiki/2377 "2018-03-19T19:42:45Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![cpinter](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/cpinter/32/7995_2.png) [@cpinter](https://discourse.slicer.org/u/cpinter)\
**Post date:** [March 19, 2018, 7:42pm UTC](https://discourse.slicer.org/t/slicer-5-0-deprecation-discussion-wiki/2377/1 "2018-03-19T19:42:45Z")

</div>

Hi all,

Not sure how to propose topics in the agenda, as the [developer hangouts page](https://www.slicer.org/wiki/Developer_Meetings) seems not to be used anymore.

In any case, I’d like to propose that we talk about non-backward-compatible changes regarding the upcoming 5.0 release, especially removing obsolete features, and other big changes that are best done with this major version upgrade.

Thanks!

* * *

[edit: after checking with `@cpinter`, I moved this to a new topic in Development to give more visibility and space for discussion – `@ihnorton`]

---

<div class="post-metadata">

**Author:** ![pieper](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/pieper/32/8_2.png) [@pieper](https://discourse.slicer.org/u/pieper)\
**Post date:** [March 19, 2018, 8:13pm UTC](https://discourse.slicer.org/t/slicer-5-0-deprecation-discussion-wiki/2377/2 "2018-03-19T20:13:29Z")

</div>

Hi Csaba -

Yes, this thread has effectively taken over for the wiki, so this is the right place to post. (I guess we could discuss if there’s a better way to organize things).

I’m not able to join this Tuesday, but it sounds like a good topic. Last week we briefly discussed that 5.0 is as big a step as the name might imply, but we had made the naming decision a few months or so ago and the plan at least so far is to keep it, even if there are no big API changes (mostly just updated versions of VTK, ITK, Qt).

-Steve

---

<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 19, 2018, 8:35pm UTC](https://discourse.slicer.org/t/slicer-5-0-deprecation-discussion-wiki/2377/3 "2018-03-19T20:35:26Z")

</div>

> [@Weekly Hangout for Slicer user and developer](https://discourse.slicer.org/t/weekly-hangout-for-slicer-user-and-developer/53/78):
>
> seems not to be used anymore.

Indeed, I updated the page accordingly.

> [@Weekly Hangout for Slicer user and developer](https://discourse.slicer.org/t/weekly-hangout-for-slicer-user-and-developer/53/78):
>
> we talk about non-backward-compatible changes regarding the upcoming 5.0 release

So far incompatible changes have been documented here: [Documentation/Nightly/Developers/Tutorials/MigrationGuide - Slicer Wiki](https://www.slicer.org/wiki/Documentation/Nightly/Developers/Tutorials/MigrationGuide)

I suggest you create a wiki page here: [Documentation/Labs - Slicer Wiki](https://www.slicer.org/wiki/Documentation/Labs#Internals) where we could start document functionality to remove etc …

---

<div class="post-metadata">

**Author:** ![cpinter](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/cpinter/32/7995_2.png) [@cpinter](https://discourse.slicer.org/u/cpinter)\
**Post date:** [March 19, 2018, 9:04pm UTC](https://discourse.slicer.org/t/slicer-5-0-deprecation-discussion-wiki/2377/4 "2018-03-19T21:04:51Z")

</div>

Thanks Steve and Jc!

I created [this page](https://www.slicer.org/wiki/Documentation/Nightly/Developers/Tutorials/MigrationGuide/Slicer50) and added a list of things that could be done in terms of the major version upgrade. Feel free to add/comment/etc.

I’m happy to help with the changes we agree on before the release of 5.0.

---

<div class="post-metadata">

**Author:** ![pieper](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/pieper/32/8_2.png) [@pieper](https://discourse.slicer.org/u/pieper)\
**Post date:** [March 19, 2018, 9:48pm UTC](https://discourse.slicer.org/t/slicer-5-0-deprecation-discussion-wiki/2377/5 "2018-03-19T21:48:00Z")

</div>

Thanks for making the page @cpinter! 👍 The items on the page seem very well thought out.

---

<div class="post-metadata">

**Author:** ![cpinter](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/cpinter/32/7995_2.png) [@cpinter](https://discourse.slicer.org/u/cpinter)\
**Post date:** [March 20, 2018, 3:33pm UTC](https://discourse.slicer.org/t/slicer-5-0-deprecation-discussion-wiki/2377/6 "2018-03-20T15:33:34Z")

</div>

A major decision was made at the hangout:

- Upcoming release: 4.10 or 5.0?
  - The question is whether to consider the user perspective (5.0: Qt5, no Editor on GUI, etc) or the developer perspective (4.10: no Qt4, no Editor as API, node copying, etc.)

So we decided that the best would be to release 4.10 this time, so that we have time to make the non-backwards-compatible changes for 5.0 (the wiki list will be extended), because major version number bumps happen only every several years.

---

<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 20, 2018, 5:38pm UTC](https://discourse.slicer.org/t/slicer-5-0-deprecation-discussion-wiki/2377/7 "2018-03-20T17:38:45Z")

</div>

@cpinter Thanks for the update

> [@cpinter](#):
>
> the wiki list will be extended

See [Work-in-progress: Transition plans for Slicer 4.10, and major changes in Slicer 5.0](https://www.slicer.org/wiki/Documentation/Nightly/Developers/Tutorials/MigrationGuide/Slicer50)

---

<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 22, 2018, 11:13pm UTC](https://discourse.slicer.org/t/slicer-5-0-deprecation-discussion-wiki/2377/8 "2018-03-22T23:13:32Z")

</div>

I realized that the code associated with these two CLI modules [BlobDetection](https://github.com/Slicer/Slicer/tree/master/Modules/CLI/BlobDetection) and [ConnectedComponent](https://github.com/Slicer/Slicer/tree/master/Modules/CLI/ConnectedComponent) have **NOT** been compiled since [r20744](http://viewvc.slicer.org/viewvc.cgi/Slicer4?view=revision&revision=20744) (from August 2010).

The commit message indicates:

```plaintext
ENH: remove BlobDetection and other CLI modules as requested

```

Associated issue was:

- [#2809](https://issues.slicer.org/view.php?id=2809): Create extensions for BlobDetection and ConnectedComponent module

And a excerpt from @pieper reply from on the [slicer-devel](http://slicer-devel-archive.65872.n3.nabble.com/Adding-new-modules-to-Slicer-core-tp4025907p4026923.html) mailing list thread entitled `Re: Adding new modules to Slicer core? `:

> [@](#):
>
> I haven’t looked at this in detail, but I think the module has the **potential for wide utility** , but since it’s **currently disabled** it’s not yet widely used. It also seems that it **doesn’t have documentation** , which is probably why it is currently disabled. So yes, for now I think BlobDetection and the related module ConnectedComponent **should move to an extension** (as should a few other specialized modules). We should probably make this a group project at some point, but as we discussed on yesterday’s call performance optimization and ITKv4 are higher priorities right now 🙂

Based on the information I found, I will submit a PR removing the modules today and plan on integrating it tomorrow.

> <https://github.com/Slicer/Slicer/issues/923>
>
> \_This issue was created automatically from an original \[Mantis Issue\](https://ma…ntisarchive.slicer.org/view.php?id=923). Further discussion may take place here.\_

---

<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, 7:55am UTC](https://discourse.slicer.org/t/slicer-5-0-deprecation-discussion-wiki/2377/9 "2018-03-25T07:55:52Z")

</div>

Based on feedback posted on [Slicer/Slicer#923](https://github.com/Slicer/Slicer/pull/923), we created a dedicated extension to bundle Slicer legacy modules:

> **[GitHub - Slicer/SlicerLegacyModules: Collection of legacy Slicer modules](https://github.com/Slicer/SlicerLegacyModules)**
>
> Collection of legacy Slicer modules. Contribute to Slicer/SlicerLegacyModules development by creating an account on GitHub.

There is also a [step-by-step guide](https://github.com/Slicer/SlicerLegacyModules#how-to-extract-module-history-from-slicer-and-include-it-in-this-extension-) explaining how to extract history.
