Webentwicklung: Deno 1.16 bringt neues Build-Tool zum Erstellen von npm-Paketen
Die JavaScript-Runtime erhöht V8 um zwei Versionen, kann mit der neuen JSX-Transformation aus React 17 umgehen und arbeitet an der Kompatibilität mit npm.
Ein neuer Monat, ein neues Deno-Release – Version 1.16 der Runtime für JavaScript und TypeScript ist erschienen. Das Deno-Team hat einige neue Features einfließen lassen, zu denen eine neue Signal-Listener-API und ein Build-Tool für Deno-Module zählen. Als einziger Breaking Change gilt die Entfernung von ReadableStream.getIterator
.
Deno-Module in npm
Mit Deno 1.16 erscheint das neue System dnt (Deno to Node Transform) [1]. Das Build-Tool dient dem Veröffentlichen von in Deno geschriebenen Modulen als npm-Pakete zur Verwendung mit Node.js. Obwohl sich dnt noch in einem sehr frühen Stadium befindet, kommt es im Beispielprojekt deno_license_checker [2] bereits zum Einsatz, das sich wie folgt installieren lässt:
npm install -g @kt3k/license-checker
Auch die Arbeit am Kompatibilitätsmodus mit Node.js (--compat
) geht weiter, jedoch hat das Deno-Team zu diesem Zeitpunkt keine Neuigkeiten zu verkünden. Deno entspringt der gleichen Entwicklerfeder wie Node.js [3], das ebenfalls von Ryan Dahl ins Leben gerufen wurde.
Signal-Listener-API und neue JSX-Transformationen
Noch vor knapp einem Monat [4] lautete der Plan, die Deno.signal()
-API in Deno 1.16 zu stabilisieren. Dieses Vorhaben hat das Deno-Team offensichtlich verworfen, denn stattdessen führt es als deren Nachfolger eine ebenfalls instabile neue Signal-Listener-API ein:
const listener = () => {
console.log("SIGTERM!");
};
// Starts listening to SIGTERM
Deno.addSignalListener("SIGTERM", listener);
// Stops listening to SIGTERM
Deno.removeSignalListener("SIGTERM", listener);
Weitere Neuerungen
Deno 1.16 erlaubt die Nutzung der neuen JSX-Transformationen, die mit React 17 in der JavaScript-Bibliothek Einzug hielten [5]. Sie überarbeiteten die JSX-Transform-API und brachten die Möglichkeit mit, die JSX-Laufzeitbibliothek automatisch zu importieren. Zudem erhöht sich die in Deno enthaltene JavaScript-Engine V8 auf Version 9.7 und ist damit um zwei Versionen höher als zuvor.
Die wichtigsten Änderungen in Deno 1.16 hebt ein Blogeintrag hervor [6]. Alle Details finden sich in den Release Notes auf GitHub [7].
(mai [8])
URL dieses Artikels:
https://www.heise.de/-6263562
Links in diesem Artikel:
[1] https://github.com/denoland/dnt
[2] https://github.com/kt3k/deno_license_checker
[3] https://www.heise.de/news/Webentwicklung-Deno-1-0-soll-Node-js-als-Framework-fuer-Skriptsprachen-ersetzen-4721288.html
[4] https://www.heise.de/news/Webentwicklung-Deno-1-15-stabilisiert-API-zum-URL-Pattern-Matching-6217593.html
[5] https://www.heise.de/news/React-17-als-Stepping-Stone-Release-erschienen-4933983.html
[6] https://deno.com/blog/v1.16
[7] https://github.com/denoland/deno/releases/tag/v1.16.0
[8] mailto:mai@heise.de
Copyright © 2021 Heise Medien