Commit graph

866 commits

Author SHA1 Message Date
Jorge Bucaran 8c348f4082
ci: use raw installation url until https://git.io/fisher is restored 2018-10-06 09:13:29 +09:00
Jorge Bucaran 61f6f8c8c4
doc: use raw installation url until https://git.io/fisher is restored 2018-10-06 09:08:40 +09:00
Jorge Bucaran ac3e05ae3e
doc: add upgrading instructions and link to migration guide; #450 2018-10-06 09:07:35 +09:00
Jorge Bucaran 6d796516d9
3.0.3 2018-10-06 08:20:25 +09:00
Jorge Bucaran 13eba771ee
fix: prevent failglob error when $fisher_config is empty; close #455
fish-shell/fish-shell#2719
fish-shell/fish-shell#4175
2018-10-06 08:19:46 +09:00
Jorge Bucaran 5bf5c8da4c
3.0.2 2018-10-06 02:58:14 +09:00
Jorge Bucaran 1bd12771e7
don't try to install a package from an invalid specifier; fix #454 2018-10-06 02:57:57 +09:00
Jorge Bucaran 25661f77cf
3.0.1 2018-10-06 02:23:12 +09:00
Jorge Bucaran 444a8fee8c
fix: create fishfile automatically; close #451
- create fishfile if one doesn't already exist
- only read from stdin when using `add` or `rm` commands
- show help if unknown command is entered
- show error message when fishfile is empty and no packages
  were added, removed or updated
2018-10-06 02:20:08 +09:00
Jorge Bucaran 318a1941dc
docs: add link to key bindings info until fish-custom-key-bindings has been published 2018-10-05 23:11:41 +09:00
Jorge Bucaran 4e4c2a9524
hotfix: use correct version number (3.0.0) 2018-10-05 20:21:29 +09:00
Jorge Bucaran 54170ef1c3
breaking: implement fisher V3 (#445)
SUMMARY

This  PR  rewrites  fisher  from  the ground  up  and  adds  new
documentation. It introduces some  breaking changes as described
in the  next section. For  a historical background of  this work
see the original V3 proposal #307 and the more recent discussion
about the future of the project #443.

After much debate  and careful consideration I decided  it is in
the best interest of the  project to keep the CLI-based approach
to  dependency  management as  a  facade  to the  fishfile-based
approach originally proposed.

The new `add` commands (previously  `install`) and good ol' `rm`
interactively update  your fishfile and commit  all your changes
in one  sweep. To the  end user, it's as  if you were  adding or
removing  packages like  you already  do now.  Internally, these
commands affect how the fishfile  is parsed and result in adding
new or replacing/removing existing entries followed by a regular
`fisher` run.

INSTALLING

- `install` has been renamed to `add`

- Installing from a gist is  no longer supported (but it will be
back in a future release—removed only to simplify the rewrite)

- To  install a package  from a tag or  branch use an  at symbol
`@`—the colon `:` is deprecated

LISTING

- `ls` and `rm` are still available with a few minor differences

- `ls` followed by a package name does not list specific package
information (may be added back in a future release)

- `ls`  output format  no longer displays  a legend  to indicate
whether a package is a theme or a local package; now it's a flat
dump of every installed package specifier

- For local packages the full path is shown instead

- I want  to add a `--tree`  option in to display  packages in a
tree-like format in the future

- `ls-remote` has been removed as there is no longer a preferred
organization to  look for packages— there  is no plan to  add it
back

UPDATING

-  A new  `self-update` command  has been  introduced to  update
fisher itself

- fisher  will be only  updated when  a new version  is actually
available

- `update` has been removed

-  Everything is  installed from  scratch everytime  you add  or
remove  something,  so  there  is no  need  to  update  specific
packages—you're always up-to-date

-  To  lock  on  a  specific  package  version  install  from  a
tag/branch, e.g., `mypkg/foobar@1.3.2`

UNINSTALLING

- `self-uninstall` works as usual

HELP & VERSION

- `help` only displays fisher usage help

- help is dumped to stdout instead of creating a man page on the
fly and piping it to your pager `version` works as usual

ENVIRONMENT

- `$fish_path` been  renamed to `$fisher_path` to  make it clear
that this is a fisher specific extension, not your shell's

ECOSYSTEM

-  Oh  My  Fish!  packages  are  still  supported,  albeit  less
attention is paid to them

-  Some  packages that  use  Oh  My Fish!  specific  environment
variables or events might not work

- Most of  Oh My Fish! extensions are no  longer necessary since
fish 2.3, therefore it should be a simple matter to upgrade them
to modern fish

DEPENDENCIES

- fisher can now run on fish 2.0

- It's a  good idea to upgrade  to at least fish 2.3  to use the
string builtin and configuration snippets, but there's no reason
for fisher to force you to use any fish version

- `curl` is required for fetching packages

- I am considering adding a  fallback to `wget` if `curl` is not
available on your system

- `git` is optional

-  V3   fetches  packages  directly  from   github,  gitlab  and
bitbucket, if you are using them

- git  is only used  (implementation still  wip) if you  want to
install a  package from an  unknown git  host like your  own git
server
2018-10-05 20:20:31 +09:00
Jorge Bucaran fa4eec9b2a
refactor: remove ability to rename fisher command itself 2018-09-11 09:07:25 +09:00
Jorge Bucaran d265de6ef6
refactor: remove slack button 2018-09-09 17:16:41 +09:00
Jorge Bucaran 0a9d7faa8b
docs: add heading 2018-09-07 20:18:58 +09:00
Jorge Bucaran dadcc6c190
docs: add bootstrap note; fix #420 2018-09-07 20:17:02 +09:00
Jorge Bucaran f96c314497
style: remove fisherman logo from README; too large and obnoxious 2018-09-07 18:26:01 +09:00
Dror Levin 8c2c9e1a92 Fix config.fish example for custom paths (#433)
The `fish_function_path` must be set before sourcing the `conf.d` files because they might call functions in that path.
2018-09-05 21:32:08 +09:00
Erik P. Hansen b857cac45c Update help to be more in line with README (#440)
- Explain how to copy, not link, files when installing plugins
- This feature was added in v2.13.3
2018-08-21 17:58:02 +09:00
Patrick 196850e09a Add fisherman logo to readme (#436) 2018-07-23 01:05:13 +02:00
Georgy Yakovlev d3b3f6a8e4 2> /dev/null in README 2018-05-16 16:58:33 -07:00
Bjorn Neergaard 8e3e26d7a6 Use standard sh-style redirection for stderr (#416)
`^` has been removed as a stderr redirection operator
(fish-shell/fish-shell#4394) in future versions of fish.

Closes: #416
2018-05-16 16:58:33 -07:00
Jorge Bucaran 52d318b673
2.13.3 2018-04-25 11:19:10 +09:00
Ryan Sullivan 766bd093a1 Allow for copy instead of linking (#401)
* Allow for optional copy on install instead of linking

* Remove eval in favor of proper test call

* Document fisher_copy variable

* Missing ?
2018-04-25 11:18:42 +09:00
Robert Holak 4803a700a1 Fix awk parser to set correct variable. (#419)
The awk json parsing routine was setting a variable of "description"
instead of "info". This was causing a problem where the cached index -
and subsequently ls-remote commands - to show the "%info" format item as
the URL again.
2018-04-18 00:14:12 -07:00
Peeyush Kushwaha 63c59119a6 Add info about generating github token in README
Closes #414
2018-04-08 22:25:20 -07:00
Roman Zhuzha b7b8a1339a improve index file parsing (#412)
* use match() to extract substrings

* match only horizontal whitespaces
2018-03-22 22:43:28 +09:00
Joe Green 79fc2e6f6b fisher up obeys $fish_path (#407)
* Ensure fisherman's completions are placed in the correct fisherman directory when running self update.

* Update documentation to include the extra steps required when setting fish_path.

* -U instead of -g in README.
2017-12-13 19:29:58 +09:00
Jorge Bucaran f0ca6478b9
@jbucaran is now @JorgeBucaran 2017-10-09 06:40:32 +09:00
Jorge Bucaran e4f3633f6d
2.13.2 2017-09-05 17:47:37 +09:00
Jorge Bucaran b6ae25826a
Fix bad redirection during self-uninstall. Close #398. 2017-09-05 17:46:59 +09:00
Jorge Bucaran 6ad03af343
→ 2.13.1 🎉 Thanks @christianrondeau. 2017-07-30 16:42:43 +09:00
Christian Rondeau 9e6855aba4 Termux compatibility (#383) 2017-07-30 16:39:03 +09:00
Jorge Bucaran a08ff15a19
2.13.0 2017-07-01 04:22:32 +09:00
Joe George c3172511e0 Fix #391 (#392)
Fisherman was always writing its completion file to $fish_config/completions.

This was incorrect behavior if $fish_path was set to a directory other than
$fish_config (its default).

Note that when using $fish_path to manage functions, completions and snippets, 
you opt out fish default locations which are handled for you by the shell and
consequently are responsible for appending your custom $fish_path/functions
and $fish_path/completions directories to $fish_function_path and $fish_complete_path respectively, as well as sourcing snippets (.fish files under $fish_path/conf.d) on shell 
startup.
2017-07-01 04:19:48 +09:00
Yuji Yamamoto 210fb8c202 Escape "$file" in the warning message. (#390)
Fix https://github.com/fisherman/fisherman/issues/389
2017-06-22 13:40:40 +09:00
Jorge Bucaran 9617f27ee3
Add https to URL. 2017-06-19 18:20:34 +09:00
Jorge Bucaran 0f003c0ce1
Add info to the README about how to contribute to the project. 2017-05-22 09:14:06 +09:00
Jorge Bucaran 98ad0d10c4
Update README.md 2017-05-13 22:57:05 +09:00
Jorge Bucaran ecf520dcd3
Update LICENSE. 2017-05-10 13:51:03 +09:00
Eric Mrak 5b080122f8 Merge pull request #372 from fisherman/issue-371
Prevent additional remotes per plugin from affecting fishfile
2017-03-04 21:57:06 -08:00
Eric Mrak 0073552780 Prevent additional remotes per plugin from affecting fishfile
closes #371
2017-03-03 09:56:52 -08:00
Jorge Bucaran ba3dd33269
Emphasize fishfile. 2017-02-18 15:33:14 +09:00
Francisco Lourenço 91a9a3b3bc Merge pull request #369 from fisherman/install-branch
Document how to install branches and tags
2017-02-15 23:51:07 +01:00
Francisco Lourenco e15ccc8f75 Document how to install branches and tags
Closes: #364
2017-02-15 21:36:03 +01:00
Francisco Lourenço bdfcb5afc3 Merge pull request #367 from fisherman/version-warning
Improve warnings about fish versions
2017-02-15 21:15:10 +01:00
Francisco Lourenco 585787d60e Add notice about fish <2.3.0 and snippet support 2017-02-15 21:06:23 +01:00
Francisco Lourenco 0732e2485b Fix warning message about fish <2.2.0
- `__fisher_log` doesn't work on <2.2.0 anymore so use `echo` instead
- `command -s` option not available on macOS, so use `type` instead
- `type -q` not available on fish <2.2.0,use `type brew >/dev/null 2>&1`
- `brew up` not needed anymore, it auto updates now
- `brew --HEAD` not needed, latest version is enough
2017-02-15 21:06:23 +01:00
Jorge Bucaran f359fa1c51
Fisherman is concurrent (fetch/update), let's make this more prominent. 2017-02-15 16:39:26 +09:00
Francisco Lourenço ee617c160b Install/Update from branch separated by : or @ (#365)
Examples:

fisher install fisherman/done@dev
fisher install fisherman/done@1.1.0
OR
fisher install fisherman/done:dev
fisher install fisherman/done:1.1.0

Related: #269
2017-02-11 01:29:37 +09:00