From a22a9727800a4d052915a6653ee83613de8cadf1 Mon Sep 17 00:00:00 2001 From: Nikita Fedkin Date: Mon, 21 Oct 2024 16:54:11 +0000 Subject: [PATCH 1/5] =?UTF-8?q?=D0=9D=D0=B0=D1=81=D1=82=D1=80=D0=BE=D0=B9?= =?UTF-8?q?=D0=BA=D0=B0=20=D1=82=D0=B5=D1=81=D1=82=D0=B8=D1=80=D0=BE=D0=B2?= =?UTF-8?q?=D0=B0=D0=BD=D0=B8=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/test.yml | 16 ++++++++++++++++ packagedef | 8 ++++---- ...1\320\242\320\270\320\277\320\276\320\262.os" | 11 ----------- tasks/oscript.cfg | 2 ++ 4 files changed, 22 insertions(+), 15 deletions(-) create mode 100644 .github/workflows/test.yml delete mode 100644 "src/\320\227\320\260\320\263\320\276\321\202\320\276\320\262\320\272\320\270/\320\230\320\275\320\270\321\206\320\270\320\260\320\273\320\270\320\267\320\260\321\206\320\270\321\217\320\220\320\275\320\275\320\276\321\202\320\260\321\206\320\270\320\271\320\242\320\270\320\277\320\276\320\262.os" create mode 100644 tasks/oscript.cfg diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml new file mode 100644 index 0000000..7dc1a92 --- /dev/null +++ b/.github/workflows/test.yml @@ -0,0 +1,16 @@ +name: Тестирование + +on: + push: + pull_request: + workflow_dispatch: + + jobs: + test: + strategy: + fail-fast: false + matrix: + oscript_version: ['dev', 'lts-dev', 'default'] + uses: autumn-library/workflows/.github/workflows/test.yml@main + with: + oscript_version: ${{ matrix.oscript_version }} \ No newline at end of file diff --git a/packagedef b/packagedef index 190d00f..84e1c10 100644 --- a/packagedef +++ b/packagedef @@ -5,13 +5,13 @@ Описание.Имя("autumn-annotation-types") - .Версия("1.0.2") + .Версия("1.1.0") .Автор("nikita ivanchenko") .АдресАвтора("https://github.com/Nivanchenko") .Описание("Набор аннотаций ОСени, для удобной инициализации стандартных типов") - .ВерсияСреды("1.8.3") + .ВерсияСреды("1.9.2") .ВключитьФайл("src") - .ВключитьФайл("package-loader.os") - .ЗависитОт("autumn", "3.1.3") + + .ЗависитОт("autumn", "4.3.4") ; diff --git "a/src/\320\227\320\260\320\263\320\276\321\202\320\276\320\262\320\272\320\270/\320\230\320\275\320\270\321\206\320\270\320\260\320\273\320\270\320\267\320\260\321\206\320\270\321\217\320\220\320\275\320\275\320\276\321\202\320\260\321\206\320\270\320\271\320\242\320\270\320\277\320\276\320\262.os" "b/src/\320\227\320\260\320\263\320\276\321\202\320\276\320\262\320\272\320\270/\320\230\320\275\320\270\321\206\320\270\320\260\320\273\320\270\320\267\320\260\321\206\320\270\321\217\320\220\320\275\320\275\320\276\321\202\320\260\321\206\320\270\320\271\320\242\320\270\320\277\320\276\320\262.os" deleted file mode 100644 index 5d3c577..0000000 --- "a/src/\320\227\320\260\320\263\320\276\321\202\320\276\320\262\320\272\320\270/\320\230\320\275\320\270\321\206\320\270\320\260\320\273\320\270\320\267\320\260\321\206\320\270\321\217\320\220\320\275\320\275\320\276\321\202\320\260\321\206\320\270\320\271\320\242\320\270\320\277\320\276\320\262.os" +++ /dev/null @@ -1,11 +0,0 @@ - -Процедура ПриИнициализацииПоделки(Поделка) Экспорт - - КаталогМодуля = ОбъединитьПути(ТекущийСценарий().Каталог, "../Классы"); - Поделка.ПросканироватьКаталог(КаталогМодуля); - -КонецПроцедуры - -&Заготовка -Процедура ПриСозданииОбъекта() -КонецПроцедуры diff --git a/tasks/oscript.cfg b/tasks/oscript.cfg new file mode 100644 index 0000000..e4161cb --- /dev/null +++ b/tasks/oscript.cfg @@ -0,0 +1,2 @@ +lib.system=../oscript_modules +systemLanguage=ru From e707b367660039a7800d117aedaa7b2d48ebaa8b Mon Sep 17 00:00:00 2001 From: Nikita Fedkin Date: Mon, 21 Oct 2024 16:55:56 +0000 Subject: [PATCH 2/5] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D0=B8=D0=B5=20=D1=81=D0=B8=D0=BD=D1=82=D0=B0=D0=BA?= =?UTF-8?q?=D1=81=D0=B8=D1=81=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/test.yml | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 7dc1a92..6d5ed9f 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -5,12 +5,12 @@ on: pull_request: workflow_dispatch: - jobs: - test: - strategy: - fail-fast: false - matrix: - oscript_version: ['dev', 'lts-dev', 'default'] - uses: autumn-library/workflows/.github/workflows/test.yml@main - with: - oscript_version: ${{ matrix.oscript_version }} \ No newline at end of file +jobs: + test: + strategy: + fail-fast: false + matrix: + oscript_version: ['dev', 'lts-dev', 'default'] + uses: autumn-library/workflows/.github/workflows/test.yml@main + with: + oscript_version: ${{ matrix.oscript_version }} \ No newline at end of file From b783f0f32aee19501b54a7842bce466b1ed41b46 Mon Sep 17 00:00:00 2001 From: Nikita Fedkin Date: Mon, 21 Oct 2024 18:59:46 +0200 Subject: [PATCH 3/5] =?UTF-8?q?=D0=A7=D0=B5=D0=BB=D0=BE=D0=B2=D0=B5=D1=87?= =?UTF-8?q?=D0=B5=D1=81=D0=BA=D0=B8=D0=B9=20=D0=B7=D0=B0=D0=BF=D1=83=D1=81?= =?UTF-8?q?=D0=BA=20=D1=82=D0=B5=D1=81=D1=82=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tasks/test.os | 42 +----------------------------------------- 1 file changed, 1 insertion(+), 41 deletions(-) diff --git a/tasks/test.os b/tasks/test.os index 10059c3..9148784 100644 --- a/tasks/test.os +++ b/tasks/test.os @@ -1,4 +1,3 @@ -#Использовать 1bdd #Использовать 1testrunner #Использовать fs @@ -21,35 +20,6 @@ Возврат Успешно; КонецФункции // ПрогнатьТесты() - -Функция ПрогнатьФичи() - - ПутьОтчетаJUnit = ОбъединитьПути(ТекущийКаталог(), "out", "bdd-log.xml"); - - КаталогФич = ОбъединитьПути(".", "features"); - - Файл_КаталогФич = Новый Файл(КаталогФич); - - ИсполнительБДД = Новый ИсполнительБДД; - РезультатыВыполнения = ИсполнительБДД.ВыполнитьФичу(Файл_КаталогФич, Файл_КаталогФич); - ИтоговыйРезультатВыполнения = ИсполнительБДД.ПолучитьИтоговыйСтатусВыполнения(РезультатыВыполнения); - - СтатусВыполнения = ИсполнительБДД.ВозможныеСтатусыВыполнения().НеВыполнялся; - Если РезультатыВыполнения.Строки.Количество() > 0 Тогда - - СтатусВыполнения = ИсполнительБДД.ПолучитьИтоговыйСтатусВыполнения(РезультатыВыполнения); - - КонецЕсли; - - ГенераторОтчетаJUnit = Новый ГенераторОтчетаJUnit; - ГенераторОтчетаJUnit.Сформировать(РезультатыВыполнения, СтатусВыполнения, ПутьОтчетаJUnit); - - Сообщить(СтрШаблон("Результат прогона фич <%1> - |", ИтоговыйРезультатВыполнения)); - - Возврат ИтоговыйРезультатВыполнения <> ИсполнительБДД.ВозможныеСтатусыВыполнения().Сломался; -КонецФункции // ПрогнатьФичи() - // основной код ТекКаталог = ТекущийКаталог(); @@ -64,19 +34,9 @@ УстановитьТекущийКаталог(ТекКаталог); -Попытка - ФичиПрошли = ПрогнатьФичи(); -Исключение - ФичиПрошли = Ложь; - Сообщить(СтрШаблон("Тесты поведения через 1bdd выполнены неудачно - |%1", ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()))); -КонецПопытки; - -Если Не ТестыПрошли Или Не ФичиПрошли Тогда +Если Не ТестыПрошли Тогда ВызватьИсключение "Тестирование завершилось неудачно!"; Иначе Сообщить(СтрШаблон("Результат прогона тестов <%1> |", ТестыПрошли)); - Сообщить(СтрШаблон("Результат прогона основных фич <%1> - |", ФичиПрошли)); КонецЕсли; From 05c32e6db52c7c3a459087c0ba6d2caeece7f3e1 Mon Sep 17 00:00:00 2001 From: Nikita Fedkin Date: Mon, 21 Oct 2024 17:17:34 +0000 Subject: [PATCH 4/5] =?UTF-8?q?=D0=A1=D0=B1=D0=BE=D1=80=D0=BA=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package-loader.os | 108 ---------------------------------------------- packagedef | 1 + 2 files changed, 1 insertion(+), 108 deletions(-) delete mode 100644 package-loader.os diff --git a/package-loader.os b/package-loader.os deleted file mode 100644 index fff9fba..0000000 --- a/package-loader.os +++ /dev/null @@ -1,108 +0,0 @@ -// Пояснения по переменным даны в конце модуля -Перем ПоказатьСообщенияЗагрузки; -Перем ВыдаватьОшибкуПриЗагрузкеУжеСуществующихКлассовМодулей; - -Перем КэшМодулей; - -Процедура ПриЗагрузкеБиблиотеки(Путь, СтандартнаяОбработка, Отказ) - Вывести(" - |ПриЗагрузкеБиблиотеки " + Путь); - - Если Осень <> Неопределено Тогда - ПутьДоЗаготовки = ОбъединитьПути(Путь, "src/Заготовки/ИнициализацияАннотацийТипов.os"); - ПодключитьСценарий(ПутьДоЗаготовки, "ИнициализацияАннотацийТипов"); - Осень.ДобавитьЗаготовкуДляАвтоИнициализации("ИнициализацияАннотацийТипов"); - - мКаталог = ОбъединитьПути(Путь, "src/Классы"); - ОбработатьКаталогКлассов(мКаталог, СтандартнаяОбработка, Отказ); - Иначе - ВызватьИсключение "Некорректный порядок импорта библиотек. Сначала подключите autumn"; - КонецЕсли; - -КонецПроцедуры - -Процедура ОбработатьКаталогКлассов(Знач Путь, СтандартнаяОбработка, Отказ) - - КаталогКлассов = Новый Файл(Путь); - - Если КаталогКлассов.Существует() Тогда - Файлы = НайтиФайлы(КаталогКлассов.ПолноеИмя, "*.os"); - Для Каждого Файл Из Файлы Цикл - Вывести(СтрШаблон(" класс (по соглашению) %1, файл %2", Файл.ИмяБезРасширения, Файл.ПолноеИмя)); - СтандартнаяОбработка = Ложь; - // ДобавитьКласс(Файл.ПолноеИмя, Файл.ИмяБезРасширения); - ДобавитьКлассЕслиРанееНеДобавляли(Файл.ПолноеИмя, Файл.ИмяБезРасширения); - КонецЦикла; - КонецЕсли; - -КонецПроцедуры - -Процедура ДобавитьКлассЕслиРанееНеДобавляли(ПутьФайла, ИмяКласса) - Вывести("Добавляю класс, если ранее не добавляли " + ИмяКласса); - Если ВыдаватьОшибкуПриЗагрузкеУжеСуществующихКлассовМодулей Тогда - Вывести("Добавляю класс " + ИмяКласса); - ДобавитьКласс(ПутьФайла, ИмяКласса); - Возврат; - КонецЕсли; - - КлассУжеЕсть = Ложь; - Попытка - Объект = Новый(ИмяКласса); - КлассУжеЕсть = Истина; - Исключение - СообщениеОшибки = ОписаниеОшибки(); - ИскомаяОшибка = СтрШаблон("Конструктор не найден (%1)", ИмяКласса); - КлассУжеЕсть = СтрНайти(СообщениеОшибки, ИскомаяОшибка) = 0; - КонецПопытки; - Если Не КлассУжеЕсть Тогда - - Вывести("Добавляю класс, т.к. он не найден - " + ИмяКласса); - ДобавитьКласс(ПутьФайла, ИмяКласса); - - Иначе - Вывести("Пропускаю загрузку класса " + ИмяКласса); - - КонецЕсли; -КонецПроцедуры - -Процедура Вывести(Знач Сообщение) - Если ПоказатьСообщенияЗагрузки Тогда - Сообщить(Сообщение); - КонецЕсли; -КонецПроцедуры - -Функция ПолучитьБулевоИзПеременнойСреды(Знач ИмяПеременнойСреды, Знач ЗначениеПоУмолчанию) - Рез = ЗначениеПоУмолчанию; - РезИзСреды = ПолучитьПеременнуюСреды(ИмяПеременнойСреды); - Если ЗначениеЗаполнено(РезИзСреды) Тогда - РезИзСреды = СокрЛП(РезИзСреды); - Попытка - Рез = Число(РезИзСреды) <> 0 ; - Исключение - Рез = ЗначениеПоУмолчанию; - Сообщить(СтрШаблон("Неверный формат переменной среды %1. Ожидали 1 или 0, а получили %2", ИмяПеременнойСреды, РезИзСреды)); - КонецПопытки; - КонецЕсли; - - Возврат Рез; -КонецФункции - -// Если Истина, то выдаются подробные сообщения о порядке загрузке пакетов, классов, модулей, что помогает при анализе проблем -// очень полезно при анализе ошибок загрузки -// Переменная среды может принимать значение 0 (выключено) или 1 (включено) -// Значение флага по умолчанию - Ложь -ПоказатьСообщенияЗагрузки = ПолучитьБулевоИзПеременнойСреды( - "OSLIB_LOADER_TRACE", Ложь); - -// Если Ложь, то пропускаются ошибки повторной загрузки классов/модулей, -//что важно при разработке/тестировании стандартных библиотек -// Если Истина, то выдается ошибка при повторной загрузке классов библиотек из движка -// Переменная среды может принимать значение 0 (выключено) или 1 (включено) -// Значение флага по умолчанию - Истина -ВыдаватьОшибкуПриЗагрузкеУжеСуществующихКлассовМодулей = ПолучитьБулевоИзПеременнойСреды( - "OSLIB_LOADER_DUPLICATES", Ложь); - -// для установки других значений переменных среды и запуска скриптов можно юзать следующую командную строку -// (set OSLIB_LOADER_TRACE=1) && (oscript .\tasks\test.os) - -КэшМодулей = Новый Массив; diff --git a/packagedef b/packagedef index 84e1c10..7f2d9b9 100644 --- a/packagedef +++ b/packagedef @@ -13,5 +13,6 @@ .ВключитьФайл("src") .ЗависитОт("autumn", "4.3.4") + .РазработкаЗависитОт("1testrunner") ; From 91a7e44f4456e37f786472356dc85d2e739ee6c7 Mon Sep 17 00:00:00 2001 From: Nikita Fedkin Date: Mon, 21 Oct 2024 19:47:32 +0200 Subject: [PATCH 5/5] Create release.yml --- .github/workflows/release.yml | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 .github/workflows/release.yml diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..0527e47 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,15 @@ +name: Публикация релиза + +on: + release: + types: + - published + workflow_dispatch: + +jobs: + release: + uses: autumn-library/workflows/.github/workflows/release.yml@main + with: + package_mask: "autumn-annotation-types-*.ospx" + secrets: + PUSH_TOKEN: ${{ secrets.PUSH_TOKEN }}