biolab / orange3

🍊 :bar_chart: :bulb: Orange: Interactive data analysis
https://orangedatamining.com
Other
4.85k stars 1.01k forks source link

Select rows sends and shanges selection when it should not #4316

Closed Hrovatin closed 4 years ago

Hrovatin commented 4 years ago

Similar to https://github.com/biolab/orange3/issues/4278 that was already closed. When I change group in widget marked by A the selection changes in B. This should not happen. What is even stranger, even if I disable automatic sending in B the data after B changes according to the change in B upon me changing A. Screenshot from 2020-01-09 10-22-56

Orange 3.25.0 (last master, if I am not mistaken).

ajdapretnar commented 4 years ago

Would you be able to provide a simpler workflow to reproduce the issue?

Hrovatin commented 4 years ago

Simpler workflow: zoo.tab -> select rows -> select rows -> table

ajdapretnar commented 4 years ago

I could not reproduce this, until I updated orange-widget-base and orange-canvas-core to the new master. I suspect one of the changes in orange-canvas-core broke the previous fixed issue.

janezd commented 4 years ago

I can reproduce it by enabling Remove unused features. What happenned was that the widget then retrieves one of the past contexts. In larger schema, even if Remove unused features is disabled, some of the widgets in between may change due to changed data and cause Select Rows to retrieve an old concept.

Increasing settings version should not help (as in #4319). Version was properly increased in the previous commit, and migrations are disabled anyway. It could be that the widget does not reuse settings from previous versions, though I'm not aware of any such checks.

As for sending data when auto commit is disabled: this works as intended. The check box is about applying changes, not blocking signals.

In summary: context settings may lead to weird situations like this one, but there is no way around it.