- 1
- 2
- 3
Global Install
Installing Yarn 2.x globally is discouraged as we're moving to a per-project install strategy.
We advise you to keep Yarn 1.x (Classic) as your global binary by installing it via the instructions you can find here.
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+2
Global Install
Installing Yarn 2.x globally is discouraged as we're moving to a per-project install strategy.
We advise you to keep Yarn 1.x (Classic) as your global binary by installing it via the instructions you can find here.
https://yarnpkg.com/getting-started/install
Мы выпустили вторую версию приложеньки, в которой исправили все недочёты первой.
Именно поэтому запускать вы её будете через первую версию, которая с вами навсегда.
Мы проработали другие варианты и пришли к решению, что они все неправильные.
Сердечно ваши,
джаваскриптеры.
guest8 07.03.2020 01:40 # −999
guest8 07.03.2020 01:42 # −999
guest8 07.03.2020 01:47 # −999
guest8 07.03.2020 01:49 # −999
guest8 07.03.2020 01:55 # −999
Fike 07.03.2020 02:02 # 0
но вообще хуй его знает и похуй на всю эту сыроботню, конечно
Fike 07.03.2020 02:09 # +1
> When you use pnpm on a project, you don't want others to accidentally
> run npm install or yarn. To prevent devs from using other package
> managers, add the following preinstall script to your package.json:
- https://pnpm.js.org/en/only-allow-pnpm
сука, как же я горю
guest8 07.03.2020 02:32 # −999
bormand 07.03.2020 15:54 # 0
Fike 07.03.2020 02:06 # +1
https://pnpm.js.org/
да, симлинки это вообще хорошо, но что делать если пакет A зависит от B1, а С от B2? ведь тогда у кого-то из них внутри должен быть свой node_modules, а это ж побьет к хуям симлинки, нет?
и главный вопрос, должен я тратить свою ночь на это или всё-таки почитать rfc к x.509?
1024-- 07.03.2020 08:55 # 0
1. Каждый пакет помещается в папку с именем "<пакет><разделитель><версия>"
2. Направленный граф зависимостей записывается в матрицу пакетов
3. Пакеты могут переиспользоваться (если попадает в диапазон зависимостей нового пакета - в граф зависимостей добавляется узел, если нет - устанавливается отдельно и добавляется)
4. Пакет доступен только если есть связь в графе зависимостей. Например, пользователь установил A, а A потребовал B. В графе есть user->A->B. Пользователь может сделать require('A'), но не require('B'). "man install B" предлагает либо пометить B как корневой (user) в графе (прямая команда "man activate B"), либо установить иную его версию (прямая команда "man newinstall B"). После этого граф будет либо user->A->B<-user, либо user->A->B1 user->B2. При удалении A код пользователя не перестанет работать.
5. Сборщик мусора (удаление пакетов, от которых зависел удаляемый) должен уметь работать с циклическими ссылками.
6. Зависимостями пакета могут быть разные версии одного и того же пакета, зависимостям назначают ключевые имена или обращаются по версии (второе - говно). Пример:
В случае явных версий man установит v0.12 и v0.11, v0.12 переиспользует как staroe_govno. В общем случае можно ввести математические операторы, например max(A < v6) или min(v0.1 < A < v2) (по умолчанию - max).
Если менеджер пакетов (или)
1. устанавливает пакеты в подпапки и не переиспользует их
2. позволяет установить только одну версию пакета
3. не умеет разрешать циклические зависимости
4. даёт пользоваться пакетом, который установлен как зависимость
то он - говно и не достоин изучения.
3.14159265 07.03.2020 15:16 # 0
Одобряю!!! Вот это наш, SVN-way, хранить всё говно в 100 копиях, и в текстовом виде.
Когда они наконец-то до дойдут до идеи dllек и shared-objects?
bormand 07.03.2020 15:18 # 0
Чтобы пройти ещё и через dll hell?
3.14159265 07.03.2020 15:18 # 0
И в конце концов изобрести свой js-npm-docker.
1024-- 07.03.2020 15:43 # 0
bormand 07.03.2020 15:25 # +3
IIIuMnAH3E 07.03.2020 15:33 # 0
bormand 07.03.2020 15:36 # +3
3.14159265 07.03.2020 15:47 # +3
Они изображали небезопасное ручное выделение памяти, находясь в полностью управляемой сборщиком мусора песочнице.
Приверженцы культа верили, что сишники имели особую связь со Богами, которые были единственными существами, кто мог даровать такой пирфоманс.
3.14159265 07.03.2020 16:02 # +3
Её последователи не понимали, зачем хакеры совершают те или иные действия, и слепо повторяли их в надежде, что боги дадут им тот же пирфоманс.
Нодежсийцы понятия не имели о машинных языках. Браузер и V8 в их восприятии могли иметь только божественное происхождение. Боги посылали им пирфоманс через сишников, пишущих быстрые либы, а белые люди, пишущие для них врапперы, передавали дары по назначению.