Prevent shell integration scripts from getting sourced twice [was: .iterm2_shell_integration.fish causes problems if you re-run source ~/.config/fish/config.fish]
there are a couple of calls to functions -c in the integration script. If you source your config.fish file these are run again and you get errors because the function already exists.
This should probably be updated to something similar to.
43 if functions -q -- iterm2_fish_prompt
44 # Gracefully handle running source ~/.config/fish/config.fish
45 functions -e iterm2_fish_prompt
46 end
47 functions -c fish_prompt iterm2_fish_prompt