cargo-crev 0.18.3

Scalable, social, Code REView system that we desperately need - Rust/cargo frontend
Documentation
# Glossary

The following is glossary of terms commonly used in `crev` and `cargo-crev`


### *Advisory*

An optional part of a *Review*, announcing a significant problem
fixed in that package version, advising other users to upgrade.

Notably *Advisories* implicitly denote existance of such issue
in all previous versions in a certain *VersionRange*.

### *CrevId*

Default (and currently the only supported) identity type in `crev`.
A self-generated identity used to sign *proofs*.


Under the hood it's just
a keypair, with the public key used as a public ID, and the secret key
stored locally and encrypted with a passphrase.
### *Issue*

An optional part of a *Review*, announcing a significant problem present
in a given package version.

Very similiar to *Advisory*. It's generally better to prefer *Advisories*,
except for cases in which the problem does not have a solution available yet.

### *Level*

Level is commonly used in `crev` to qualify things. It can typically have one of 4 values:

* high
* medium
* low
* none

### *Proof*

A YAML document describing attesting a certain fact. Currently supported
*proof* types are:

* *Trust Proof* - attesting that the author of the proof considers another
  identity as trustworthy
* *Package Review Proof* - describing the results of code review of a specific
  package/library

More proof types can be introduced in the future.

### *Proof Repository*

A `git` repository used to store *Proofs*. A *Proof Repository* can be local,
or public, just like `git` repositories are.

### *Review*

Short for *Package Review Proof*. A document describing results of source code
review of a particular package.

### *Trust Set*

A result of traversing a *Web of Trust* from from a given root identity
to calculate a set of all the other identities that are directly or
transitiviely consider trustworthy.

See [Trust documentation module](../trust/index.html) for introduction.

### *Web of Trust* (*WoT*)

A graph composed of identities as nodes, and trust relations between them as edges.

Build on the fly from all the available *Trust Proofs* and used to calculate
a *Trust Set* for a given identity.

See [Trust documentation module](../trust/index.html) for introduction.


### *Version Range*

In `crev`, a method of simplified version range specification.

Can take the following values:

* `all` - all versions
* `major` - major release (eg. 2.x.y)
* `minor` - major release (eg. 2.1.x)

An *Advisory* reported in a *Review* of version 1.2.3, would
affect all versions between:

* `0.0.0` and `1.2.3` if reported with `all` *Version Range* value,
* `1.0.0` and `1.2.3` if reported with `major` *Version Range* value,
* `1.2.0` and `1.2.3` if reported with `minor` *Version Range* value