Как поломать интернет 11 строчками кода
Mar. 24th, 2016 02:57 am![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Оригинал взят у
leo_sosnine в Как поломать интернет 11 строчками кода
![[livejournal.com profile]](https://www.dreamwidth.org/img/external/lj-userinfo.gif)
Ржака вообще:
From here: https://bugtraq.ru/rsn/archive/2016/03/11.html
Конечно, не весь интернет, а всего лишь кучу проектов на Node.js, но и так неплохо получилось (c).
Несколько часов назад JS-разработчик Азер Кочулу (Azer Koçulu) отозвал из NPM (популярный менеджер пакетов, используемый при разработке проектов на Node.js) более 250 своих модулей. Причиной этого стали разногласия по поводу названия одного из модулей, совпавшего с названием мессенджера Kik.
Представители разработчиков Kik сначала обратились к Кочулу с требованием переименовать модуль, тот отказался, после чего они пошли напрямую к администраторам NPM. Те не стали спорить и тихо сменили владельца модуля.
Это привело Кочулу в ярость, он снес из NPM все свои разработки и перенес их на GitHub. По несчастливому стечению обстоятельств среди них оказалась 11-строчная функция leftpad, занимающаяся дополнением строки пробелами до нужной длины. И функция эта использовалась каким-то безумным количеством JS-проектов (за последний месяц модуль left-pad скачивался почти два с половиной миллиона раз), которые сразу после этого сломались.
Администрации NPM пришлось пойти на беспрецедентный шаг и откатить отзыв злосчастного модуля. Обычно такое невозможно, что удалилось, то удалилось, но простая заливка нового одноименного модуля не исправила бы все зависимые проекты.
Это примерно все, что нужно знать о разработке на JavaScript в 2016 году.
From here: https://bugtraq.ru/rsn/archive/2016/03/11.html
no subject
Date: 2016-03-24 01:07 am (UTC)в нормальных языках есть стандартные библиотеки, которые из коробки и которые покрывают заметную часть случаев типового применения (файлы, память, строки, время - в сишечке, например)
а у этих хипстеров что, даже такой типовой банальщины нет?
no subject
Date: 2016-03-24 01:09 am (UTC)no subject
Date: 2016-03-24 01:12 am (UTC)и даже вменяемых желающих накатать "libc" тоже нет
no subject
Date: 2016-03-24 01:13 am (UTC)no subject
Date: 2016-03-24 01:15 am (UTC)Но когда дело доходит до дополнительных, типа буста и прочего, вот тут и начинается цирк с конями. Поэтому, никто для серьезной работы буст не юзает от греха подальше, как вариант - что бы не остаться в таком вот положении раком.
Фишка же всего этого скриптинга, что по умолчанию у них все в лучшем случае как Буст, это в идеале. А в остальном - Дизель уточнил.
no subject
Date: 2016-03-24 01:16 am (UTC)no subject
Date: 2016-03-24 01:30 am (UTC)Так что эти товарищи, вместе с рубироидами, могут хоть дрочить в присядку, главное, что бы не диктовали нам как прожить :) У нас "своя атмосфера" и без того :)
no subject
Date: 2016-03-24 01:21 am (UTC)то нужно прибить гвоздями версию и положить ее рядом с своим проектом.
или таки да, без него делать.
no subject
Date: 2016-03-24 01:35 am (UTC)no subject
Date: 2016-03-24 06:04 am (UTC)no subject
Date: 2016-03-24 02:20 pm (UTC)no subject
Date: 2016-03-24 01:12 am (UTC)no subject
Date: 2016-03-24 01:12 am (UTC)no subject
Date: 2016-03-24 01:38 am (UTC)no subject
Date: 2016-03-24 03:51 am (UTC)а потом будут отдельный задний проход пробивать, причем, сквозь лопатку. а потом чинить проблемы с сердцем, возникающие от прижимания легкого кишкой при запоре.. и да, легкое придется удалить, а на пятке сделать дыхательный мешок.
дальше фантазировать лень
no subject
Date: 2016-03-24 04:09 am (UTC)Так и достаточно. Только проблема, в целом этот франкинштейн и без этой операции так выглядел как ты описал. А вот после оной, ну будем посмотреть, будем посмотреть :)))
no subject
Date: 2016-03-24 03:44 am (UTC)no subject
Date: 2016-03-24 05:14 am (UTC)no subject
Date: 2016-03-24 05:41 am (UTC)no subject
Date: 2016-03-24 06:50 am (UTC)no subject
Date: 2016-03-24 07:23 am (UTC)no subject
Date: 2016-03-24 08:39 am (UTC)no subject
Date: 2016-03-24 08:42 am (UTC)no subject
Date: 2016-03-24 08:43 am (UTC)no subject
Date: 2016-03-24 10:32 am (UTC)no subject
Date: 2016-03-24 10:53 am (UTC)no subject
Date: 2016-03-24 10:54 am (UTC)no subject
Date: 2016-03-24 02:22 pm (UTC)no subject
Date: 2016-03-24 02:26 pm (UTC)no subject
Date: 2016-03-24 02:29 pm (UTC)no subject
Date: 2016-03-25 02:44 pm (UTC)no subject
Date: 2016-03-24 09:32 am (UTC)Это опенсорс со всеми его родовыми болезнями. Никто и ничего не гарантирует...
no subject
Date: 2016-03-24 11:14 am (UTC)no subject
Date: 2016-03-24 11:31 am (UTC)no subject
Date: 2016-03-24 11:53 am (UTC)