0Pricing
Learn Rust Coding · Lección

Cargo.toml

Manifiesto y dependencias

Cargo.toml es una lección gratuita de Learn Rust Coding en CoddyKit. Esta es la lección 2 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Learn Rust Coding, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Learn Rust Coding incluye 4 lecciones en total.

El manifiesto

Cargo.toml es el archivo de manifiesto situado en la raíz de todo proyecto de Rust. Describe el paquete y sus dependencias mediante el formato TOML.

La sección [package]

La tabla [package] contiene los metadatos de su crate.

  • name — nombre del crate
  • version — versión semántica
  • edition — edición de Rust (por ejemplo, 2021)
[package]
name = "my_app"
version = "0.1.0"
edition = "2021"

Añadir dependencias

Enumere los crates externos en [dependencies]. Cargo los descarga de crates.io y los compila por usted.

[dependencies]
rand = "0.8"
serde = "1.0"

cargo add

En lugar de editar el archivo manualmente, use cargo add para insertar una dependencia con la última versión compatible.

cargo add rand
cargo add serde

Requisitos de versión

Las cadenas de versión usan las reglas de semver:

  • "1.0" significa >=1.0.0 y <2.0.0 (caret de forma predeterminada)
  • "=1.2.3" fija una versión exacta
  • "~1.2" permite únicamente actualizaciones de parche
[dependencies]
regex = "=1.10.2"
log = "~0.4"

Usar una dependencia

Una vez añadida, incorpore elementos al ámbito con use y llámelos en el código. Aquí usamos el crate rand (en un proyecto real).

use rand::Rng;

fn main() {
    let mut rng = rand::thread_rng();
    let n: u8 = rng.gen_range(1..=6);
    println!("Rolled a {n}");
}

Características de las dependencias

Muchos crates exponen features opcionales. Actívelas con la clave features, normalmente desactivando primero las predeterminadas.

[dependencies]
serde = { version = "1.0", features = ["derive"] }

Dependencias de desarrollo

[dev-dependencies] solo se compila para pruebas, ejemplos y benchmarks; nunca se incluye en la distribución de su biblioteca.

[dev-dependencies]
pretty_assertions = "1.4"

Dependencias de ruta y Git

Las dependencias también pueden proceder de una ruta local o de un repositorio de Git, en lugar de crates.io.

[dependencies]
my_lib = { path = "../my_lib" }
some_crate = { git = "https://github.com/user/repo" }

Actualizar dependencias

cargo update actualiza las dependencias a las versiones más recientes permitidas por sus requisitos de versión y reescribe Cargo.lock.

cargo update

Metadatos opcionales del paquete

La tabla [package] acepta campos adicionales que aparecen en crates.io al publicar:

  • authors — quién lo escribió
  • description — un resumen breve
  • license — un identificador SPDX como MIT
  • repository — la URL del código fuente
[package]
name = "my_app"
version = "0.1.0"
edition = "2021"
description = "A small demo crate"
license = "MIT"

Comprobación rápida

¿Dónde debe incluirse un crate que solo se necesita al ejecutar pruebas?

Recapitulación

Ha explorado el manifiesto:

  • [package] contiene metadatos como el nombre, la versión y la edición
  • [dependencies] declara crates de crates.io, de una ruta o de Git
  • Las cadenas de versión siguen las reglas de semver
  • features activa funcionalidades opcionales
  • [dev-dependencies] se usa solo para pruebas

Preguntas frecuentes

¿La lección «Cargo.toml» es gratis?

Sí — el texto completo de «Cargo.toml» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Learn Rust Coding, actualiza a CoddyKit PRO. El curso de Learn Rust Coding incluye 4 lecciones en total.

¿Qué aprenderé en «Cargo.toml»?

Manifiesto y dependencias Practicas Learn Rust Coding con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Learn Rust Coding?

No se requiere experiencia previa. Learn Rust Coding en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 2 de 4.

¿Cuánto tiempo toma la lección «Cargo.toml»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Learn Rust Coding?

Sí. Cada lección de Learn Rust Coding incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Fundamentos de Cargo
  2. Cargo.toml
  3. Workspaces
  4. Features y perfiles
← Volver a Learn Rust Coding