-
Notifications
You must be signed in to change notification settings - Fork 50
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Unset model operation handling is broken #346
Comments
There are at least two issues:
|
pcdavid
added a commit
that referenced
this issue
Feb 26, 2021
The previous implementation did not actually match the behavior of Sirius Desktop on several points: - the `featureName` was taken as a fixed string, but Sirius Desktop evaluates it as a dynamic expression; - the previous implementation could never actually remove individual elements from a multi-valued feature, only reset/clear it. In addition, I've restructured the code and inlined the actual behavior of EcoreIntrinsicExtender for the concrete cases we use it to avoid the dependency and indirection. Bug: #346 Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid
added a commit
that referenced
this issue
Mar 4, 2021
The previous implementation did not actually match the behavior of Sirius Desktop on several points: - the `featureName` was taken as a fixed string, but Sirius Desktop evaluates it as a dynamic expression; - the previous implementation could never actually remove individual elements from a multi-valued feature, only reset/clear it. In addition, I've restructured the code and inlined the actual behavior of EcoreIntrinsicExtender for the concrete cases we use it to avoid the dependency and indirection. Bug: #346 Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
pcdavid
added a commit
that referenced
this issue
Mar 4, 2021
The previous implementation did not actually match the behavior of Sirius Desktop on several points: - the `featureName` was taken as a fixed string, but Sirius Desktop evaluates it as a dynamic expression; - the previous implementation could never actually remove individual elements from a multi-valued feature, only reset/clear it. In addition, I've restructured the code and inlined the actual behavior of EcoreIntrinsicExtender for the concrete cases we use it to avoid the dependency and indirection. Bug: #346 Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
sbegaudeau
pushed a commit
that referenced
this issue
Mar 8, 2021
The previous implementation did not actually match the behavior of Sirius Desktop on several points: - the `featureName` was taken as a fixed string, but Sirius Desktop evaluates it as a dynamic expression; - the previous implementation could never actually remove individual elements from a multi-valued feature, only reset/clear it. In addition, I've restructured the code and inlined the actual behavior of EcoreIntrinsicExtender for the concrete cases we use it to avoid the dependency and indirection. Bug: #346 Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
The implementation in
org.eclipse.sirius.web.emf.compatibility.modeloperations.UnsetOperationHandler
which handles theUnset
model operations that can be used in Sirius Desktop VSMs is broken. It does not match the Sirius Desktop behavior as defined inorg.eclipse.sirius.business.internal.helper.task.operations.UnsetTask
.The text was updated successfully, but these errors were encountered: