Rust News # 5 (janvier 2019)

J'attire votre attention sur une sélection subjective de nouvelles rouillées pour janvier. Dans cette collection: Rust 1.32, départ de Steve Klabnik et Nick Cameron, quiche Cloudflare, analyseur de rouille et dispositif de mémoire de page, recherches GUI et asynchrones, conférence Oxydyze pour les ingénieurs intégrés.


KDPV


Rouille 1,32


Rust 1.32 est sorti. Par rapport à la version précédente à grande échelle, sur laquelle beaucoup d'efforts de toute la communauté étaient concentrés, il n'y a pas beaucoup d'innovations majeures:



Détails dans la traduction de l'actualité .


Steve Klabnik et Nick Cameron quittent Mozilla


NYT firefox 1.0


Triste nouvelle: Steve Klabnik et Nick "nrc" Cameron quittent Mozilla.


Le message de Steve «merci, ensuite» ( discussion ) indique que les principales raisons sont la gratification avec la partie «externe» de Mozilla to Rust et toutes sortes de problèmes d'argent terre-à-terre. Steve veut trouver du travail lié à Rust et va essayer de continuer à participer à la vie et au développement de la langue, même si ce n'est certainement pas dans l'ancien volume.


Dans "Quitter Mozilla et (l'essentiel) du projet Rust" ( discussion ), Nick dit qu'il était fatigué de ce projet pendant sept ans et qu'il veut changer de décor. Il est déjà allé travailler chez PingCAP :
"Commencer Ă  PingCAP" ( discussion ).


Guide de l'analyseur de rouille et de la salsa


diagramme logique de l'analyseur


Alex @matklad a publié un guide / visite de la structure de l' analyseur de rouille ( qu'est-ce que c'est ?, Discussion ):



rust-analyzer utilise la bibliothèque de recompilation incrémentale Salsa, un article et quelques vidéos ont également été publiés récemment sur son appareil:



Rust OS: mémoire de page


schéma d'un article sur la mémoire


La série d'articles Writing an OS in Rust a été complétée par deux articles sur la mémoire de page:



Un bot pour Starcraft dans Rust, C ou toute autre langue?


Logo Starcraft


humbug a traduit son article en anglais, "Le Bot pour Starcraft, en rouille, C et toute autre langue . "


Rédaction d'une bibliothèque dynamique pour Windows, qui pourrait se charger dans l'espace d'adressage du jeu StarCraft: Brood War et gérer les unités.

Si quelqu'un n'a pas lu, alors voici une raison de vous familiariser. :)


Sommes-nous encore asynchrones?


Dernièrement, il y a eu tellement d'activité pour faire glisser la syntaxe asynchrone dans la langue ( par exemple ) qu'ils ont commencé une page mise à jour distincte avec le statut des RFC / discussions clés : areweasyncyet.rs ( discussion ).


Sommes-nous encore GUI?


areweguiyet.com ( discussion ) est une tentative similaire de rassembler en un seul endroit toutes les informations sur l'état des tentatives durables de donner naissance à une interface graphique fiable et idiomatique pour Rust.


Rouille sans verrou: traverse en 2019


Un excellent aperçu de la bibliothèque crossbeam , qui fournit des structures de données sans verrouillage efficaces, et son évolution au cours des dernières années ( discussion ).


Implémentations du protocole Rustic QUIC: Quiche de Cloudflare et Quinn


logo de quiche de gâteau


Le protocole expérimental QUIC (alternative au TCP, programme éducatif ) gagne lentement en popularité. Ce mois-ci:


  • Quinn v0.2 ( code , discussion ) a Ă©tĂ© publiĂ©, c'est maintenant l'une des implĂ©mentations les plus prĂ©cises du protocole. Cette bibliothèque est principalement axĂ©e sur l'API Rust idiomatique, y compris la prise en charge des futures;


  • Cloudflare a publiĂ© son implĂ©mentation - Quiche ( discussion ) - plus axĂ©e sur l'API C bien dĂ©veloppĂ©e pour l'intĂ©gration dans des applications dans d'autres langues.



Protection intrépide: sécurité de la mémoire dans la rouille


simba, ne va pas à l'insécurité


Une traduction de l'article de Mozilla, "Fearless Security: Memory Safety", décrivant les bases de la façon dont Rust fournit une mémoire sécurisée.


Intégré


morceau de circuit de la poste



badge


Webassembly


une image d'un article sur l'intégration de WASM



Igrostroy



long gif de la démo de gameplay actuelle



En une seule ligne



Packages nouveaux et mis Ă  jour


  • Ropey ( discussion ) est une implĂ©mentation efficace et compatible avec utf8 de la structure de donnĂ©es Rope / Cord , qui est souvent utilisĂ©e dans les Ă©diteurs de texte;
  • hexyl ( discussion ) - une visionneuse hexagonale de console qui utilise activement les couleurs pour indiquer des groupes de valeurs hexadĂ©cimales;
  • cargo-cache ( discussion ) - vous permet de nettoyer sĂ©lectivement les morceaux ~/.cargo/ ;
  • typetag ( discussion ) - un attribut de macro qui permet une sĂ©rialisation indolore de &dyn Trait et une dĂ©sĂ©rialisation d'objets de type Box<dyn Trait> ;
  • dness ( discussion ) - client DNS dynamique;
  • regex-automata ( discussion ) - fournit une interface de bas niveau pour travailler avec des expressions rĂ©gulières (contrairement Ă  regex ), ce qui est moins pratique, mais permet un contrĂ´le dĂ©taillĂ© de la consommation de mĂ©moire et du temps de recherche; utilise DFA et prend en charge la sĂ©rialisation;
  • Stretch ( code , discussion ) - une implĂ©mentation rouillĂ©e de flexbox, utilisĂ©e dans Shard (comment elle est entassĂ©e dans Android et iOS );
  • arbalest ( discussion ) est une alternative Ă  Arc classique, mais les maillons faibles n'interdisent pas de modifier l'accès aux donnĂ©es;
  • Toshi ( discussion ) - un moteur de recherche plein texte similaire Ă  Elasticsearch (une alternative Ă  ce que Tantivy , qui se concentre sur Lucene);
  • port inferno -rouillĂ© d'un visualiseur de barres de perles de rĂ©sultats de profilage Ă  flamme, le processus de dĂ©veloppement est prĂ©sentĂ© sous forme de flux ( vidĂ©o 1 , vidĂ©o 2 );
  • DataFusion v0.6 ( discussion , code ) - la première version du moteur de requĂŞte en mĂ©moire utilisant l'implĂ©mentation Rust officielle d' Apache Arrow ;
  • cargo-expand v0.4 ( discussion ) - l' expandeur de macros prend dĂ©sormais en charge l'utilisation de modules / types / fonctions spĂ©cifiques;
  • fluent-rs v0.5 ( discussion ) - une implĂ©mentation rouillĂ©e du système de localisation Fluent moderne a mis Ă  jour l'approche d'allocation des ressources, a reçu un analyseur zĂ©ro copie et une documentation amĂ©liorĂ©e;
  • Tokei v9.0 ( code , discussion ) - le programme de comptage des lignes dans le code source a reçu le support des fichiers de configuration, le nombre de PL comprĂ©hensibles est passĂ© Ă  170;
  • cargo-crev v0.4 ( discussion ) - Le système UX de rĂ©vision des paquets distribuĂ©s a Ă©tĂ© repensĂ© pour simplifier considĂ©rablement ;
  • Smithay v0.2 ( code , discussion ) - Un exemple d' enclume a Ă©tĂ© ajoutĂ© Ă  la bibliothèque pour dĂ©velopper des gestionnaires de fenĂŞtres pour Wayland , un support amĂ©liorĂ© pour les couleurs et XWayland, réécrit DRM;
  • oxyde-auth v0.4 ( discussion ) - La bibliothèque OAuth2 a Ă©tĂ© complètement réécrite et est maintenant compatible avec actix, rocket et rouille;



Habr a récemment desserré les noix et permet désormais de faire référence à des ressources communautaires externes, donc j'invite tout le monde à se familiariser avec Rust pour chercher de l'aide et des conseils dans les ressources russophones sur Rust:





C'est tout, merci d'avoir regardé!


Si je n'ai ajouté aucun lien ou événement important, n'hésitez pas à le déposer dans les commentaires. :)


KDPV prise d'ici , les photos restantes des sites des projets respectifs.

Source: https://habr.com/ru/post/fr439354/


All Articles