Why are the extension manager updates not up-to-date?

After an update on a 3D Slicer cloud server with the extension manager, the Lung CT Analyzer extension is dated 20.2.2023 - a gap of one and a half weeks with many commits.
How can I force an update?

Probably you need to install 5.2.2. We only update extensions for the current release and preview versions.

Maybe this is another place worthy of an update notification @lassoan ? It would equally be applied to each Slicer Preview build where entering the extensions manager days after the release would detail that these aren’t the latest versions of the extensions.

1 Like

We display a notification that the application is not up-to-date. This also means that none of the applications are up-to-date, but users are not explicitly told, so they are not aware of this. I’m not sure where should we display this information. Any suggestions are welcome.

How about a notice on the extension window that extensions are no longer being updated for the version currently in use? That would be the time the user would need to know this information.

This sounds good there is some space in the extensions manager next to the Restart/Close buttons:

What would be the text?

Update the application to receive extension updates.

or

This application version no longer receives extension updates.

or

A new application version is available. This version no longer receives extension updates.

(there is no space for a lot of text)

The first option is probably succinct enough. Or slightly modify to “…receive the latest extension updates.”

The “Check for updates” button at the top of the window should be disabled/hidden in this case to make it clear that this functionality is now unavailable for this version? Or I guess you could update to the last version of the extension for the given application version? I could imagine being confused that pressing “Check for updates” could get an update even though the text at the bottom of the window says the application doesn’t receive updates. The user could receive an extension update that is newer from what they already have installed but it is no longer guaranteed to be the latest version of the extension.

I know we like to avoid warning dialogs, but to me it would make sense that if you open the extension manager you would get a message like: “Extensions are not updated for the Slicer version you are using. Please update to the latest release or preview build to install updated extensions.” This could have a “don’t show again” option.

2 Likes

Thumbs up for this message box …

“Please update Slicer to the latest stable version to receive extension update.”

I really would like us to emphasize the distinction in stable version (as this feature is only available for stable releases).

I also like Steve’s suggestion of more intrusive popup box that is hard to avoid. i think if we do it once (as opposed to every time extension manager is brought forward) it will be ok.

Not quite. The main branch can go several days without a new commit. Extensions are still built each day so you can get multiple days of updated extensions for an individual preview release revision.

The point is though, you cannot update an extension installed in a preview version. The message does not make it clear which version of slicer to upgrade. As a user of 5.2.1 you can also intrepret this to get the latest and brightest in the preview version, and you won’t be getting any extension updates after you install the program.

You can update an extension installed in a preview release.

For example Slicer 5.3.0 revision 31618 was built last night along with other extensions such as SlicerMorph. If you install that version of Slicer and SlicerMorph today, then if Slicer has no new commit pushed today, but if SlicerMorph has a commit pushed today, then tomorrow there would be an available extension update for SlicerMorph for Slicer 5.3.0 revision 31618.

A preview build version only becomes obsolete once there is a new commit pushed to the main branch.

But what if Slicer pushed a commit before we did? What you are describing is a corner case. We can’t rely on that to update extensions in a preview version.

If Slicer pushes any commit today, then yes the preview build becomes obsolete. However at times over the weekend and especially during holidays there are often no new commits pushed to the main branch, however updated extensions will constantly be provided on a nightly basis.

Again the point is that continuous and reliable updates to extension is a feature that is only available in stable release. That’s what I am trying to communicate.

Ok that is fine. Just pointing out that extensions can be updated when using a Slicer Preview release if that preview release is >1 days old and is the latest preview release.

1 Like

It would be great if a new Slicer stable version could automatically detect. which extensions were installed previously in stable on that computer, and install all of them in one go.