
Nick
03.09.2017
14:46:30
что, эт показатель?

Oleksandr
03.09.2017
14:46:32
ну вот какие?
поиск по всем проектам есть
нет проблем с разными версия зависимостей на интернал тулы

KrivdaTheTriewe
03.09.2017
14:46:46
сабмодули не работают

Google

Nick
03.09.2017
14:46:58

folex
03.09.2017
14:47:07

Oleksandr
03.09.2017
14:47:23
сам я такое не видел, и тоже все добавляю и идею)

Nick
03.09.2017
14:47:34
какие там проблемы

KrivdaTheTriewe
03.09.2017
14:47:45

Nick
03.09.2017
14:47:51

KrivdaTheTriewe
03.09.2017
14:47:59

Nick
03.09.2017
14:48:07
и что?

KrivdaTheTriewe
03.09.2017
14:48:08
скажем с гитхаба на гитлаб переедь
сломаются у тебя сабмодули

Google

Nick
03.09.2017
14:48:23
че им ломаться то?

folex
03.09.2017
14:48:39
эх! :(

Nick
03.09.2017
14:49:13
@krivdaallstarts более того, я даже переезжал и у меня есть репа связанная и с гитлабом и с гитхабом
говорю же, технически эт просто ссылка на репозитории
в файле .gitmodules)

KrivdaTheTriewe
03.09.2017
14:49:40
гит давно уже перерос эти цели, очевидно о_О
сабмодули порочный путь, который был придуман для компилируемых языков энвайромент которых не предусматривает никакого управления зависимостиями, и люди вынуждены иметь все исходники в одном месте
но решили это проблему большим костылем который не работает.

folex
03.09.2017
14:50:47
Да я и не ратую за сабмодули, но аргументация с линуксом максимально странная

Nick
03.09.2017
14:50:51
не знаю, у нас в проектах работает

folex
03.09.2017
14:50:54
прям "о_О"

KrivdaTheTriewe
03.09.2017
14:51:36
*типичный интернет* - говорить в абсолюте , но вот рил, хоть один крупный опенсорс проект приведите в качестве примера
осбенно основной язык которого поразмевает наличие тулзы по управлению зависимостями

folex
03.09.2017
14:53:27
потому и спросил, не сишник ли он %)
Жалко так и не ответил. Не узнаю, насколько ванга хорошо работает

Oleksandr
03.09.2017
14:54:16
с интернал зависимостями ещё фокус, что, при изменении каких-то утилит, надо _весь_ проект компилить заново
для скалы это прямо критично

KrivdaTheTriewe
03.09.2017
14:55:00

folex
03.09.2017
14:55:19
а я не у тебя спросил %)

KrivdaTheTriewe
03.09.2017
14:57:41

Google

Grigory
03.09.2017
15:19:03
@krivdaallstarts сишник

Alexsey
03.09.2017
16:09:40
После хайлоад капа разочаровался в акторах и стал сишником, чтобы драть всех еполлом в сракотан?
Ладно-ладно, я знаю что ты и до этого им был

Alexander
03.09.2017
16:21:03

Nick
03.09.2017
16:25:12
@folexeyy я сисишник скорее)

Viktor
03.09.2017
16:28:18

Nick
03.09.2017
16:28:38
@krivdaallstarts https://github.com/openssl/openssl
вот тебе один из проектов кто их юзает)

Viktor
03.09.2017
16:31:12

Oleksandr
03.09.2017
16:32:06

Nick
03.09.2017
16:32:16
но вот в ci делать пул на все и отслеживать все изменения станет больно

Viktor
03.09.2017
16:33:32

Alexander
03.09.2017
16:33:42
насколько pants плугин для Intellij юзабелен?

Viktor
03.09.2017
16:34:25

Oleksandr
03.09.2017
16:34:43

Alexander
03.09.2017
16:35:09

Oleksandr
03.09.2017
16:35:47
ну и такого рода "снежный ком" изменений возникает достаточно часто

Nick
03.09.2017
16:35:52
@dveim полный рекомпаил никак не отсрочить

Google

Viktor
03.09.2017
16:35:55

Oleksandr
03.09.2017
16:37:23

Viktor
03.09.2017
16:37:33

Nick
03.09.2017
16:38:24
и это называется не больно?)

Viktor
03.09.2017
16:39:48

Alexander
03.09.2017
16:40:16
я думаю, что основной бенефит - это полная свобода модуляризации, хоть прям пакетами

Viktor
03.09.2017
16:41:17
и это называется не больно?)
А в чем тут собственно проблемы? Вы передаете предыдущий коммит и получаете список зависимостей которые зааффектил новый changeset. Дальше прогоняете только необходимые тесты и строите только необходимые артифакты.

Nick
03.09.2017
16:41:42
необходимость то кто будет определять?

Viktor
03.09.2017
16:43:26
❯ ./pants changed --include-dependees=transitive --changes-
src/scala/whisk/console/main:main
src/scala/whisk/console/main:main-bin
src/scala/whisk/console/main:main-lib
src/scala/whisk/console/recipeingredients/controller:controller
tests/scala/whisk/console/ontology/controller:controller
вот результат команды
из него я знаю что мне нужно собрать и что протестировать

Nick
03.09.2017
16:44:17
где гарантии что эт не аффектит другие классы? или он и это сканирует?

Viktor
03.09.2017
16:44:52
если читали статью, то там указано что зависомоти четко определены

Nick
03.09.2017
16:45:20
ну по сути тоже, что и у нас
только у нас мулитимодульность)

Viktor
03.09.2017
16:45:28
scala_library(
dependencies=[
'src/scala/whisk/analysis/model',
'src/scala/whisk/console/recipeingredients/api',
'src/scala/whisk/console/recipeingredients/core',
'3rdparty:reactivemongo-bson',
'3rdparty:finatra-http',
'3rdparty:finatra-swagger'
]
)
определены они в рамках pants, то есть для компиляции модуля будет использовать classpath из перечисленных модулей и билиотек и ничнго другого
соотвественно отсюда консистентный граф зависимостей который используеттся и для компиляции и для тестов и для сборки

folex
03.09.2017
19:24:31
А кто-нибудь знает как на курсере купить подписку на все курсы сразу? У них в хелпе написано чо можно купить на специализацию, на курс, и на всё сразу

Google

folex
03.09.2017
19:24:41

Nikita
03.09.2017
19:26:30

folex
03.09.2017
19:26:40
понятно, спасибо!
А то у меня странное: купили с другом подписки, у него full, а у меня ток на 1 специализацию :(

Viacheslav
03.09.2017
20:41:38
Виктор а в чем проблема с мультимодульным проектом в монорепе если это дело собирается гредлом? Мультимодульность в сбт это адское днище а вот в гредле это прекрасное счастье
В статье написано что в гредле это такое же дно как и в сбт, #янисагласен

Nick
03.09.2017
20:43:01

Viacheslav
03.09.2017
20:43:10
И да у нас был проект на 120 модулей собирался антом 30 минут, перевели на гредл - 45 секунд

Nick
03.09.2017
20:44:22
Там же вроде надо просто указать на директорию)
https://github.com/scala-native/scala-native/blob/master/build.sbt
вполне себе даже красиво выглядит

Bulat
03.09.2017
20:46:12
плюсую про мультимодульность, на удивление гладко завелось
в сбт
правда, общий сбт-код пришлось ко всем модулям подложить через мета-проект. Там надо немного разобраться, но тоже несложно