From 9b9bbeb934706e3d6b031e073c58a43e3243d66d Mon Sep 17 00:00:00 2001 From: Nikita Gryzlov Date: Wed, 15 Feb 2017 13:59:35 +0300 Subject: [PATCH 1/9] Update packagedef --- packagedef | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/packagedef b/packagedef index 7457a1c..088b2b9 100644 --- a/packagedef +++ b/packagedef @@ -1,5 +1,6 @@ - -Константы_ЛокальнаяВерсия = ЗагрузитьСценарий("src/Модули/Константы.os"); + +ПутьКСценариюКонстант = ОбъединитьПути(ТекущийСценарий().Каталог, "src", "Модули", "Константы.os"); +Константы_ЛокальнаяВерсия = ЗагрузитьСценарий(ПутьКСценариюКонстант); Описание.Имя("opm") .Версия(Константы_ЛокальнаяВерсия.ВерсияПродукта) @@ -9,4 +10,4 @@ .ЗависитОт("tempfiles") .ВключитьФайл("src") .ВключитьФайл("tests") - .ИсполняемыйФайл("src/opm.os"); \ No newline at end of file + .ИсполняемыйФайл("src/opm.os"); From 1c1ad846aa15b257305a4c9f24df19ee5b2769d0 Mon Sep 17 00:00:00 2001 From: Nikita Gryzlov Date: Wed, 15 Feb 2017 14:57:07 +0300 Subject: [PATCH 2/9] =?UTF-8?q?=D0=9E=D0=BF=D0=B8=D1=81=D0=B0=D0=BD=D0=B8?= =?UTF-8?q?=D0=B5=D0=9F=D0=B0=D0=BA=D0=B5=D1=82=D0=B0=20=D0=B4=D0=BE=D0=B1?= =?UTF-8?q?=D0=B0=D0=B2=D0=BB=D0=B5=D0=BD=20=D0=BA=D0=B0=D0=BA=20=D0=BF?= =?UTF-8?q?=D1=83=D0=B1=D0=BB=D0=B8=D1=87=D0=BD=D1=8B=D0=B9=20=D0=BA=D0=BB?= =?UTF-8?q?=D0=B0=D1=81=D1=81=20=D0=B4=D0=BB=D1=8F=20=D0=BF=D0=BE=D0=B4?= =?UTF-8?q?=D0=BA=D0=BB=D1=8E=D1=87=D0=B5=D0=BD=D0=B8=D1=8F=20opm=20=D1=87?= =?UTF-8?q?=D0=B5=D1=80=D0=B5=D0=B7=20=D0=98=D1=81=D0=BF=D0=BE=D0=BB=D1=8C?= =?UTF-8?q?=D0=B7=D0=BE=D0=B2=D0=B0=D1=82=D1=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packagedef | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packagedef b/packagedef index 088b2b9..1b25574 100644 --- a/packagedef +++ b/packagedef @@ -9,5 +9,5 @@ .ЗависитОт("cmdline") .ЗависитОт("tempfiles") .ВключитьФайл("src") - .ВключитьФайл("tests") - .ИсполняемыйФайл("src/opm.os"); + .ОпределяетКласс("ОписаниеПакета", "src/Классы/ОписаниеПакета.os") + .ИсполняемыйФайл("src/opm.os"); From b732a23d715273fcb7d1464ea587d22236458bdb Mon Sep 17 00:00:00 2001 From: Artur Ayukhanov Date: Fri, 17 Feb 2017 23:11:30 +0300 Subject: [PATCH 3/9] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8=D0=BB?= =?UTF-8?q?=20=D0=B2=D1=8B=D0=B2=D0=BE=D0=B4=20=D0=B2=20=D0=BB=D0=BE=D0=B3?= =?UTF-8?q?=20=D0=BF=D1=83=D1=82=D0=B8=20=D1=81=D0=BE=D0=B1=D1=80=D0=B0?= =?UTF-8?q?=D0=BD=D0=BD=D0=BE=D0=B3=D0=BE=20=D0=BF=D0=B0=D0=BA=D0=B5=D1=82?= =?UTF-8?q?=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...\320\272\320\237\320\260\320\272\320\265\321\202\320\260.os" | 2 ++ 1 file changed, 2 insertions(+) diff --git "a/src/\320\232\320\273\320\260\321\201\321\201\321\213/\320\241\320\261\320\276\321\200\321\211\320\270\320\272\320\237\320\260\320\272\320\265\321\202\320\260.os" "b/src/\320\232\320\273\320\260\321\201\321\201\321\213/\320\241\320\261\320\276\321\200\321\211\320\270\320\272\320\237\320\260\320\272\320\265\321\202\320\260.os" index 5534ac5..14e538f 100644 --- "a/src/\320\232\320\273\320\260\321\201\321\201\321\213/\320\241\320\261\320\276\321\200\321\211\320\270\320\272\320\237\320\260\320\272\320\265\321\202\320\260.os" +++ "b/src/\320\232\320\273\320\260\321\201\321\201\321\213/\320\241\320\261\320\276\321\200\321\211\320\270\320\272\320\237\320\260\320\272\320\265\321\202\320\260.os" @@ -92,6 +92,8 @@ ДобавитьФайлыПакета(Архив, Манифест); Архив.Записать(); + + Лог.Информация("Создана сборка %1", ФайлАрхива.ПолноеИмя); КонецПроцедуры From 363b111dd9108875c96603496f4f21e61f29c039 Mon Sep 17 00:00:00 2001 From: Artur Ayukhanov Date: Wed, 1 Mar 2017 21:46:49 +0300 Subject: [PATCH 4/9] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=20=D0=BD=D0=B0=D0=B1=D0=BE=D1=80=20=D0=B7=D0=B0=D0=B4?= =?UTF-8?q?=D0=B0=D1=87=20=D0=BF=D1=80=D0=BE=D0=B5=D0=BA=D1=82=D0=B0=20#58?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .vscode/tasks.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.vscode/tasks.json b/.vscode/tasks.json index 99911d8..a16e743 100644 --- a/.vscode/tasks.json +++ b/.vscode/tasks.json @@ -2,7 +2,7 @@ "version": "0.1.0", "windows": { "command": "cmd", - "args": ["/c", "chcp 65001 >nul ; "] + "args": ["/c", "chcp 65001 ; "] }, "linux": { "command": "sh", @@ -10,7 +10,7 @@ }, "isShellCommand": true, "showOutput": "silent", - //"_runner": "terminal", + "_runner": "terminal", "tasks": [ { "taskName": "Testing project", From 49b8916e63beda46d75b3bc91aedc0c0237c17b4 Mon Sep 17 00:00:00 2001 From: Artur Ayukhanov Date: Wed, 1 Mar 2017 21:48:20 +0300 Subject: [PATCH 5/9] =?UTF-8?q?=D0=A4=D0=B8=D1=87=D0=B0=20=D0=BF=D1=80?= =?UTF-8?q?=D0=BE=D0=B2=D0=B5=D1=80=D0=BA=D0=B8=20=D0=BD=D0=B0=D1=81=D1=82?= =?UTF-8?q?=D1=80=D0=BE=D0=B5=D0=BA=20=D0=B8=20=D0=B5=D0=B5=20=D1=80=D0=B5?= =?UTF-8?q?=D0=B0=D0=BB=D0=B8=D0=B7=D0=B0=D1=86=D0=B8=D1=8F=20#58?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...21\200\320\276\320\271\320\272\320\270.os" | 92 +++++++++++++++++++ ...0\320\276\320\271\320\272\320\270.feature" | 39 ++++++++ tests/fixtures/opm-incomplete.cfg | 2 + tests/fixtures/opm.cfg | 12 +++ 4 files changed, 145 insertions(+) create mode 100644 "features/step_definitions/\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270.os" create mode 100644 "features/\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270.feature" create mode 100644 tests/fixtures/opm-incomplete.cfg create mode 100644 tests/fixtures/opm.cfg diff --git "a/features/step_definitions/\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270.os" "b/features/step_definitions/\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270.os" new file mode 100644 index 0000000..bb88bf7 --- /dev/null +++ "b/features/step_definitions/\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270.os" @@ -0,0 +1,92 @@ +// Реализация шагов BDD-фич/сценариев c помощью фреймворка https://github.com/artbear/1bdd +#Использовать asserts + +#Использовать "../../src" + +Перем БДД; //контекст фреймворка 1bdd + +// Метод выдает список шагов, реализованных в данном файле-шагов +Функция ПолучитьСписокШагов(КонтекстФреймворкаBDD) Экспорт + БДД = КонтекстФреймворкаBDD; + + ВсеШаги = Новый Массив; + + ВсеШаги.Добавить("ЯЧитаюНастройкиИзФайла"); + ВсеШаги.Добавить("ЗначениеНастройкиРавно"); + + Возврат ВсеШаги; +КонецФункции + +// Реализация шагов + +// Процедура выполняется перед запуском каждого сценария +Процедура ПередЗапускомСценария(Знач Узел) Экспорт + +КонецПроцедуры + +// Процедура выполняется после завершения каждого сценария +Процедура ПослеЗапускаСценария(Знач Узел) Экспорт + +КонецПроцедуры + +//я читаю настройки из файла "opm.cfg" +Процедура ЯЧитаюНастройкиИзФайла(Знач ПутьФайла) Экспорт + Файл = Новый Файл(ОбъединитьПути(ТекущийКаталог(), ПутьФайла)); + Ожидаем.Что(Файл.Существует(), СтрШаблон("Ожидали, что файл <%1> существует, а это не так!", Файл.ПолноеИмя)).ЭтоИстина(); + + НастройкиПриложения.УстановитьФайлНастроек(Файл.ПолноеИмя); + + Настройки = НастройкиПриложения.Получить(); + БДД.СохранитьВКонтекст(КлючКонтекста(), Настройки); +КонецПроцедуры + +//значение настройки "СоздаватьShСкриптЗапуска" равно "false" +Процедура ЗначениеНастройкиРавно(Знач КлючНастройки, Знач ЗначениеНастройки) Экспорт + Настройки = БДД.ПолучитьИзКонтекста(КлючКонтекста()); + + Ожидаем.Что(КлючНастройки, "Ключ настройки не заполнен").Заполнено(); + + Значение = ЗначениеНастройки(Настройки, КлючНастройки); + + ЗначениеНастройки = КонвертироватьЗначениеПриНеобходимости(ЗначениеНастройки); + + Ожидаем.Что(Значение, СтрШаблон("Не совпадает значение настройки с именем <%1>", КлючНастройки)).Равно(ЗначениеНастройки); +КонецПроцедуры + +// учитываются простые (СоздаватьShСкриптЗапуска) и иерархические ключи (Прокси.ИспользоватьПрокси) +Функция ЗначениеНастройки(Знач Настройки, Знач КлючНастройки) + МассивИерархии = СтрРазделить(КлючНастройки, ".", Ложь); + ПутьКлюча = ""; + ТекущиеНастройки = настройки; + Для Счетчик = 0 По МассивИерархии.ВГраница() Цикл + ТекущийКлюч = МассивИерархии[Счетчик]; + Если ПустаяСтрока(ПутьКлюча) Тогда + ПутьКлюча = ТекущийКлюч; + Иначе + ПутьКлюча = СтрШаблон("%1.%2", ПутьКлюча, ТекущийКлюч); + КонецЕсли; + + Значение = Неопределено; + ЕстьНастройка = ТекущиеНастройки.Свойство(ТекущийКлюч, Значение); + Ожидаем.Что(ЕстьНастройка, СтрШаблон("Не удалось получить настройку с именем <%1>", ПутьКлюча)).ЭтоИстина(); + ТекущиеНастройки = Значение; + КонецЦикла; + + Возврат Значение; +КонецФункции + +Функция КонвертироватьЗначениеПриНеобходимости(Знач ЗначениеНастройки) + ЗначениеНастройки = НРег(ЗначениеНастройки); + Если ЗначениеНастройки = "false" или ЗначениеНастройки = "ложь" Тогда + ЗначениеНастройки = Ложь; + ИначеЕсли ЗначениеНастройки = "true" или ЗначениеНастройки = "истина" Тогда + ЗначениеНастройки = Истина; + ИначеЕсли ЗначениеНастройки = "неопределено" Тогда + ЗначениеНастройки = Неопределено; + КонецЕсли; + Возврат ЗначениеНастройки; +КонецФункции + +Функция КлючКонтекста() + Возврат "ТестовыеНастройкиПриложенияОМП"; +КонецФункции // КлючКонтекста() diff --git "a/features/\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270.feature" "b/features/\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270.feature" new file mode 100644 index 0000000..5629b31 --- /dev/null +++ "b/features/\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270.feature" @@ -0,0 +1,39 @@ +# language: ru + +Функциональность: Настройки продукта + +Как разработчик +Я хочу иметь возможность настраивать параметры продукта из внешнего файла +Чтобы управлять поведением продукта, например, если есть прокси + +Контекст: файл настроек + Допустим Я создаю временный каталог и сохраняю его в контекст + И Я устанавливаю временный каталог как рабочий каталог + + И Я установил рабочий каталог как текущий каталог + + # И Я показываю рабочий каталог + +Сценарий: Получение настроек + Допустим Я копирую файл "opm.cfg" из каталога "tests/fixtures" проекта в рабочий каталог + Когда я читаю настройки из файла "opm.cfg" + Тогда значение настройки "СоздаватьShСкриптЗапуска" равно "false" + И значение настройки "Прокси.ИспользоватьПрокси" равно "false" + И значение настройки "Прокси.ПроксиПоУмолчанию" равно "false" + И значение настройки "Прокси.Сервер" равно "" + И значение настройки "Прокси.Порт" равно "" + И значение настройки "Прокси.Пользователь" равно "" + И значение настройки "Прокси.Пароль" равно "" + И значение настройки "Прокси.ИспользоватьАутентификациюОС" равно "false" + +Сценарий: Получение значения по умолчанию, если настройка не задана в файле настроек + Допустим Я копирую файл "opm-incomplete.cfg" из каталога "tests/fixtures" проекта в рабочий каталог + Когда я читаю настройки из файла "opm-incomplete.cfg" + Тогда значение настройки "СоздаватьShСкриптЗапуска" равно "false" + И значение настройки "Прокси.ИспользоватьПрокси" равно "false" + И значение настройки "Прокси.ПроксиПоУмолчанию" равно "Истина" + И значение настройки "Прокси.Сервер" равно "Неопределено" + И значение настройки "Прокси.Порт" равно "Неопределено" + И значение настройки "Прокси.Пользователь" равно "Неопределено" + И значение настройки "Прокси.Пароль" равно "Неопределено" + И значение настройки "Прокси.ИспользоватьАутентификациюОС" равно "false" diff --git a/tests/fixtures/opm-incomplete.cfg b/tests/fixtures/opm-incomplete.cfg new file mode 100644 index 0000000..386d7a5 --- /dev/null +++ b/tests/fixtures/opm-incomplete.cfg @@ -0,0 +1,2 @@ +{ +} diff --git a/tests/fixtures/opm.cfg b/tests/fixtures/opm.cfg new file mode 100644 index 0000000..f9b8092 --- /dev/null +++ b/tests/fixtures/opm.cfg @@ -0,0 +1,12 @@ +{ + "Прокси": { + "ИспользоватьПрокси": false, + "ПроксиПоУмолчанию": false, + "Сервер": "", + "Порт": "", + "Пользователь": "", + "Пароль": "", + "ИспользоватьАутентификациюОС": false + }, + "СоздаватьShСкриптЗапуска": false +} From 23bded4e5378be47776a70325cde10d9151ec6a8 Mon Sep 17 00:00:00 2001 From: Artur Ayukhanov Date: Wed, 1 Mar 2017 21:49:57 +0300 Subject: [PATCH 6/9] =?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=D0=B1=D0=B0=D0=B3=D0=B0=20=D0=BD?= =?UTF-8?q?=D0=B5=D0=B2=D0=B5=D1=80=D0=BD=D1=8B=D1=85=20=D0=BD=D0=B0=D1=81?= =?UTF-8?q?=D1=82=D1=80=D0=BE=D0=B5=D0=BA=20=D0=BF=D1=80=D0=B8=20=D1=87?= =?UTF-8?q?=D1=82=D0=B5=D0=BD=D0=B8=D0=B8=20=D0=B8=D0=B7=20=D1=81=D1=82?= =?UTF-8?q?=D0=B0=D1=80=D0=BE=D0=B3=D0=BE=20=D1=84=D0=B0=D0=B9=D0=BB=D0=B0?= =?UTF-8?q?=20=D0=BD=D0=B0=D1=81=D1=82=D1=80=D0=BE=D0=B5=D0=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Была ошибка выполнения, когда в старом файле настроек не было новой настройки. #58 --- ...20\266\320\265\320\275\320\270\321\217.os" | 28 +++++++++++++++---- 1 file changed, 22 insertions(+), 6 deletions(-) diff --git "a/src/\320\234\320\276\320\264\321\203\320\273\320\270/\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270\320\237\321\200\320\270\320\273\320\276\320\266\320\265\320\275\320\270\321\217.os" "b/src/\320\234\320\276\320\264\321\203\320\273\320\270/\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270\320\237\321\200\320\270\320\273\320\276\320\266\320\265\320\275\320\270\321\217.os" index dcaf322..efc4b99 100644 --- "a/src/\320\234\320\276\320\264\321\203\320\273\320\270/\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270\320\237\321\200\320\270\320\273\320\276\320\266\320\265\320\275\320\270\321\217.os" +++ "b/src/\320\234\320\276\320\264\321\203\320\273\320\270/\320\235\320\260\321\201\321\202\321\200\320\276\320\271\320\272\320\270\320\237\321\200\320\270\320\273\320\276\320\266\320\265\320\275\320\270\321\217.os" @@ -42,8 +42,7 @@ // TODO сделать конвертацию терминов json в русские свойства настроек - мНастройки = Настройки; - + мНастройки = ЗаполнитьНесуществующиеНастройкиПоУмолчанию(Настройки); КонецПроцедуры Функция ПрочитатьФайл(Знач Путь) @@ -65,12 +64,29 @@ КонецПроцедуры Процедура УстановитьНастройкиПоУмолчанию() - мНастройки = Новый Структура; - НастройкиПроксиПоУмолчанию = НастройкиПроксиПроксиПоУмолчанию(); - мНастройки.Вставить("Прокси", НастройкиПроксиПоУмолчанию); - мНастройки.Вставить("СоздаватьShСкриптЗапуска", Ложь) + мНастройки = НастройкиПоУмолчанию(); КонецПроцедуры +Функция ЗаполнитьНесуществующиеНастройкиПоУмолчанию(Настройки) + НовыеНастройки = НастройкиПоУмолчанию(); + Для каждого Настройка Из Настройки Цикл + Значение = Настройка.Значение; + Если ТипЗнч(Значение) = Тип("Структура") Тогда + Значение = ЗаполнитьНесуществующиеНастройкиПоУмолчанию(Значение); + КонецЕсли; + НовыеНастройки.Вставить(Настройка.Ключ, Значение); + КонецЦикла; + Возврат НовыеНастройки; +КонецФункции + +Функция НастройкиПоУмолчанию() + Рез = Новый Структура; + НастройкиПроксиПоУмолчанию = НастройкиПроксиПроксиПоУмолчанию(); + Рез.Вставить("Прокси", НастройкиПроксиПоУмолчанию); + Рез.Вставить("СоздаватьShСкриптЗапуска", Ложь); + Возврат Рез; +КонецФункции + Функция НастройкиПроксиПроксиПоУмолчанию() СтруктураПрокси = Новый Структура(); From 3b49352708bd1f224cd42adf6884f8c928504c38 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=A1=D0=B5=D1=80=D0=B3=D1=A3=D0=B9=20=D0=91=D0=B0=D1=82?= =?UTF-8?q?=D0=B0=D0=BD=D0=BE=D0=B2?= Date: Thu, 2 Mar 2017 23:48:06 +0300 Subject: [PATCH 7/9] =?UTF-8?q?Fixes=20#2:=20=D0=B8=D1=81=D0=BF=D0=BE?= =?UTF-8?q?=D0=BB=D0=BD=D1=8F=D0=B5=D0=BC=D1=8B=D0=B5=20=D1=84=D0=B0=D0=B9?= =?UTF-8?q?=D0=BB=D1=8B=20=D0=BF=D0=BE=D0=B4=20linux.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit `opm install` и `opm update` при наличии в пакете исполняемых файлов, создают скрипт запуска не в каталоге `bin` движка, а в `/usr/bin`. Это даёт возможность после установки приложения сразу использовать его в командной строке. Поведение `opm app` не изменилось, по-умолчанию скрипт всегда создаётся в каталоге `bin` движка. --- ...20\237\320\260\320\272\320\265\321\202\320\260.os" | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git "a/src/\320\232\320\273\320\260\321\201\321\201\321\213/\320\243\321\201\321\202\320\260\320\275\320\276\320\262\320\272\320\260\320\237\320\260\320\272\320\265\321\202\320\260.os" "b/src/\320\232\320\273\320\260\321\201\321\201\321\213/\320\243\321\201\321\202\320\260\320\275\320\276\320\262\320\272\320\260\320\237\320\260\320\272\320\265\321\202\320\260.os" index b94e0c5..0caa232 100644 --- "a/src/\320\232\320\273\320\260\321\201\321\201\321\213/\320\243\321\201\321\202\320\260\320\275\320\276\320\262\320\272\320\260\320\237\320\260\320\272\320\265\321\202\320\260.os" +++ "b/src/\320\232\320\273\320\260\321\201\321\201\321\213/\320\243\321\201\321\202\320\260\320\275\320\276\320\262\320\272\320\260\320\237\320\260\320\272\320\265\321\202\320\260.os" @@ -4,6 +4,7 @@ Перем Лог; Перем мВременныйКаталогУстановки; Перем мЗависимостиВРаботе; +Перем ЭтоWindows; Процедура УстановитьПакетИзАрхива(Знач ФайлАрхива) Экспорт @@ -314,15 +315,15 @@ ВызватьИсключение "Некорректные данные в метаданных пакета"; КонецЕсли; - Каталог = КаталогПрограммы(); + Каталог = ?(ЭтоWindows, КаталогПрограммы(), "/usr/bin"); СоздатьСкриптЗапуска(ИмяСкриптаЗапуска, ОбъектФайл.ПолноеИмя, Каталог); КонецЦикла; КонецПроцедуры Процедура СоздатьСкриптЗапуска(Знач ИмяСкриптаЗапуска, Знач ПутьФайлаПриложения, Знач Каталог) Экспорт - СИ = Новый СистемнаяИнформация(); - Если Найти(СИ.ВерсияОС, "Windows") > 0 Тогда + + Если ЭтоWindows Тогда ФайлЗапуска = Новый ЗаписьТекста(ОбъединитьПути(Каталог, ИмяСкриптаЗапуска + ".bat"), "cp866"); ФайлЗапуска.ЗаписатьСтроку("@oscript.exe """ + ПутьФайлаПриложения + """ %*"); ФайлЗапуска.ЗаписатьСтроку("@exit /b %ERRORLEVEL%"); @@ -330,7 +331,7 @@ Иначе ПолныйПутьКСкриптуЗапуска = ОбъединитьПути(Каталог, ИмяСкриптаЗапуска); - ФайлЗапуска = Новый ЗаписьТекста(ПолныйПутьКСкриптуЗапуска, КодировкаТекста.UTF8NoBOM); + ФайлЗапуска = Новый ЗаписьТекста(ПолныйПутьКСкриптуЗапуска, КодировкаТекста.UTF8NoBOM,,, Символы.ПС); ФайлЗапуска.ЗаписатьСтроку("#!/bin/bash"); ФайлЗапуска.ЗаписатьСтроку("oscript """ + ПутьФайлаПриложения + """ ""$@"""); ФайлЗапуска.Закрыть(); @@ -380,3 +381,5 @@ КонецФункции Лог = Логирование.ПолучитьЛог("oscript.app.opm"); +СИ = Новый СистемнаяИнформация(); +ЭтоWindows = Найти(СИ.ВерсияОС, "Windows"); From 7e3b428adb502ec39da51193c2ec804034bd715f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=A1=D0=B5=D1=80=D0=B3=D1=A3=D0=B9=20=D0=91=D0=B0=D1=82?= =?UTF-8?q?=D0=B0=D0=BD=D0=BE=D0=B2?= Date: Sun, 5 Mar 2017 15:19:08 +0300 Subject: [PATCH 8/9] =?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=B0=20=D0=BF=D1=80=D0=BE=D0=B2=D0=B5=D1=80=D0=BA?= =?UTF-8?q?=D0=B0=20=D0=9E=D0=A1.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...\320\260\320\237\320\260\320\272\320\265\321\202\320\260.os" | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git "a/src/\320\232\320\273\320\260\321\201\321\201\321\213/\320\243\321\201\321\202\320\260\320\275\320\276\320\262\320\272\320\260\320\237\320\260\320\272\320\265\321\202\320\260.os" "b/src/\320\232\320\273\320\260\321\201\321\201\321\213/\320\243\321\201\321\202\320\260\320\275\320\276\320\262\320\272\320\260\320\237\320\260\320\272\320\265\321\202\320\260.os" index 2407889..946058d 100644 --- "a/src/\320\232\320\273\320\260\321\201\321\201\321\213/\320\243\321\201\321\202\320\260\320\275\320\276\320\262\320\272\320\260\320\237\320\260\320\272\320\265\321\202\320\260.os" +++ "b/src/\320\232\320\273\320\260\321\201\321\201\321\213/\320\243\321\201\321\202\320\260\320\275\320\276\320\262\320\272\320\260\320\237\320\260\320\272\320\265\321\202\320\260.os" @@ -471,5 +471,5 @@ Лог = Логирование.ПолучитьЛог("oscript.app.opm"); СИ = Новый СистемнаяИнформация(); -ЭтоWindows = Найти(СИ.ВерсияОС, "Windows"); +ЭтоWindows = Найти(СИ.ВерсияОС, "Windows") > 0; мРежимУстановкиПакетов = РежимУстановкиПакетов.Глобально; From 728f6331dafd7e259b7978227527587b6caa0ad7 Mon Sep 17 00:00:00 2001 From: Nikita Gryzlov Date: Sat, 11 Mar 2017 16:35:29 +0300 Subject: [PATCH 9/9] Version bump --- ...\320\275\321\201\321\202\320\260\320\275\321\202\321\213.os" | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git "a/src/\320\234\320\276\320\264\321\203\320\273\320\270/\320\232\320\276\320\275\321\201\321\202\320\260\320\275\321\202\321\213.os" "b/src/\320\234\320\276\320\264\321\203\320\273\320\270/\320\232\320\276\320\275\321\201\321\202\320\260\320\275\321\202\321\213.os" index 6eebc1f..6662e8b 100644 --- "a/src/\320\234\320\276\320\264\321\203\320\273\320\270/\320\232\320\276\320\275\321\201\321\202\320\260\320\275\321\202\321\213.os" +++ "b/src/\320\234\320\276\320\264\321\203\320\273\320\270/\320\232\320\276\320\275\321\201\321\202\320\260\320\275\321\202\321\213.os" @@ -19,4 +19,4 @@ ПутьВХранилище = "/download/"; ЛокальныйКаталогУстановкиПакетов = "oscript_modules"; ИмяЛога = "oscript.app.opm"; -ВерсияПродукта = "0.9.3"; +ВерсияПродукта = "0.9.4";