View Issue Details

IDProjectCategoryView StatusLast Update
0002912Slicer4Core: Extensionspublic2017-06-10 08:51
Reporterfbudin Assigned Tomatthew-woehlke  
PriorityhighSeverityminorReproducibilityhave not tried
Status closedResolutionfixed 
Product Version 
Target VersionSlicer 4.4.0Fixed in VersionSlicer 4.4.0 
Summary0002912: Install dependent extensions
Description

Francois: If one extension depends on another one, I saw that it compiles the latter when compiling the first extension. However, does it install the second extension when installing the first one?

Jc: No, this should be implemented.

TagsNo tags attached.

Relationships

related to 0003704 assignedmatthew-woehlke Extension - Support for build time dependency 
related to 0003695 assignedmatthew-woehlke Extension - Installing an extension should summarize all dependencies that will be installed 
related to 0003696 assignedmatthew-woehlke Extension - Details page should include a "Dependency" section 
related to 0003728 closedsjh267 Fix crash in qMidasAPI.cpp 

Activities

matthew-woehlke

matthew-woehlke

2014-05-12 11:31

developer   ~0011728

This has been implemented in https://github.com/mwoehlke-kitware/Slicer/tree/2912-install-extension-dependencies.

jcfr

jcfr

2014-05-19 07:24

administrator   ~0011891

After uploading to extensions, Test-2912-A and Test-2912-B:

  • both containing two CLIs
  • Test-2912-B depending on Test-2912-A

... I got the following assert after trying to install "Test-2912-B"

8<----8<----8<----8<----8<----8<----8<----8<----8<----8<----
"Retrieving extension metadata [ extensionId: 45327]"
ASSERT: "queryResult.Result.count()" in file /home/jchris/Projects/Slicer-1-SuperBuild-Qt485/qRestAPI/qMidasAPI.cpp, line 116
error: [/home/jchris/Projects/Slicer-1-SuperBuild-Qt485/Slicer-build/bin/./SlicerApp-real] exit abnormally - Report the problem.
8<----8<----8<----8<----8<----8<----8<----8<----8<----8<----

I am looking to the problem. And will provide more details shortly.

jcfr

jcfr

2014-05-19 07:57

administrator   ~0011892

Let me know if there are update that need to be pushed server side ?

jcfr

jcfr

2014-05-19 12:57

administrator   ~0011901

I just tested the new topic. Works great. Please integrate.

matthew-woehlke

matthew-woehlke

2014-05-19 13:47

developer   ~0011904

"Fixed" in r23212.

Right now this relies on the .s4ext packaged with the extension for the dependency list, so e.g. it is not possible to know dependencies before the extension is downloaded. Eventually we would like the server to report dependencies also, but that will be addressed at a later time.

fbudin

fbudin

2014-05-20 13:42

developer   ~0011931

It works great, except that if one extension is specified as dependent and does not exist (ie: if there is a problem during its compilation), Slicer crashes at the end of the download of the first extension (when it verifies the dependencies?).

matthew-woehlke

matthew-woehlke

2014-05-20 14:13

developer   ~0011932

@fbudin, did it crash, or are you hitting the assert in qMidasAPI.cpp that jcfr mentioned above? That assert happens when we ask about an extension that doesn't exist, which is a legitimate response from the server... ergo the assert is probably a bug.

fbudin

fbudin

2014-05-21 06:05

developer   ~0011933

I get the following message in the terminal:
"Retrieving extension metadata [ extensionId: 45473]"
"Downloading extension [ itemId: 137994]"
ASSERT: "queryResult.Result.count()" in file /devel/linux/Slicer4_linux64/Slicer4-trunk-build-VTK5/qRestAPI/qMidasAPI.cpp, line 116
error: [/devel/linux/Slicer4_linux64/Slicer4-trunk-build-VTK5/Slicer-build/bin/./SlicerApp-real] exit abnormally - Report the problem.

And Slicer closes.

fbudin

fbudin

2014-05-23 12:46

developer   ~0011951

Additional feedback: If the dependent extension is already install, Slicer still ask about installing it. It is not a big issue, but it would look more polish if Slicer was asking about installing the additional extension only if necessary.

2014-05-26 08:50

 

matthew-woehlke

matthew-woehlke

2014-05-26 08:50

developer   ~0011955

Attached patch should fix the issue mentioned in #0011951.

jcfr

jcfr

2014-05-27 06:58

administrator   ~0011959

@Matt: Patch looks good. Please integrate.

matthew-woehlke

matthew-woehlke

2014-05-28 07:51

developer   ~0011976

Issue mentioned in #0011951 fixed in r23253.

fbudin

fbudin

2014-05-29 11:46

developer   ~0011992

Just FYI, I still had the same problem as in #0011933 with r23261

"Retrieving extension metadata [ extensionId: 46533]"
"Downloading extension [ itemId: 139110]"
ASSERT: "queryResult.Result.count()" in file /devel/linux/Slicer4_linux64/Slicer4-trunk-build-VTK6/qRestAPI/qMidasAPI.cpp, line 116
error: [/opt/Francois/bin/Slicer-4.3.1-2014-05-29-linux-amd64-VKT6/./bin/SlicerApp-real] exit abnormally - Report the problem.

jcfr

jcfr

2014-09-17 23:01

administrator   ~0012533

Closing resolved issues that have not been updated in more than 3 months.

Related Changesets

Import 2017-06-07 23:51:09: master aa9009d5

2014-05-19 17:38:57

mwoehlke

Details Diff
ENH: Install extension dependencies

When installing an extension, also query the extension's internal
description file for its list of dependencies, and prompt to install
them as well.

Issue 0002912

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23212 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Base/QTCore/qSlicerExtensionsManagerModel.cxx Diff File

Import 2017-06-07 23:51:09: master f336a9ef

2014-05-28 11:43:15

mwoehlke

Details Diff
BUG: Don't install already-installed dependencies

When considering an extension's dependencies, don't prompt about (or
attempt to (re)install) dependencies that are already installed.

Issue 0002912

git-svn-id: http://svn.slicer.org/Slicer4/trunk@23253 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Base/QTCore/qSlicerExtensionsManagerModel.cxx Diff File

Issue History

Date Modified Username Field Change
2013-02-01 04:16 jcfr New Issue
2013-02-01 04:16 jcfr Status new => assigned
2013-02-01 04:16 jcfr Assigned To => jcfr
2013-02-01 04:18 jcfr Reporter jcfr => fbudin
2013-02-01 04:18 jcfr Target Version => Slicer 4.3.0
2013-02-01 04:19 jcfr Description Updated
2013-09-02 13:09 jcfr Target Version Slicer 4.3.0 => Slicer 4.3.1
2013-09-24 11:12 jcfr Target Version Slicer 4.3.1 => Slicer 4.3.2
2014-03-06 10:15 nicole Target Version Slicer 4.3.2 => Slicer 4.4.0
2014-03-07 11:18 jcfr Priority normal => high
2014-04-16 07:50 jcfr Assigned To jcfr => matthew-woehlke
2014-04-16 07:51 jcfr Status assigned => acknowledged
2014-04-16 07:51 jcfr Status acknowledged => assigned
2014-05-07 08:43 matthew-woehlke Status assigned => acknowledged
2014-05-12 11:31 matthew-woehlke Note Added: 0011728
2014-05-12 11:31 matthew-woehlke Status acknowledged => feedback
2014-05-19 07:24 jcfr Note Added: 0011891
2014-05-19 07:24 jcfr Status feedback => assigned
2014-05-19 07:57 jcfr Note Added: 0011892
2014-05-19 12:57 jcfr Note Added: 0011901
2014-05-19 13:08 jcfr Relationship added related to 0003695
2014-05-19 13:11 jcfr Relationship added related to 0003696
2014-05-19 13:47 matthew-woehlke Note Added: 0011904
2014-05-19 13:47 matthew-woehlke Status assigned => resolved
2014-05-19 13:47 matthew-woehlke Resolution open => fixed
2014-05-20 13:42 fbudin Note Added: 0011931
2014-05-20 14:13 matthew-woehlke Note Added: 0011932
2014-05-21 05:34 jcfr Relationship added related to 0003704
2014-05-21 06:05 fbudin Note Added: 0011933
2014-05-23 12:46 fbudin Note Added: 0011951
2014-05-26 08:50 matthew-woehlke File Added: 0001-BUG-Don-t-install-already-installed-dependencies.patch
2014-05-26 08:50 matthew-woehlke Note Added: 0011955
2014-05-26 08:50 matthew-woehlke Status resolved => feedback
2014-05-26 08:50 matthew-woehlke Resolution fixed => reopened
2014-05-27 06:58 jcfr Note Added: 0011959
2014-05-27 06:58 jcfr Status feedback => assigned
2014-05-28 07:51 matthew-woehlke Note Added: 0011976
2014-05-28 07:51 matthew-woehlke Status assigned => resolved
2014-05-28 07:51 matthew-woehlke Fixed in Version => Slicer 4.4.0
2014-05-28 07:51 matthew-woehlke Resolution reopened => fixed
2014-05-29 11:46 fbudin Note Added: 0011992
2014-06-04 06:32 jcfr Relationship added related to 0003728
2014-09-17 22:59 jcfr Status resolved => closed
2014-09-17 23:01 jcfr Note Added: 0012533
2017-06-10 08:51 Changeset attached => Slicer master f336a9ef
2017-06-10 08:51 Changeset attached => Slicer master aa9009d5