-
-
Notifications
You must be signed in to change notification settings - Fork 342
Remove the concept of read-only orders #2189
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
Conversation
I was having a (very) brief discussion with @gabizou about that, many events have a Preventing cancellation won't stop other things being modifed in an event, meaning that the event would still be useless to logging plugins - another reason for a proper read only event. We have some post events, but there will be some that are missing of course - if there are any that should be there that aren't, I think that's the discussion we really need to have with interested members of the community. |
My thought was that this was an edge case, however upon close inspection that's not the case at all. Basically every subclass of That being said, I've removed the "cancellation allowed" part. There's not much value to it as it is. |
The thing is, there's still side effectual modifications that are effectively "permitted". The nature of how some events and listener-based side effects happen though is that the order of operations will be that an event listener (like prism) will get an event from a listener performing side effects as a result of the event that listener received an event, and then the original event, so like this:
So while we've removed order, we still have a side-effectual understanding that even if the original Place Wool Block was cancelled, the plugin's side effects may not have been cancelled, and therefor still played out., and PluginB will recognize PluginA's changes before the original intention of the Place Wool Block. |
We haven't at all. This is just about removing javadocs that say something that have never been enforced, and the discussion was about the enforcement of cancellation status. My point was that monitoring plugins want to know what's absolutely happened, not what's about to happen, and a |
So would it make sense then to change up the |
As discussed on discord, read-only orders can't be enforced. This PR removes the concept from the jd.
I think there's value in
cancellation allowed
(prism-like plugins) in the sense of an event guaranteed not to be cancelled (POST
is the last order, wheter the event has been cancelled or not. That's not gonna change after that) so I'm leaving the tab in the jd for discussion.Close SpongePowered/Sponge#1213 (if we decide to remove both)