...

Rust 1.90 Facilita Publicação de Múltiplos Projetos e Adapta-se a Novos Horizontes de Hardware

A comunidade Rust celebrou recentemente o lançamento da versão 1.90 da linguagem, trazendo consigo novidades significativas que prometem otimizar o fluxo de trabalho dos desenvolvedores e preparar o terreno para as futuras evoluções do ecossistema tecnológico. Entre as principais features, destaca-se o suporte nativo para publicação de workspaces no Cargo, o gerenciador de pacotes do Rust, além de ajustes importantes em relação às plataformas suportadas.

Publicação Simplificada com Cargo Workspaces

Uma das adições mais aguardadas é, sem dúvida, a funcionalidade que permite publicar múltiplos crates (os pacotes de código do Rust) dentro de um workspace de forma integrada. Workspaces são conjuntos de projetos Rust relacionados, muitas vezes compartilhando dependências e lógica comum. Anteriormente, publicar um workspace exigia ferramentas externas ou um processo manual, o que podia ser demorado e propenso a erros.

Com o cargo publish --workspace, o processo se torna significativamente mais simples e eficiente. O Cargo agora é capaz de identificar a ordem correta de publicação dos crates, levando em consideração as dependências entre eles. Além disso, a integração nativa permite que o Cargo execute verificações de publicação em todo o conjunto de crates, simulando o processo como se eles já estivessem publicados. Essa medida de segurança adicional ajuda a evitar problemas e garantir a integridade dos pacotes.

Essa melhoria tem um impacto direto na produtividade dos desenvolvedores, especialmente aqueles que trabalham em projetos complexos e modulares. A capacidade de publicar workspaces de forma automatizada e segura reduz o tempo gasto em tarefas repetitivas e permite que os desenvolvedores se concentrem no que realmente importa: a criação de código de alta qualidade.

Transição de Plataformas e o Futuro do x86-64 no macOS

Outra mudança importante na versão 1.90 é a reclassificação do target x86_64-apple-darwin. Anteriormente classificado como Tier 1 (o nível mais alto de suporte), ele foi rebaixado para Tier 2. Essa mudança reflete as transformações no cenário de hardware da Apple e as decisões do GitHub em relação aos runners (ambientes de execução) gratuitos para repositórios públicos.

A Apple já anunciou planos para descontinuar o suporte à arquitetura x86-64, e o GitHub em breve deixará de fornecer runners macOS x86-64 gratuitos. Diante desse cenário, a equipe Rust tomou a decisão de ajustar o nível de suporte para essa plataforma. É importante ressaltar que essa mudança não terá um impacto imediato nos usuários. Builds da biblioteca padrão e do compilador continuarão a ser distribuídos para uso via rustup ou outros métodos de instalação enquanto o target permanecer no Tier 2.

No entanto, a longo prazo, é provável que a cobertura reduzida para essa plataforma cause problemas de compatibilidade. A equipe Rust alerta que, com o tempo, pode haver quebras ou incompatibilidades sem novos avisos. Isso demonstra a importância de acompanhar as evoluções do ecossistema e estar preparado para migrar para novas plataformas, como a arquitetura ARM, que vem ganhando cada vez mais espaço no mundo Apple.

Otimização na Linkagem com LLD no Linux

Ainda no universo Linux, a versão 1.90 traz uma otimização importante na linkagem de crates. O target x86_64-unknown-linux-gnu agora utiliza o linker LLD por padrão. Essa mudança deve resultar em um desempenho aprimorado na linkagem em comparação com o linker BFD, que era o padrão anterior. A equipe Rust espera que os desenvolvedores percebam uma redução no tempo de compilação, sem outras alterações significativas no processo.

Caso algum desenvolvedor encontre problemas com o LLD, é possível reverter para o comportamento anterior utilizando a flag -C linker-features=-lld no compilador. Essa flexibilidade permite que os usuários personalizem o processo de compilação de acordo com suas necessidades e preferências.

Conclusão: Um Rust em Constante Evolução

A versão 1.90 do Rust demonstra o compromisso contínuo da comunidade em aprimorar a linguagem e adaptá-la às novas realidades do mundo da tecnologia. As melhorias na publicação de workspaces facilitam o trabalho dos desenvolvedores, enquanto as mudanças em relação às plataformas suportadas preparam o terreno para o futuro. A otimização na linkagem com LLD no Linux é mais um exemplo de como a equipe Rust busca constantemente melhorar o desempenho e a eficiência da linguagem.

O Rust continua a se consolidar como uma das linguagens de programação mais promissoras da atualidade, impulsionada por sua segurança, desempenho e uma comunidade vibrante e engajada. A cada nova versão, o Rust se torna mais poderoso e acessível, atraindo cada vez mais desenvolvedores e empresas em busca de soluções inovadoras e confiáveis.

Para ficar por dentro de todas as novidades e detalhes da versão 1.90 do Rust, recomendo consultar o anúncio oficial no blog da linguagem. Lá você encontrará informações detalhadas sobre todas as mudanças e melhorias, além de exemplos de como utilizá-las em seus projetos.

Compartilhe:

Descubra mais sobre MicroGmx

Assine agora mesmo para continuar lendo e ter acesso ao arquivo completo.

Continue reading