Rust en 2025: resumen de las principales novedades y cambios

Entrenador de Python en Línea para Principiantes

Aprende Python fácilmente sin sobrecargarte de teoría. Resuelve tareas prácticas con verificación automática, recibe pistas y escribe código directamente en el navegador, sin instalar nada.

Start Course

Introducción



2025 se ha convertido en un año emblemático para el ecosistema de Rust. El lenguaje, que en los últimos años se ha consolidado firmemente en los nichos de la programación de sistemas, WebAssembly (WASM) y las herramientas de línea de comandos, continúa desarrollándose activamente. El equipo de desarrolladores de Rust y la comunidad han lanzado una serie de actualizaciones importantes que hacen que el lenguaje sea aún más productivo, seguro y conveniente.



En este artículo, analizaremos las innovaciones clave de Rust en 2025: desde la estabilización de los iteradores asíncronos hasta las mejoras en el trabajo con WebAssembly y un nuevo enfoque para las macros. Si ya estás familiarizado con Rust o recién estás considerando el lenguaje, esta visión general te ayudará a comprender hacia dónde se dirige el ecosistema.



Estabilización de los iteradores asíncronos (Async Iterator)



Uno de los eventos más esperados de 2025 fue la estabilización de los traits AsyncIterator y AsyncIteratorExt. Anteriormente, trabajar con flujos de datos asíncronos solo era posible a través de crates de terceros, como futures o tokio-stream. Ahora esta funcionalidad está integrada en la biblioteca estándar.



¿Qué ha cambiado?



Ahora puedes escribir generadores asíncronos y combinarlos con métodos estándar como map, filter, collect, directamente en Rust estable. Esto reduce la barrera de entrada y disminuye la cantidad de dependencias.



// Ejemplo de uso de un iterador asíncrono estableuse std::collections::VecDeque;

async fn process_stream() { let stream = async_stream::stream! { for i in 0..10 { yield i * 2; } };

// Usamos métodos integrados let result: Vec<i32> = stream .map(|x| async move { x + 1 }) .filter(|x| async move { *x > 5 }) .collect() .await;

println!("Resultado: {:?}", result);}


Además, se han estabilizado los traits FromAsyncIterator e IntoAsyncIterator, lo que permite convertir fácilmente colecciones síncronas en asíncronas y viceversa. Esto es especialmente útil al trabajar con solicitudes de red o flujos de archivos.



Soporte mejorado para WebAssembly (WASM)



El ecosistema de Rust y WASM en 2025 ha dado un gran paso adelante. La principal innovación es el soporte nativo de la interfaz WASI Preview 2 (WebAssembly System Interface). Anteriormente, WASI era principalmente experimental, pero ahora se ha estabilizado y se recomienda para su uso en producción.



¿Qué aporta esto a los desarrolladores?



  • Acceso al sistema de archivos — WASI Preview 2 permite trabajar de forma segura con archivos y directorios, lo que antes era una limitación importante.
  • Capacidades de red — ahora es posible crear servidores y clientes HTTP directamente en WASM, utilizando crates estándar.
  • Rendimiento mejorado — la nueva ABI (Application Binary Interface) reduce la sobrecarga al llamar funciones entre el host y el módulo WASM.


// Ejemplo de un servidor HTTP simple en WASM usando WASI Preview 2use wasi::http::handler;use wasi::http::types::{Request, Response};

fn main() { handler::serve(|req: Request| -> Response { Response::new() .with_status(200) .with_body(b"Hello from Rust in WASM!") });}


También vale la pena señalar la mejora significativa en las herramientas de compilación. wasm-pack ha recibido una actualización que permite generar automáticamente tipos de TypeScript para las funciones exportadas, lo que simplifica la integración del código Rust con los frameworks de frontend.



Macros 2.0: Nueva sintaxis y capacidades



El sistema de macros en Rust siempre ha sido potente, pero difícil de aprender. En 2025, el equipo de Rust presentó Macros 2.0, una nueva generación de macros declarativas diseñadas para reemplazar las antiguas macro_rules!.

Blogs

Book Recommendations