<commit_before># Run cargo subcommands on all local packages

A tiny cargo subcommand for executing other subcommands on all "local" packages (ie. packages in the same repository). This allows running `cargo test` on all crates in a repo with a single command.

## Example

This will run tests of all local crates (but see the notes below):
```
cargo local-pkgs test
```
<commit_msg>Update readme with more info<commit_after># Run cargo subcommands on all local packages

A tiny cargo subcommand for executing other subcommands on all "local" packages (ie. packages in the same repository). This allows running `cargo test` on all crates in a repo with a single command.

## Installation

As usual, this subcommand can be installed with `cargo install`:
```
cargo install cargo-local-pkgs
```

## Examples

### Test all local crates

This will run tests of all local crates (but see the notes below):
```
cargo local-pkgs test
```

### With Travis

Travis integration is easy, thanks to `cargo install`:
```yml
language: rust
before_script:
  - |
      cargo install cargo-local-pkgs &&
      export PATH=$HOME/.cargo/bin:$PATH
script:
  - cargo local-pkgs test
```

Libraries aren't supposed to check their `Cargo.lock` into git, so it doesn't exist when running `cargo local-pkgs` via Travis. However, we can generate it using `cargo generate-lockfile`. Replace the `script` section above with this:
```yml
script:
  - |
      cargo generate-lockfile &&
      cargo local-pkgs test
```

{'fraction_non_alphanumeric': 0.08669354838709678, 'fraction_numerical': 0.0, 'mean_word_length': 4.116838487972508, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1130078', 'n_tokens_mistral': 435, 'n_tokens_neox': 415, 'n_words': 202}