Forwarded from ✙rozho)))k✙🇺🇦
Як «дрібні» донати допомагають бійцям
Серед деяких людей існує думка що донати на невеликі волонтерські ініціативи не дають великого внеску в перемогу. Мовляв, нам західні партнери дають зброї на сотні мільйонів доларів, ось це має значення, а що там ваш збір корч? І взагалі, держава має платити, чого це громадяни повинні забезпечувати армію?
Переконаний, що це неправильно. Дійсно, хімарси, 777, бойові машини та безпілотники які нам надають в рамках військової підтримки, значать дуже багато. Але не менше значить комфорт конкретного бійця у конкретному окопі.
Кожна наша з вами витрачена гривня що йде на автівки, на амуніцію, на їжу, на спальники, на взуття, на грілки, на павербанки та екофлоу, на дрони, кожна наша гривня працює на фронті.
Так, без 777 не буде точної роботи по позиціях кацапів, але коли цією 777 керують бійці що добре та смачно поїли, виспалися в теплі, вдягнені у комфортне та тепле взуття з одягом, а роботу коригують за допомогою мавіка — результат буде кращий ніж без цього всього.
Кілька тижнів тому Капелан покликав нас з дружиною на тренінг по виживанню в умовах війни. Тренінг читав боєць, військовий. Він був досить довгий, але одна з речей, на яких робився наголос, це те що потрібно постійно дбати про комфорт та зручність. Навіть найменші покращення у побуті можуть радикально вплинути на боєздатність людини.
Тому наші бійці мають мати найкращі сухпаї, найтепліші спальники, найзручніше взуття, тепловізори та нічники, легкі магазини, генератори, зарядні станції, та автівки, щоб це все возити на позиції.
Тому аж поки моя робота дозволить поліпшити повсякденне життя та комфорт хоч одного бійця, я буду працювати для цього.
Так, війна це чорна діра де щезають людські життя та матеріальні цінності. Так, буває таке що автівку купили, а через два тижні її вже посікло вщент, дрона збили, а в располагу бійців попали й погоріла вся амуніція. Але це війна. Якщо не ми їх, то вони нас.
Тому я вибираю щоденну підтримку армії донатами та закликаю вас до того ж.
На світлині боєць отримує тактичні навушники, на які ми з вами збирали через @Donate1024Bot.
#війна
permalink | @full_of_hatred
👇Щоденні донати💰на ЗСУ🪖
🫡@Donate1024Bot
Серед деяких людей існує думка що донати на невеликі волонтерські ініціативи не дають великого внеску в перемогу. Мовляв, нам західні партнери дають зброї на сотні мільйонів доларів, ось це має значення, а що там ваш збір корч? І взагалі, держава має платити, чого це громадяни повинні забезпечувати армію?
Переконаний, що це неправильно. Дійсно, хімарси, 777, бойові машини та безпілотники які нам надають в рамках військової підтримки, значать дуже багато. Але не менше значить комфорт конкретного бійця у конкретному окопі.
Кожна наша з вами витрачена гривня що йде на автівки, на амуніцію, на їжу, на спальники, на взуття, на грілки, на павербанки та екофлоу, на дрони, кожна наша гривня працює на фронті.
Так, без 777 не буде точної роботи по позиціях кацапів, але коли цією 777 керують бійці що добре та смачно поїли, виспалися в теплі, вдягнені у комфортне та тепле взуття з одягом, а роботу коригують за допомогою мавіка — результат буде кращий ніж без цього всього.
Кілька тижнів тому Капелан покликав нас з дружиною на тренінг по виживанню в умовах війни. Тренінг читав боєць, військовий. Він був досить довгий, але одна з речей, на яких робився наголос, це те що потрібно постійно дбати про комфорт та зручність. Навіть найменші покращення у побуті можуть радикально вплинути на боєздатність людини.
Тому наші бійці мають мати найкращі сухпаї, найтепліші спальники, найзручніше взуття, тепловізори та нічники, легкі магазини, генератори, зарядні станції, та автівки, щоб це все возити на позиції.
Тому аж поки моя робота дозволить поліпшити повсякденне життя та комфорт хоч одного бійця, я буду працювати для цього.
Так, війна це чорна діра де щезають людські життя та матеріальні цінності. Так, буває таке що автівку купили, а через два тижні її вже посікло вщент, дрона збили, а в располагу бійців попали й погоріла вся амуніція. Але це війна. Якщо не ми їх, то вони нас.
Тому я вибираю щоденну підтримку армії донатами та закликаю вас до того ж.
На світлині боєць отримує тактичні навушники, на які ми з вами збирали через @Donate1024Bot.
#війна
permalink | @full_of_hatred
👇Щоденні донати💰на ЗСУ🪖
🫡@Donate1024Bot
👍55🕊3❤2
Forwarded from GDG Cloud Kyiv (Nikita)
Цієї суботи о 15:00 проведемо воркшоп. Виберіть тему, яка вам цікавіша.
Final Results
35%
Firebase
54%
Terraform
28%
Cloud Run
🔥9
Forwarded from DOU
Обговоримо, яким буде ІТ-ринок України у 2023 році? 😉📢
📅 19 січня, в четвер, о 19:00 в телеграм-каналі @doucommunity проведемо войсчат, присвячений тенденціям та прогнозам на цей рік.
Торкнемося таких тем:
📎 Ринок працедавця. Що це означає для кандидатів та тих, хто планує пошуки роботи в ІТ?
📎 Чи дійсно українські ІТ-спеціалісти в «чорному списку» західних замовників?
📎 Military Tech. Які перспективи?
📎 Релокація ІТ-бізнесу та її наслідки.
📎 Інші теми, адже кожен слухач зможе поставити своє питання.
Відмічайтесь в івенті: https://dou.ua/goto/u0at
📅 19 січня, в четвер, о 19:00 в телеграм-каналі @doucommunity проведемо войсчат, присвячений тенденціям та прогнозам на цей рік.
Торкнемося таких тем:
📎 Ринок працедавця. Що це означає для кандидатів та тих, хто планує пошуки роботи в ІТ?
📎 Чи дійсно українські ІТ-спеціалісти в «чорному списку» західних замовників?
📎 Military Tech. Які перспективи?
📎 Релокація ІТ-бізнесу та її наслідки.
📎 Інші теми, адже кожен слухач зможе поставити своє питання.
Відмічайтесь в івенті: https://dou.ua/goto/u0at
🔥10
Що перевірити при розгортанні API?
#list #devops #cloud
1️⃣ Чи є Load Balancer?
Без нього масштабування не можливо.
2️⃣ Чи включений редирект з http на https?
Ваше API має працювати тільки по https.
3️⃣ Чи включений HTTP/3?
74% користувачів мають браузер з підтримкою HTTP/3.
4️⃣ Чи налаштовано стискання (compression)? Які методи підтримуються?
Load Balancer має цю відповідальність, а не Node.js
5️⃣ Чи має публічне API кешування?
Поділ публічного та приватного API (яке вимагає авторизації) відповідальність розробників, а ось налаштувати Load Balancer-а – DevOps інженер.
#list #devops #cloud
1️⃣ Чи є Load Balancer?
Без нього масштабування не можливо.
2️⃣ Чи включений редирект з http на https?
Ваше API має працювати тільки по https.
3️⃣ Чи включений HTTP/3?
74% користувачів мають браузер з підтримкою HTTP/3.
4️⃣ Чи налаштовано стискання (compression)? Які методи підтримуються?
Load Balancer має цю відповідальність, а не Node.js
5️⃣ Чи має публічне API кешування?
Поділ публічного та приватного API (яке вимагає авторизації) відповідальність розробників, а ось налаштувати Load Balancer-а – DevOps інженер.
👍33❤4🔥2
Як правильно передавати стан між middleware?
Найчастіше Node.js API створюється за допомогою мідлеварів. У їхньому ланцюжку необхідно передавати стан. Наприклад, в мідлеварі Auth ми провалідували токен і визначили користувача, до якого нам необхідний доступ в наступних мідлеварах. Навіть синьйор розробники додають стан прямо в корінь об'єкта response або request. Як результат, необхідно розширювати типізацію самої бібліотеки. Але автори бібліотек вже передбачили, куди ви можете додати ваш стан. Ось список:
👉 express – res.locals. Якщо ви звикли працювати саме з req, то нагадую що можна використовувати req.res.locals.
👉 fastify – fastify.decorateRequest. Чудова ідея. Перш ніж покласти щось в об'єкт – розшир його.
👉 koa – ctx.state. Найінтуїтивніше зрозумілий підхід. На жаль, бібліотека не розвивається та втратила свою популярність.
👉nest – залежно від адаптера ми використовуємо express чи fastify, тому дотримуємося їх рекомендацій. У контролерах краще використовувати
Найчастіше Node.js API створюється за допомогою мідлеварів. У їхньому ланцюжку необхідно передавати стан. Наприклад, в мідлеварі Auth ми провалідували токен і визначили користувача, до якого нам необхідний доступ в наступних мідлеварах. Навіть синьйор розробники додають стан прямо в корінь об'єкта response або request. Як результат, необхідно розширювати типізацію самої бібліотеки. Але автори бібліотек вже передбачили, куди ви можете додати ваш стан. Ось список:
👉 express – res.locals. Якщо ви звикли працювати саме з req, то нагадую що можна використовувати req.res.locals.
👉 fastify – fastify.decorateRequest. Чудова ідея. Перш ніж покласти щось в об'єкт – розшир його.
👉 koa – ctx.state. Найінтуїтивніше зрозумілий підхід. На жаль, бібліотека не розвивається та втратила свою популярність.
👉nest – залежно від адаптера ми використовуємо express чи fastify, тому дотримуємося їх рекомендацій. У контролерах краще використовувати
createParamDecorator для звернення до стану.👍32❤🔥2
Наприкінці листопада вийшов WebStorm 2022.3. У ньому додали новий UI. Рекомендую його увімкнути, якщо ви це ще не зробили.
👍19👎12💩2
Як завдання не варто вирішувати за допомогою Node.js?
#nodejs_api #list
👉 CPU Intensive Tasks, тобто завдання, що навантажують процесор. Типова відповідь на інтерв'ю включає лише цей варіант. Якщо таке завдання необхідно вирішити, то тут варто використовувати передкалькуляцію з кешуванням або Worker threads/Child process.
👉 Aggregation, окремий випадок CPU Intensive завдання, у якому требо разрахувати якісь метрики. Наприклад, мінімальна/максимальна ціна за торговий день. Тут краще використовувати функції DB.
👉 Compression. Ми перекладаємо це завдання на інфраструктуру, щоб зайвий раз не навантажувати процесор.
👉 Rate Limiting. Ще одне типове завдання для інфраструктури, інакше легко заблокувати масштабування.
👉 Serve Static. За це має відповідати CDN, у якому Node.js може бути лише джерелом статики.
👉 File Uploads. Не варто використовувати Node.js як проксі для завантаження файлу в S3. Для цього є signed url.
#nodejs_api #list
👉 CPU Intensive Tasks, тобто завдання, що навантажують процесор. Типова відповідь на інтерв'ю включає лише цей варіант. Якщо таке завдання необхідно вирішити, то тут варто використовувати передкалькуляцію з кешуванням або Worker threads/Child process.
👉 Aggregation, окремий випадок CPU Intensive завдання, у якому требо разрахувати якісь метрики. Наприклад, мінімальна/максимальна ціна за торговий день. Тут краще використовувати функції DB.
👉 Compression. Ми перекладаємо це завдання на інфраструктуру, щоб зайвий раз не навантажувати процесор.
👉 Rate Limiting. Ще одне типове завдання для інфраструктури, інакше легко заблокувати масштабування.
👉 Serve Static. За це має відповідати CDN, у якому Node.js може бути лише джерелом статики.
👉 File Uploads. Не варто використовувати Node.js як проксі для завантаження файлу в S3. Для цього є signed url.
👍37🔥3
Forwarded from DOU
Публікуємо запис войсчату "Українське ІТ у 2023-му" 📢
Обговорили тенденції та прогнози — яким буде ІТ-ринок України у 2023 році.
🗣 Спікери:
💬 Нікіта Галкін, System Architect, Node.js Tech Speaker, незалежний консультант
💬 Олеся Коронівська, топрекрутерка з VP Team
💬 Ігор Костів, молодший віцепрезидент та керівник Львівської локації GlobalLogic
Запис і таймкоди за лінком 👉 https://dou.ua/goto/duJ5
Обговорили тенденції та прогнози — яким буде ІТ-ринок України у 2023 році.
🗣 Спікери:
💬 Нікіта Галкін, System Architect, Node.js Tech Speaker, незалежний консультант
💬 Олеся Коронівська, топрекрутерка з VP Team
💬 Ігор Костів, молодший віцепрезидент та керівник Львівської локації GlobalLogic
Запис і таймкоди за лінком 👉 https://dou.ua/goto/duJ5
👍13
Яка різниця між операційними та помилками програміста?
Операційні помилки (operational errors) – це очікувані помилки, які можуть виникнути під час виконання програми. Це не обов’язково помилки, а зовнішні обставини, які можуть порушити процес виконання програми. Їх необхідно обробляти. Ось деякі приклади операційних помилок:
– сервер отримав недійсні дані, наприклад недійсну електронну адресу
– мікросервіс не відповів
– на кредитній картці недостатньо грошей
Помилки програміста (programmer errors) — це помилки в логіці або синтаксисі програми, які можна виправити, лише змінивши вихідний код. Ці типи помилок не можна обробляти. Приклади:
– класика "Cannot read properties of undefined"
– SyntaxError
– помилка в SQL
⚠️Найважливіше⚠️ не оброблена операційна помилка перетворюється на помилку програміста.
Наведу ще коротке порівняння для Node.js runtime.
Операційні помилки:
– Рівень логування: warn
– Error stack trace: не обов'язковий
– http коди відповіді: 4xx, 502, 504
– error tracing/collecting: не потрібно. Використовується агрегація логів
Помилки програміста:
– Рівень логування: error/fatal
– Error stack trace: обов'язковий
– http коди відповіді: 500
– error tracing/collecting: за допомогою sentry/stackdriver/etc
Операційні помилки (operational errors) – це очікувані помилки, які можуть виникнути під час виконання програми. Це не обов’язково помилки, а зовнішні обставини, які можуть порушити процес виконання програми. Їх необхідно обробляти. Ось деякі приклади операційних помилок:
– сервер отримав недійсні дані, наприклад недійсну електронну адресу
– мікросервіс не відповів
– на кредитній картці недостатньо грошей
Помилки програміста (programmer errors) — це помилки в логіці або синтаксисі програми, які можна виправити, лише змінивши вихідний код. Ці типи помилок не можна обробляти. Приклади:
– класика "Cannot read properties of undefined"
– SyntaxError
– помилка в SQL
⚠️Найважливіше⚠️ не оброблена операційна помилка перетворюється на помилку програміста.
Наведу ще коротке порівняння для Node.js runtime.
Операційні помилки:
– Рівень логування: warn
– Error stack trace: не обов'язковий
– http коди відповіді: 4xx, 502, 504
– error tracing/collecting: не потрібно. Використовується агрегація логів
Помилки програміста:
– Рівень логування: error/fatal
– Error stack trace: обов'язковий
– http коди відповіді: 500
– error tracing/collecting: за допомогою sentry/stackdriver/etc
👍40
Як правильно реалізується 12-й фактор у NestJS?
#nestjs #devops
Нагадаю, що XII фактор це "Задачі адміністрування". Він визначає:
1️⃣ Запуск міграції бази даних
2️⃣ Запуск консолі (REPL) для виконання довільного коду або перевірки моделі застосунку на діючій базі даних
3️⃣ Запуск разових скриптів, збережених в репозиторії застосунку
⚠️ Стратегія розгортання повинна визначати процес застосування міграцій.
NestJS екосистема пропонує нам:
1️⃣ Migrations, щоб синхронізувати схему бази даних та код.
2️⃣ NestJS REPL, для одноразових адміністративних завдань.
3️⃣ Nest Commander/nestjs-command, для регулярних адміністративних завдань.
Конкретні приклади за мій минулий тиждень:
1️⃣ Додав нове поле у модель та згенерував міграцію за допомогою migration:generate.
2️⃣ За допомогою REPL та Stripe Dashboard зробив refund, бо бізнес поки що не готовий це автоматизувати.
3️⃣ Використов CLI, щоб оновити SendGrid шаблони відповідно до змін коду, як про це писав тут
Власне ідея рецепту, нагадати, що у нас є REPL та кілька зручних бібліотек, щоб зручно та швидко писати CLI. Тож користуйтеся ними!
#nestjs #devops
Нагадаю, що XII фактор це "Задачі адміністрування". Він визначає:
1️⃣ Запуск міграції бази даних
2️⃣ Запуск консолі (REPL) для виконання довільного коду або перевірки моделі застосунку на діючій базі даних
3️⃣ Запуск разових скриптів, збережених в репозиторії застосунку
⚠️ Стратегія розгортання повинна визначати процес застосування міграцій.
NestJS екосистема пропонує нам:
1️⃣ Migrations, щоб синхронізувати схему бази даних та код.
2️⃣ NestJS REPL, для одноразових адміністративних завдань.
3️⃣ Nest Commander/nestjs-command, для регулярних адміністративних завдань.
Конкретні приклади за мій минулий тиждень:
1️⃣ Додав нове поле у модель та згенерував міграцію за допомогою migration:generate.
2️⃣ За допомогою REPL та Stripe Dashboard зробив refund, бо бізнес поки що не готовий це автоматизувати.
3️⃣ Використов CLI, щоб оновити SendGrid шаблони відповідно до змін коду, як про це писав тут
Власне ідея рецепту, нагадати, що у нас є REPL та кілька зручних бібліотек, щоб зручно та швидко писати CLI. Тож користуйтеся ними!
👍27
Сьогодні можуть фіналізувати, що ж входитиме до Interop 2023. Ця ініціатива була започаткована в 2019 році представниками трьох основних браузерів. Її мета — усунути невідповідності між браузерами. Interop є частиною web-platform-tests.org, де автоматично перевіряються реалізації API браузерів. Очевидно, що фокус у 2023 матиме сильний вплив на фронтенд-розробників. На Node.js розробку впливатимуть лише прийняті ініціативи з APIs & JavaScript survey. Тож чекаємо фіналізованого Intertop 2023!
Посилання:
👉 підсумок Intertop 2022
👉 Intertop 2022 Readme.md
👉 Introduction to the web-platform-tests
👉 wpt.fyi
👉 html-тега <dialog>. Не плутайте його з однойменним компонентом у вашому дизайні системи (приклад @mui/material/Dialog).
Посилання:
👉 підсумок Intertop 2022
👉 Intertop 2022 Readme.md
👉 Introduction to the web-platform-tests
👉 wpt.fyi
👉 html-тега <dialog>. Не плутайте його з однойменним компонентом у вашому дизайні системи (приклад @mui/material/Dialog).
👍11
Як організувати "multi time zone" функціонал?
#architecture
Одна зі стандартних вимог для глобальних веб-проектів – це підтримка часових поясів.
1️⃣ Для полегшення архітектури краще використовувати такий поділ відповідальності:
👉 Веб сервер відповідає за обробку та передачу даних в UTC.
👉 Веб клієнт відповідає за відображення date-time у необхідній користувачеві таймзоні та календарі. Нагадаю, що існують країни, які використовують не Григоріанський календар.
⚠️ цей підхід не прибирає потреби у сервера працювати з часовими поясами.
2️⃣ Визначається точність виміру часу. Стандартно це мілісекунди.
3️⃣ Визначається dto serialization (формат передачі у API) для таких сутностей
👉 момент часу. Unix Timestamp (
👉 часовий пояс. Ім'я (
👉 конкретна дата. ISO 8601(
👉 Тривалість. ISO 8601 format (
👉 Інтервал часу. Як два моменти часу (початок та кінець), або як початок та тривалість, або як один рядок (
Всі прийняті рішення є частиною специфікації вашого API
4️⃣ Визначається на рівні коду або на рівні бази даних відбуватиметься маніпуляція з datetime та timezone. Приклад: клієнт запитує транзакції користувача за
#architecture
Одна зі стандартних вимог для глобальних веб-проектів – це підтримка часових поясів.
1️⃣ Для полегшення архітектури краще використовувати такий поділ відповідальності:
👉 Веб сервер відповідає за обробку та передачу даних в UTC.
👉 Веб клієнт відповідає за відображення date-time у необхідній користувачеві таймзоні та календарі. Нагадаю, що існують країни, які використовують не Григоріанський календар.
⚠️ цей підхід не прибирає потреби у сервера працювати з часовими поясами.
2️⃣ Визначається точність виміру часу. Стандартно це мілісекунди.
3️⃣ Визначається dto serialization (формат передачі у API) для таких сутностей
👉 момент часу. Unix Timestamp (
1675096836070) або рядок у форматі ISO 8601 (2023-01-30T16:37:12.661Z)👉 часовий пояс. Ім'я (
Europe/Kyiv)👉 конкретна дата. ISO 8601(
2023-01-30) або момент часу коли почалась ця дата або як інтервал часу.👉 Тривалість. ISO 8601 format (
12H30M5S) або кількість мілісекунд.👉 Інтервал часу. Як два моменти часу (початок та кінець), або як початок та тривалість, або як один рядок (
2023-01-01T13:00:00Z/2023-01-01T15:30:00Z)Всі прийняті рішення є частиною специфікації вашого API
4️⃣ Визначається на рівні коду або на рівні бази даних відбуватиметься маніпуляція з datetime та timezone. Приклад: клієнт запитує транзакції користувача за
2023-01-30 у таймзоні Europe/Kyiv. Особисто я перекладаю відповідальність фільтації на базу даних.👍30🔥12
Forwarded from GDG Cloud Kyiv (Nikita)
Триває реєстрація на другий потік програми “Розвивайте карʼєру з Google Cloud: ML та дані”! Старт вже завтра, 1 лютого 2023 року.
Цього потоку на Вас чекає:
👉 Можливість отримати ваучери на безкоштовну сертифікацію Google Cloud (за умови 12 і більше бейджів навичок, зароблених протягом першого і другого потоку).
👉 Ще більше приємних брендованих нагород Google.
👉 Карʼєрні консультації та зустрічі з хмарними експертами.
👉 Та найактуальніші навички, що обовʼязково стануть у пригоді у професійному житті.
Деталі щодо програми за посиланням
Цього потоку на Вас чекає:
👉 Можливість отримати ваучери на безкоштовну сертифікацію Google Cloud (за умови 12 і більше бейджів навичок, зароблених протягом першого і другого потоку).
👉 Ще більше приємних брендованих нагород Google.
👉 Карʼєрні консультації та зустрічі з хмарними експертами.
👉 Та найактуальніші навички, що обовʼязково стануть у пригоді у професійному житті.
Деталі щодо програми за посиланням
❤5👍2
The Top 100+ Developer Tools 2022
#news
Stackshare підбив підсумки 2022. Рекомендую подивитися топ-50 нових інструментів.
⚠️disclaimer⚠️ stackshare використовує свою категоризацію, а це як відомо не тривіальне завдання. Тому не дивуйтесь побачити jQuery у FE Framework, або Node.js у Language категорії.
#news
Stackshare підбив підсумки 2022. Рекомендую подивитися топ-50 нових інструментів.
⚠️disclaimer⚠️ stackshare використовує свою категоризацію, а це як відомо не тривіальне завдання. Тому не дивуйтесь побачити jQuery у FE Framework, або Node.js у Language категорії.
StackShare
🏆 The Top 100 Developer Tools of 2022 | StackShare
👍3
Де взяти питання для співбесіди FE розробника?
Один із напрямків мого консалтингу – це проведення співбесід. Списки питань я регулярно публікую, як рецепти. Наприклад:
"Які питання поставити, щоб перевірити розуміння Promise/async/await?"
Хочу пропіарити сервіс, який я використовую для співбесід фронтенд розробників. Це bigfrontend.dev. Їхній девіз "like LeetCode for Front-End". Він безкоштовний і містить як питання, так й coding tasks.
Ринок змінюється, тому навіть якщо ви не змінюєте проект, я рекомендую замість прокрастинації в соціальних мережах вирішувати завдання в цьому сервісі. Це інвестиція у вас самих.
🔗 BFF.dev
Один із напрямків мого консалтингу – це проведення співбесід. Списки питань я регулярно публікую, як рецепти. Наприклад:
"Які питання поставити, щоб перевірити розуміння Promise/async/await?"
Хочу пропіарити сервіс, який я використовую для співбесід фронтенд розробників. Це bigfrontend.dev. Їхній девіз "like LeetCode for Front-End". Він безкоштовний і містить як питання, так й coding tasks.
Ринок змінюється, тому навіть якщо ви не змінюєте проект, я рекомендую замість прокрастинації в соціальних мережах вирішувати завдання в цьому сервісі. Це інвестиція у вас самих.
🔗 BFF.dev
👍42🔥1
Цього тижня вийшов мажорний #release Node.js драйвера для MongoDB v5.
⚠️не плутайте з версією самої бази даних⚠️
Основні зміни:
👉 Прибрали підтримку callbacks
👉 прибрали підтримку Custom Promise
👉 bson тепер підтримує BigInt з коробки
👉 автоматичне закриття курсора після закінчення ітерування, тобто. після
🔗 Release notes
🔗 Migration Guide
⚠️не плутайте з версією самої бази даних⚠️
Основні зміни:
👉 Прибрали підтримку callbacks
👉 прибрали підтримку Custom Promise
👉 bson тепер підтримує BigInt з коробки
👉 автоматичне закриття курсора після закінчення ітерування, тобто. після
for await ... of 🔗 Release notes
🔗 Migration Guide
👍22
Релізи, які вийшли минулого тижня
#release
👉 Мінорний реліз Node.js 18.14. Його основна мета оновити npm з 8 до 9 версії. Змін у роботі із залежностями немає. Тому можна спокійно оновлюватись. Детальніше у changelog
👉 Мінорний реліз NestJS 9.3. Каміль додав graph inspector для аналізу DI. Поки що у preview mode, тому інформації немає у документації. Планові оновлення залежностей, виправлення помилок у changelog
#release
👉 Мінорний реліз Node.js 18.14. Його основна мета оновити npm з 8 до 9 версії. Змін у роботі із залежностями немає. Тому можна спокійно оновлюватись. Детальніше у changelog
👉 Мінорний реліз NestJS 9.3. Каміль додав graph inspector для аналізу DI. Поки що у preview mode, тому інформації немає у документації. Планові оновлення залежностей, виправлення помилок у changelog
👍27
Йде активна бета TypeScript@5.0. Будь ласка, не називайте це мажорною версією. Це просто ще один реліз. Справа в тому що, TypeScript ніколи не стверджував, що дотримується семантичного керування версіями.
🔗 п'ять років тому
🔗 п'ять років тому
👍17
Вчора вийшли патч версії у 19.x, 18.x, 16.x, 14.x Node.js. Виправлено 5 вразливостей безпеки у таких API:
👉 Permission polices
👉 Fetch API
👉 Providing ICU data at runtime
👉 OpenSSL error handling issues in nodejs crypto library
🔗 Детальніше у блозі
Приємно, коли навіть такі маловикористовувані/експериментальні фічі одержують виправлення безпеки!
На завершення огляду нагадаю, що правильний процес розробки передбачає простий та швидкий спосіб оновлення версії за допомогою nvm та Docker.
👉 Permission polices
👉 Fetch API
👉 Providing ICU data at runtime
👉 OpenSSL error handling issues in nodejs crypto library
🔗 Детальніше у блозі
Приємно, коли навіть такі маловикористовувані/експериментальні фічі одержують виправлення безпеки!
На завершення огляду нагадаю, що правильний процес розробки передбачає простий та швидкий спосіб оновлення версії за допомогою nvm та Docker.
👍17