Software-update: Node.js 16.18.0 (LTS) / 18.11.0

Node.js logo (75 pix) Node.js is open source en platformonafhankelijk, en is gericht op het ontwikkelen van server-sidewebapplicaties. Die applicaties worden geschreven in JavaScript en uitgevoerd binnen de Node.js-runtime op de server. Het biedt een event-gedreven omgeving aan waarbij non-blocking i/o een belangrijk uitgangspunt is geweest. Voor meer informatie over Node.js verwijzen we naar deze pagina. Het ontwikkelteam heeft versies 16.18.0, een versie met extra lange ondersteuning, en 18.11.0 vrijgegeven. De belangrijkste veranderingen die in beide versies zijn aangebracht zijn hieronder voor je samengevat.

Node v18.11.0 (Current) Notable changes
  • watch mode (experimental): Running in 'watch' mode using node --watch restarts the process when an imported file is changed. Contributed by Moshe Atlow in #44366
  • fs:(SEMVER-MINOR) add FileHandle.prototype.readLines (Antoine du Hamel) #42590
  • http:(SEMVER-MINOR) add writeEarlyHints function to ServerResponse (Wing) #44180
  • http2:(SEMVER-MINOR) make early hints generic (Yagiz Nizipli) #44820
  • lib:(SEMVER-MINOR) refactor transferable AbortSignal (flakey5) #44048
  • src:(SEMVER-MINOR) add detailed embedder process initialization API (Anna Henningsen) #44121
  • util:(SEMVER-MINOR) add default value option to parsearg (Manuel Spigolon) #44631
Node v16.18.0 (LTS) Notable changes
  • [1cc050eaa8] - (SEMVER-MINOR) assert: add getCalls and reset to callTracker (Moshe Atlow) #44191
  • [e5c9975f11] - (SEMVER-MINOR) crypto: allow zero-length secret KeyObject (Filip Skokan) #44201
  • [317cd051ce] - (SEMVER-MINOR) crypto: allow zero-length IKM in HKDF and in webcrypto PBKDF2 (Filip Skokan) #44201
  • [f80bdc5ef3] - (SEMVER-MINOR) doc: deprecate modp1, modp2, and modp5 groups (Tobias Nießen) #44588
  • [8398e98b1b] - (SEMVER-MINOR) http: make idle http parser count configurable (theanarkh) #43974
  • [2cd2f56962] - (SEMVER-MINOR) http: throw error on content-length mismatch (sidwebworks) #44378
  • [6be761e8a9] - (SEMVER-MINOR) lib: add diagnostics channel for process and worker (theanarkh) #44045
  • [1400796cef] - (SEMVER-MINOR) net,tls: pass a valid socket on tlsClientError (Daeyeon Jeong) #44021
  • [092239a7f1] - (SEMVER-MINOR) net: add local family (theanarkh) #43975
  • [381e11e18e] - (SEMVER-MINOR) report: expose report public native apis (Chengzhong Wu) #44255
  • [2ba547aa5b] - (SEMVER-MINOR) src: expose environment RequestInterrupt api (Chengzhong Wu) #44362
  • [6ed3367155] - (SEMVER-MINOR) stream: add ReadableByteStream.tee() (Daeyeon Jeong) #44505
  • [0fbedac6ce] - (SEMVER-MINOR) test_runner: add before/after/each hooks (Moshe Atlow) #43730
  • [70563b53c5] - (SEMVER-MINOR) util: add maxArrayLength option to Set and Map (Kohei Ueno) #43576

Node.js

Versienummer 16.18.0 (LTS) / 18.11.0
Releasestatus Final
Besturingssystemen Windows 7, Linux, BSD, macOS, Windows Server 2008, Windows Server 2012, Windows 8, Windows 10, Windows Server 2016, Windows Server 2019, Windows 11
Website Node.js
Download https://nodejs.org/en/download/
Licentietype GPL

Door Bart van Klaveren

Downloads en Best Buy Guide

14-10-2022 • 18:18

8

Submitter: zwik

Bron: Node.js

Reacties (8)

8
8
6
1
0
2
Wijzig sortering
Eindelijk native fetch in een LTS versie van Node.js
https://blog.logrocket.com/fetch-api-node-js/

[Reactie gewijzigd door Leejjon op 24 juli 2024 00:48]

Eindelijk een watch mode, al vraag ik mij af of dat nodemon gaat vervangen binnen mijn eigen projectjes. :)
Ik heb zojuist nodemon verwijderd als dependency en de native watch gebruikt, werkt uitstekend voor mij.
NodeJS was destijds zeer geliefd. Betreffende de non-blocking I/O is dat nog steeds zo?
Als ik kijk naar backends, kun je tegenwoordig met Go of Rust met gemak toch veel betere resultaten boeken? Volgens mij is NodeJS dan op dat vlak tegenwoordig het gebruik aardig aan het verminderen lijkt me. Energieverbruikt is toch wel een hot topic, dus performance per Wh begint een belangrijke zaak te worden in de server wereld.
Volgens mij gaat de wereld toch naar webassembly als runtime. Ook op de backend.

[Reactie gewijzigd door Immutable op 24 juli 2024 00:48]

Node is aantrekkelijk omdat je in de front- en backend meer van je codebase kan hergebruiken. Als je in de front-end op WebASM overstapt zou je wat watts kunnen besparen, misschien. Op de backend heb je dan geen webASM nodig, lijkt me? Gewoon een Go/Rust-app schrijven, die mag ook al met het netwerk praten.
Dat gezegd hebbende, wat is het verschil met C/C++ en andere compiled talen? Blijkbaar hebben talen als JS/PHP/Ruby/Python meer voordelen dan alleen maar 'de server ondersteunt het'.
Dat is zeker een reden. Voor mij is het vooral aantrekkelijk vanwege het rijke aanbod van packages. Soms is het een beetje het wilde westen als je een iets obscuurdere feature zoekt maar meestal worden js interfaces al door 1st parties aangeboden voor hun producten.
Tsja, je kan tegenwoordig volledig front en back-end in Rust doen. Dat voordeel heeft Rust ook net als Javascript. Alleen zijn er natuurlijk veel meer Javascript programmeurs. Wat een valide punt is, die zijn veel goedkoper. Het ligt er maar net aan waar de kosten zitten. In de server zelf, of de programmeurs.
Verschil tussen C/C++ en Rust/Go is toch wel dat de laatste twee veel moderner zijn. En je qua webframeworks het veel gebruiksvriendelijker is dan C/C++. Go is juist hieruit ontstaan, en Rust heeft natuurlijk de hele rijke macro functionaliteit waarbij een backend schrijven met Rust bijna net zo makkelijk is als in Python of NodeJs.

[Reactie gewijzigd door Immutable op 24 juli 2024 00:48]

beetje random post dit :)

Node 16 heeft al sinds 2021-10-26 de LTS status (v16.13.0)
Node 18 krijgt LTS status op 2022-10-25 (over 10 dagen)
Node 19 komt uit op 2022-10-18 (over 2 dagen)
https://github.com/nodejs/Release#release-schedule

Op dit item kan niet meer gereageerd worden.