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

!!! BUGFIX: Actually execute moveSubtreeTags tests and fix moveSubtreeTags #5025

Closed nezaniel closed 5 months ago

nezaniel commented 5 months ago

Fixup https://github.com/neos/neos-development-collection/pull/4993

This now actually asserts stuff when testing moveSubtreeTags, thanks to @mhsdesign for detecting this.

Also, the acutal moveSubtreeTags method is fixed to properly apply tags to the moved node and its descendants

Upgrade instructions

This raises the supported database platforms. Mariadb 10.4 for example will no longer be supported.See https://github.com/neos/neos-development-collection/issues/4337

Additionally there are cases where it would make sense to replay the projection to apply this fix:

./flow cr:projectionReplay contentGraph

Review instructions

none

Checklist

nezaniel commented 5 months ago

As for the failing test: I think the code is right, could you please check the test case @bwaidelich ?

nezaniel commented 5 months ago

Okay, this is a bigger issue as the moveSubtreeTags CTE needs to be rewritten. We also need more tests for the cases where descendants with explicit tags get moved to a new ancestor with the same tag. That the single test failed was far too much on the luck side for comfort. Converting to draft for now

nezaniel commented 5 months ago

Applied a few final fixes to the moveSubtreeTags CTE and tadaaa: Tests that make assertions and are green

mhsdesign commented 5 months ago

Thanks ;) as by reading would smoke my brain, i was trying to test this change against the NeosUi for some visual reference but i cannot come up with a test scenario that fails currently :O ... so this must be an absolute edgecase?

Feel free to merge this with bastian's approval though ^^

mhsdesign commented 4 months ago

Does this require a cr:projectionReplay? Or was this not a bug in beta 9?

nezaniel commented 4 months ago

there are cases where the graph projection needs to be replayed, yes