Esta semana en Rust #68
¡Hola y bienvenidos a otro número de This Week in Rust! Rust es un lenguaje de programación que permite a todo el mundo crear software fiable y eficiente. Este es un resumen semanal de su progreso y comunidad. ¿Quieres que se mencione algo? Etiquétanos en @thisweekinrust.bsky.social en Bluesky o @ThisWeekinRust en mastodon.social, o envíanos un PR. ¿Quieres participar? Nos encantan las contribuciones.
This Week in Rust se desarrolla abiertamente en GitHub y los archivos se pueden ver en this-week-in-rust.org. Si encuentra algún error en la edición de esta semana, por favor envíe un PR.
¿Quieres tener TWIR en tu bandeja de entrada? Suscríbete aquí.
Actualizaciones de la comunidad de Rust 🥰
Oficial
- crates.io: actualización de desarrollo | Blog de Rust
- Llamado a Pruebas: Acelerando la compilación con 'hint-mostly-unused'
Boletines
Actualizaciones de proyectos/herramientas
- egui 0.32 - Átomos, popups, y mejor soporte SVG
- reqwest retintentos
- Presentación de Rudy: Una cadena de herramientas para Rust Debuginfo
- RootAsRole 3.1.0 - Supera las características sudo, configurabilidad, -u, -g, -E
- Aspectos destacados de la versión 25.07 de Helix
- UltraGraph 0.8: Análisis de gráficos 1.300 veces más rápido, no se necesita clúster
Observaciones/Pensamientos
- funciones de colocación
- Rust es una gran opción para la era agentica
- Aquí viene el sol: construyendo iterativamente un programa de Rust que obtiene las condiciones climáticas actuales
- Pensando en Rust: Propiedad, Acceso y Seguridad de la Memoria
- Añadiendo lookbehinds a rust-lang/regex
- Publica todas tus cajas en todas partes de una sola vez
- Ideas de genéricos variádicos que no funcionarán para Rust
- [audio] Trazabilidad
- KSAT con Vegard Sandengen
Tutoriales de Rust
- Programación de Tipos de Datos Extensibles en Rust con CGP - Parte 3: Implementación de Registros Extensibles
- Axum: Optimizando el diseño de la API web con el Builder Pattern
- Tipos de prueba de prueba unitaria de Rust
Investigación
Miscelánea
Crate de la semana
El crate de esta semana es oxvg, un optimizador SVG.
¡Gracias a Noah Baldwin por la autosugestión!
Por favor, envíen sus sugerencias y votos para la próxima semana!
Llamadas a la realización de 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 es un implementador de características y desea que su RFC aparezca en esta lista, agregue un 'call-for-testing' a su RFC junto con un comentario que proporcione instrucciones de prueba y/o orientación sobre qué aspectos de la función deben probarse.
-
- Esta semana no se emitieron convocatorias para pruebas por parte de Rust, RFC del lenguaje Rust, Carga o Oxidación.*
Háganoslo saber si desea que se realice un seguimiento de su función como parte de esta lista.
Llamado a la participación; Proyectos y ponentes
CFP - Proyectos
¿Siempre quisiste 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 comiences!
Algunas de estas tareas también pueden tener mentores disponibles, visite la página de tareas para obtener más información.
- diesel: Designing '#[derive(QueryModel)]' Poll I - por defecto para #[diesel(check_for_backend()]
- Diesel: Designing '#[derive(QueryModel)]' Poll II - Comportamiento de unión para #[diesel(embed)]
- Diesel: Diseñando '#[deriva(QueryModel)]' Poll III - ¿Todo en uno derivar?
Si eres propietario de un proyecto de Rust y estás buscando colaboradores, por favor envía tareas aquí o a través de un PR to TWiR o poniéndote en contacto con X (antes Twitter) o Mastodon!
CFP - Eventos
¿Eres un orador nuevo o experimentado que busca un lugar para compartir algo genial? Esta sección destaca los eventos que se están planificando y que están aceptando presentaciones para unirse a su evento como orador.
No se han presentado convocatorias ni presentaciones esta semana.
Si usted es un organizador de eventos que espera expandir el alcance de su evento, envíe un enlace al sitio web a través de un PR to TWiR o comunicándose en X (anteriormente Twitter) o Mastodon!
Actualizaciones del Proyecto Rust
Se [fusionaron 421 solicitudes de extracción en la última semana][fusionadas]
Compilador
- use lld por defecto en el establo 'x86_64-unknown-linux-gnu'
- aplicar efectos al borde 'de otro modo' en el análisis de flujo de datos
- calcular todas las críticas de un rasgo
- considere casos anidados para RPITIT duplicado
- propagar desde locales prestados en CopyProp
- resolver: refactorizar el mapa de macros en mapas externos y locales
Biblioteca
- constificar los rasgos 'Fn*'
- constificar 'Desde' y 'Hasta'
- hacer const 'Default' y añadir algunos impls 'const Default'
- rebanada: marque 'rotate_left', 'rotate_right' const de manera inestable
- core: add 'BorrowedCursor::with_unfilled_buf'
- implementar la función 'int_format_into'
Carga
- añadir la tabla '[hints]' en 'Cargo.toml', y una sugerencia 'hints.mostly-unused'
- implementación y pruebas para 'multiple-build-scripts'
- perf: acelerar el análisis sintáctico de TOML actualizando toml
Rustdoc
Clippy
- 'arithmetic_side_effects': no advertir en 'NonZeroU*.get() - 1'
- 'or_fun_call': llamadas al método lint dentro de 'map_or' primer argumento
- '{flat_,}map_identity': reconocer '|[x, y]| [x, y]' como una función de identidad también
- añadir 'uninlined_format_args' ejemplo para '{:?}«
- no eliminar la llamada al método si se ajusta el tipo
- arreglar 'approx_const' para algunos casos nuevos
- arreglar 'expect_fun_call' produciendo sugerencias inválidas
- Arreglar la sugerencia de 'legacy_numeric_constants' cuando la llamada está envuelta entre paréntesis
- arreglar 'manual_abs_diff' sugiere erróneamente detrás de los árbitros
- arreglar 'manual_assert' sugiere erróneamente para macros
- corregir la generación de condiciones 'manual_is_variant_and'
- corregir falso negativo de 'expect_used'
- arreglar el manual es múltiplo de
- arreglar múltiples problemas en #15063
- la sugerencia de corrección causa el error de 'needless_for_each'
- Saltar salida tardía lint pasar en las pruebas
Analizador de Rust
- rust-analyzer: generate 'new' for tuple 'struct'
- Analizador de Rust: admite lista de arg multilínea plegable y cuerpo FN en un rango de plegado
- rust-analyzer: tipo de assoc donde la posición de la cláusula
- rust-analyzer: arreglar la visualización de la sintaxis 'use<>'
- rust-analyzer: correcciones para la sugerencia de incrustación 'dyn'
- Rust-Analyzer: correcciones de ASM en línea
- Rust-analyzer: normalizar los tipos de proyección antes de calcular los mapas de memoria
- rust-analyzer: perf: pon el material de expresión en el almacén de expresiones detrás de una 'Opción<Box>'
Clasificación del rendimiento del compilador de Rust
Una semana ocupada con muchos rollups que contienen perf. Regresiones y resultados mixtos. En general, las regresiones ganaron ligeramente, pero también hubo algunas victorias impresionantes en algunos puntos de referencia primarios y secundarios. Mucho rendimiento. Los efectos son causados por el rediseño actual del análisis de atributos, que se espera que resulte en un rendimiento ligeramente mejorado una vez que esté terminado.
Triaje realizado por @kobzol. Rango de revisión: 0d11be5a.. A9FB6103
Resumen:
| (instrucciones:u) | media | Gama | Recuento | |:----------------------------------:|:-----:|:---------------:|:-----:| | Regresiones ❌
(primario) | 0.5% | [0.1%, 1.5%] | 62 | | Regresiones ❌
(secundaria) | 0.5% | [0.1%, 1.8%] | 78 | | Mejoras ✅
(primario) | -0,4% | [-3.9%, -0.1%] | 40 | | Mejoras ✅
(secundaria) | -1,4% | [-11.6%, -0.0%] | 74 | | Todos ❌✅ (primarios) | 0.1% | [-3.9%, 1.5%] | 102 |5 regresiones, 4 mejoras, 8 mixtas; 5 de ellos en rollups 47 comparaciones de artefactos realizadas en total
RFC aprobados
Los cambios en Rust siguen el proceso de Rust RFC (solicitud de comentarios). Estos son las RFC que se aprobaron para su implementación esta semana:
- No se aprobaron RFC esta semana.
Período final de comentarios
Cada semana, el equipo anuncia el 'período final de comentarios' para las RFC y las RP clave que están llegando a una decisión. Expresa tus opiniones ahora.
Seguimiento de problemas y relaciones públicas
Rust
- Garantía de 8 bytes de alineación en Thread::into_raw
- rustdoc: añadir formas de colapsar todos los bloques impl
- Estabilizar 'const_float_round_methods'
- Problema de seguimiento para '#! [característica(const_float_round_methods)]'
- Añadir 'target_env = "macabi"' y 'target_env = "sim"'
RFC de Rust,
No hay artículos ingresados al Período Final de Comentarios esta semana para Carga, Equipo lingüístico, Referencia lingüística o Directrices de códigos inseguros.
Háganos saber si desea que se realice un seguimiento de sus solicitudes de incorporación de cambios, problemas de seguimiento o RFC como parte de esta lista.
RFC nuevas y actualizadas
- [nuevo] repr(escalable)
Próximos eventos
Eventos oxidados entre 2025-07-16 - 2025-08-13 🦀
Virtual
- 16/07/2025 | Híbrido (Vancouver, Columbia Británica, CA) | Rust de Vancouver
- 17/07/2025 | Híbrido (Redmond, WA, EE. UU.) | Grupo de usuarios de Seattle Rust
- 17/07/2025 | Virtual (Berlín, DE) | Rust Berlín
- 2025-07-20 | Virtual (Dallas, TX, EE. UU.) | Reunión de usuarios de Dallas Rust
- 2025-07-22 | Virtual (Dallas, TX, EE. UU.) | Reunión de usuarios de Dallas Rust
- 2025-07-22 | Virtual (Londres, Reino Unido) | Mujeres en Rust
- 24/07/2025 | Virtual (Nürnberg, DE) | Rust de Núremberg
- 27/07/2025 | Virtual (Dallas, TX, EE. UU.) | Reunión de usuarios de Dallas Rust
- 31/07/2025 | Virtual (Berlín, DE) | Rust Berlín
- 02/08/2025 | Virtual (Kampala, UG) | Reunión de Rust Circle
- 03/08/2025 | Virtual (Dallas, TX, EE. UU.) | Reunión de usuarios de Dallas Rust
- 06/08/2025 | Virtual (Indianápolis, IN, EE. UU.) | Indy Rust
- 2025-08-10 | Virtual (Dallas, TX, EE. UU.) | Reunión de usuarios de Dallas Rust
- 12/08/2025 | Virtual (Dallas, TX, EE. UU.) | Reunión de usuarios de Dallas Rust
Asia
- 19/07/2025 | Delhi, IN | Rust Delhi
- 26/07/2025 | Bangalore, IN | Rust de Bangalore
Europa
- 23/07/2025 | Dortmund, DE | Rust Dortmund
- 24/07/2025 | Edimburgo, Reino Unido | Rust y sus amigos
- 24/07/2025 | Núremberg/Nürnberg, DE | Rust de Núremberg
- 26/07/2025 | Estocolmo, SE | Estocolmo Rust
- 29/07/2025 | Manchester, Reino Unido | Rust de Manchester
- 29/07/2025 | Praga, CZ | Rust República Checa
- 30/07/2025 | Ámsterdam, Países Bajos | Grupo de desarrolladores de Rust en Ámsterdam
- 31/07/2025 | Augsburgo, DE | Encuentro de Rust Augsburgo
- 06/08/2025 | Girona, ES | Rust Girona
- 13/08/2025 | Reading, Reino Unido | Taller de lectura de Rust
América del Norte
- 16/07/2025 | Híbrido (Vancouver, Columbia Británica, CA) | Rust de Vancouver
- 17/07/2025 | Chicago, Illinois, Estados Unidos | Encuentro de Rust en Chicago
- 17/07/2025 | Híbrido (Redmond, WA, EE. UU.) | Grupo de usuarios de Seattle Rust
- 17/07/2025 | Nashville, Tennessee, Estados Unidos | Desarrolladores de Music City Rust
- 23/07/2025 | Austin, TX, Estados Unidos | Rust ATX
- 24/07/2025 | Mountain View, CA, EE. UU. | Dojo Hacker
- 24/07/2025 | Ciudad de México, MX | Rust MX
- 31/07/2025 | Atlanta, Georgia, Estados Unidos | Rust Atlanta
- 07/08/2025 | Saint Louis, MO, EE. UU. | STL Rust
- 12/08/2025 | San Francisco, CA, EE. UU. | Grupo de Estudio de la Roya de San Francisco
América del Sur
- 17/07/2025 | Florianópolis, BR | Rust Brasil + Rust Floripa
Si está ejecutando un evento de Rust, agréguelo al calendario para obtener que se menciona aquí. Por favor, recuerde agregar un enlace al evento también. Envíe un correo electrónico al Equipo de la comunidad de Rust para acceder.
Empleos
Por favor, consulte el último hilo de Who's Hiring en r/rust
Frase de la semana
Desafortunadamente -∞ no cabe en 'usize'.
– Tomek Czajka sobre los usuarios de Rust
¡Gracias a Kyllingene por la sugerencia!
¡Por favor, envíe sus cotizaciones y vote para la próxima semana!
This Week in Rust es editado por: nellshamrell, llogiq, cdmistman, ericseppanen, extrawurst, U007D, joelmarcey, mariannegoldin, bennyvasquez, bdillo
El alojamiento de la lista de correo electrónico está patrocinado por The Rust Foundation