Esta semana en Rust #26
¡Hola y bienvenidos a otro número de This Week in Rust!
Rust
¿Quieres que se mencione algo? Etiquétanos en @ThisWeekInRust en X (anteriormente Twitter) o @ThisWeekinRust en mastodon.social, o envíanos una solicitud de extracción
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
por favor envíe un PR.
¿Quieres tener TWIR en tu bandeja de entrada? Suscríbete aquí.
- Reescritura de crujidos
- iroh 0.19.0 - Hazlo tuyo
- Anuncio de Polars 1.0
- registro de cambios de rust-analyzer #240
- Publicado r3bl_cmdr v0.0.14
- Publicado r3bl_tui v0.5.6
- Danubio - Corredor de mensajería Pub/Sub
- what-the-time 1.0.0
- Meilisearch versiones v1.9
- Derive-Deftly (la función de macro derivada basada en plantillas) se acerca a 1.x - Llamada para revisión/prueba
- Tipos ergonómicos autorreferenciales para Rust
- Más reflexiones sobre la afirmación
- Cierres asíncronos
- ¡Rust tiene tres tipos de referencia!
- sans-IO: El secreto de un Rust efectivo para los servicios de red
- [audio] OxidOS con Alexandru Radovici
- Resolviendo símbolos de Rust
- #! [doc = include_str! ()] con enlaces intra-doc
- La configuración mínima de Rust-wasm
- Build with Naz : Markdown parser en Rust y nom from r3bl_tui
- Adición de seguridad en tiempo de compilación al SDK de AWS con el rasgo Visit de syn
- Adición de soporte de GraphQL a Loco con Seaography
- Patrones de Rust: No ponga ningún código en mod.rs o lib.rs archivos
- [serie] Maestro de la arquitectura hexagonal en Rust (parte 3): 'Servicio', el corazón de la arquitectura hexagonal
- FizzBuzz Multithreaded - sincronización con canales de encuentro
- [video] Zelda Hessler habla sobre el SDK de AWS para Rust
El crate de esta semana es asak, una TUI de grabación/reproducción de audio basada en terminal.
A pesar de la lamentable falta de sugerencias esta semana, llogiq está razonablemente satisfecho con su elección.
[Por favor, envíe sus sugerencias y votos para la próxima semana] submit_crate!
Las RFC se beneficiarían de las pruebas de usuario antes de avanzar:
- No se emitieron llamados para pruebas esta semana.
- No se emitieron llamados para pruebas esta semana.
- No se emitieron llamados para pruebas esta semana.
necesitan pruebas.
Algunas de estas tareas también pueden tener mentores disponibles, visite la página de tareas para obtener más información.
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 a TWiR o poniéndote en contacto con X (Anteriormente twitter) o Mastodon!
¿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 con X (anteriormente twitter) o Mastodon!
408 solicitudes de extracción fueron [fusionadas en la última semana][fusionadas]
- 'rustc_data_structures': Comprobar explícitamente la compatibilidad con atomics de 64 bits
- añadir '()' a la macro 'marker_impls' para 'ConstParamTy'
- añadir el archivo '.ignore' para hacer que 'config.toml' se pueda buscar en vscode
- añadir más constantes, funciones y pruebas para 'f16' y 'f128'
- AST: Estandarizar el orden de visita
- ast: estandarizar el orden de visita para atributos e ID de nodo
- contaminar automáticamente InferCtxt cuando se emiten errores
- evite la hinchazón MIR en línea
- evite clonar el estado de subproceso de salto cuando sea posible
- Cobertura: evitar obtener información adicional de desexpansión cuando no la necesitamos
- cobertura: hacer '#[cobertura(..)] ' aplicar recursivamente a funciones anidadas
- de-duplicar todas las bibliotecas nativas consecutivas independientemente de sus opciones
- Delegación: Refactorización de la reducción de AST
- denegar el 'uso<>' para los RPITITs
- detectar estructuras no utilizadas que derivaron de Default
- no hacer ICE cuando sugiera desreferenciar el argumento de cierre
- no ice durante el refinamiento de RPITIT la verificación de errores de resolución después de la normalización
- no sugiera esperar en patrones de cierre
- eliminar la distinción entre el nivel de precedencia 'PREC_POSTFIX' y 'PREC_PAREN'
- habilitar la transmisión const para 'f16' y 'f128'
- arreglar el código 'x86_64' que se producía para los objetivos LoongArch 'compiler_builtins'
- corrige una sugerencia de error para E0121 cuando se usa el marcador de posición '_' como tipos de retorno en la firma de la función
- Arreglar el mal reemplazo para la sugerencia de bloqueo externo inseguro
- prefiera '(*p).clone' a 'p.clone' si la 'p' es un puntero sin procesar
- ignorar 'llvm::Lld' si lld no está habilitado
- implementar nuevos efectos de desazucarado
- Mejorar los diagnósticos de bloqueos externos inseguros
- introducir un atributo 'rustc_' para volcar todos los padres 'DefId' de un 'DefId'
- menos 'maybe_whole_expr', toma 2
- vamos a '#[esperar]' algunas pelusas: Estabilizar 'lint_reasons' (RFC 2383)
- linker: refactorizar la interfaz para pasar argumentos al enlazador
- hacer que 'feature(effects)' require '-Znext-solver'
- hacer que el submódulo de carga sea opcional
- Mark assoc tys live solo si el rasgo correspondiente está activo
- mover el aglutinador y el análisis de polaridad a 'parse_generic_ty_bound'
- no usar desplazamiento cuando no hay terminaciones con llave
- patchable-function-entry: add unstable compiler flag and attribute
- imprime 'TypeId' como 'u128' para 'Debug'
- un-inseguro el rasgo 'StableOrd'
- eliminar (obsoletos e inestables) los métodos de puntero '{a,desde}_bits'
- eliminar las rutas ICE 'f16' y 'f128' de smir
- eliminar más lanzamientos de 'PtrToPtr' en GVN
- eliminar SeqCst innecesario en 'impl fmt::P ointer for AtomicPtr'
- Resolver: modificar algunos nombres en torno a las ambigüedades de importación
- muestra el tipo de atributo utilizado para el usuario cuando se encuentra que no se aplica a una variable 'estática'
- detener la instancia de computación para eliminar la corrección de compatibilidad hasta que no tenga parámetros const sin sustituir
- admite la obtención de 'Atributo' de elementos
- Volver a cambiar 'non_local_definitions' lint a permitir por defecto
- apretar 'fn_decl_span' para bloques asíncronos
- Comprobación de tamaño de transmutación: tenga en cuenta correctamente la alineación
- modificar 'FlatPat::new' para evitar un estado temporalmente inválido
- modificar un comentario confuso en 'create_match_candidates'
- unificar 'dylib' y 'bin_helpers' y crear 'shared_helpers::p arse_value_from_args'
- use 'clang-format' en 'tidy' para verificar el estilo de código C++ en 'llvm-wrapper'
- use full expr span para la sugerencia de devolución en error de tipo/ambigüedad
- varias limpiezas de 'rustc_codegen_ssa'
- varias refactorizaciones a 'rustc_interface'
- Miri: 'iter_exported_symbols': también camina con estática usada en la caja local
- miri: eliminar la comprobación 'frame_in_std' de GetCurrentProcessId
- estabilizar 'PanicInfo::message()' y 'PanicMessage'
- estabilizar 'duration_abs_diff'
- marque 'Hasher::finish' como '#[must_use]'
- std: creación de clave TLS separada del acceso TLS
- cargo: permitir pelusa 'unexpected_builtin_cfgs' en la prueba 'user_specific_cfgs'
- Cargo: Gix: Eliminar la función de 'revisión' de Cargo
- cargo: dejar claro que 'CARGO_CFG_TARGET_FAMILY' es multivalor
- cargo: prueba: arreglar varias aserciones
- cargo: test: omitir el nombre del directorio objetivo
- cargo: prueba: reemplazar glob con llamadas explícitas no ordenadas
- rustdoc: comprueba si el desambiguador coincide con su sufijo
- clippy: 'doc_lazy_continuation': línea de comentario en blanco para el espacio
- clippy: agregar mensaje de error a 'manual_inspect' lint
- clippy: no pelute 'assertions_on_constants' en ninguna afirmación const
- clippy: arreglar el falso positivo de DevOps 'doc_markdown'
- clippy: implementa una pelusa para reemplazar las rotaciones manuales de las brocas con 'rotate_left/rot...'
- rust-analyzer: no normalizar 'use foo::{self}' a 'use foo'
- Rust-analyzer: agregue asistencia 'bool_to_enum' para los parámetros
- rust-analyzer: finalizaciones después de kw asíncrono
- rust-analyzer: se corrige el cálculo del alcance de la expresión cuando se está dentro de las expansiones de macros
- rust-analyzer: pasar args extra de carga al depurar
- Analizador de Rust: Mejoras en la calidad de vida de la búsqueda de términos
- rust-analyzer: use los 'ImplTraits' adecuados en 'insert_inference_vars_for_impl_trait'
Triaje realizado por @pnkfelix
c3d7fb39.. CF2DF68D
Los cambios en Rust siguen el proceso de Rust RFC (solicitud de comentarios)
Cada semana, el equipo
- [disposición: fusionar] RFC: #[derivar(SmartPointer)]
- [disposición: fusionar] Problema de seguimiento para conversiones de caracteres const
- [disposición: fusionar] No hacer que la declaración nonterminals coincida con el patrón nonterminals
- [disposición: fusionar] Permitir '#[denegar]' dentro de '#[prohibir]' como no-op
- [disposición: fusionar] Problema de seguimiento para el atributo de función '#[cobertura]'
- [disposición: fusionar] Golpea 'elided_lifetimes_in_associated_constant' para denegar
- [disposición: fusionar] Problema de seguimiento para 'const_cstr_from_ptr'
- [disposición: fusionar] Denegar la vida útil de las palabras clave antes de la expansión
- No hay problemas de seguimiento de carga ni PR ingresaron al período de comentarios finales esta semana.
- No hubo problemas de seguimiento de equipos lingüísticos ni relaciones públicas en el período de comentarios finales esta semana.
- No hay problemas de seguimiento de referencias lingüísticas ni PR ingresados al período de comentarios finales esta semana.
- No hay problemas de seguimiento de pautas de código inseguro o PR ingresados al período de comentarios finales esta semana.
- [nuevo] Cierres asíncronos
Eventos de Rusty entre 2024-07-03 - 2024-07-31 🦀
- 03/07/2024 | Virtual | Capacitación 4 Programadores LLC
- 03/07/2024 | Virtual (Indianápolis, IN, EE. UU.) | Indy Rust
- 04/07/2024 | Virtual (Berlín, DE) | OpenTechSchool Berlín + Rust Berlin
- 06/07/2024 | Virtual (Kampala, UG) | Círculo de Rust Kampala
- 09/07/2024 | Virtual | Rust para el almuerzo
- 09/07/2024 | Virtual (Dallas, TX, EE. UU.) | Rust de Dallas
- 10/07/2024 | Virtual | Centro de Investigación Electrónica
- 11/07/2024 | Virtual (Charlottesville, Carolina del Norte, EE. UU.) | Reunión de Rust en Charlottesville
- 11/07/2024 | Híbrido - Virtual y Presencial (Ciudad de México, DF, MX) | Rust MX
- 11/07/2024 | Virtual (Nürnberg, DE) | Rust de Núremberg
- 11/07/2024 | Virtual (Tel Aviv, Illinois) | Expertos en código
- 16/07/2024 | Virtual (Tel Aviv, Illinois) | Expertos en código
- 17/07/2024 | Híbrido - Virtual y Presencial (Vancouver, BC, CA) | Rust de Vancouver
- 18/07/2024 | Virtual (Berlín, DE) | OpenTechSchool Berlín + Rust Berlin
- 23/07/2024| Híbrido: virtual y presencial (Múnich/Múnich, DE) | Rust Múnich
- 24/07/2024 | Virtual | Mujeres en Rust
- 25/07/2024 | Virtual (Charlottesville, Carolina del Norte, EE. UU.) | Reunión de Rust en Charlottesville
- 27/07/2024 | Híbrido - Virtual y Presencial (Kiev, UA) | Rust de UA
- 30/07/2024 | Virtual (Dallas, TX, EE. UU.) | Rust de Dallas
- 03/07/2024 | Tokio, JP | Encuentro de Rust en Tokio
- 10/07/2024 | Reading, Reino Unido | Taller de lectura de Rust
- 11/07/2024 | Praga, CZ | Rust de Praga
- 16/07/2024 | Leipzig, DE | Rust - Programación de sistemas modernos en Leipzig
- 16/07/2024 | Mannheim, DE | Hackschool - Rhein-Neckar
- 23/07/2024 | Híbrido: virtual y presencial (Múnich/Múnich, DE) | Rust Múnich
- 25/07/2024 | Berlín, DE | OpenTechSchool Berlín + Rust Berlin
- 27/07/2024 | Augsburgo, DE | Encuentro de Rust Augsburgo
- 30/07/2024 | Basilea, CH | Basilea Rust
- 05/07/2024 | Boston, MA, EE. UU. | Encuentro de Boston Rust
- 11/07/2024 | Híbrido - Ciudad de México, DF, MX | Rust MX
- 11/07/2024 | Mountain View, CA, EE. UU. | Reunión de Rust de Mountain View
- 17/07/2024 | Híbrido - Vancouver, Columbia Británica, CA | Rust de Vancouver
- 18/07/2024 | Nashville, Tennessee, Estados Unidos | Desarrolladores de Music City Rust
- 18/07/2024 | Seattle, WA, EE. UU. | Grupo de usuarios de Seattle Rust
- 24/07/2024 | Austin, TX, EE. UU. | Oxidar ATC
- 27/07/2024 | Híbrido - Virtual y Presencial (Kiev, UA) | Rust de UA
Si está ejecutando un evento de Rust, agréguelo al calendario
Envíe un correo electrónico al [Equipo de la comunidad de Rust] comunidad para obtener acceso.
Por favor, consulte el último hilo de Who's Hiring en r/rust
el compilador generalmente no se queja de que [usted] tenga un comportamiento indefinido porque no sabe que está teniendo un comportamiento indefinido.
¡Gracias a scottmcm 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, andrewpollack, U007D, kolharsam, joelmarcey, mariannegoldin, bennyvasquez.
El alojamiento de la lista de correo electrónico está patrocinado por The Rust Foundation