Перейти до основного змісту

Рік 2022 для pnpm

· 3 хв читання

Це кінець року. Справді важкий рік. Як ви, мабуть, знаєте, я живу в Україні, тому через війну росії проти нас мені було важче вести цей проєкт, ніж у попередні роки. Тим не менш, це був хороший рік для pnpm. У нас з’явилося багато нових користувачів, учасників, і ми реалізували багато чудових функцій.

(наведена вище ілюстрація була створена Midjourney. Тигр символізує рік тигра)

Використання

Статистика завантажень

Моя мета цього року полягала в тому, щоб побити Lerna за кількістю завантажень. Ми змогли досягти цієї мети в серпні:

pnpm було завантажено більш ніж в 5 разів більше у 2022 році, ніж у 2021 році:

Перегляд документації

Ми збираємо деякі неперсоналізовані статистичні дані з відвідування нашої документації за допомогою Google Analytics. У 2022 році ми іноді мали понад 20,000 унікальних відвідувачів на тиждень. Це в 10 разів більше, ніж у 2021 році!

Зірки на GitHub

Цього року наш головний GitHub репозиторій отримав +7000 зірок.

Наші учасники

Цього року у нас було багато нових і активних учасників. Ось люди, які залили принаймні один PR у 2022 році:

Основні функції

Підтримка піднятої без символьного посилання теки node_modules (починаючи з v6.25.0)

Прямо на початку 2022 року ми додали підтримку для «традиційних» піднятих модулів (або пласка тека node_modules). Ми використовуємо алгоритм підйому Yarn, щоб створити належно підняту теку node_modules. Це нове налаштування в основному зробило pnpm сумісним з усіма стеками Node.js, які сумісні з npm CLI.

Щоб використовувати підняту структуру теки node_modules, скористайтеся параметром node-linker=hoisted у файлі .npmrc.

Кеш побічних ефектів "Side effects cache" (починаючи з v7.0.0)

Починаючи з версії 7, side-effect-cache є стандартно увімкненим, тому залежності, які потрібно створювати, створюються лише один раз на машині. Це значно покращує швидкість встановлення в проєктах, які мають залежності зі сценаріями збірки.

Виправлення залежностей (починаючи з v7.4.0)

Додано команду pnpm patch для виправлення залежностей у ваших node_modules.

Стратегія розвʼязання на основі часу (починаючи з v7.10.0)

В pnpm додано новий режим resolution-mode, який має зробити оновлення залежностей більш безпечними. Ви можете змінити режим за допомогою параметра resolution-mode.

Перелік ліцензій залежностей (починаючи з v7.17.0)

Тепер ви можете використовувати команду pnpm licenses list для перевірки ліцензій встановлених пакунків.