Принудительное обновление пакета с помощью Mix

Когда я использую следующую команду

mix deps.update --all

mix будет использовать локально кэшированные пакеты, если версия пакета не была изменена в mix.ex файле. Итак, вопрос в том, как я могу заставить mix не использовать кешированную версию и вместо этого загрузить ее с сервера? Например, если в последней версии какого-то пакета были изменения, и я хочу их забрать, даже если версия не была изменена.


person NoDisplayName    schedule 10.10.2015    source источник
comment
Это должно просто работать. Hex всегда будет обновлять пакет, если он находится в периоде, когда пакет еще может быть обновлен.   -  person José Valim    schedule 10.10.2015


Ответы (1)


Первый из выпущенных Hex-пакетов может быть изменен только в течение 1 часа после его первоначального создания, после чего он становится неизменным и никогда не изменится. В будущем, когда Hex добавит инструменты для тестирования пакетов перед выпуском, вы никогда не сможете изменить опубликованный пакет.

Hex выполняет условный запрос GET для извлечения пакета, если он уже кэширован. Если пакет не изменился, мы используем кеш, если он изменился, мы получаем его снова. Если вы не можете получить доступ к Hex CDN, он автоматически будет использовать кешированный пакет, если он доступен.

Кроме того, каждый раз, когда вы получаете или обновляете пакеты, Hex будет загружать реестр всех выпущенных пакетов, который включает контрольную сумму, которую мы используем для проверки в архиве пакетов, поэтому вы никогда не сможете использовать устаревшие пакеты.

person Eric Meadows-Jönsson    schedule 10.10.2015