populse / capsul

Collaborative Analysis Platform : Simple, Unifying, Lean
Other
7 stars 14 forks source link

metadata values change when a GUI is opened on them #348

Closed denisri closed 5 months ago

denisri commented 5 months ago

I'm trying to work on metadata and completion for the Morphologist pipeline. Once I have a ProcessMetadata instance for the pipeline (metadata = ProcessMetadata(pipeline, execution_context)), I set values there, say metatata.bids.sub = 'alphonse', then run a completion (metadata.generate_paths(pipeline)) I still have metatata.bids.sub == 'alphonse'. Now I want to see and modify metadata graphically:

from soma.qt_gui.controller import ControllerWidget
cw = ControllerWidget(metadata)

I even don't show it. If I'm fast, I can print:

print(metadata.bids.sub)
>>> alphonse

but after a short while (a second or two), values get erased inside the metadata controller:

print(metadata.bids.sub)
>>> <undefined>

Worse (?), now if I show the ControllerWidget, I actually see the values which used to be in the metadata, but which are not here any longer, thus the GUI does not reflect the current state of the controller.

I don't know if this issue is related to populse/soma-base#63 and I know ControllerWidget will probably get replaced with the web-based implementation, but I don't know what to do with it right now.

denisri commented 5 months ago

fixed by populse/soma-base@c192386d47ee1763214b59f3fa3076bbe4eaff74