-
Notifications
You must be signed in to change notification settings - Fork 46
Maintain old widget for 0D and PseudoCounters in TaurusValue #1101
Conversation
sardana-org/sardana#1203 introduces new widget for experimental channels which allow acquisition. Since 0D and PseudoCounters do not allow experimental channel acquisition still use the old widget for them.
Hi Carlos, |
|
Great! Thanks for checking that! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am not totally convinced about these changes. I feel uncomfortable with the fact that this would break installations in which taurus is updated while sardana is not (it is not a terrible break, but the 0D and pseudocouunters would start being shown as generic devices). This is more important for people with py2 systems who won't update to sardana 3.x straight away.
IMHO, a better solution is to add some transitional logic in the new PoolChannelTV
to support the 0D and PseudoCounters as part of sardana-org/sardana#1203
...or alternatively, use monkey-patching from sardana to update tauruscustomsettings.T_FORM_CUSTOM_WIDGET_MAP
until the new widget adds proper support
Let me elaborate: I am not saying that the complete support of 0D and PseudoCounters should be added now as part of sardana-org/sardana#1203 . What I mean is that some check is temporarily implemented in the setModel of the new |
I've checked and I'd say that tauruscustomsettings is the only place (apart from some irrelevant "demo" code). Still, I think it is worth considering making this setting an entry-point to get rid of this sardana- and tango- centric bit in taurus. This is already identified in APPENDIX IV of TEP13. If we implemented this entry-point, then it would be straight away for sardana-org/sardana#1203 to register whatever map it needs for its own widgets (without worrying about side-efects in taurus). So, I see 3 alternatives for achieving the objectives of this PR without breaking compatibility:
|
Many thanks for this in-depth analysis. I have not thought about the scenario of upgrading taurus only and in this case you are right - users will lost the However I don't see it terrible for the following two reasons:
From the 3 options that you identify I'm in favor of putting all the efforts on 3. I will start disucssion on this option in a separate issue, however I would not block integration of these PRs. What do you think? |
Exactly, but I think that that is annoying for someone who already has a working GUI and it suddenly it changes its appearance after updating taurus (again, consider py2 users, which are still supported in taurus)
But you realize that this works also as an argument against doing this change, right? ;)
Actually, I think it makes sense to block it. I think it is such a small change that it is not worth breaking taurus even if slightly and/or temporaly. I'll do a PR ASAP (today) with the entry-point solution. And, in order to speed-up things, I can even advance the API: in sardana you will be required to register the following:
where |
I think there is no need to maintain this PR opened since the entry_point solution fixes this. |
sardana-org/sardana#1203 introduces new widget for experimental channels which allows acquisition. Since 0D and PseudoCounters do not allow experimental channel acquisition still use the old widget for them.