Add the `Invariant` trait, which provides `Invariant::invariant` and
`Invariant::invariant_unwrap` methods, and use them instead of unwrap
and expect.
I think these methods are a bit clearer than `unwrap` and `expect`,
since they more clearly document intent, i.e. that the thing passed to
`invariant` should be a description of an invariant that should always
be true, and should provide better error messages.
Replace uses of `unwrap` and `expect` with `invariant`.
type: reform
fixes:
- https://github.com/casey/intermodal/issues/167
This enables `--select-only 1,2,3` which gets appended to the magnet
link as `&so=1,2,3`.
It's a partial implementation because we're missing support for file
ranges ie `--select-only 4-6`
type: added
fixes:
- https://github.com/casey/intermodal/issues/245