Olá e boas-vindas a mais uma edição de This Week in Rust! Rust é uma linguagem de programação que capacita todos a construir software confiável e eficiente. Este é um resumo semanal do seu progresso e da comunidade. Quer algo mencionado? Marque a gente em @thisweekinrust.bsky.social no Bluesky ou @ThisWeekinRust no mastodon.social, ou envie um pull request. Quer participar? Adoramos contribuições.
This Week in Rust é desenvolvido abertamente no GitHub e os arquivos podem ser vistos em this-week-in-rust.org. Se você encontrar algum erro na edição desta semana, por favor, envie um PR.
Quer o TWIR na sua caixa de entrada? Assine aqui.
Atualizações da Comunidade Rust
Oficial
Foundation
Atualizações de Projetos/Ferramentas
- Zed: Split Diffs chegou
- CHERIoT Rust: atualização de status #0
- SeaORM agora suporta Arrow e Parquet
- Lançando bincode-next v3.0.0-rc.1
- Apresentando Almonds
- SafePilot v0.1: assistente de IA self-hosted
- Hitbox 0.2.0: orquestração declarativa de cache
Observações/Reflexões
- O que significa o Ubuntu estar usando Rust
- Read Locks não são seus amigos
- Alcançando Zero Bugs: Rust, Specs e AI Coding
- [video] device-envoy: Tornando Embedded divertido com Rust—por Carl Kadie
Guias de Rust
- Sobre pressão de memória, contenda de locks e Data-oriented Design
- Quebrando SHA-2: ataques de extensão de comprimento na prática com Rust
- device-envoy: Tornando Embedded divertido com Rust, Embassy e abstrações de dispositivo componíveis
Pesquisa
Diversos
Crate da Semana
A crate desta semana é docstr, uma macro crate que fornece uma macro para criar strings multilinha a partir de doc comments.
Obrigado a Nik Revenco pela auto-sugestão!
Por favor, envie suas sugestões e votos para a próxima semana!
Chamados para Testes
Um passo importante para a implementação de RFC é que as pessoas experimentem a implementação e deem feedback, especialmente antes da estabilização.
Se você é implementador de uma feature e gostaria que sua RFC aparecesse nesta lista, adicione o rótulo call-for-testing à sua RFC junto com um comentário fornecendo instruções de teste e/ou orientação sobre quais aspectos da feature precisam de testes.
Nenhum chamado para testes foi emitido esta semana por Rust, Cargo, Rustup ou RFCs da linguagem Rust.
Avise-nos se você gostaria que sua feature fosse acompanhada como parte desta lista.
Chamado para Participação; projetos e palestrantes
CFP - Projetos
Sempre quis contribuir com projetos open-source, mas não sabia por onde começar? Toda semana destacamos algumas tarefas da comunidade Rust para você escolher e começar!
Algumas dessas tarefas também podem ter mentores disponíveis; visite a página da tarefa para mais informações.
Nenhum chamado para participação foi enviado esta semana.
Se você é mantenedor de um projeto Rust e está procurando colaboradores, por favor envie tarefas aqui ou por meio de um PR para o TWiR ou entrando em contato no Bluesky ou Mastodon!
CFP - Eventos
Você é um palestrante novo ou experiente procurando um lugar para compartilhar algo legal? Esta seção destaca eventos que estão sendo planejados e aceitando submissões para participar do evento como palestrante.
- Rust India Conference 2026 | CFP aberto até 2026-03-14 | Bangalore, IN | 2026-04-18
- Oxidize Conference | CFP aberto até 2026-03-23 | Berlin, Germany | 2026-09-14 - 2026-09-16
- EuroRust | CFP aberto até 2026-04-27 | Barcelona, Spain | 2026-10-14 - 2026-10-17
Se você é organizador de eventos e espera ampliar o alcance do seu evento, por favor envie um link para o site por meio de um PR para o TWiR ou entrando em contato no Bluesky ou Mastodon!
Atualizações do Projeto Rust
450 pull requests foram mesclados na última semana
Compiler
- trazer de volta
enum DepKind - simplificar os branches canônicos de clone de
enumpara uma instrução de cópia - estabilizar guards de
if let(feature(if_let_guard))
Library
- adicionar
try_shrink_toetry_shrink_to_fitao Vec - corrigir ByteStr para não preencher dentro do seu trait Display quando nenhum alinhamento específico é mencionado
- reflection
TypeId::trait_info_of - reflection
TypeKind::FnPtr - apenas passar
Layoutdiretamente parabox_new_uninit - estabilizar
cfg_select!
Cargo
cli: Remover--lockfile-pathjob_queue: Tratar argumentos de CLI do Clippy na mensagem defix- corrigir lock paralelo quando
-Zfine-grain-lockingestá habilitado
Clippy
- adicionar lint
unnecessary_trailing_comma - adicionar novo lint
disallowed_fields clone_on_ref_ptr: não adicionar&ao receiver se ele for uma referêncianeedless_maybe_sized: não aplicar lint em código gerado por proc-macrostr_to_string: falso positivo em tipos não-struseless_conversion: também disparar dentro de dessugarings do compiler- adicionar configuração
allow-unwrap-typesparaunwrap_usedeexpect_used - adicionar colchetes ao redor de bloco unsafe ou rotulado usado em
else - permitir
deprecated(since = "CURRENT_RUSTC_VERSION") - não sugerir remover reborrow de um upvar capturado
- melhorar
collapsible_matchpara cobrir if-elses - melhorar
manual_is_variant_andpara cobrir encadeamento defiltercomis_some - corrigir falso negativo de
explicit_counter_loopquando o contador do loop começa em não-zero - corrigir
join_absolute_pathspara funcionar corretamente dependendo da plataforma - corrigir falso positivo de
redundant_iter_clonedcom closures de move e corrotinas - corrigir
unnecessary_min_or_maxpara usize - corrigir detecção de mensagens de panic/assert na edição 2015/2018
- tratar
Result<T, !>eControlFlow<!, T>comoTem relação a#[must_use] - fazer
unchecked_time_subtractionlidar melhor com literais deDuration - tornar
unnecessary_foldcomutativo - o caminho de um tipo para ele mesmo é
Self
Rust-Analyzer
- adicionar seleção parcial para
generate_getter_or_setter - oferecer fallback postfix de block let
- oferecer em
is_some_andparareplace_is_method_with_if_let_method - corrigir algumas assists de referência do TryEnum
- adicionar tratamento de ciclos em
sizedness_constraint_for_ty() - melhor posicionamento de import + mesclagem
- completar
.letem expressão prefixo no final de bloco - completar helpers de derive em nameref vazio
- parentesizar corretamente condição invertida em
convert_if_to_bool_… - excluir refs de macro em testes quando excludeTests está habilitado
- corrigir outro caso em que esquecemos de colocar o parâmetro de tipo para
PartialOrdePartialEqem derives builtin - corrigir predicados de traits de derive builtin com dois parâmetros com default para
Self - assist de gerar método usa o bloco impl envolvente em vez do primeiro encontrado
- não sugerir parâmetro em padrão complexo
- oferecer
toggle_macro_delimiterem macro aninhada - evitar qualificar nomes de parâmetros em
add_missing_impl_members - implementar
Span::SpanSoucepara proc-macro-srv
Triage de Performance do Compiler do Rust
No geral, um pouco mais de ruído do que o normal nesta semana, mas principalmente uma leve melhoria, com várias otimizações de baixo nível em MIR e na construção de LLVM IR chegando. Também menos commits entrando do que o normal, em grande parte por problemas de CI do GitHub durante a semana.
Triage feito por @simulacrum. Intervalo de revisões: 3c9faa0d..eeb94be7
3 regressões, 4 melhorias, 4 mistas; 3 delas em rollups 24 comparações de artefatos feitas no total
RFCs aprovadas
As mudanças no Rust seguem o processo de RFC (request for comments) do Rust. Estas são as RFCs aprovadas para implementação nesta semana:
- Nenhuma RFC foi aprovada esta semana.
Final Comment Period
Toda semana, a equipe anuncia o "final comment period" para RFCs e PRs importantes que estão chegando a uma decisão. Expresse suas opiniões agora.
Tracking Issues & PRs
Rust
- Gate #![reexport_test_harness_main] adequadamente
- Observar erros de
close(2)parastd::fs::{copy, write} - avisar sobre precisão vazia
- refatorar definição de 'válido para leitura/escrita': excluir null
Compiler Team (apenas MCPs)
- Remover -Csoft-float
- Intrínsecos cg_ssa sem place
- Otimizar enums
repr(Rust)omitindo tags em mais casos envolvendo variantes inabitáveis. - Proposta de uma suíte de testes dedicada para o frontend paralelo
- Promover alvos riscv32 ESP-IDF de tier 3 para tier 2
- Proposta para Adapt Stack Protector para Rust
Cargo
Nenhum item entrou no Final Comment Period esta semana para RFCs do Rust, Language Reference, Language Team, Leadership Council ou Unsafe Code Guidelines.
Avise-nos se você gostaria que seus PRs, Tracking Issues ou RFCs fossem acompanhados como parte desta lista.
RFCs novas e atualizadas
- Cargo: hints.min-opt-level
- Cargo RFC para idade mínima de publicação
- Place traits
- RFC: Estender dependências de manifesto com used
Próximos Eventos
Eventos Rust entre 2026-02-25 - 2026-03-25 🦀
Virtual
- 2026-02-25 | Virtual (Cardiff, UK) | Rust and C++ Cardiff
- 2026-02-25 | Virtual (Girona, ES) | Rust Girona
- 2026-02-26 | Virtual (Berlin, DE) | Rust Berlin
- 2026-03-04 | Virtual (Indianapolis, IN, US) | Indy Rust
- 2026-03-05 | Virtual (Charlottesville, VA, US) | Charlottesville Rust Meetup
- 2026-03-05 | Virtual (Nürnberg, DE) | Rust Nuremberg
- 2026-03-07 | Virtual (Kampala, UG) | Rust Circle Meetup
- 2026-03-10 | Virtual (Dallas, TX, US) | Dallas Rust User Meetup
- 2026-03-10 | Virtual (London, UK)| Women in Rust
- 2026-03-11 | Virtual (Girona, ES) | Rust Girona
- 2026-03-12 | Virtual (Berlin, DE) | Rust Berlin
- 2026-03-17 | Virtual (Washington, DC, US) | Rust DC
- 2026-03-18 | Virtual (Girona, ES) | Rust Girona
- 2026-03-18 | Virtual (Vancouver, BC, CA) | Vancouver Rust
- 2026-03-19 | Hybrid (Seattle, WA, US) | Seattle Rust User Group
- 2026-03-20 | Virtual | Packt Publishing Limited
- 2026-03-24 | Virtual (Dallas, TX, US) | Dallas Rust User Meetup
- 2026-03-24 | Virtual (London, UK) | Women in Rust
- 2026-03-25 | Virtual (Girona, ES) | Rust Girona
Asia
- 2026-03-22 | Tel Aviv-yafo, IL | Rust 🦀 TLV
Europa
- 2026-02-25 | Copenhagen, DK | Copenhagen Rust Community
- 2026-02-26 | Prague, CZ | Rust Czech Republic
- 2026-02-28 | Stockholm, SE | Stockholm Rust
- 2026-03-04 | Barcelona, ES | BcnRust
- 2026-03-04 | Hamburg, DE | Rust Meetup Hamburg
- 2026-03-04 | Oxford, UK | Oxford ACCU/Rust Meetup.
- 2026-03-05 | Oslo, NO | Rust Oslo
- 2026-03-11 | Amsterdam, NL | Rust Developers Amsterdam Group
- 2026-03-12 | Geneva, CH | Post Tenebras Lab
- 2026-03-18 | Dortmund, DE | Rust Dortmund
- 2026-03-19 - 2026-03-20 | | Rustikon
- 2026-03-24 | Aarhus, DK | Rust Aarhus
América do Norte
- 2026-02-25 | Austin, TX, US | Rust ATX
- 2026-02-25 | Los Angeles, CA, US | Rust Los Angeles
- 2026-02-26 | Atlanta, GA, US | Rust Atlanta
- 2026-02-26 | New York, NY, US | Rust NYC
- 2026-02-28 | Boston, MA, US | Boston Rust Meetup
- 2026-03-05 | Saint Louis, MO, US | STL Rust
- 2026-03-07 | Boston, MA, US | Boston Rust Meetup
- 2026-03-14 | Boston, MA, US | Boston Rust Meetup
- 2026-03-17 | San Francisco, CA, US | San Francisco Rust Study Group
- 2026-03-19 | Hybrid (Seattle, WA, US) | Seattle Rust User Group
- 2026-03-21 | Boston, MA, US | Boston Rust Meetup
- 2026-03-25 | Austin, TX, US | Rust ATX
Oceania
- 2026-03-26 | Melbourne, VIC, AU | Rust Melbourne
Se você está organizando um evento de Rust, por favor adicione-o ao calendário para que seja mencionado aqui. Lembre-se de adicionar um link para o evento também. Envie um e-mail para o Rust Community Team para obter acesso.
Vagas
Por favor veja a thread mais recente de Who's Hiring no r/rust
Citação da Semana
Isso na verdade é apenas o Rust adicionando suporte a templates com duck-typing no estilo C++, e as informações longas e em grande parte irrelevantes contidas na mensagem do ICE fazem parte da experiência.
Obrigado a Kyllingene pela sugestão!
Por favor envie citações e vote para a próxima semana!
This Week in Rust é editado por:
- nellshamrell
- llogiq
- ericseppanen
- extrawurst
- U007D
- mariannegoldin
- bdillo
- opeolluwa
- bnchi
- KannanPalani57
- tzilist
A hospedagem da lista de e-mails é patrocinada por The Rust Foundation
------ *Artigo original: [https://this-week-in-rust.org/blog/2026/02/25/this-week-in-rust-640/](https://this-week-in-rust.org/blog/2026/02/25/this-week-in-rust-640/)* *Traduzido automaticamente por IA. Para sugestoes de melhorias, abra uma issue no repositorio.*