{"id":102509,"date":"2021-12-07T15:37:11","date_gmt":"2021-12-07T13:37:11","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/tretya-redakcziya-patchej-dlya-yadra-linux-s-podderzhkoj-yazyka-rust"},"modified":"2021-12-07T15:37:11","modified_gmt":"2021-12-07T13:37:11","slug":"tretya-redakcziya-patchej-dlya-yadra-linux-s-podderzhkoj-yazyka-rust","status":"publish","type":"post","link":"https:\/\/prohoster.info\/fr\/blog\/news\/tretya-redakcziya-patchej-dlya-yadra-linux-s-podderzhkoj-yazyka-rust","title":{"rendered":"Troisi\u00e8me \u00e9dition des patches pour le noyau Linux avec support du langage Rust","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Miguel Ojeda, auteur du projet Rust-for-Linux, a propos\u00e9 aux d\u00e9veloppeurs du noyau Linux une troisi\u00e8me option de composants pour le d\u00e9veloppement de pilotes d'appareils en langage Rust. Le support de Rust est consid\u00e9r\u00e9 comme exp\u00e9rimental, mais a d\u00e9j\u00e0 \u00e9t\u00e9 valid\u00e9 pour inclusion dans la branche linux-next. Le d\u00e9veloppement est financ\u00e9 par Google et l'organisation ISRG (Internet Security Research Group), qui est \u00e0 l'origine du projet Let's Encrypt et qui promeut HTTPS ainsi que le d\u00e9veloppement de technologies pour renforcer la s\u00e9curit\u00e9 sur Internet.            <\/p>\n<p>Rappelons que les modifications propos\u00e9es permettent d'utiliser Rust comme deuxi\u00e8me langage pour le d\u00e9veloppement de pilotes et de modules du noyau. Le support de Rust est pr\u00e9sent\u00e9 comme une option, non activ\u00e9e par d\u00e9faut et ne conduisant pas \u00e0 l'inclusion de Rust parmi les d\u00e9pendances de construction obligatoires du noyau. L'utilisation de Rust pour le d\u00e9veloppement de pilotes permettra de cr\u00e9er des pilotes s\u00fbrs et de meilleure qualit\u00e9 avec un minimum d'efforts, en \u00e9vitant des probl\u00e8mes tels que l'acc\u00e8s \u00e0 une zone m\u00e9moire apr\u00e8s sa lib\u00e9ration, la d\u00e9r\u00e9f\u00e9renciation de pointeurs nuls et le d\u00e9passement de tampon.    <\/p>\n<p>La s\u00e9curit\u00e9 de la m\u00e9moire est assur\u00e9e dans Rust au moment de la compilation par la v\u00e9rification des r\u00e9f\u00e9rences, le suivi de la propri\u00e9t\u00e9 des objets et la prise en compte de la dur\u00e9e de vie des objets (port\u00e9e), ainsi que par l'\u00e9valuation de l'acc\u00e8s \u00e0 la m\u00e9moire lors de l'ex\u00e9cution du code. Rust fournit \u00e9galement des moyens de protection contre les d\u00e9bordements d'entiers, exige l'initialisation obligatoire des variables avant leur utilisation, g\u00e8re mieux les erreurs dans la biblioth\u00e8que standard, applique le concept de r\u00e9f\u00e9rences et de variables immuables par d\u00e9faut, et propose une forte typage statique pour minimiser les erreurs logiques.    <\/p>\n<p>La nouvelle version des patchs continue de corriger les remarques formul\u00e9es lors des discussions sur les premi\u00e8res et deuxi\u00e8mes versions des patchs. Les changements les plus notables sont :  <\/p>\n<ul>\n<li class=\"l\"> La transition vers l'utilisation du compilateur standard stable Rust 1.57 a \u00e9t\u00e9 effectu\u00e9e, assurant l'attachement \u00e0 l'\u00e9dition stabilis\u00e9e du langage Rust 2021. Auparavant, les correctifs \u00e9taient li\u00e9s \u00e0 la branche b\u00eata de Rust et utilisaient certaines fonctionnalit\u00e9s du langage qui relevaient des options instables. La migration vers la sp\u00e9cification Rust 2021 a permis d'initier le travail visant \u00e0 \u00e9liminer l'utilisation dans les correctifs de ces fonctionnalit\u00e9s instables comme const_fn_transmute, const_panic, const_unreachable_unchecked, core_panic et try_reserve.\n<li class=\"l\"> Le d\u00e9veloppement de la variante de la biblioth\u00e8que Rust alloc, incluse dans les patchs, a \u00e9t\u00e9 poursuivi, modifi\u00e9e pour \u00e9liminer les fonctions de distribution de la m\u00e9moire susceptibles de g\u00e9n\u00e9rer un \u00e9tat de \"panic\" en cas d'erreurs telles qu'un manque de m\u00e9moire. La nouvelle version impl\u00e9mente les options \"no_rc\" et \"no_sync\" pour d\u00e9sactiver des fonctionnalit\u00e9s inutilis\u00e9es dans le code Rust pour le noyau, rendant la biblioth\u00e8que plus modulaire. Le travail avec les principaux d\u00e9veloppeurs d'alloc se poursuit, visant \u00e0 transf\u00e9rer les modifications n\u00e9cessaires pour le noyau dans la biblioth\u00e8que principale. L'option \"no_fp_fmt_parse\", n\u00e9cessaire au bon fonctionnement de la biblioth\u00e8que au niveau du noyau, a \u00e9t\u00e9 ajout\u00e9e \u00e0 la biblioth\u00e8que de base Rust (core).\n<li class=\"l\"> Un nettoyage du code a \u00e9t\u00e9 effectu\u00e9 pour \u00e9liminer les \u00e9ventuels avertissements du compilateur lors de la construction du noyau en mode CONFIG_WERROR. Des modes diagnostiques suppl\u00e9mentaires du compilateur et des avertissements du linter Clippy ont \u00e9t\u00e9 inclus lors de la compilation du code Rust.\n<li class=\"l\"> Des abstractions ont \u00e9t\u00e9 propos\u00e9es pour une utilisation dans le code Rust, notamment des verrous de s\u00e9quence (seqlock), des appels de rappel pour la gestion de l'alimentation, la m\u00e9moire I\/O (readX\/writeX), des gestionnaires d'interruptions, des threads, GPIO, et l'acc\u00e8s aux dispositifs, pilotes et donn\u00e9es d'identification.\n<li class=\"l\"> Les outils pour le d\u00e9veloppement de pilotes ont \u00e9t\u00e9 \u00e9tendus en int\u00e9grant des mutex transf\u00e9rables, des it\u00e9rateurs de bits, des enveloppes simplifi\u00e9es autour des pointeurs, un diagnostic am\u00e9lior\u00e9 des pannes et une infrastructure ind\u00e9pendante du bus de donn\u00e9es.\n<li class=\"l\"> Le travail avec les r\u00e9f\u00e9rences a \u00e9t\u00e9 am\u00e9lior\u00e9 gr\u00e2ce \u00e0 un type simplifi\u00e9 Ref, bas\u00e9 sur le backend refcount_t, utilisant l'API du noyau du m\u00eame nom pour le comptage des r\u00e9f\u00e9rences. Le support des types Arc et Rc, fournis dans la biblioth\u00e8que standard alloc, a \u00e9t\u00e9 supprim\u00e9 et n'est pas disponible dans le code ex\u00e9cut\u00e9 au niveau du noyau (des options ont \u00e9t\u00e9 pr\u00e9par\u00e9es pour d\u00e9sactiver ces types dans la biblioth\u00e8que elle-m\u00eame).\n<li class=\"l\"> La nouvelle version des patchs comprend une variante du pilote PL061 GPIO, r\u00e9\u00e9crite en Rust. La particularit\u00e9 de ce pilote est que son impl\u00e9mentation r\u00e9p\u00e8te presque ligne par ligne le pilote GPIO existant en C. Pour les d\u00e9veloppeurs souhaitant d\u00e9couvrir la cr\u00e9ation de pilotes en Rust, une comparaison ligne par ligne a \u00e9t\u00e9 pr\u00e9par\u00e9e, permettant de comprendre comment le code en C a \u00e9t\u00e9 transform\u00e9 en constructions en Rust.\n<li class=\"l\"> Le backend rustc_codegen_gcc, une impl\u00e9mentation de rustc pour GCC, a \u00e9t\u00e9 int\u00e9gr\u00e9 \u00e0 la base de code principale de Rust, permettant la compilation anticip\u00e9e (AOT) \u00e0 l'aide de la biblioth\u00e8que libgccjit. Avec un d\u00e9veloppement appropri\u00e9 du backend, il permettra de compiler le code Rust utilis\u00e9 dans le noyau via GCC.\n<li class=\"l\"> En plus des entreprises ARM, Google et Microsoft, la soci\u00e9t\u00e9 Red Hat a \u00e9galement exprim\u00e9 son int\u00e9r\u00eat pour l'utilisation du langage Rust dans le noyau Linux. Rappelons que Google soutient directement le projet Rust for Linux, d\u00e9veloppe une nouvelle mise en \u0153uvre du m\u00e9canisme de communication interprocessus Binder en Rust et envisage de r\u00e9\u00e9crire divers pilotes en Rust. Microsoft a commenc\u00e9 \u00e0 d\u00e9velopper des pilotes pour Hyper-V en Rust. ARM travaille \u00e0 l'am\u00e9lioration du support de Rust pour les syst\u00e8mes bas\u00e9s sur des processeurs ARM. IBM a mis en \u0153uvre la prise en charge de Rust dans le noyau pour les syst\u00e8mes PowerPC.      <\/ul>\n<p>Source : <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=56295\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041c\u0438\u0433\u0435\u043b\u044c \u041e\u0445\u0435\u0434\u0430 (Miguel Ojeda), \u0430\u0432\u0442\u043e\u0440 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 Rust-for-Linux, \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0438\u043b \u0434\u043b\u044f \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u0438\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430\u043c\u0438 \u044f\u0434\u0440\u0430 Linux \u0442\u0440\u0435\u0442\u0438\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u043e\u0432 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust. \u041f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 Rust \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u043a\u0430\u043a \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u0430\u044f, \u043d\u043e \u0443\u0436\u0435 \u0441\u043e\u0433\u043b\u0430\u0441\u043e\u0432\u0430\u043d\u0430 \u0434\u043b\u044f \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0432 \u0432\u0435\u0442\u043a\u0443 linux-next. \u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0444\u0438\u043d\u0430\u043d\u0441\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0435\u0439 Google \u0438 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0435\u0439 ISRG (Internet Security Research Group), \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0443\u0447\u0440\u0435\u0434\u0438\u0442\u0435\u043b\u0435\u043c \u043f\u0440\u043e\u0435\u043a\u0442\u0430 Let&#8217;s Encrypt \u0438 \u0441\u043f\u043e\u0441\u043e\u0431\u0441\u0442\u0432\u0443\u0435\u0442 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-102509","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041c\u0438\u0433\u0435\u043b\u044c \u041e\u0445\u0435\u0434\u0430 (Miguel Ojeda), \u0430\u0432\u0442\u043e\u0440 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 Rust-for-Linux, \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0438\u043b \u0434\u043b\u044f \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u0438\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430\u043c\u0438 \u044f\u0434\u0440\u0430 Linux \u0442\u0440\u0435\u0442\u0438\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u043e\u0432 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/fr\/blog\/news\/tretya-redakcziya-patchej-dlya-yadra-linux-s-podderzhkoj-yazyka-rust\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"fr_FR\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0422\u0440\u0435\u0442\u044c\u044f \u0440\u0435\u0434\u0430\u043a\u0446\u0438\u044f \u043f\u0430\u0442\u0447\u0435\u0439 \u0434\u043b\u044f \u044f\u0434\u0440\u0430 Linux \u0441 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 \u044f\u0437\u044b\u043a\u0430 Rust | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041c\u0438\u0433\u0435\u043b\u044c \u041e\u0445\u0435\u0434\u0430 (Miguel Ojeda), \u0430\u0432\u0442\u043e\u0440 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 Rust-for-Linux, \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0438\u043b \u0434\u043b\u044f \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u0438\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430\u043c\u0438 \u044f\u0434\u0440\u0430 Linux \u0442\u0440\u0435\u0442\u0438\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u043e\u0432 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/fr\/blog\/news\/tretya-redakcziya-patchej-dlya-yadra-linux-s-podderzhkoj-yazyka-rust\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2021-12-07T13:37:11+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2021-12-07T13:37:11+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Troisi\u00e8me \u00e9dition des patchs pour le noyau Linux avec support du langage Rust | ProHoster","description":"Miguel Ojeda, l'auteur du projet Rust-for-Linux, a propos\u00e9 aux d\u00e9veloppeurs du noyau Linux une troisi\u00e8me option de composants pour le d\u00e9veloppement de pilotes de p\u00e9riph\u00e9riques en Rust.","canonical_url":"https:\/\/prohoster.info\/fr\/blog\/news\/tretya-redakcziya-patchej-dlya-yadra-linux-s-podderzhkoj-yazyka-rust","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"fr_FR","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0422\u0440\u0435\u0442\u044c\u044f \u0440\u0435\u0434\u0430\u043a\u0446\u0438\u044f \u043f\u0430\u0442\u0447\u0435\u0439 \u0434\u043b\u044f \u044f\u0434\u0440\u0430 Linux \u0441 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 \u044f\u0437\u044b\u043a\u0430 Rust | ProHoster","og:description":"\u041c\u0438\u0433\u0435\u043b\u044c \u041e\u0445\u0435\u0434\u0430 (Miguel Ojeda), \u0430\u0432\u0442\u043e\u0440 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 Rust-for-Linux, \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0438\u043b \u0434\u043b\u044f \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u043d\u0438\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0430\u043c\u0438 \u044f\u0434\u0440\u0430 Linux \u0442\u0440\u0435\u0442\u0438\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u043e\u0432 \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u043e\u0432 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust.","og:url":"https:\/\/prohoster.info\/fr\/blog\/news\/tretya-redakcziya-patchej-dlya-yadra-linux-s-podderzhkoj-yazyka-rust","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2021-12-07T13:37:11+00:00","article:modified_time":"2021-12-07T13:37:11+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"102509","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-12-07 13:37:18","updated":"2022-09-27 15:07:34","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/102509","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/comments?post=102509"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/102509\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/media?parent=102509"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/categories?post=102509"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/tags?post=102509"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}