I opened the initial issue that Ludek linked to in the original comments where there were issues with Gedmo Tree. I found this issue after trying the new version, which has broken both the Tree and Timestampable extensions.
Timestampable is broken for the reasons that have been outlined, and Tree is broken due to an array being used for the primary tree declaration, e.g.:
gedmo:
- tree:
type: nested
This should be formatted as is previously was, as per here: https://github.com/Atlantic18/DoctrineExtensions/blob/v2.4.x/doc/tree.md#yaml-mapping-example
The inconsistencies are, as you say, madness, however I can't see them changing any time soon. Also, as has also been seen, you can't combine these on a field and output valid YAML.
Would it be possible to format the various fields correctly, with the knowledge (or a warning) that they can't be used together?
I can't think of any reason why you would have a field that's both timestampable and a tree attribute, in fact I don't think it's even possible based on the required field types.
- treeLeft, treeRight and treeLevel must be integers
- treeRoot and treeParent are self-referencing relationships (FKs)
This obviously isn't considering the other extensions, however I think the same argument stands, which is that these fields are used specifically for tree functionality.
I appreciate that it isn't this simple when creating software that should be able to handle any user input, however I can't see any other option.