Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Includes docs/xh.1, README.md, LICENSE.md in the release artifacts #70

Closed
ducaale opened this issue Feb 22, 2021 · 2 comments
Closed

Includes docs/xh.1, README.md, LICENSE.md in the release artifacts #70

ducaale opened this issue Feb 22, 2021 · 2 comments

Comments

@ducaale
Copy link
Owner

ducaale commented Feb 22, 2021

I have looked at how bat release artifact is structured (ripgrep should have a similar structure)

$ wget https://github.com/sharkdp/bat/releases/download/v0.17.1/bat-v0.17.1-x86_64-apple-darwin.tar.gz
$ tar xvzf bat-v0.17.1-x86_64-apple-darwin.tar.gz
$ tree bat-v0.17.1-x86_64-apple-darwin
bat-v0.17.1-x86_64-apple-darwin
├── LICENSE-APACHE
├── LICENSE-MIT
├── README.md
├── autocomplete
│   ├── bat.fish
│   └── bat.zsh
├── bat
└── bat.1

The main difference they have with xh is:

  • The release version is part of the downloaded tar's filename.
  • the tar includes README.md, LICENSE.md, autocompletion, and a manpage file
  • The tar contains a folder to avoid polluting the user's filesystem with random files from the release.

Apart from updating .github\workflows\CI.yaml, we would need to update places where xh is published i.e Homebrew, Scoop, etc.

@blyxxyz
Copy link
Collaborator

blyxxyz commented Feb 22, 2021

Here's ripgrep's:

ripgrep-12.1.1-x86_64-unknown-linux-musl
├── complete
│   ├── _rg
│   ├── rg.bash
│   ├── rg.fish
│   └── _rg.ps1
├── COPYING
├── doc
│   ├── CHANGELOG.md
│   ├── FAQ.md
│   ├── GUIDE.md
│   └── rg.1
├── LICENSE-MIT
├── README.md
├── rg
└── UNLICENSE

The only difference is that the documentation files get their own directory, since there are multiple. For the moment we have just a man page, but we could put it in a directory to future-proof it.

clap can generate shell completions. I'll take a look to see how good they are, they might need nudging to know which options do and don't take filenames, but they could be nice to include.

@blyxxyz
Copy link
Collaborator

blyxxyz commented Feb 22, 2021

It might also be useful to strip debug symbols from the binary. That takes the size down from 15MB to 8MB (on Linux at least).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants