@proelixir

Страница 623 из 1045
Dmitry
11.06.2017
12:09:30
Поэтому все либы "~> 2.0" просасываются

Alexander
11.06.2017
12:09:49
можно написать модуль, который дергает экто и прочитав миграции из папки(их нужно еще упаковать в релиз) их прогоняет. Тогда есть вариант через rpc релизу сказать, какой модуль дернуть

Dmitry
11.06.2017
12:10:07
Сделал пару ПР

Заебало - начал писать просто issues

Google
Alexander
11.06.2017
12:11:34
Заебало - начал писать просто issues
не парься, я заебался через полгода. Мелкие пакеты я просто себе переписал и по сути в проект их включаю. Т.к народ релизит целый пакет, с 4 файлами и 10 строками кода во всех файлах

жопу даже морщить жалко чтобы такое релизить

Dmitry
11.06.2017
12:12:15
Я просто не знаю правильного решения

Alexander
11.06.2017
12:12:16
раньше я форкал, теперь просто кидаю файлы в проект

Dmitry
11.06.2017
12:12:34
Что делать с этим version hell?

По уму?

Alexander
11.06.2017
12:13:26
я в лоб форкал и ослаблял версии, потом заебался и просто кидаю свои локальные версии в папку с проектом, но все же все микс файлы в оверрайдах

Dmitry
11.06.2017
12:13:41
Вот ты вроде написал либу, она работает с любым Poison, а другая либа говорит - "хуй тебе, надо последний"

И ты не переделаешь на самое последнее

Alexander
11.06.2017
12:13:52
ты прав, проблема с версиями - ад. Примерно уровня npm года 2 назад

Dmitry
11.06.2017
12:14:05
Так как решить то?

Alexander
11.06.2017
12:14:13
никак

сам hex.pm - мертв

Google
Dmitry
11.06.2017
12:14:32
Так значит семвер сосет

Потому что тут где-то косяк в логике

Alexander
11.06.2017
12:15:05
косяк тут размазан

первое - это сам пакет менеджер - полное говно. Второе - полумертвое коммьюнити и соотвественно разница в версиях между пакетами и депенденси

Dmitry
11.06.2017
12:16:20
Смысл в том, что в теории ты можешь сделать либу, которая вообще не должна менятся

Alexander
11.06.2017
12:16:31
первое поправимо, второе - ну это проблема кучи языков

Dmitry
11.06.2017
12:17:08
И это значит что ты должен мочь в депенденси иметь какую-нибудь древнюю версию пакета и всё работало

Но если этот же пакет кто-то другой имеет

То начинается какая то хуита

Alexander
11.06.2017
12:17:30
я тут недавно в рубя форкнул гем только за тем, чтобы версию руби ослабить, хотя там ровно ноль было зависимостей на конкретную версию рубей

просто автор ебанулся

Dmitry
11.06.2017
12:17:43
Получается, надо иметь возможности иметь несколько версий?

Alexander
11.06.2017
12:18:14
Получается, надо иметь возможности иметь несколько версий?
я очень рекомендую yarn поглядеть. Имхо - самая продвинутая система версий в нем

Dmitry
11.06.2017
12:18:17
Но тогда начинается ебаный нпм

С гигом зависимостей ещё до начала работы

Alexander
11.06.2017
12:19:30
npm - это ад. Я помню там есть те кто не выкатывался на прод и те кто уже выкатывался и без шринкврап не начинают проект

Dmitry
11.06.2017
12:20:02
Так всётки решение в том, чтобы иметь несколько версий пакета?

Но в эрланге это нельзя

Alexander
11.06.2017
12:20:14
когда redux релизился по 4 раза в день, я чуть проект не запорол..

Dmitry
11.06.2017
12:20:19
Тут нету нэймспейсинга

Google
Alexander
11.06.2017
12:20:57
Так всётки решение в том, чтобы иметь несколько версий пакета?
решение в том, чтобы можно было каскадно версии ослаблять и иметь варианы 2х версий либ в 1 проекте

Dmitry
11.06.2017
12:21:26
2 версии же нельзя

Alexander
11.06.2017
12:21:32
но в текущем дизайне это никак не достичь. Валим, как всегда напишет абзацев 10 хуеты и ничего по делу

2 версии же нельзя
из-за того что весь проект компилится, как есть - да

Dmitry
11.06.2017
12:21:49
2 версии физически нельзя потому что нету импортов

Alexander
11.06.2017
12:22:39
интересно смотреть, как феникс решает менять структуру папок, но блять всем настрать, включая компилятор!

интеграция с амбрелла аппами уровня - еще пару ../

боги от программирования

Dmitry
11.06.2017
12:23:46
Ну, это норм

Эксплисит бля

Всё ради этого - но мне нравится

Alexander
11.06.2017
12:24:21
как только я перестал воспринимать эликсир, как самостоятельный язык и думать о нем, как о сахаре уровня кофескрипта, сразу проще стало

Dmitry
11.06.2017
12:24:41
Я раньше думал - все сука забивают на версионирование

Alexander
11.06.2017
12:25:01
претензии уходят, нельзя предьявлять претензии просто к новому варианту синтаксиса

Dmitry
11.06.2017
12:25:05
В теперь чёт загнался и думаю - косяк где-то в архитектуре

Alexander
11.06.2017
12:25:36
В теперь чёт загнался и думаю - косяк где-то в архитектуре
если комьюнити будет так же вяло, то архитектура не поможет

все равно будет gap

Dmitry
11.06.2017
12:26:14
Ну хз. Если приходтся писать так: {:poison, "~> 1.3 or ~> 2.0 or ~> 3.0 or ~> 4.0"},

То нахер

Напишешь >= 1.3 - а они сука поломают что-нибудь в 5 версии

Google
Alexander
11.06.2017
12:27:42
я пока не вижу выхода, но как минимум - переписывание hex.pm

Dmitry
11.06.2017
12:27:57
Так а как это поможет?

Если нельзя иметь 2 версии пакета

И это ещё и легаси

Потому что хекс обслужиавет ребар

Заодно

Alexander
11.06.2017
12:28:46
Так а как это поможет?
если hex.pm к примеру сможет пакеты превращать в пару и переопределять нужный пакет в конкретный

типа если нужно некому CoolPackage особовую версию Poison, чтобы hex упаковывал CoolPackage вместе с переопределенным Poison в 1

по сути или переписывая все в модули или мокая вызовы

Dmitry
11.06.2017
12:30:24
А как понять какая из версий особая?

Admin
ERROR: S client not available

Alexander
11.06.2017
12:31:40
тут именно coupling пакетов. Т.е твой пакет просит версию Hackney определенную и ему упаковывать нужную

Dmitry
11.06.2017
12:32:05
Так получается npm

Alexander
11.06.2017
12:32:07
т.е разделение будет на модули что нужны пакетам по зависимостям и те что ты хочешь

Dmitry
11.06.2017
12:32:28
Пакет зависит от пакета, который зависит от пакета...

Alexander
11.06.2017
12:32:29
если ты не определил в mix что тебе нужен Hackney, то его и не будет доступно

но пакеты, которые от него зависят, получать его доупакованным

в итоге настанет рай версий

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

Dmitry
11.06.2017
12:33:34
И это реально сделать?

Google
Alexander
11.06.2017
12:33:43
Так получается npm
в npm есть проблема кроссверсий, когда все по пизде идет

Dmitry
11.06.2017
12:33:57
В жс хоть импорт есть

Alexander
11.06.2017
12:34:05
И это реально сделать?
да, но упаковать на стороне hex.pm должна

Dmitry
11.06.2017
12:34:14
А тут поизон на всех сука областях видимости

Alexander
11.06.2017
12:34:20
т.е ты сабмитишь пакет, он собирается с версиями что нужно и так и хранится

апдейтить в рамках версий, тоже на сервере

Dmitry
11.06.2017
12:34:58
Иногда кажется что лучше как в го

Есть всего одна версия

)))

Alexander
11.06.2017
12:35:06
но все же когда ты себе пакет в микс включаешь, то прилетит бандл

Dmitry
11.06.2017
12:35:36
Короче я хз как это сделать

Может быть это будет круто

Пока что хуита

Alexander
11.06.2017
12:35:51
Иногда кажется что лучше как в го
не лучше, пару лет назад одни чуваки так попали. В пакете в зависимости, внутри зависимости на 4 колене репа была удалена

Taras ?
11.06.2017
12:35:59
?

Alexander
11.06.2017
12:35:59
в итоге все к хуям пошло

сейчас в го есть вендоринг

https://github.com/cloud66/cx/issues/19

Dmitry
11.06.2017
12:37:21
Так может в принципе в эликсире надо пакет менеджер уровня "скачать все нужные функции с сервака и запилить в модули гвоздями на этапе компиляции макросами"

Правда немножечко располнеет релиз

Alexander
11.06.2017
12:37:49
я сейчас гвоздями прибиваю из своих приватных реп

вот упаковывая, как написал

Dmitry
11.06.2017
12:38:00
Короче говоря какая то хуета

Страница 623 из 1045