Pushed to upstream

cc/ @shuyangzhou @csierra @rotty3000.