cherry pick changes from trunk to stable