Esta semana en Rust #93
¡Hola y bienvenidos a otro número de Esta Semana en Rust! Rust es un lenguaje de programación que permite a todos crear software fiable y eficiente. Este es un resumen semanal de su progreso y comunidad. ¿Quieres que se mencione algo? Etiquetanos en @thisweekinrust.bsky.social en Bluesky o @ThisWeekinRust en mastodon.social, o mándanos una solicitud de retirada. ¿Quieres participar? Nos encantan las contribuciones.
This Week in Rust está desarrollado abiertamente en GitHub y los archivos pueden consultarse en this-week-in-rust.org. Si encuentras algún error en el número de esta semana, por favor presenta un RP.
¿Quieres TWIR en tu bandeja de entrada? Suscríbete aquí.
Actualizaciones de la comunidad Rust
Oficial
- ¿Qué es el mantenimiento, de todos modos?
- Resumen del Equipo de Infraestructura del Cuarto trimestre 2025 y Plan del 1º trimestre 2026
Boletines
Actualizaciones de proyectos/herramientas
- Bevy 0,18
- Crecimiento exponencial continuado — cargo-semver-checks Año 2025 Resumen
- Esta semana en Slatron v1.1: El inteligente director de la estación de televisión presenta presentadores DJ con IA con soporte TTS para emisoras de televisión hackeables y DIY, radio y señalización digital.
- Guía de migración SeaORM 2.0
- BugStalker v0.4.0 - Depurador moderno para Linux x86-64. Escrito en programas Rust para Rust. ahora con soporte para VSCode.
- Anunciando cadd: una biblioteca para aritmética y conversiones comprobadas sin dolor
- READ_ONCE(), WRITE_ONCE(), pero no para Rust
- GuardianDB 0.14.0 - Base de datos descentralizada de alto rendimiento y localmente construida sobre Rust e Iroh
- Un año de trabajo en el proyecto ALPM
- GlueSQL v0.19 añade asignación de parámetros y planificadores de consultas personalizables
- guardia diésel: Tus migraciones de diésel podrían ser bombas de relojería.
- Reseña del motor físico Rapier 2025 y objetivos 2026
- Tako v0.5.0 → v0.7.1-2: de "buen router" a "mini plataforma"
Observaciones/Pensamientos
- El estado de la criptografía de Rust en 2026
- La recogida de basura es contraria
- Integración de Lugares Virtuales y Checker de Préstamos
- [vídeo] 39c3 - Xous: Una reinterpretación pura del sistema operativo embebido
- [vídeo] Decodificación rápida y segura de imágenes en Rust
- [vídeo] ere: Compilación de expresiones regulares en tiempo de compilación
- [vídeo] Rust en Volvo Cars
- [audio] Radar con Jeff Kao
Guías de Rust
[ES] Patrón de mando en Rust: Cuando la intención no tiene que ser un objeto
- [serie] Parte 3: Arquitectura de modelos, construyendo un LLM desde cero en Rust
- La guía del programador impaciente para Bevy and Rust: Capítulo 5 - Que haya pastillas
- [audio] Netstack.FM episodio 22 — URL de Rust con Simon Sapin
Miscelánea
Crate de la semana
El crate de esta semana es diesel-guard, un linter contra peligrosas migraciones de Postgres.
¡Gracias a Alex Yarotsky por la autosugerencia!
Por favor, enviad vuestras sugerencias y votos para la próxima semana!
Llama a pruebas
Un paso importante para la implementación de RFC es que las personas experimenten con el Implementación y dar retroalimentación, especialmente antes de la estabilización. Si eres un implementador de funciones y quieres que tu RFC aparezca en esta lista, añade una Etiqueta de 'llamada para pruebas' a tu RFC junto con un comentario que ofrece instrucciones de prueba y/o orientación sobre qué aspecto(s) de la funcionalidad necesitan pruebas.
- No se emitieron llamadas para pruebas esta semana por Rust, Carga, Ruído o RFCs en lenguaje oxidado.
Cuéntanos si quieres que tu característica se registre como parte de esta lista.
Llamado a la participación; Proyectos y ponentes
CFP - Proyectos
Siempre has querido contribuir a proyectos de código abierto pero no sabías por dónde empezar. Cada semana destacamos algunas tareas de la comunidad de Rust para que elijas y empieces.
Algunas de estas tareas también pueden tener mentores disponibles, visita la página de la tarea para más información.
- El esquema de impresión diésel - diésel produce un esquema incompilable con columna llamada "table"
- GuardianDB - Crear Referencias
- GuardianDB - Crear ejemplos de uso cohesivos
- GuardianDB - Traducir documentación al inglés
- peldaño - Añadir completaciones de conchas para golpear/zsh/pez
- [ring] - Añadir ---bandera silenciosa para suprimir la salida no esencial](https://github.com/auswm85/rung/issues/19)
- peldaño - Soporte NO_COLOR variable de entorno
- peldaño - Añadir comandos de navegación de peldaño arriba / peldaño inferior
- rung - Comando Add rung log para mostrar los commits de la pila
- peldaño - Añadir prueba de integración para sincronización con conflictos de fusión
Si eres propietario de un proyecto Rust y buscas colaboradores, por favor envia tareas aquí o a través de un PR to TWiR o contactando en Bluesky o Mastodon!
CFP - Eventos
¿Eres un ponente nuevo o experimentado que busca un lugar para compartir algo interesante? Esta sección destaca eventos que se están organizando y que están aceptando propuestas para unirse a su evento como ponente.
- SemanaRust 2026 | CFP cierra el 18-01-2026 | Utrecht, Países Bajos | 2026-05-19 - 2026-05-20
- RustConf 2026 | CFP cierra el 16-02-2026 | Montreal, Quebec, Canadá | 2026-09-08 - 2026-09-11
Si eres un organizador de eventos que espera ampliar el alcance de tu evento, por favor envia un enlace a la web a través de un PR to TWiR o contactando en Bluesky o Mastodon!
Actualizaciones del Proyecto Rust
539 pull requests se fusionaron en la última semana
Compilador
- [corrige 'Expr::can_have_side_effects' para 'x; Expresión literal y binaria de los arreglos de estilo N
Biblioteca
- añadir 'AtomicPtr::null'
- 'Vec::p ush' en consts MVP
- añadir parámetro asignador a 'HashMap'
- implementa 'partial_sort_unstable' para corte
- MVP de la reflexión
- estabilizar 'Peekable::next_if_map' ('#![ Feature(peekable_next_if_map)]')
- estabilizar 'corte::element_offset'
Carga
- 'docs(inestable)': ampliar la documentación para '-Zbuild-analysis'
- 'feat(test)': Hacer que 'CARGO_BIN_EXE_' esté disponible en tiempo de ejecución
- 'fix(build-std)': metadatos de enlace estándar se propagan al usuario
- 'fix(info)': resolver la discrepancia de guion vs desajuste de guion en la consulta de esquema
- 'fix(package)': detectar archivos sucios cuando se ejecutan desde un miembro del espacio de trabajo
- añadir grupos de pelusa tipo clippy
- añadir la bandera '--id' a 'tiempos de reporte de carga' y 'reconstrucciones de informes de carga'
- Reproducir la ruta del archivo de bloqueo en modo muy extenso al bloquear
- dote: solo en memoria 'Manifest'
- corregir(tiempo)!: eliminar '--timings=<FMT>' valores opcionales de formato
- corrección: preservar 'dep_name' para metadatos del script de compilación
- corregió una comparación incorrecta de versiones durante la selección de dependencia del script de compilación
- mejora el mensaje de error por dependencias ausentes
- aislar la proggestión de metadatos del script de compilación entre cajas STD y no STD
- refactorización: nuevo tipo para índice unitario
- prueba: añadir '-Zunstable-options' con objetivos personalizados
Rustdoc
Clippy
- Un 'retorno' en un cierre de iterador no debería desencadenar 'never_loop'
- 'strlen_on_c_strings': mencionar el tipo específico ('CString o 'CStr')'
- 'float_point_arithmetic': respetar la aplicabilidad reducida
- 'single_range_in_vec_init': no apliques la sugerencia automáticamente
- 'unnecessary_map_or': respetar la aplicabilidad reducida
- 'useless_conversion': respetar la aplicabilidad reducida
- 'missing_enforced_import_rename': No hacer cumplir los guiones subrayados
- 'suspicious_to_owned': mejorar los mensajes de pelusa
- 'transmuting_null': Añadir comprobaciones para 'without_provenance' y 'without_provenance_mut'
- añadir nueva pelusa de 'duration_suboptimal_units'
- permite 'expect' en 'impl' para 'derive_ord_xor_partial_ord'
- limpieza 'unnecessary_map_or' y 'manual_is_variant_and'
- no ignorar afirmaciones antes de un 'interrupción' al simplificar el bucle
- no mostrar los tramos de cajas externas en 'missing_trait_methods'
- no advertir sobre grandes matrices de pila sin tener un espacio válido
- no advertir sobre el efecto secundario aritmético de 'String'+'String'
- mejora 'needless_collect' para cubrir a 'push' vec similar a la PUSH
- corregir 'LimitStack::p op_atr' en versiones de lanzamiento
- corregir 'clippy_utils::std_or_core(_)' marcando las cajas de 'no_core' como 'std'
- corregir 'map_unwrap_or' no cubre 'Resultado::unwrap_or'
- corrección 'significant_drop_tightening' sugiere erróneamente para uso no por método
- corregir macros 'str_to_string' mal desordenadas
- corregir macros 'unnecessary_to_owned' mal desordenadas
- arreglar: restringir 'match_bool' a 2 brazos
- mejora la sugerencia 'useless_conversion .into_iter()' para referencias anidadas
- más correcciones para el manejo de macros
- revisión 'int_plus_one'
Analizador de Rust
- añadir heredar atributos para 'extract_function' asistencia
- configurar flycheck usando workspace.discoverConfig
- permitir rutas de Rust en la búsqueda de símbolos
- corregir la bandera de ignorar para atributos de prueba con valores
- arreglo pierde existencia y guarda para 'move_guard'
- corrección no aplicable en la declaración para 'convert_to_guarded_return'
- corrección no completa 'mut' y 'raw' en '&x.foo()'
- arreglar no desactivar los resaltos de escape de cadenas
- desactivar las advertencias de 'unused_variables' y 'unused_mut'
- corregir la búsqueda raíz de caja en símbolos del mundo que duplican entradas raíz
- Arreglar los diagnósticos de LEN para punteros FN de tiempos de vida
- correcciones para expansiones derivadas integradas
- ocultar importaciones renombradas de macros en el índice de símbolos
- bajando el bloqueo con predicados de superrasgo
- ¡haz 'naked_asm! ()' siempre devuelven '!'
- correctamente bajar los predicados 'Solo-Yo'
- eliminar código hecho redundante por reescritura de resolución de método
- sugiere rasgos distintos a los de la caja ambiental
- Sync Cast vuelve a comprobar a RUSTC
- implementa 'Span::ByteRange' para proc-macro-srv
- migrar 'generate_mut_trait_impl' asistir para usar SyntaxEditor
Triaje de rendimiento del compilador Rust
Semana bastante tranquila, la mayoría de los cambios se deben a nuevas características que, naturalmente, incorporan algunas gastos generales para programas existentes. En general, aunque una pequeña mejora.
Triaje hecho por @simulacrum. Rango de revisión: 7c04f5d2.. 840245e9
3 regresiones, 1 mejora, 4 mixtas; 2 de ellos en rollups 31 comparaciones de artefactos realizadas en total
RFCs aprobados
Los cambios en Rust siguen el proceso de Rust RFC (solicitud de comentarios). Estos ¿Son los RFC que fueron aprobados para su implementación esta semana?
Periodo final de comentarios
Cada semana, el equipo anuncia el 'periodo final de comentarios' para los RFCs y PRs clave que están tomando una decisión. Expresa tus opiniones ahora.
Problemas de seguimiento y marcas personales
Equipo de compiladores (solo MCPs)
Rust
- Estabilizar ensamblaje en línea ppc
- Evaluación: siempre haz copias de mem a mem si puede haber relleno
- Problema de seguimiento para 'Vec::p ush_mut'
- Problema de seguimiento para 'error_generic_member_access'
- FCW Lint cuando se usa un rasgo importado de globo ambiguo
Sin artículos inscritos en el Periodo de Comentarios Finales esta semana para Carga, RFCs de Rust, Consejo de Liderazgo, Equipo de Lenguaje, Referencia lingüística o Directrices del Código de Peligro. Háznos saber si desea que sus registros permanentes, problemas de seguimiento o RFCs sean registrados como parte de esta lista.
RFCs nuevos y actualizados
Próximos eventos
Eventos Rusty entre el 14-01-2026 y el 11-02-2026 🦀
Virtual
- 2026-01-15 | Virtual (Berlín, DE) | Berlín Oxidado
- 2026-01-15 | Híbrido (Seattle, WA, EE. UU.) Grupo de usuarios Seattle Rust
- 2026-01-15 | Virtual (Berlín, DE) | Berlín Oxidado
- 2026-01-16 | Virtual (Tel Aviv-yafo, IL) | TLV de Rust 🦀
- 2026-01-18 | Virtual (Tel Aviv-yafo, IL) | Expertos 🦀 en el Código - 🐍 - 🐪
- 2026-01-20 | Virtual (Washington, DC, EE. UU.) | Oxidación DC
- 2026-01-21 | Virtual (Girona, ES) | Rust Girona
- 2026-01-21 | Virtual (Vancouver, BC, CA) | Rust de Vancouver
- 2026-01-27 | Virtual (Dallas, TX, EE. UU.) | Encuentro de usuarios de Dallas Rust
- 2026-01-27 | Virtual (Londres, Reino Unido) | Mujeres con Rust
- 2026-01-28 | Virtual (Girona, ES) | Rust Girona
- 2026-01-29 | Virtual (Ámsterdam, NL) | Desarrollo del juego Bevy
- 2026-01-29 | Virtual (Berlín, DE) | Berlín Oxidado
- 2026-01-29 | Virtual (Charlottesville, VA, EE. UU.) | Encuentro de Charlottesville Rust
- 2026-02-04 | Virtual (Indianápolis, IN, EE. UU.) | Indy Rust
- 2026-02-07 | Virtual (Kampala, UG) | Encuentro del Círculo de Rust
- 2026-02-10 | Virtual (Dallas, TX, EE. UU.) | Encuentro de usuarios de Dallas Rust
- 2026-02-10 | Virtual (Londres, Reino Unido) | Mujeres con Rust
- 2026-02-11 | Virtual (Girona, ES) | Rust Girona
Asia
- 2026-01-17 | Delhi, IN | Rust Delhi
- 2026-02-05 | Seúl, KR | Seoul Rust (lenguaje de programación) Meetup
- 2026-02-11 | Kuala Lumpur, MI | Rust Malaysia
Europa
- 2026-01-14 | Girona, ES | Rust Girona
- 2026-01-14 | Reading, Reino Unido | Leyendo el Taller de Rust
- 2026-01-16 | Edimburgo, Reino Unido | Rust y amigos
- 2026-01-20 | Leipzig, SN, DE | Rust - Programación de sistemas modernos en Leipzig
- 2026-01-20 | París, FR | París Rust
- 2026-01-21 | Cambridge, Reino Unido | Encuentro de Cambridge Rust
- 26-01-2026 | Augsburgo, DE | Reunión de Rust Augsburg
- 2026-01-28 | Dortmund, DE | Dortmund Oxidado
- 2026-01-29 | Ostrava, CZ | Encuentro con Actualización Ostrava
- 2026-02-04 | Darmstadt, DE | Rust Rhein-Main
- 2026-02-04 | Múnich, DE | Rust Múnich
- 2026-02-04 | Oxford, Reino Unido | Encuentro Oxford ACCU/Rust.
- 2026-02-05 | Karlsruhe, DE | Hack Rust & Learn Karlsruhe
- 2026-02-11 | Basilea, CH | Rust Basel
- 2026-02-11 | Reading, Reino Unido | Leyendo el Taller de Rust
Norteamérica
- 2026-01-14 | Chicago, IL, EE. UU. Encuentro de Chicago Rust
- 2026-01-15 | Híbrido (Seattle, WA, EE. UU.) Grupo de usuarios Seattle Rust
- 2026-01-17 | Boston, MA, EE. UU. Encuentro de Boston Rust
- 2026-01-17 | Herndon, VA, EE. UU. | NoVaLUG
- 2026-01-20 | San Francisco, CA, EE. UU. Svix
- 2026-01-20 | San Francisco, CA, EE. UU. Grupo de Estudio sobre el Rust de San Francisco
- 2026-01-21 | Austin, TX, EE. UU. | ATX de Rust
- 2026-01-22 | Boston, MA, EE. UU. Encuentro de Boston Rust
- 2026-01-22 | Mountain View, CA, EE. UU. | Dojo Hacker
- 2026-01-24 | Boston, MA, EE. UU. Encuentro de Boston Rust
- 2026-01-28 | Los Ángeles, CA, EE. UU. | Rust Los Ángeles
- 2026-01-29 | Atlanta, GA, EE. UU. Rust Atlanta
- 2026-01-29 | Nashville, TN, EE. UU. | Desarrolladores de Music City Rust
- 2026-01-31 | Boston, MA, EE. UU. Encuentro de Boston Rust
- 2026-02-03 | Nueva York, NY, EE. UU. Rust NYC
- 2026-02-05 | Saint Louis, MO, EE. UU. STL Rust
- 2026-02-07 | Boston, MA, EE. UU. Encuentro de Boston Rust
Si organizas un evento de Rust, por favor añádelo al calendario para obtener Lo menciona aquí. Por favor, recuerda añadir también un enlace al evento. Envía un correo electrónico al [Rust Community Team][community] para acceder a la información.
Trabajos
Por favor, consulta el último hilo de Quién está contratando en r/rust
Cita de la semana
he escrito en decenas de lenguajes informáticos, incluidos algunos especializados que eran internos de Pixar (incluido uno que diseñé). Pasé décadas escribiendo en C y C++. Escribí microcódigo bit-slice, programado para SIMD antes de que mucha gente fuera de Pixar lo tuviera.
escribí el primer depurador malloc que detenía tu depurador en la línea del código fuente, ese era el problema. Los fabricantes de estaciones de trabajo Unix tuvieron que hacer un lanzamiento inesperado cuando esto reveló todos los problemas en sus bibliotecas C.
soy mejor programador en Rust para todo lo de bajo nivel o alto rendimiento. Simplemente me evita cometer toda una serie de errores que eran demasiado fáciles de cometer en cualquier idioma sin necesidad de recoger basura.
A largo plazo, cualquier cosa que mejore la calidad va a ganar. Hay mucho dolor de estómago por parte de personas que están demasiado enamoradas de lo que llevan usando durante décadas, pero en su mayoría es libre de sustancias. Como que la gente se dé cuenta de que el código marcado como "inseguro" es, sorpresa, inseguro. Y que lo inseguro puede ser abusado.
¡Gracias a Brian Kung por la sugerencia!
¡Por favor, enviad citas y votad para la semana que viene!
Esta semana en el Rust está editado por:
- Nellshamrell
- llogiq
- ericseppanen
- extrawurst
- U007D
- Marianne Goldin
- bdillo
- opeolluwa
- bnchi
- KannanPalani57
- tzilista
El alojamiento de la lista de correo está patrocinado por The Rust Foundation