doc: Update guidance about Rust package naming.

* doc/contributing.texi (Rust Crates): Explain versions suffix based on
  packages version and Crate "caret" versioning.
This commit is contained in:
Hartmut Goebel 2020-04-30 22:53:47 +02:00
parent 42008264d9
commit 784048c27b
No known key found for this signature in database
GPG Key ID: 634A8DFFD3F631DF

View File

@ -802,10 +802,10 @@ To prevent namespace collisions we prefix all other Rust packages with the
dashes should remain in place.
In the rust ecosystem it is common for multiple incompatible versions of a
package to be used at any given time, so all packages should have a versioned
suffix. If a package has passed version 1.0.0 then just the major version
number is sufficient (e.g.@: @code{rust-clap-2}), otherwise the version suffix
should contain both the major and minor version (e.g.@: @code{rust-rand-0.6}).
package to be used at any given time, so all package definitions should have a
versioned suffix. The versioned suffix is the left-most non-zero digit (and
any leading zeros, of course). This follows the ``caret'' version scheme
intended by Cargo. Examples@: @code{rust-clap-2}, @code{rust-rand-0.6}.
Because of the difficulty in reusing rust packages as pre-compiled inputs for
other packages the Cargo build system (@pxref{Build Systems,