cargo-export 0.2.0

Utility to export compiler artifacts from cargo build process
# Exporting cargo compiler artifacts (tests, benches)

## Motivation

It's quite challenging to export secondary artifacts like tests and benchmark executables. Those kind of artifacts can
be very valuable for different reasons:

1. packing test executables in the contaier to run them later on a different platform
2. comparing and analyzing assembly of performance benchmarks

For final artifacts we have `target/(release|debug)/{crate-name}`, but test and benchmark executables are containing
hash like `target/release/deps/app-25de5d28a523d3c2`. Moreover it changes every time compiler options are changed. For
this reason methods like `find` and `cp` doesn't work well for extracting such artifacts.

Thankfully, compiler provide service messages (`cargo build --message-format=json`) which allows to list all the
artifacts generated by the compiler.

## Installing

```console
$ cargo install cargo-export
```

## Using

- export all test binaries to `target/tests` directory
  ```console
  $ cargo export target/tests -- test
  ```

  Under the hood this command will run `cargo test --no-run --message-format=json` and copy all the generated binaries in the `target/tests` directory.

- export all benchmark binaries to `target/bench` directory
  ```console
  $ cargo export target/bench -- bench
  ```

- export all benchmark binaries to `target/bench` directory and add postfix `-main` to each executable
  ```console
  $ cargo export target/bench -t main -- bench
  ```