Closed nixel2007 closed 8 years ago
@nixel2007 Ошибка понятна, причина ошибки описана правильно, непонятна только мотивация. Для чего потребовалось подключать стандартную библиотеку по пути? Какой сценарий предполагался?
Причины три: 1) максимизировать соответствие продакшн и дев окружения 2) однозначно зафиксировать используемую версию библиотек (так как используется дев-ветка, то стабильность и функционал каждой версии требуется проверять отдельно и только после этого сливать в master основного репо) 3) Упростить обновление используемой библиотеки на продакшн - используется submodule и git submodule update при деплое и тестировании на CI
Кажется, что обновлять продакшен с dev ветки, да еще и через git pull немного некошерно...
Поэтому и используется не сама dev-ветка oscript-library, а конкретный коммит, установленный в submodule - оттестированный и с нужным функционалом.
Если это проблема самого oscript, могу перенести issue туда
@nixel2007 да, перенеси, туда, пожалуйста, я посмотрю.
@EvilBeaver Сделано. https://bitbucket.org/EvilBeaver/1script/issues/201
Закрыто и перенесено в багтрекер 1Script.
Если в собственном скрипте сначала подключить
asserts
по локальному пути, а потом подключить по локальному пути любой модуль, где так же используется asserts, например,то при компиляции происходит ошибка вида
Протестировано на ветке develop, sha - 6a8aabacc0329891be8344358ec6d9bc96b83f4a На сколько я понял, проблема связана с тем, что в v8runner используется подключение asserts стандартным способом "по имени", через
#Использовать asserts
, и происходит конфликт имен классов/модулей.Такая же проблема часто возникает с модулем logos.
Приходится исключать эти библиотеки из импорта, что может привести к ошибкам, так как в стандартном каталоге
lib
могут лежать неактуальные и/или конфликтующие версии подключаемых библиотек.Возможно ли научить oscipt при подключении библиотек "по имени" проверять, подключена ли она (не важно, "по имени" или "по пути"), и если подключена, то использовать уже ее? (Ну, или радикальный вариант - не использовать подключение библиотек внутри стандартных библиотек)
Если это проблема самого oscript, могу перенести issue туда.