Рік 2022 для pnpm
Це кінець року. Справді важкий рік. Як ви, мабуть, знаєте, я живу в Україні, тому через війну росії проти нас мені було важче вести цей проєкт, ніж у попередні роки. Тим не менш, це був хороший рік для pnpm. У нас з’явилося багато нових користувачів, учасників, і ми реалізували багато чудових функцій.
(наведена вище ілюстрація була створена Midjourney. Тигр символізує рік тигра)
Використання
Статистика завантажень
Моя мета цього року полягала в тому, щоб побити Lerna за кількістю завантажень. Ми змогли досягти цієї мети в серпні:
pnpm було завантажено більш ніж в 5 разів більше у 2022 році, ніж у 2021 році:
Перегляд документації
Ми збираємо деякі неперсоналізовані статистичні дані з відвідування нашої документації за допомогою Google Analytics. У 2022 році ми іноді мали понад 20,000 унікальних відвідувачів на тиждень. Це в 10 разів більше, ніж у 2021 році!
Зірки на GitHub
Цього року наш головний GitHub репозиторій отримав +7000 зірок.
Наші учасники
Цього року у нас було багато нових і активних учасників. Ось люди, які залили принаймні один PR у 2022 році:
- Zoltan Kochan
- chlorine
- await-ovo
- Brandon Cheng
- Dominic Elm
- MCMXC
- 那里好脏不可以
- Homyee King
- Shinobu Hayashi
- Black-Hole
- Kenrick
- Weyert de Boer
- Glen Whitney
- Cheng
- zoomdong
- thinkhalo
- 子瞻 Luci
- spencer17x
- liuxingbaoyu
- 장지훈
- Jon de la Motte
- Jack Works
- milahu
- David Collins
- nikoladev
- Igor Bezkrovnyi
- Lev Chelyadinov
- javier-garcia-meteologica
Основні функції
Підтримка піднятої без символьного посилання теки 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
для перевірки ліцензій встановлених пакунків.