Node.js - це практично універсальна бібліотека вводу-виводу для движка JavaScript V8 .
Експерти рекомендують його для створення та розгортання додатків в режимі реального часу, що потребують трафіку та обробки даних, які повинні працювати однаково на різних платформах і пристроях.
Node.js в даний час вважається провідною платформою для запуску коду JavaScript на сервері, яка використовується у великих компаніях, таких як Google, eBay, Yahoo, LinkedIn, Microsoft, Cloud9 та багато інших.
Платформа дуже добре документована і корисна з дуже великого сховища модулів, керованого за допомогою утиліти npm (Node.js Package Manager).
Версія 6.x рекомендована для стабільних виробничих середовищ, тоді як версія 7.x стабільна, але включає експериментальні функції.
& nbsp;
Що нового у цьому випуску:
- події: переконайтеся, що консольні функції існують
- fs: додайте параметр autoClose до fs.createWriteStream
- http: покращує очікувану обробку заголовків
- вузол: дозволити модулі попередньої завантаження з -i
- v8, src: виставити статистику про пробіли купи (v8.getHeapSpaceStatistics ())
Що нового у версії 6.7.0 / 4.6.0:
- події: переконайтеся, що консольні функції існують
- fs: додайте параметр autoClose до fs.createWriteStream
- http: покращує очікувану обробку заголовків
- вузол: дозволити модулі попередньої завантаження з -i
- v8, src: виставити статистику про пробіли купи (v8.getHeapSpaceStatistics ())
Що нового у версії 6.5.0 / 4.5.0:
- події: переконайтеся, що консольні функції існують
- fs: додайте параметр autoClose до fs.createWriteStream
- http: покращує очікувану обробку заголовків
- вузол: дозволити модулі попередньої завантаження з -i
- v8, src: виставити статистику про пробіли купи (v8.getHeapSpaceStatistics ())
Що нового у версії 6.3.0 / 4.4.7:
- події: переконайтеся, що консольні функції існують
- fs: додайте параметр autoClose до fs.createWriteStream
- http: покращує очікувану обробку заголовків
- вузол: дозволити модулі попередньої завантаження з -i
- v8, src: виставити статистику про пробіли купи (v8.getHeapSpaceStatistics ())
Що нового у версії 6.2.0 / 4.4.5:
Нове в Node.js 5.0.0 (30 жовтня 2015 р.)
Що нового у версії 6.0.0 / 4.4.3:
- події: переконайтеся, що консольні функції існують
- fs: додайте параметр autoClose до fs.createWriteStream
- http: покращує очікувану обробку заголовків
- вузол: дозволити модулі попередньої завантаження з -i
- v8, src: виставити статистику про пробіли купи (v8.getHeapSpaceStatistics ())
Що нового у версії 4.4.3 / 5.10.1:
- події: переконайтеся, що консольні функції існують
- fs: додайте параметр autoClose до fs.createWriteStream
- http: покращує очікувану обробку заголовків
- вузол: дозволити модулі попередньої завантаження з -i
- v8, src: виставити статистику про пробіли купи (v8.getHeapSpaceStatistics ())
Що нового у версії 4.4.0 / 5.8.0:
- події: переконайтеся, що консольні функції існують
- fs: додайте параметр autoClose до fs.createWriteStream
- http: покращує очікувану обробку заголовків
- вузол: дозволити модулі попередньої завантаження з -i
- v8, src: виставити статистику про пробіли купи (v8.getHeapSpaceStatistics ())
Що нового в версії 4.2.6 / 5.5.0:
- події: переконайтеся, що консольні функції існують
- fs: додайте параметр autoClose до fs.createWriteStream
- http: покращує очікувану обробку заголовків
- вузол: дозволити модулі попередньої завантаження з -i
- v8, src: виставити статистику про пробіли купи (v8.getHeapSpaceStatistics ())
Що нового у версії 4.2.2 / 5.2.0:
- Файли fs.readFile * (), fs.writeFile * () і fs.appendFile * () тепер також приймають дескриптор файлів як їх перший аргумент
- Виправлена помилка, в якій конвеєрні http-запити будуть припинені
- npm: оновлено до версії 3.3.6 від 2.14.7
- Спробуйте повторно використовувати ручку таймера для setTimeout (). unref ().
- Додано підтримку ALPN
- Параметри TLS тепер можуть передаватися в об'єкті для createSecurePair ()
- zlib: зараз декомпресія викидає на урізаний вхід
Що нового у версії 4.1.1:
- child_process: ChildProcess.prototype.send () і process.send () працюють асинхронно на всіх платформах, тому був введений необов'язковий параметр зворотного виклику, який буде викликати після того, як повідомлення було відправлено, тобто .send (повідомлення [, sendHandle ] [, зворотний виклик]).
- вузол: перейменуйте "io.js" в "Node.js".
- node-gyp: у цьому випуску додано оновлену версію вузла-гигабайта, яка працює з усіма версіями Node.js та io.js, що включає в себе ніч та збірки кандидатів на випуск. З io.js v3 та Node.js v4 далі завантажуватимуться тільки архіватори заголовків при створенні додатків, а не всього джерела.
- npm: оновлення до версії 2.14.2 з 2.13.3, містить оновлення безпеки, див. на сторінці https://github.com/npm/npm/releases/tag/v2.14.2.
- таймери: покращена продуктивність таймера після перенесення реалізації 0.12, а також незначні виправлення.
- util: Функції util.is * () застаріли, починаючи з попереджень про помилки в документації для цього випуску, користувачам рекомендується шукати більш надійні альтернативи в реєстрі npm.
- v8: оновлення до версії 4.5.103.30 від 4.4.63.30.
Що нового у версії 0.12.7:
- openssl: оновлення до версії 1.0.1p
- npm: оновлення до 2.11.3
- V8: патч JitCodeEvent із вишневого виділення з висхідного потоку
- win, msi: створювати папку npm в каталозі AppData li>
Що нового у версії 0.12.4:
- npm: оновлення до 2.10.1
- V8: відновити вилучення v8 Array.prototype.values ()
- перемогти: повернути підтримку xp / 2k3
Що нового у версії 0.12.2:
- openssl: оновлення до 1.0.1m (адресація декількох CVES)
Що нового у версії 0.12.0:
- Потоки 3:
- Впровадження потоків тепер працює так, як ви вважаєте, що це вже потрібно, без внесення змін до API. В основному це означає, що більше не застрягати в "старому режимі", є лише потоки, які течуть чи ні.
- Потоки зараз підтримують використання пробки та відключення механізмів, щоб запобігти промивання в системі, якщо програма буде виконувати багато запитів поспіль. Коли закінчується записуваний потік, виконується неявний випадок.
- HTTP:
- maxSockets більше не обмежуються 5. За замовчуванням тепер встановлено "Безмежність" з розробником, а операційна система отримала контроль над тим, скільки одночасних з'єднань, які програма може відкрити для певного хоста.
- Правильна підтримка KeepAlive означає, що сокети залишаться відкритими, доки вони не закінчаться у встановлений час, закриваються віддаленою стороною або процес виходить. Розробник більше не повинен переконатися, що запити були спрямовані на те, щоб відкрити гніздо, або використовувати альтернативний модуль для отримання цієї підтримки.
- Розробники також можуть тепер явним чином flushHeaders, щоб забезпечити час, щоб перший байт був низьким, і проксі з'єднання були відкриті
- Кластер:
- Тепер має два режими роботи, новий стандарт - це механізм розподілу круглих ланцюгів, де майстер приймає нові з'єднання та розподіляє їх на ваших працівників. Якщо ви хочете, ви все одно можете повернутися до старого методу, у якому ваші працівники несуть відповідальність за з'єднання.
- TLS:
- У нас є новий механізм TLSWrap під капотом, це усуває досить багато хмелю назад і вперед між JavaScript та нашими реалізаціями C ++.
- Додано API для асинхронних зворотних викликів SNI, сценаріїв OCSP та подій зберігання.
- Буфер:
- Ми використовуємо більш точний механізм розподілу пам'яті для буферів, що означає, що ви побачите менші накладні витрати та вплив, тримаючи його на невеликі шматочки буферів. Це зменшує тиск на пам'ять в системі, що означає, що швидкість роботи GC відбувається швидше, що означає, що Node.js менше на процесорі, і, таким чином, зменшує затримку для ваших програм.
- child_process:
- spawnSync / execSync були додані для полегшення синхронних дочірніх процесів, попереджаючи, що процес вашого вузла не призведе до прогресу, очікуючи, поки дитина вийде,
- Крипто:
- Додано API для завантаження спеціальних движків для використання зі складеної в OpenSSL.
- Більше API підтримує подання пропускних фраз.
- Додано API для шифрування / дешифрування публічної / приватної ключів RSA.
- VM:
- Модуль тепер заснований на модулі Contextify, який ділиться значеннями з пісочниці, щоб уникнути відсутності змін у виконанні, що з'являються у батьківському контексті.
- Початкова підтримка API інтернаціоналізації ECMAScript 1.0 (ECMA-402)
- За замовчуванням файли Node.js v0.12.0 завантажені з підтримкою ECMA-402, але тільки для англійської мови. Іншими словами, API ECMA-402 працює так, як ви очікуєте, але включені лише дані для англійської мови.
Що нового у версії 0.10.36:
- openssl: update to 1.0.1l
- v8: виправте відладчик та регресію строгого режиму
- v8: не зайнятий цикл в потоці profileer
Що нового у версії 0.10.34:
- uv: update to v0.10.30
- zlib: оновлення до v1.2.8
- child_process: перевірити execFile args - це масив
- child_process: check fork args - це масив
- крипто: оновлення кореневих сертифікатів
- домени: виправте проблеми з перериванням на невиконання
- таймери: уникнути лінійного сканування в _unrefActive
- таймери: виправте unref () витік пам'яті
- v8: додайте api для скасування невичерпаного винятку
- відладчик: виправте при використанні "use strict"
Що нового у версії 0.10.33:
- openssl: оновлення до 1.0.1j
- uv: оновлення до v0.10.29
- child_process: належним чином підтримувати необов'язкові аргументи
- крипто: за замовчуванням вимкніть автоналаштування для SSLv2 / 3
Що нового у версії 0.10.32:
- npm: оновлення до версії 1.4.28
- v8: виправлення аварії, введеного попереднім версією
- налаштовувати: додавати --openssl-no-asm прапор
- крипто: використовуйте домени для будь-якого методу зворотного виклику
- http: не надсилайте 0rnrn в відгуках TE HEAD
- Строка запиту: виправте переадресацію в режимі unescape
- url: додавання підтримки для роздільників RFC 3490
Що нового у версії 0.10.31:
- v8: backport CVE-2013-6668.
- openssl: оновлення до v1.0.1i
- npm: оновлення до v1.4.23.
- кластер: відключення не повинно бути синхронним.
- fs: виправте fs.readFileSync fd при виявленні RangeError.
- потік: виправте значення помилкового значення objectMode Readable.wrap.
- таймери: виправлення таймерів із затримкою нецільної затримки.
Що нового в версії 0.10.30:
- uv: оновлення до v0.11.14
- v8: оновлення 3.21.18.3
- Затвердження: вкажіть, чи створено повідомлення про виключення
- буфер: додати buf.toArrayBuffer () API
- кластер: виправте передчасну подію "відключення"
- крипто: додавання підтримки SPKAC
- відладчик: правильно підрахуйте пробіли для рядків рядків
- відладчик: зробити зайняті цикли SIGUSR1-переривальні
- debugger: повторити останню команду
- відладчик: показати поточну лінію
- dgram: send () може приймати рядки
- DNS: перейменуйте домен на ім'я хосту
- DNS: встановіть властивість імені хосту в об'єкті помилки
- dtrace, mdb_v8: підтримувати більше рядків, типів кадрів
- http: add statusMessage
- http: виявляти підтримувані методи
Що нового у версії 0.10.29:
- child_process: не встановлюйте аргументи перед тим, як кидати
- child_process: spawn () не скидає TypeError
- константи: експортувати O_NONBLOCK
- крипто: поліпшення використання пам'яті
- fs: закрити файл, якщо fstat () не працює у файлі readFile ()
- lib: назви методів прототипу EventEmitter
- tls: виправити проблему продуктивності
Що нового в версії 0.10.27:
- child_process: виправити тупик при відправленні ручок
- child_process: виправте повторну передачу вручну
- крипто: не малі імена шифру / хеш імен
- dtrace: помилка лінкеру обходу в FreeBSD
- http: не виділяти непередаваний сокет EOF
- http: викликати createConnection, коли немає агента
- потік: видалити непотрібну чеку
- таймер: не перепланувати відро таймеру в домені
- url: обробляти так само, як /
- util: форматування як помилка, якщо випадок помилки
Що нового в версії 0.10.25:
- uv: оновлення до v0.10.23
- npm: оновлення до v1.3.24
- v8: виправлення переліку для об'єктів з великою кількістю властивостей
- child_process: виправити spawn () необов'язкові аргументи
- кластер: повідомити працівникам про помилки
- домени: exit () впливає тільки на активні домени
- src: обробник OnFatalError повинен скасувати ()
- потік: записи може повернути помилку, але забудьте виділити сток
Що нового у версії 0.10.24:
- uv: оновлення до v0.10.21
- npm: оновлення до версії 1.3.21
- v8: виправлення зворотного зв'язку для CVE-2013- {6639 | 6640}
- build: заголовок бібліотеки unix і dep бібліотек
- кластер, v8: виправити --logfile =% p.log
- модуль: основна частина пакунка кешу
Що нового у версії 0.10.22:
- npm: оновлення до версії 1.3.14
- uv: оновлення до v0.10.19
- child_process: не заявляти про застарілі події дескриптора файлів
- Дарвін: Виправте "Не реагувати" в моніторі активності Mavericks
- debugger: виправлена помилка в sb () з неназваним скриптом
- repl: не вставляйте копії в завершення
- src: Виправлено витік пам'яті на закриті ручки
Що нового у версії 0.10.19:
- uv: оновлення до v0.10.17
- npm: оновлення до версії 1.3.11
- readline: обробка введення, починаючи з символів управління
- configure: додайте параметр mips-float-abi (м'який, жорсткий)
- потік: перетворення objectsMode дозволяють помилкові значення
- tls: запобігання повторюваним значенням, отриманим з прочитаного
Що нового у версії 10.10.17:
- uv: оновлення v0.10.14
- http_parser: Не приймайте методи PUN / GEM як PUT / GET
- tls: виправити твердження, коли ssl знищується при читанні
- потік: вилучіть слухачів на "помилку"
- dgram: виправити твердження на аргументи поганого send ()
- readline: пауза stdin, перш ніж вимикати режим raw raw
Що нового в версії 10.10.16:
- npm: оновлення до версії 1.3.8
- крипто: виправте insert () на помилковому шістнадцятковому вході
- крипто: виправлення витоку пам'яті в шляху помилки randomBytes ()
- події: виправити витік пам'яті, не вимовляти назви подій
- http: правильно обробляйте кодування шестикутників / base64
- http: покращувати ефективність chunked res.write (buf)
- потік: Виправте помилку подвійної труби
Що нового у версії 0.11.2:
- Оновити до 0.11.2
- Оновити до 3.19.0
- Оновити до 1.2.21
- build: Makefile має поважати configure --prefix
- кластер: використовуйте балансування навантаження за круглим столом
- відладчик, кластер: кожен працівник має новий порт для налагодження
- відладчик: `restart` з індивідуальним налагоджувальним портом
- відладчик: точок зупинки в сценаріях ще не завантажені
- event: EventEmitter # setMaxListeners () повертає це
- події: додайте EventEmitter.defaultMaxListeners
Що нового у версії 0.10.10:
- uv: оновлення до 0.10.10
- npm: оновити до 1.2.25
- url: правильно проаналізувати деякі незвичайно сформовані URL-адреси
- поток: unshift ('') - це нос
Що нового у версії 0.10.9:
- npm: оновити до 1.2.24
- uv: оновлення до v0.10.9
- answer: виправте помилку перевірки помилки JSON.parse
- tls: правильний .destroySoon
- tls: викликати write cb тільки після зворотного читання кінця
- tls: ігнорувати помилку syscall .shutdown ()
Що нового у версії 0.10.7:
- npm: оновити до 1.2.21
- крипто: не ігноруйте перевірку аргументу кодування
- буфер, крипто: виправлення регресії кодування за умовчанням
- таймери: виправити setInterval () стверджувати
Що нового у версії 0.10.6:
- потік: створіть objectMode для підтримки Readable.wrap, порожні потоки
- child_process: виправлення доставки рук
- крипто: виправлення регресії ефективності
- src: DRY рядок кодування / декодування
Що нового у версії 0.10.5:
- build: додана підтримка Visual Studio 2012.
- http: не намагайтеся знищити неіснуючі розеток
- крипто: LazyTransform на властивості, а не на методи.
- Запевнити: додайте інформацію в повідомлення err.message, а не ім'я помилки.
- dgram: виправити зв'язок адреси ().
- handle_wrap: виправте нульовий покажчик з написом
- os: виправте неприпустимий переповнення буфера в os.type ().
- потік: Виправте незмінні () умови перегонів
Що нового у версії 0.10.4:
- http: Підтримка запису (дані, "hex").
- крипто: д-жа таємниця повинна бути залишена вгору.
- Процес: виділіть NODE_MODULE_VERSION у process.versions.
- крипто: виправте виклик конструктора у крипто-потоках.
- net: обліковий запис для кодування в .byteength.
- net: виправте ітерацію буфера в байтах.
- крипто: нуль не є помилкою, якщо писати 0 байт.
Що нового у версії 0.10.2:
- tls: видаліть перевірку шкідливих ненужних обмежень
- крипто: зробіть getCiphers () поверненням не шифрів SSL.
- крипто: перевірте аргумент розміру randomBytes ().
- таймери: не вираховуйте Timeout._when property.
- таймери: виправте помилку помилки на один мінус
- таймери: обробка надпису int32 через реєстрацію ().
- потік: виправте стійкість у перетворенні в дуже специфічних умовах.
- потік: обробка пізніше "читабельних" слухачів подій.
- потік: фіксуйте ранній кінець в Writables при нульовій довжині.
- домен: виправте зворотний виклик домену від MakeCallback.
- child_process: двічі не випускайте ту саму ручку
Коментар не знайдено