เบเบฒเบ™เบ›เปˆเบญเบ nginx 1.17.8 เปเบฅเบฐ njs 0.3.8

เบชเป‰เบฒเบ‡เบ•เบฑเป‰เบ‡เบ‚เบถเป‰เบ™ เบเบฒเบ™เบ›เปˆเบญเบเบ™เป‰เปเบฒ nginx 1.17.8, เบžเบฒเบเปƒเบ™เบ—เบตเปˆเบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบซเบกเปˆเบเบฑเบ‡เบชเบทเบšเบ•เปเปˆ (เปƒเบ™เบ‚เบฐเบซเบ™เบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบ—เบตเปˆเบซเบกเบฑเป‰เบ™เบ„เบปเบ‡ เบชเบฒเบ‚เบฒ 1.16 เบกเบตเบžเบฝเบ‡เปเบ•เปˆเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเบเบฒเบ™เบฅเบปเบšเบฅเป‰เบฒเบ‡เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เปเบฅเบฐเบ„เบงเบฒเบกเบชเปˆเบฝเบ‡เบ—เบตเปˆเบฎเป‰เบฒเบเปเบฎเบ‡เป€เบ—เบปเปˆเบฒเบ™เบฑเป‰เบ™).

เบ•เบปเป‰เบ™โ€‹เบ•เป เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡:

  • เปƒเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡ grpc_pass เป€เบžเบตเปˆเบกเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบ•เบปเบงเปเบ›เปƒเบ™เบžเบฒเบฅเบฒเบกเบดเป€เบ•เบตเบ—เบตเปˆเบเปเบฒเบ™เบปเบ”เบ—เบตเปˆเบขเบนเปˆ. เบ–เป‰เบฒเบ—เบตเปˆเบขเบนเปˆเบ–เบทเบเบฅเบฐเบšเบธเป€เบ›เบฑเบ™เบŠเบทเปˆเป‚เบ”เป€เบกเบ™, เบŠเบทเปˆเบ–เบทเบเบ„เบปเป‰เบ™เบซเบฒเปƒเบ™เบšเบฑเบ™เบ”เบฒเบเบธเปˆเบกเป€เบŠเบตเบŸเป€เบงเบตเบ—เบตเปˆเบญเบฐเบ—เบดเบšเบฒเบเปเบฅเบฐเบ–เป‰เบฒเบšเปเปˆเบžเบปเบš, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบเปเบฒเบ™เบปเบ”เป‚เบ”เบเปƒเบŠเป‰เบ•เบปเบงเปเบเป‰เป„เบ‚;
  • เปเบเป‰เป„เบ‚เบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ”เปƒเบ™เป€เบงเบฅเบฒเบ›เบฐเบกเบงเบ™เบœเบปเบ™เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเปเบšเบšเบ—เปเปˆเบœเปˆเบฒเบ™เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆ SSL เป€เบŠเบดเปˆเบ‡เบเบฒเบ™เปเบปเบ”เป€เบงเบฅเบฒเบญเบฒเบ”เบˆเบฐเป€เบเบตเบ”เบ‚เบถเป‰เบ™;
  • เป„เบ”เป‰เบกเบตเบเบฒเบ™เปเบเป‰เป„เบ‚เบ„เปเบฒเบชเบฑเปˆเบ‡ debug_points เป€เบกเบทเปˆเบญเปƒเบŠเป‰ HTTP/2 protocol.

เบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™, เบกเบฑเบ™เบชเบฒเบกเบฒเบ”เบชเบฑเบ‡เป€เบเบ”เป€เบซเบฑเบ™เป„เบ”เป‰ เบ›เปˆเบญเบเบ•เบปเบง njs 0.3.8, เบ™เบฒเบเบžเบฒเบชเบฒ JavaScript เบชเปเบฒเบฅเบฑเบšเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเป€เบงเบฑเบšเป„เบŠเบ•เปŒ nginx. เบ™เบฒเบเบžเบฒเบชเบฒ njs เบ›เบฐเบ•เบดเบšเบฑเบ”เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™ ECMAScript เปเบฅเบฐเบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ‚เบฐเบซเบเบฒเบเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เบ‚เบญเบ‡ nginx เปƒเบ™เบเบฒเบ™เบ›เบฐเบกเบงเบ™เบœเบปเบ™เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเป‚เบ”เบเปƒเบŠเป‰ scripts เปƒเบ™เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ. Scripts เบชเบฒเบกเบฒเบ”เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เปƒเบ™เป„เบŸเบฅเปŒเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเป€เบžเบทเปˆเบญเบเปเบฒเบ™เบปเบ”เป€เบซเบ”เบœเบปเบ™เบ‚เบฑเป‰เบ™เบชเบนเบ‡เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เป, เบเบฒเบ™เบชเป‰เบฒเบ‡เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ, เบเบฒเบ™เบชเป‰เบฒเบ‡เบเบฒเบ™เบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡เปเบšเบšเป„เบ”เบ™เบฒเบกเบดเบ, เปเบเป‰เป„เบ‚เบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เป / เบเบฒเบ™เบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡, เบซเบผเบทเบเบฒเบ™เบชเป‰เบฒเบ‡ stubs เบขเปˆเบฒเบ‡เป„เบงเบงเบฒเป€เบžเบทเปˆเบญเปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเปƒเบ™เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเป€เบงเบฑเบš.

เบฎเบธเปˆเบ™เปƒเบซเบกเปˆเป€เบžเบตเปˆเบกเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™ Promise เบชเปเบฒเบฅเบฑเบš r.subrequest เปƒเบซเป‰เบเบฑเบšเป‚เบกเบ”เบนเบ™ nginx เปเบฅเบฐเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ•เบปเบงเบˆเบฑเบ”เบเบฒเบ™เบŠเบฑเบšเบชเบดเบ™ r.parent. เบ™เบญเบเบˆเบฒเบเบ™เบตเป‰:

  • เป€เบžเบตเปˆเบกเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบ„เปเบฒเบซเบกเบฑเป‰เบ™เบชเบฑเบ™เบเบฒ;
  • เป€เบžเบตเปˆเบกเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™เบชเปเบฒเบฅเบฑเบš arrays Typed;
  • เป€เบžเบตเปˆเบกเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบš ArrayBuffer;
  • เป€เบžเบตเปˆเบกเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเบฑเบ™เบเบฒเบฅเบฑเบเป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™;
  • เป€เบžเบตเปˆเบกเบเบฒเบ™เบ„เบงเบšเบ„เบธเบกเบžเบฒเบเบ™เบญเบเบชเปเบฒเบฅเบฑเบš JSON.stringify();
  • เป€เบžเบตเปˆเบก Object.is();
  • เป€เบžเบตเปˆเบก Object.setPrototypeOf();
  • เบ•เบปเบงเบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ›เบฐเบชเบปเบก null (เบเบฒเบ™เบฎเปˆเบงเบกเบเบฑเบ™);
  • Fixed Object.getPrototypeOf() เป€เบžเบทเปˆเบญเบ›เบฐเบ•เบดเบšเบฑเบ”เบ•เบฒเบก spec;
  • Fixed Object.prototype.valueOf() เป€เบžเบทเปˆเบญเบ›เบฐเบ•เบดเบšเบฑเบ”เบ•เบฒเบก spec;
  • เป„เบ”เป‰เปเบเป‰เป„เบ‚ JSON.stringify() เบ”เป‰เบงเบเบ„เปˆเบฒเบ—เบตเปˆเบšเปเปˆเบชเบฒเบกเบฒเบ”เบžเบดเบกเป„เบ”เป‰ เปเบฅเบฐ
    เบซเบ™เป‰เบฒเบ—เบตเปˆเบ—เบปเบ”เปเบ—เบ™;

  • เบ„เบปเบ‡เบ—เบตเปˆ "เปƒเบ™" เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ•เบฒเบกเบชเบฐเป€เบžเบฒเบฐ;
  • เป„เบ”เป‰เปเบเป‰เป„เบ‚เบเบฑเบš Object.defineProperties() เบญเบตเบ‡เบ•เบฒเบก
    เบกเบตเบชเบฐเป€เบžเบฒเบฐ;

  • Fixed Object.create() เบ•เบฒเบก spec.
  • เป„เบ”เป‰เบกเบตเบเบฒเบ™เปเบเป‰เป„เบ‚เบ•เปเปˆเบเบฑเบš Number.prototype.toString(radix) เป€เบกเบทเปˆเบญ Fast Math เบ–เบทเบเป€เบ›เบตเบ”เปƒเบŠเป‰;
  • RegExp() เบ„เบธเบ™เบชเบปเบกเบšเบฑเบ”เบ•เบปเบงเบขเปˆเบฒเบ‡เบ–เบทเบเปเบเป‰เป„เบ‚;
  • เปเบเป‰เป„เบ‚เบ‚เปเป‰เบœเบดเบ”เบžเบฒเบ”เปƒเบ™เบเบฒเบ™เบ™เปเบฒเป€เบ‚เบปเป‰เบฒเปƒเบ™เป€เบงเบฅเบฒเบ™เปเบฒเป€เบ‚เบปเป‰เบฒ.

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: opennet.ru

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™