Commit Graph

51 Commits

Author SHA1 Message Date
Casey Rodarmor
04b58464c9
Add --no-git flag to gen book
Skip generating the changelog for the book when `--no-git` is passed to
`gen book` or `gen all`.

type: added
2020-06-24 03:33:50 -07:00
Casey Rodarmor
047b36639d
Add --no-git flag to gen all
The flag skips steps whichr require a git checkout, currently only the
changelog generator.

type: added
2020-06-23 21:51:13 -07:00
Casey Rodarmor
f832605d81
Document benchmarks in readme
type: documentation
2020-05-26 13:56:42 -07:00
Casey Rodarmor
4e6b475470
Benchmark and improve hashing performance
- Add a `bench` feature that exposes a hasher benchmark.

- Make the hasher read up to the next piece end and hash everything it
  reads, instead of hashing one byte at a time. This was a 4x
  improvement on the benchmark. (Terrible code == easy wins!)

type: performance
2020-05-26 00:15:09 -07:00
Casey Rodarmor
c1c8d3cb89
Move data crate to its own repo
I suspect that the `data` crate will get more review, use, and
contributors if it lives in its own repository, so move it to
casey/data.

type: removed
2020-05-24 05:30:42 -07:00
Casey Rodarmor
f4f7a69069
Add co-authored-by field to commit metadata
This field is used by GitHub to credit co-authors.

type: development
co-authored-by: y7y <pair@rodarmor.com>
2020-05-01 01:28:40 -07:00
Casey Rodarmor
e7872f56f2
Move all output from bin/gen to target/gen
To make it clearer what is and isn't generated content, make gen place
all generated output in `target/gen`.

Also, try to make the readme clearer about the location of build
artifacts.

type: development
2020-05-01 00:29:40 -07:00
Casey Rodarmor
bf29d74b3e
Add changelog to book
Add the changelog to the book. It's no longer comitted, so it's good to
have the current version available somewhere.

type: documentation
2020-04-30 00:22:43 -07:00
Casey Rodarmor
60a72cf057
Add color to bin/gen error messages
type: development
2020-04-29 22:58:07 -07:00
Casey Rodarmor
8dfdbe43df
Add bin/gen command to diff generated content
The following command will print a diff between HEAD and HEAD^:

    cargo run --package gen diff

type: development
2020-04-29 22:46:32 -07:00
Casey Rodarmor
342266853e
Improve bin/gen error messages
Create an error enum with actual error messages.

type: development
2020-04-29 00:36:25 -07:00
Casey Rodarmor
e396b7f071
Don't commit changelog
It's pretty annoying to have to ammend commits with the contents of the
changelog, so top committing it.

type: development
2020-04-28 22:58:48 -07:00
Casey Rodarmor
d077da405e
Improve documentation
- Document the various ways files can be included and excluded from
  torrents in the book.

- Make links to the book more prominent in the readme, by including them
  in sections with obvious names.

type: documentation
2020-04-24 23:32:24 -07:00
Casey Rodarmor
c75ec39b14
Remove watch dropdown image from readme
It's big and ugly and doesn't add much.

type: documentation
2020-04-23 15:27:35 -07:00
Casey Rodarmor
8fbe39726f
Add notes for packagers to readme
type: documentation
2020-04-23 14:59:49 -07:00
Casey Rodarmor
43788cac9a
Fix bin/package
Also, To more easily test the `bin/package` script, build and publish
packages for all tags, not just those that start with `v`.

type: fixed
2020-04-23 01:20:24 -07:00
Casey Rodarmor
c22df5a083
Don't commit man pages
Don't commit man pages, since that bloats commits.

Attempt to build them in `bin/package`. This is fraught, since we need
`help2man`. Hopefully this works!

type: development
2020-04-21 00:52:06 -07:00
Casey Rodarmor
28114c3d64
Don't commit shell completion scripts
Committing the completion scripts bloats diffs, so stop committing them.

Before copying release files, generate the scripts in `bin/package`.

type: development
2020-04-21 00:29:26 -07:00
Casey Rodarmor
838167c4d3
Describe in FAQ creating torrent from git repo
type: documentation
2020-04-20 20:10:26 -07:00
Casey Rodarmor
9f48062461
Improve FAQ template
Use separate anchor tags, so FAQ entry titles are properly rendered.

type: documentation
2020-04-20 00:17:57 -07:00
Casey Rodarmor
1cb1178672
Create FAQ
Add an FAQ section to the book. Include information about how to use
imdl with `fzf --preview`.

type: documentation
fixes:
- https://github.com/casey/intermodal/issues/397
2020-04-19 23:19:29 -07:00
Casey Rodarmor
70dbe93c6a
Note install script only works on Linux and MacOS
Unfortunately, the install script doesn't work on windows, due to:

- Powershell defining an alias that maps `curl` to `Invoke-WebRequest`,
  which is incompatible with `curl`.

- The absence of the `rev` command.

type: documentation
fixes:
- https://github.com/casey/intermodal/issues/371
2020-04-19 19:56:54 -07:00
Casey Rodarmor
09b0ee316c
Document piece length selection algorithm
Add a page to the book discussing factors in piece length selection, and
Intermodal's piece length selection algorithm.

type: documentation
pr: https://github.com/casey/intermodal/pull/392
fixes:
- https://github.com/casey/intermodal/issues/367
2020-04-18 23:12:31 -07:00
Casey Rodarmor
3ed449ce93
Generate reference sections with bin/gen
type: documentation
2020-04-18 19:14:54 -07:00
Casey Rodarmor
0a754d0bcf
Add manual Arch install link
Add a link to the arch wiki for manual installation from AUR.

type: documentation
fixes:
- https://github.com/casey/intermodal/issues/373
2020-04-18 13:33:09 -07:00
Casey Rodarmor
9098d36840
Readme improvements
- Mention various chat channels
- Add `intermodal-bin` package to package table
- Document `bin/gen`
- Add contributing section
- Link to book

type: documentation
2020-04-17 23:28:08 -07:00
Casey Rodarmor
04338e3501
Merge documentation and changelog generation
Merge documentation generation into a single binary, `bin/gen`. This
includes: The changelog, man pages, the readme, and the book.

type: reform
2020-04-17 21:31:54 -07:00
Casey Rodarmor
f05807290b
Render command help text in book to avoid wrapping
The command `--help` text output in the book was very wide, which caused
it to be clipped and require scrolling horizontally to see it all.

This diff renders the text at 80 columns, which makes it visible without
scrolling at reasonable screen sizes.

To do this, `env::run` now checks for the presence of the environment
variable `IMDL_TERM_WIDTH`, which, if set to a positive integer, will be
passed to `Clap::set_term_width`.

`bin/man` now uses this to render the help text at 80 characters.

type: documentation
pr: https://github.com/casey/intermodal/pull/364
2020-04-11 04:00:52 -07:00
Casey Rodarmor
268c62b66d
Add bin/man command for generating man pages
Generates man pages and book entries for all subcommands, and keeps the
commands index in the book up to date.

There is much cursed roff munging in this diff.

type: documentation
2020-04-09 15:23:12 -07:00
Casey Rodarmor
4f8b6a212e
Improve demo GIF
- Tweak timing
- Increase scale to 4x
- Use local copy of asciicast2gif avoid missing characters

type: documentation
2020-04-08 04:26:37 -07:00
Casey Rodarmor
03a9935164
Skip fixup commits in changelog
This change Makes the changelog generator ignore fixup commits.

`git commit --fixup` can be used to mark that a commit should be
squashed before merging, which can be done automatically with
`git rebase --autosquash`. Fixup commits have a summary that starts with
`fixup!`

type: development
2020-04-07 23:41:06 -07:00
Casey Rodarmor
92748f9fd4
Make changelog generator strict
Make the changelog generator fail if commits don't contain metadata.

type: changed
pr: https://github.com/casey/intermodal/pull/341
2020-04-07 20:33:04 -07:00
Casey Rodarmor
c33446b481
Generate changelog from git history
type: development
pr: https://github.com/casey/intermodal/pull/337
fixes:
- https://github.com/casey/intermodal/issues/336
2020-04-07 19:59:09 -07:00
Eric Siegel
c23b0635ee
Add ability to create single-file torrents from stdin
Torrents may now be created from standard input by passing `--input -`.

Since `--name` and `--output` cannot be deduced, they are required when
`--input -`.

type: added
2020-04-07 19:01:43 -07:00
Casey Rodarmor
57e482f4b3
Record demo for readme
Uses a crate in `bin/demo` to output a demo script of commands, with a
per-character and per-line delay, and a dummy prompt. Capture output
and render to a gif.

type: documentation
2020-04-07 19:01:38 -07:00
Casey Rodarmor
3131b0d56c
Generate man page with from --help with help2man
type: documentation
2020-04-07 19:01:37 -07:00
Casey Rodarmor
8c30205b02
Add shell completion scripts
Shell completion scripts can be generated for `bash`, `elvish`, `fish`,
`powershell`, and `zsh` with the `completions` subcommand:

    $ imdl completions --shell zsh > imdl.zsh

The same scripts are available in the `completions` directory. Please
refer to your shell's documentation for more information on how to
install and use completion scripts.

type: added
2020-04-07 19:01:37 -07:00
Casey Rodarmor
e91b419af5
Improve book
- Write introduction
- Move large readme sections into book
- Rename docs to www

type: documentation
2020-04-07 19:01:30 -07:00
Casey Rodarmor
b96c27e9b1
Fix build errors
- Install `musl-tools` which provides the `musl-gcc` binary, needed
   for the package script on ubuntu.
- Fix contributing file name

type: fixed
2020-04-07 19:01:30 -07:00
Casey Rodarmor
4cbeca802a
Add additional documents to release archive
- Include changelog
- Include contributing guidelines

type: distribution
2020-04-07 19:01:29 -07:00
Casey Rodarmor
57a358e458
Allow creating magnet links with imdl torrent link
Magnet links can now be created from a metainfo file with:

    imdl torrent link --input METAINFO

type: added
2020-04-07 19:01:27 -07:00
Casey Rodarmor
0b486cc681
Update BEP list in readme with new issue links
type: documentation
2020-04-07 19:01:27 -07:00
Casey Rodarmor
99a069a021
Add imdl torrent show
The `imdl torrent show` command displays information about on-disk
torrent files. The formatting of the command's output is copied from
torf, an excellent command-line torrent creator, editor, and viewer.

type: added
2020-04-07 19:01:02 -07:00
Casey Rodarmor
48ca86c67c
Add Alternatives & Prior Art section to readme
type: documentation
2020-04-07 19:01:00 -07:00
Casey Rodarmor
ef5be39f9b
Update install instructions to new domain
Install script location is now https://imdl.io/install.sh

type: distribution
2020-04-07 19:01:00 -07:00
Casey Rodarmor
e2cf93efb0
Add install script and installation section to readme
type: distribution
2020-04-07 19:00:59 -07:00
Casey Rodarmor
9dd8a56298
Release v0.0.1
- Add changelog
- Update publish-check recipe to match github actions
- Add publish recipe
- Update dependencies
- Add minimimal-deps compatibility check

type: release
2020-04-07 19:00:59 -07:00
Casey Rodarmor
1a20f0d0b3
Link to tracking issues from BEP support table
type: documentation
2020-04-07 19:00:58 -07:00
Casey Rodarmor
ff3a30ae21
Add package script
type: distribution
2020-04-07 19:00:58 -07:00
Casey Rodarmor
1f5b829742
Add table of contents to readme
type: documentation
2020-04-07 19:00:48 -07:00