wtf is corepack?
Я регулярно оновлюю всі залежності всіх проєктів на найновіші. Оскільки в мене в основному Rails та Java то це тривіальні процедури: оновити версію рубі на найновішу що вийшла, а потім зробити bundle update. Жодна з версій залежностей в мене не залочена, тому я постійно живу на всьому останньому. В Java трішки складніше, там версії лочаться, тому треба піти й перевірити що зараз останнє, бо автокомпліт IntelliJ щось перестав працювати.
Звісно час від часу щось трохи відвалюється, але загалом все працює чудово, і я ніколи не маю проблем з тим що версії чого застаріли на два роки й оновитися дуже складно або просто неможливо.
Ось я вирішив оновити докерфайл проєкту, бо колись давно виникла проблема з alpine та однією з версій рубі, щось там крашилось, довелося змінити базовий імедж на debian-slim. Разом зі зміною я втратив jemalloc, але тоді це було не таким критичним.
Отже, я вирішив повернути все назад. Для rails є гем (бібліотека), який генерує докерфайл, вже оптимізований, з шарами та усякими оптимізаціями щодо розміру імеджу на виході. Запустив-перегенерив.
Звернув увагу що у мене не змінилась версія yarn. Хто пам'ятає — це така альтернатива npm яку написали у фейсбуці коли npm був ще неоптимальним. З якоїсь причини це є дефолтний пакетний менеджер js-залежностей в Rails. І от я дивлюся що він у мене версії типу 1.22.11 чи щось таке. Дивно, думаю, йду на офіційний сайт, а там пише що вже є 4.x.x. Дивлюся як його оновити, а там corepack enable, а потім yarn set version stable та yarn install. WTF? Читаю далі, а виявляється що «we don't tell you to run npm install -g yarn to install Yarn - we even recommend against it».
Короче в джаваскрипті придумали якусь штуку що зветься corepack і тепер треба робити через неї. Також, вже досить давно додали npx, але я не розумію чим це відрізняється від npm.
Все як завжди. Поки в джаві нічого не змінюється вже 10, а то й більше років і ти як запускав ./gradlew build, так і запускаєш, поки в рубі ти як робив bundle install, так і робиш, джаваскріптери знову видумують щось нове.
Ну гаразд, ще можна відзначити python, де vc-backed контора написала заміну pip, pyenv, virtualenv, poetry, setuptools та ще бозна-чому на расті — uv. Зараз вона на хайпі, всі пісяють кіпятком крім ортодоскальних пітоністів які незадоволені тим що пакетний менеджер пітона написаний не на пітоні.
І це я ще не торкався теми фронтенду! Бо я так розумію що вебпак уже давно потьмянів, і новий shiny object фронтендерів це Vite. То я ще не згадую про rollup (?), parcel(??) та esbuild (???) які можна використовувати для збірок фронтенду.
Зовсім забув про Bun та Deno! Що це, кому, навіщо?
Одним словом, джаваскріптова екосистема як була клоун фієстою 10 год тому, так такою й залишилась і навіть стала гірше.
В чому причина? Популярність платформи? Ну так подивіться на джаву або на PHP — там такої шляпи немає. Новизна? Камон, 10 год уже SPA-непотріб впевнено крокує по куцим просторам 8 гігабайт вашого макбуку а ви так і не можете визначитися чим ставити пакети.
🤦♂️
#спостереження
permalink | @full_of_hatred
👇Щоденні донати💰на ЗСУ🪖
🫡@Donate1024Bot
Я регулярно оновлюю всі залежності всіх проєктів на найновіші. Оскільки в мене в основному Rails та Java то це тривіальні процедури: оновити версію рубі на найновішу що вийшла, а потім зробити bundle update. Жодна з версій залежностей в мене не залочена, тому я постійно живу на всьому останньому. В Java трішки складніше, там версії лочаться, тому треба піти й перевірити що зараз останнє, бо автокомпліт IntelliJ щось перестав працювати.
Звісно час від часу щось трохи відвалюється, але загалом все працює чудово, і я ніколи не маю проблем з тим що версії чого застаріли на два роки й оновитися дуже складно або просто неможливо.
Ось я вирішив оновити докерфайл проєкту, бо колись давно виникла проблема з alpine та однією з версій рубі, щось там крашилось, довелося змінити базовий імедж на debian-slim. Разом зі зміною я втратив jemalloc, але тоді це було не таким критичним.
Отже, я вирішив повернути все назад. Для rails є гем (бібліотека), який генерує докерфайл, вже оптимізований, з шарами та усякими оптимізаціями щодо розміру імеджу на виході. Запустив-перегенерив.
Звернув увагу що у мене не змінилась версія yarn. Хто пам'ятає — це така альтернатива npm яку написали у фейсбуці коли npm був ще неоптимальним. З якоїсь причини це є дефолтний пакетний менеджер js-залежностей в Rails. І от я дивлюся що він у мене версії типу 1.22.11 чи щось таке. Дивно, думаю, йду на офіційний сайт, а там пише що вже є 4.x.x. Дивлюся як його оновити, а там corepack enable, а потім yarn set version stable та yarn install. WTF? Читаю далі, а виявляється що «we don't tell you to run npm install -g yarn to install Yarn - we even recommend against it».
Короче в джаваскрипті придумали якусь штуку що зветься corepack і тепер треба робити через неї. Також, вже досить давно додали npx, але я не розумію чим це відрізняється від npm.
Все як завжди. Поки в джаві нічого не змінюється вже 10, а то й більше років і ти як запускав ./gradlew build, так і запускаєш, поки в рубі ти як робив bundle install, так і робиш, джаваскріптери знову видумують щось нове.
Ну гаразд, ще можна відзначити python, де vc-backed контора написала заміну pip, pyenv, virtualenv, poetry, setuptools та ще бозна-чому на расті — uv. Зараз вона на хайпі, всі пісяють кіпятком крім ортодоскальних пітоністів які незадоволені тим що пакетний менеджер пітона написаний не на пітоні.
І це я ще не торкався теми фронтенду! Бо я так розумію що вебпак уже давно потьмянів, і новий shiny object фронтендерів це Vite. То я ще не згадую про rollup (?), parcel(??) та esbuild (???) які можна використовувати для збірок фронтенду.
Зовсім забув про Bun та Deno! Що це, кому, навіщо?
Одним словом, джаваскріптова екосистема як була клоун фієстою 10 год тому, так такою й залишилась і навіть стала гірше.
В чому причина? Популярність платформи? Ну так подивіться на джаву або на PHP — там такої шляпи немає. Новизна? Камон, 10 год уже SPA-непотріб впевнено крокує по куцим просторам 8 гігабайт вашого макбуку а ви так і не можете визначитися чим ставити пакети.
🤦♂️
#спостереження
permalink | @full_of_hatred
👇Щоденні донати💰на ЗСУ🪖
🫡@Donate1024Bot