в файле с зависимостями. У каждого пакета есть контрольная сумма. Для чего их ручками тащат или фиксируют?
Версия не гарантирует неизменность данных внутри. А контрольная сумма гарантирует 99.999% что придёт то, что заказывали
OMG... Это прям овер инжениринг. Они бы ещё пакет в проект просто копировали
Ну вообще это не оверинжиниринг, а реально прям в каждом утюге
Пакет может быть большим, например образ ОС может весить десятки гигабайт. А контрольная сумма маленькая, можно даже на листочек выписать. Пришёл в любое место, и потом сиди и жди когда скачается
Так по сути, у тебя Контрольная сумма должна сравниваться когда ты уже скачал проект. Чтобы удостовериться что это именно тот пакет. Она же должна рассчитываться по какому-то принципу
Не, всё работает по другому. Ты делаешь пакет с версией 0.1.0. И ты хочешь гарантировать, что этот пакет безопасен. Ты считаешь контрольную сумму, выкладываешь пакет в открытый доступ вместе с суммой. Чуваки проверяют и говорят, что твой пакет реально безопасен, контрольная сумма верна. Ты делаешь другой пакет с такой же версией 0.1.0 и выкладываешь в открытый доступ. Чуваки скачивают его и проверяют контрольную сумму. И вдруг у них предупреждение, что контрольная сумма не совпадает. Они открывают пакет и начинают смотреть, а не плохой ли ты человек и не внедрил ли что-либо в свой пакет.
Так вот если в твоём пакете внутри есть также файл с описанием зависимостей и их контрольных сумм, то ты гарантированно выкачаешь все зависимости по цепочке.
Обсуждают сегодня