Thanks for this, was going round in circles to understand why SiteCore unchecks all when I had already selected all targets. :D
Site core defaults the publish to all targets and dont have to select a target.
If a target is selected SiteCore will only publish to that selected target.
if you publish with all targets selected, site core will publish to all, ...
We validated that it is related by removing the patch - setting the Publish.CheckSecurity back to false - and confirming that the issue was gone.
But now our security isn't checked anymore during a publish so users could potentially publish items (descendants) they don't have rights to.
Sitecore confirmed this is a bug - the security check during a publish ...
In short; you say Sitecore is not doing things the way you expect - when it comes to item publishing order, you should not expect anything. I also fail to see a use case where this should matter, but that's my personal view.
That said, there are a few things is one thing you can expect.
A parent will always be published before its child items. This comes ...