xDrivenDevelopment / precommit1c

Набор утилит для автоматической разборки/сборки внешних обработок и отчетов, при помещении (commit) в git
Other
224 stars 62 forks source link

Разбор модифицированных файлов из git-репозитария #32

Closed artbear closed 9 years ago

artbear commented 9 years ago

Разборка файлов через 1script закончена. Переключил precommit1c на использование 1script вместо Питона. Питон остается работа по сборке.

artbear commented 9 years ago

@EvilBeaver Укажи, пожалуйста, ком.строку для установки правильной кодировки для oscript что-то я у себя эту инфу не найду

EvilBeaver commented 9 years ago

oscript.exe -encoding=utf-8 script.os

http://oscript.io/docs/page/running

nixel2007 commented 9 years ago

@artbear Скорость работы не замеряли? В сравнении с вариантом на питоне.

EvilBeaver commented 9 years ago

@nixel2007 основное время занимает запуск 1С и разбор файлов средствами 1С+v8unpack. Скоростью работы чисто скрипта в обоих случаях можно пренебречь

nixel2007 commented 9 years ago

@EvilBeaver Логично. Насколько я помню, планировались работы по реализации v8unpack не во внешней обработке, а через 1script. Какие-то подвижки в этом плане есть? Это значительно бы ускорило работу данного хука.

artbear commented 9 years ago

v8unpack и так работает быстро. здесь проблема с разбором от 1С, т.к. некоторые вещи пока и нельзя сделать в 1скрипт. Например, навскидку конвертация mxl в txt

EvilBeaver commented 9 years ago

@nixel2007 никак бы замена v8unpack не ускорила этот процесс, за счет чего?

nixel2007 commented 9 years ago

@artbear про отсутствие технической возможности понял, спасибо!

@evilbeaver Я ничего не путаю, если скажу, что v8unpack - это внешняя обработка, которая запускается в служебной базе 1с? Соответственно ускорение за счёт отсутствия ожидания запуска/закрытия 1с. На ваш взгляд от запуска 1с предприятия нет дикого оверхэда во времени работы?

P. S. да, я пользовался v8unpack.

EvilBeaver commented 9 years ago

@nixel2007 под v8unpack я имел в виду утилиту, которая входит в состав внешней обработки V8Reader. Эта утилита читает EPF файл и разбирает его на компоненты. Написана на C++ и рвет любые скрипты (и саму платформу 1С) по производительности. Далее, уже разобранные файлы внешняя обработка считывает и строит из них дерево метаданнных. Это дерево используется precommit-ом для раскладки файлов по каталогам.

Итого - заменить 1Скриптом обработку трудно, но еще как-то можно. А v8unpack - вообще не вариант ;)

На мой взгляд, "дикого оверхеда" от запуска 1С нет. Почти незаметно.

ghost commented 9 years ago

@nixel2007 позволю себе дополнить (чуть-чуть буквально)

  1. конфигурацию в исходники разбирает v83unpack - есть разные его интерпретации, но последние и стабильные - это базирующиеся на 1Script - https://github.com/EvilBeaver/oscript-library/tree/develop/src/gitsync. v83unpack или gitsync базируется на трёх компонентах Tool1CD - используется для доступа к хранилищу unpackv8.exe - используется для разбора старых форм и еще для других "особенностей" 1С
  2. precommit1C - используется для коллективной разработки обработок 1С через git базируется на hook'ах git - через любой интепретатор, а также на сервисной базе ibService (которая является инструментами разработчика http://infostart.ru/public/15126/) база ibService предназначена для запуска обработки v8Reader, которая внутри себя содержит ту самую утилиту unpackv8.exe, https://github.com/xDrivenDevelopment/v8Reader/blob/master/src/V8Reader/%D0%9C%D0%B0%D0%BA%D0%B5%D1%82%D1%8B/UnpackV8.txt

Утилиты unpackv8 - это C++ утилита, которая после ее адаптации под unix и windows и перевода если мне не изменяет память на boost библиотеки с потоковой работой с временными файлами теперь может обрабатывать даже ERP 2.0 без тормозов и падений. Как сказал @EvilBeaver - такого нет даже у материнской компании. Хотя в плановой 8.3.7 ожидаются улучшения на это счет.

nixel2007 commented 9 years ago

Ох, все же мы говорили о разных вещах, извиняюсь :) имел ввиду перепись именно обработки v8Reader на рельсах 1скрипт Спасибо всем за ответы!

ghost commented 9 years ago

@EvilBeaver - обрати внимание на фразу "1Script on Rails". Так мы и до Web фреймворка дойдем ;-). @nixel2007 - на самом деле я сам иногда путаюсь с названиями - утилит очень много.

artbear commented 9 years ago

@allustin также поправлю (чуть-чуть) :)

сервисная базе ibService (которая является инструментами разработчика http://infostart.ru/public/15126/)

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

EvilBeaver commented 9 years ago

@allustin

Так мы и до Web фреймворка дойдем

Уже дошли: https://github.com/nextkmv/vServer