Prompts' `fish_*.fish` files get removed during a
full update when you try to replace your existing
prompt with a new one.
For example, during a `fisher update`, if we install
`foo/new_prompt` first, and remove `foo/old_prompt`
afterm we could end up without a fish_prompt file.
A cleaner approach would be to move fisher.fish to functions
but this would break older versions of fisher that hardcoded
the raw URL to the fisher.fish file for upgrades.
- Introduce new event system. #526, #527#573.
- Deprecate `init.fish`, `uninstall.fish`, etc. #581
- No cache fallback, no plugin dependencies, no more private
package hosts, and no more gitlab/bitbucket support. #464, #579
- Require fish 3.0, use newer fish features, e.g., use `wait` to
implement concurrent downloads.
- Rely less on external tools. No awk, no sed, no basename/dirname.
Just mv, rm, cp, and mkdir.
- Deprecate `fishfile` in favor of `fish_plugins`. This new file
works like the old fishfile, but without comment support. See #524.
When adding packages without specifying the tag/branch, e.g.
fisher add jorgebucaran/nvm.fish
we'll try to download it from the `/main` tag by default and
if that fails, fallback to `/master`.
* Better fishfile location support
Per issue #545, support fishfile living in $fish_config even when $fisher_path is set if desired.
* Re-home fishfile to $fish_config/fishfile
Per discussion here:
https://github.com/jorgebucaran/fisher/pull/547https://github.com/jorgebucaran/fisher/issues/545
Fish file is returned from $fisher_path/fishfile to $fish_config/fishfile.
* Change $fishfile to global variable
- Resolve circular dependencies for local packages
- Integrate _fisher_deps functionality to _fisher_fetch
- Update _fisher_jobs to exit with status 1 if there are no jobs
- Use `set -q myvar[1]` instead of `test -z $myvar` where possible