Commit Graph

44 Commits

Author SHA1 Message Date
Casey Rodarmor
6c4805890b
Pass rustflags consistently
type: fixed
2021-10-11 18:49:10 -07:00
Casey Rodarmor
379a001f47
Fix warnings and clippy errors
type: reform
2021-07-02 21:02:53 -07:00
Casey Rodarmor
452486a782
Placate clippy
type: reform
2021-05-02 22:00:43 -07:00
Casey Rodarmor
61bbd3bad5
Skip generating changelog in tests
Changelog generation requires annotating commits with a commit type,
otherwise the tests will fail. This is annoying for contributors, since
it's unusual, and I often myself forget to do it, causing a round-trip
with tests.

So, skip generating the changelog during the tests. Also, change the
`--no-git` option for `gen book` and `gen all` to `--no-changelog`, so
it's clearer what it does.

I think I'll wind up just making a YAML file that contains commit types,
for changelog generation, so it doesn't have to be done in the commit
message.

type: testing
2021-01-08 22:10:07 -08:00
Casey Rodarmor
a7e0995c7d
Replace deprecated add path command
Also consolidate cache steps

type: development
2020-11-20 23:39:40 -08:00
Casey Rodarmor
fa78cba0a5
Fix build fix
Fix the conditional that gates installing GNU Tar. This should actually
fix the build errors we've been seeing.

type: development
2020-10-04 13:16:31 -07:00
Celeo
0c17c3da49
Optionally print torrent details as JSON
Adds `--json` flag to `imdl torrent show` to print torrent details as
JSON.

type: added
2020-10-01 22:28:40 -07:00
Casey Rodarmor
06b6d22005
Switch mdbook version back to latest
mdbook v0.4.3 release binaries were corrupted, but have been fixed.

type: development
2020-09-10 14:17:59 -07:00
Casey Rodarmor
42e20a4a6a
Suppress stderr output if --quiet is passed
Instead of checking if `options.quiet` is set whenever printing, disable
all printing to stderr if the `--quiet` flag is passed.

Although it isn't strictly necessary, I still don't construct a progress
bar if `options.quiet` is true, since progress bars might be a little
more expensive than just printing error messages.

A future diff might add checking to the `errln` and `outln` macros, so
that they don't print at all if the respective output stream is
inactive.

type: reform
2020-09-08 16:10:51 -07:00
Casey Rodarmor
2d226cf016
Make changelog author more concise
If both author name and email are present for a commit, format as a
link. If one is absent, format as the other. If both are absent, format
as "Anonymous".

type: documentation
2020-09-06 22:54:34 -07:00
Casey Rodarmor
8ca2765259
Release v0.1.11
- Bump version: 0.1.10 → 0.1.11
- Update dependencies
- Remove deprecated lto flag from package script
- Invalidate github cache

type: release
2020-09-06 22:04:12 -07:00
Casey Rodarmor
7ca9ed62d5
Mark Info::infohash as potentially lossy
`Info::infohash` will discard fields not present in the `Info` struct,
and can thus produce an erronous infohash.

To try to prevent this function from being called in those
circumstances, rename it to `Info::infohash_lossy`, and add a comment
explaining why it is dangerous.

Embarassingly, `Info::infohash` was called in
`TorrentSummary::from_input`, and thus transitively by the torrent show
subcommand, where it is definitely not safe, since torrent show is
intended to be used with arbitrary torrents. This is now fixed.

There was also a build failure caused by a cache issue, so change the
cache keys to invalidate the caches.

type: fixed
2020-09-06 20:23:45 -07:00
Casey Rodarmor
a2a4ea1430
Mark tags that start with v as releases
type: development
2020-07-01 23:52:48 -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
97ee5684f8
Don't invalid build cache when Cargo.lock changes
I copied the gihub actions caching configuration from examples, and I'm
not sure it's optimal. In particular, it causes a cache miss whenever
any `Cargo.lock` changes. I suspect that it would be better to always
hit the cache, and let cargo figure out what it needs to rebuild.

type: development
2020-04-23 16:49:03 -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
4d67d3a10d
Don't commit the book
To avoid bloating commits, don't commit any auto generated from the
book.

type: development
2020-04-21 00:36:48 -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
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
2515399081
Cache build artifacts
Use `actions/cache` to cache cargo registry, index, and build between
workflow runs.

type: development
2020-04-07 19:01:38 -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
4b6191773a
Fix condition in GHA workflow
Should deploy only on linux, not on everything but linux :P

type: distribution
2020-04-07 19:01:32 -07:00
Casey Rodarmor
b27ecf1c09
Only deploy site during linux run of CI build
type: development
2020-04-07 19:01:32 -07:00
Casey Rodarmor
35d90adab4
Rename www/head to www/head.txt
type: documentation
2020-04-07 19:01:31 -07:00
Casey Rodarmor
0469f7fecd
Record current git revision in www/head
type: documentation
2020-04-07 19:01:30 -07:00
Casey Rodarmor
972a1ec628
Merge Github Actions workflows
type: development
2020-04-07 19:01:30 -07:00
Casey Rodarmor
151d912156
Deny warnings in GitHub Actions main workflow build
type: testing
2020-04-07 19:01:30 -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
1e5c19d02b
Add GitHub Actions workflow to build book and push to github pages
- Run book build on all commits
- Deploy site on pushes to master

type: development
2020-04-07 19:01:30 -07:00
Casey Rodarmor
86aeec3ce9
Fix release process issues
- Trigger GitHub Actions workflow on release tags
- Make build script tolerate not being called in git directory
- Omit git hash in created by message if not built in git directory
- Test created by message format

type: distribution
2020-04-07 19:01:29 -07:00
Casey Rodarmor
1c22623df4
Trigger GitHub actions build on either push and PR to master
type: development
2020-04-07 19:01:13 -07:00
Casey Rodarmor
f2a5f13729
Format with unstable rustfmt options
- Format with nightly rustfmt
- Enable unstable options in rustfmt.toml
- Turn off git text file detection, so newlines are always unix newlines

type: reform
2020-04-07 19:01:07 -07:00
Casey Rodarmor
b0962722c7
Add Github Actions build badge to readme
Also change the name of the main workflow from Main to Build, since I'd
like the badge to say "Build | Passing".

type: documentation
2020-04-07 19:01:06 -07:00
Casey Rodarmor
2512b05ece
Fix Bors
type: development
2020-04-07 19:01:01 -07:00
Casey Rodarmor
a6745e2a41
Configure Bors
Bors: I'll save you Meguca!

type: development
2020-04-07 19:01:00 -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
cf59a58c67
Build and upload release artifacts from CI
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
Casey Rodarmor
d1f8f24d8e
Add colored output
Colored output can be controlled on the command line with
`--use-color auto|always|never`. The default is `auto`, which enables
color if `imdl` detects that it is printing to a terminal.

Color can be disabled entirely by setting the `NO_COLOR` environment
variable.

type: added
2020-04-07 19:00:47 -07:00
Casey Rodarmor
7de1c04776
Fail CI if code isn't formatted
type: testing
2020-04-07 19:00:40 -07:00
Casey Rodarmor
408735621e
Delete extraneous comment in workflow file
type: reform
2020-04-07 19:00:34 -07:00
Casey Rodarmor
074a3b3d42
Run CI tests on windows, macos, and linux
type: testing
2020-04-07 18:55:48 -07:00
Casey Rodarmor
9f83661374
Configure clippy and lint on push
Enable as many lints as I can stand. I'll definitely add more exceptions as
`clippy::pedantic` and `clippy::restriction` wear me down.

type: testing
2020-04-07 18:55:45 -07:00
Casey Rodarmor
3affa8c5e1
Add build and test github action workflow
type: testing
2020-04-07 18:55:37 -07:00