Është përsëri në këtë kohë të vitit, Node.js 5.0.0 është lëshuar dhe është versioni tjetër i qëndrueshëm i Node.js.

Tani, Node.js 4.x.x është ende versioni i fundit nëse keni lëshime të mëdha të Node.js brenda organizatës suaj. 4.x.x do të marrë ende përditësime të sigurisë dhe mirëmbajtjes së përgjithshme për kohëzgjatjen e ciklit të tij jetësor LTS, megjithatë, nëse doni veçoritë më të fundit dhe më të mëdha, atëherë 5.0.0 do të jetë më se i qëndrueshëm.

Çfarë është e re?

v8:

  • Zbaton operatorin e përhapjes, shih.
[...iterableObj, 4, 5, 6]
  • Zbaton new.target, shih.
function Foo() {  
  if (!new.target) throw "Foo() must be called with new";
  console.log("Foo instantiated with new");
}

npm:

konsola:

  • console.time() - rezolucioni tani ka 3 dhjetore të saktësisë së shtuar.

fs:

  • fs.readFile fs.writeFile fs.appendFile Të gjithë këta tani pranojnë një përshkrues skedari si argumentin e tyre të parë.

http:

  • Nuk ka më dublikatë të titujve të mëposhtëm: Retry-After, ETag, Last-Modified, Server, Age, Expires.
  • Metodat Http dhe emrat e kokës duhet të përputhen me rregullat e "tokenit" të RFC 2616 - /^[a-zA-Z0-9_!#$%&'*+.^`|~-]+$/ ose një gabim të tipit.
  • OutgoingMessage#setTimeout() - duhet të jetë një funksion ose është hedhur një gabim i llojit (James M Snell)

tls:

  • Mbështetja ALPN është shtuar.
  • createSecurePair() - tani mund të kalohet një opsion TLS.

zlib:

  • Tani hedh në fund të papritur të skedarëve.

Çfarë është e zhvlerësuar?

i brendshëm:

  • _linklist
  • require.paths
  • require.registerExtension()

buffer:

  • raw dhe raws janë hequr si lloje kodimi.

përdor:

  • .p()

Çfarë ka ndryshuar?

fs:

  • fs.readFile fs.read Disa gabime tani janë kthyer në kthimin e thirrjes në vend që të hidhen.

përdor:

  • inherits është përditësuar për të punuar me klasat ES6, megjithatë prototipi është riorganizuar dhe mund të jetë një ndryshim i rëndësishëm për disa konsumatorë.

v8:

  • 4.6.85.25 nga 4.5.103.35

kohëmatësit:

  • setTimeout().unref() - Përpjekje për të ripërdorur dorezën e kohëmatësit nga brenda; Kjo rregullon një problem të njohur prej kohësh, ku kohëmatësit e parregulluar do të mbanin beforeExit të hapur.

tls:

.connect() - Madhësia minimale e paracaktuar e çelësit DH tani është 1024 bit dhe shfaqet një paralajmërim kur madhësia e çelësit DH është më e vogël se 2048 bit. Ky është një konsideratë sigurie për të parandaluar sulmet 'logjam'. Një opsion i ri MinDHSize TLS mund të përdoret për të anashkaluar parazgjedhjen

Më shumë

Shikoni të gjithë login e ndryshimeve këtu: https://github.com/nodejs/node/blob/v5.0.0/CHANGELOG.md

Në YLD! për çdo kod prodhimi ne do të vazhdojmë të përdorim 4.x.x, megjithatë për projektet tona do të luajmë me 5.x.x

Shkruar nga Tom Gallacher— Inxhinier i Stafit në YLD.

Të interesuar për Node? Lexoni më shumë për të: