Wasmer, leader dans le développement de la technologie WebAssembly (Wasm), a récemment dévoilé WASIX, une nouvelle spécification et une chaîne d'outils qui étendent l'interface du système WebAssembly (WASI) avec une compatibilité totale avec Posix (Portable Operating System Interface). Cette avancée vise à simplifier la construction d'applications Wasm en réunissant les capacités de WASI et de Posix.
WASIX, annoncé le 30 mai comme un surensemble de WASI, est conçu pour la création d'applications web ainsi que pour l'achèvement d'environnements d'exécution. Il prend en charge de nombreuses fonctionnalités, telles que les threads, les sockets Berkeley, le forking et bien d'autres encore, qui étaient disponibles pendant toute la durée de vie de Posix. L'équipe Wasmer et sa communauté active ont travaillé sans relâche pour améliorer l'ABI (Application Binary Interface) de WASI, la stabiliser et la rendre plus compatible avec Posix.
En exploitant le potentiel de WASIX, les développeurs peuvent compiler plus facilement les applications Wasm, ce qui permet d'offrir des alternatives performantes à JavaScript dans les navigateurs web et les serveurs. La spécification complète de WASIX est disponible sur wasix.org, et les développeurs sont encouragés à l'essayer sur wasmer.sh.
WASIX offre un large éventail de fonctionnalités, notamment
- Stabilisation à long terme, amélioration de l'ABI WASI existante et prise en charge d'extensions syscall non invasives supplémentaires.
- Chaînes d'outils pour la compilation de Rust et de C/C++, avec un support en amont pour AssemblyScript et Zig
- Support d'exécution, avec notamment le support de l'exécution Wasmer
- Compatibilité avec les navigateurs et les serveurs
- Prise en charge du multithreading
- Prise en charge des sockets, y compris IPv4 et IPv6
- Polling asynchrone pour les sockets et les fichiers
- Support TTY
- Résolution DNS
Bien que WASI ait des aspirations ambitieuses et maintienne son soutien, son évolution lente a entravé les progrès de la mise à disposition de Wasm. WASI a été initialement dévoilé par Mozilla en mars 2019, avec l'objectif de permettre aux applications WebAssembly de fonctionner de manière transparente avec n'importe quel système d'exploitation en fournissant un mécanisme cohérent pour l'interaction à la fois à l'extérieur et à l'intérieur du web. Posix est une norme IEEE depuis les années 1980, définissant des API pour la compatibilité logicielle avec différentes versions d'Unix et certaines distributions Linux.
En offrant une compatibilité avec WASIX, no-code et low-code, les plateformes telles que AppMaster peuvent ouvrir davantage de possibilités pour créer des applications web et mobiles puissantes et évolutives. Les utilisateurs peuvent créer des applications tout en profitant des avantages de WebAssembly et de la compatibilité Posix. Pour en savoir plus sur AppMaster, visitez son site officiel ou consultez le guide complet sur le développement d'applications sans code/à faible code pour 2022.