Next: Paquetes Elm, Previous: Paquetes Java, Up: Pautas de empaquetamiento [Contents][Index]
Los programas Rust ejecutables se nombran como cualquier otro paquete, mediante el uso del nombre oficial en minúsculas.
Para evitar colisiones en el espacio de nombres añadimos rust-
como
prefijo al resto de paquetes de Rust. El nombre debe cambiarse a letras
minúsculas cuando sea apropiado y los guiones deben mantenerse.
In the rust ecosystem it is common for multiple incompatible versions of a
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 rust-clap-2
,
rust-rand-0.6
.
Debido a la dificultad a la hora de reusar paquetes de rust como entradas
pre-compiladas de otros paquetes, el sistema de construcción de Cargo
(see cargo-build-system
) presenta las palabras
clave #:cargo-inputs
y cargo-development-inputs
como
parámetros del sistema de construcción. Puede servir de ayuda pensar en
estos parámetros de manera similar a propagated-inputs
y
native-inputs
. Las dependencias de rust de dependencies
y
build-dependencies
deben proporcionarse a través de
#:cargo-inputs
, y dev-dependencies
deben proporcionarse a
través de #:cargo-development-inputs
. Si un paquete de Rust se enlaza
con otras bibliotecas deben proporcionarse como habitualmente en
inputs
y otros campos relacionados.
Se debe tener cuidado a la hora de asegurar que se usan las versiones
correctas de las dependencias; para ello intentamos no evitar la ejecución
de pruebas o la construcción completa con #:skip-build?
cuando sea
posible. Por supuesto, no siempre es posible, ya que el paquete puede
desarrollarse para un sistema operativo distinto, depender de
características del compilador de Rust que se construye a diario (Nightly),
o la batería de pruebas puede haberse atrofiado desde su lanzamiento.
Next: Paquetes Elm, Previous: Paquetes Java, Up: Pautas de empaquetamiento [Contents][Index]