Suivant: Paquets elm, Précédent: Paquets Java, Monter: Consignes d’empaquetage [Table des matières][Index]
Le programmes Rust utiles en soit sont nommés comme les autres paquets, avec le nom amont en minuscule.
Pour éviter des collisions de noms nous préfixons les autres paquets avec le
préfixe rust-
. Vous devrez changer le nom en minuscule et garder les
tirets en place.
Dans l’écosystème rust il est courant d’avoir plusieurs versions
incompatibles d’un paquet utilisées en même temps, donc toutes les
définitions des paquets devraient avoir un suffixe de version. Le suffixe de
version est le nombre le plus à gauche qui n’est pas un zéro (et tous les
zéros précédents, évidemment). Cela suit les conventions de version « caret
» de Cargo. Par exemple rust-clap-2
, rust-rand-0.6
.
À cause de la difficulté à réutiliser des paquets rust en entrées
précompilées pour d’autres paquets, le systèmes de construction Cargo
(voir cargo-build-system
) présente les mots-clefs
#:cargo-inputs
et cargo-development-inputs
en argument du
système de construction. Vous pouvez y penser comme les équivalents de
propagated-inputs
et native-inputs
. Les dependencies
et build-dependencies
de Rust devraient aller dans
#:cargo-inputs
et dev-dependencies
dans
#:cargo-development-inputs
. Si un paquet Rust se lie à d’autres
bibliothèques alors vous devriez utiliser l’emplacement inputs
standard et compagnie.
Vous devriez faire attention à vous assurer que la bonne version des
dépendances est utilisée ; pour cela nous essayons d’éviter de passer les
tests ou d’utiliser #:skip-build?
lorsque c’est possible. Bien sûr
ce n’est pas toujours possible, comme le paquet peut être développé sur un
autre système d’exploitation, dépendre d’une fonctionnalité du compilateur
Rust Nightly ou la suite de test atrophiée depuis la sortie.
Suivant: Paquets elm, Précédent: Paquets Java, Monter: Consignes d’empaquetage [Table des matières][Index]