Como as férias acabaram, trago à sua atenção uma seleção subjetiva de notícias enferrujadas para dezembro. Nesta coleção: loucura com ferrugem, se a ferrugem é terrível, uma onda de profecias, Rust 2018, Rust Analyzer.

O evento mais importante de dezembro é o lançamento do Rust 1.31 e Rust 2018 , é claro. Muitas coisas aconteceram lá:
Edição 2018, tempos de vida não-lexicais, alterações no sistema de módulos, regras adicionais para derivações de vida útil, const fn, novas ferramentas, verificações instrumentais da qualidade do código, documentação, um novo site, melhorias na carga.
Há tantas mudanças que a revisão de todas não pôde ser comprimida em um post; portanto, depois de alguns dias, as notas auxiliares foram publicadas:
Além disso, faz sentido examinar o bem estruturado programa educacional / de revisão de Mozilov da edição de 2018 da linguagem: Rust 2018 está aqui ... mas o que é? ( tradução , discussão ).
Uma onda de posts sobre planos para 2019
Uma solicitação oficial foi enviada à comunidade para compartilhar suas opiniões em 2019 - Uma chamada para as postagens do blog Rust 2019 Roadmap ( discussão ). Em resposta, seguiu-se uma onda de mais de cem artigos (todos podem ser encontrados em readrust.net/rust-2019 ). Aqui estão algumas respostas interessantes:
RustRush 2018

Nos dias 15 e 16 de dezembro, Moscou sediou o RustRush 2018 .
Os registros dos relatórios serão publicados gradualmente no canal do Youtube , enquanto dois estão disponíveis:
Pierre Chevalier também publicou um relatório de viagem .
O idubrov escreveu um artigo interessante sobre hacks de baixo nível com uma feroz insegura. Um excelente experimento para fins de treinamento, mas espero que não funcione em projetos reais.

O PsyHaSTe luta contra a percepção da ferrugem exclusivamente como linguagem do sistema.
Lesha matklad compartilhou informações sobre o andamento do projeto analisador de ferrugem , que é uma alternativa ao RLS ( discussão ).
Uma coisa importante, considerando que o IDE é um tópico muito doloroso para o rasta.

- Uma agenda simples para o GT Rust Game Development ( discussão ) - Erland propõe criar um grupo de trabalho para jogos e concentrar-se em torno da Ametista, tornando-a a locomotiva do ecossistema;
- Foi lançado o jogo "Adventures of Pascal Penguin" ( discussão , trailer ) - funciona na web, é jogável por referência;
- Usando Rust for Gamedev ( discussão ) - o autor do pinguim mencionado acima fala sobre sua experiência trabalhando nele;
- Russian AI Cup 2018 - este ano, o correio AI Russian AI Cup usa um simulador no Rust + WASM ( GIF ) (a propósito, o post do ano passado também é muito interessante);
- Sandspiel ( discussão ) - uma caixa de areia WASM física pegajosa;
- Publicou meu primeiro jogo escrito em Rust: Energy Grid ( discussão ) - estratégia econômica;
- Resposta à dose ( código , discussão ) - um pequeno bagel viciado em gráficos ASCII, leva de cinco a dez minutos, a versão web está disponível;
- Este ano em gfx-rs: 2018 ( discussão ) - uma breve visão geral do que aconteceu com o projeto gfx do kvark ;
- A propósito, o pacote gfx-hal está disponível no site crates.io ( discussão ) - parece que o processamento do projeto gfx está se estabilizando gradualmente e o ecossistema pode começar a crescer em cima da nova versão;
- nítrico ( discussão ) - especificações de herdeiro / processamento para devolver a dívida técnica de um projeto abandonado e aumentar sua flexibilidade;
- 17cupsofcoffee / tetra ( debate ) - outra tentativa de escrever um simples mecanismo 2D enferrujado, de nível superior ao ggez;
- A Ametista 0.10 ( discussão ) foi lançada: Rust 2018, a transição para o nalgebra, simplificação de testes e muitas mudanças menores;
- Este mês em rustsim # 3 (dezembro de 2018) :
- nphysics: Adicionados pontos fixos baratos para corpos deformáveis: vídeo ;
- nphysics: Adicionado suporte para articulações com vários corpos, o que torna possível anexar outros corpos a um corpo deformável: vídeo ;
- ncollide: suporte adicionado para cápsulas e mapas de altura: vídeo ;
- nalgebra: indexação de matriz retrabalhada, que facilita a obtenção de fatias ;
- nalgebra-glm: projeções ortográficas e de perspectiva adicionadas;
- metas para o próximo ano: integração com ametista, suporte a fluidos, detecção de colisão "contínua", desempenho aprimorado;
Em uma linha
Havia pouca atividade perceptível em Wasm e no prédio em dezembro, para que eles não tivessem seções separadas.
- Atualizações do IntelliJ-Rust : # 88 , # 89 - incluindo o destaque de código não seguro ( GIF ) e qualquer encaixe na edição de 2018 da linguagem;
- Quais são as várias bandeiras vermelhas para você nas revisões de código de ferrugem? - Discussão do Reddit com listas de cheiros de código mais ou menos comuns. Mesmo que você não veja o código de outra pessoa com frequência, essas listas podem fazer você se perguntar como escreve seu código;
- Como escrevi uma biblioteca C ++ moderna em Rust ( discussão ) - como escrever uma biblioteca enferrujada com uma interface completa;
- Mais sobre a numeração de versões do RLS ( discussão ) - as disputas sobre a "estabilização" e o posicionamento do RLS continuam - o RLS agora terá a mesma versão do compilador (1,31 em um post), e o público como um todo se ressente por ser de até 1,0 RLS e não estar quase crescido;
- Async in Rust, por volta de 2018 ( discussão ) - o status da integração de async / wait no idioma;
- async-io-demo ( debate ) - uma demonstração de treinamento do io assíncrono: do mio às corotinas sem pilha;
- Refletindo sobre Rust e WebAssembly em 2018 ( discussão ) - como sempre, uma retrospectiva deste ano e uma previsão para o próximo;
- / r / rust "writing" * "para caixas em cargo.toml nem sempre significa" versão mais recente "" é outro lembrete de que você não deve usar a versão "*" das dependências, porque, por exemplo, pode demorar reverter para a versão antiga da dependência;
- O canivete suíço de Hashmaps ( discussão ) - um tour pelos componentes internos de hashbrown (uma alternativa rápida ao
HashMap
padrão 'y); - habr: Learning Rust: Como eu conversei com o UDP pela Azul - relatório da VanquisherWinbringer ;
- habr: Os primeiros passos no Rust - uma visão geral do idioma de zharko_mi ;
- Alexa Skills in Rust ( discussão ) - habilidades de escrita para um assistente virtual da Amazon;
- Inside Rust's Async Transform ( discussão ) - uma excursão para assíncrona;
- Tutorial do Espírito ( discussão ) - lição de demonização usando o pacote de espíritos ;
- / r / rust: portando código C para Rust - notas, perguntas e solicitação de revisão - experiência em portar status_monitor de C para Rust e revisão de código;
- Um advento enferrujado do código: minha experiência no AOC com a comunidade Rust ( discussão ) - relate a participação no adventofcode ;
- Comparando triplos pitagóricos em C ++, D e Rust ( discussão );
- / r / rust: Fazendo o Rust flutuar a análise rápida e correta - um post de luxo sobre o analisador rápido de números de ponto flutuante;
- Tokio: Um ótimo 2018, um 2019 ainda melhor - ( discussão ) - reflexão sobre o ano passado do projeto Tokio ;
- Usando bibliotecas C no Rust: fazendo um engradado * -sys - uma ótima excursão para escrever invólucros enferrujados para bibliotecas de bibliotecas;
Pacotes novos e atualizados
- 'cargo-crev' e reutilização de código sem medo do Rust 2019 ( discussão , código ) - uma plataforma para revisão pública de pacotes ( demonstração de tela );
- enum_dispatch ( debate ) - uma macro que ajuda em algumas situações a substituir convenientemente objetos de texto por enumerações (encaminha uma chamada de função para cada uma das opções de enumeração);
- structview ( debate ) - permite obter com segurança a representação de dados binários na forma de estruturas de alto nível;
- cargo-call-stack ( tweet ) - A Japaric publicou uma extensão de carga para análise estática da pilha de chamadas;
- swc ( discussão ) é uma alternativa muito rápida ao babel ;
- ds_store ( debate ) - analisador de arquivos
.DS_Store
; - sd ( discussão ) - "s [ítem] e d [lugar]", uma alternativa enferrujada para sedar com uma interface mais intuitiva;
- enigma ( discussão ) - uma implementação de brinquedo da máquina virtual de Erlang;
- http_static ( debate ) - um servidor web estático simples, usa torre-web ;
- ws-unix-framed-bridge ( discussão ) - redireciona mensagens de soquetes da web para soquetes do unix e vice-versa;
- Exonum 0.10 - a estrutura para a construção de blockchains particulares mudou sua serialização para protobuf, alterou o formato da mensagem e a ancoragem de bitcoin agora usa segwit ;
- Rocket v0.4 ( discussão ) - a estrutura da Web recebeu URIs digitados, suporte ao banco de dados e solicitações processadas;
- resvg 0.4 ( discussão ) - a biblioteca de renderização de arquivo svg recebeu suporte inicial para filtros, máscaras sobrepostas / clippath, renderização condicional e muito mais;
- Tantivy 0.8 ( discussão ) - na biblioteca de pesquisa de texto completo, as coleções de APIs foram redesenhadas e o suporte a multithreading foi aprimorado;
Eu não notei nenhuma RFC particularmente interessante no final do ano, então é tudo por hoje, obrigado pela atenção!
Se eu não adicionei nenhum link ou evento importante, sinta-se à vontade para incluí-lo nos comentários. :)
(KDPV tirado daqui , as fotos restantes dos sites dos respectivos projetos.)