sync official commit

sync new commit from fish.