Minecraft 16w43a, Minecraft 16w44a, Minecraft 1.11 Pre-Release 1, Minecraft 1.11
Blocks that connect to each other/their surrounding loose their connections while being moved by a piston.
This issue can be shown well by putting an entity on top of a row of fences and moving the fences below it.
As the connection is lost (all fences have a small collision box) the entity can fall through between the fences while they are moving.
(Collision boxes while the fences are moving)
It turns out there is already code in place to make block keep the state it had when it starts moving¹.
However the methods that get the bounding box(es) make sure to calculate the actual state again, so they calculate it from the surrounding blocks of the moving block which leads to the wrong values.
To fix this it somehow needs to be made sure that when the piston gets the bounding boxes the state is not recalculated, but instead the values that were set when the piston started moving are used.
1) That actual state would be forgotten when reloading the tileentity, but that's another tiny bug.