neos / neos-development-collection

The unified repository containing the Neos core packages, used for Neos development.
https://www.neos.io/
GNU General Public License v3.0
260 stars 221 forks source link

TASK: Make it more obvious which value objects are persistent (part of the events) #4977

Open mhsdesign opened 3 months ago

mhsdesign commented 3 months ago

... also the persistent parts should probably reside in SharedModel or Common as discussed with @nezaniel https://github.com/neos/neos-development-collection/pull/4961#discussion_r1545224025

The thing im trying to address here is that one never knows if this dto is part of events and should better not be touched, and if so it has to be backwards compatible. I have no solution for that yet but ill keep this ticket as reminder.

For example when writing the unset migration, i noticed by accident that i would have to adjust the metadata.commandPayload.nodeTreeToInsert.childNodes[0].childNodes[0].propertyValues.myProperty which was really intransparent ^^ Also the fact the commands are serialised into the events metadata adds complexity as this could mean that a rebase / publish can become impossible if we change something.

mhsdesign commented 3 months ago

We should discuss when to use SharedModel vs Feature/Common