merge 2.0-ongoing into 3.0 @ 3581 - 3710