jhillyerd/plugin-git

Fisher 4.x support

jhillyerd opened this issue · 4 comments

https://github.com/jorgebucaran/fisher/releases/tag/4.0.0

Fisher 4 removed OMF-style init.fish support -- #47

We can probably move our setup code out of init.fish, and then have init.fish and the event system load it separately.

I have other priorities right now, PRs wanted.

I made a fork of this repo that I figured would just be a fisher-friendly variant but took a super quick stab at making it compatible with oh-my-fish again in the omf branch. Seemed to work so I'll play around with it some more and make a PR here if does work as well as it seems to from a brief test. (And delete my fork).

So after a little digging I found some issues with trying to make a package compatible with both OMF and Fisher 4.x.

  • Fisher moves all .fish files at the root of the repository to .config/fish/functions/, this would include init.fish and uninstall.fish, two files that omf uses for its hooks. I assume when Fisher did support these files that they were excluded? This is an issue because if some other package includes these files they will start to overwrite each other. This behavior is called out in laughedelic/pisces#26
  • OMF will run commands in files in the conf.d directory however OMF will not respond to the fish events Fisher uses eg git_install, git_update, git_uninstall.
  • If we remove the root omf files (init.fish and uninstall.fish), we would have a package that works wholly with fisher but only installs for oh-my-fish without uninstalling properly since the uninstall event would not be recognized.

Hi, so there was some discussion in this PR over at pisces. While my PR does work with both, the maintainer of Fisher makes it pretty clear his thoughts on using the same branch of code to support both Fisher and OMF. I just wanted to give a heads up; maybe it makes more sense to just maintain a branch with the work that supports Fisher 4.x and separately a branch for OMF. Which, admittedly, oh-my-fish has not been very active so I don't know if it's still being maintained anyway.

closed in #49