Releases: EvilBeaver/OneScript
Releases · EvilBeaver/OneScript
v2.1.0
Sorry, something went wrong.
No results found
Версия 2.1.0
Новые возможности
- Реализован конфигурационный параметр binaryData.inMemoryMaxBytes для настройки порога хранения двоичных данных в памяти или на диске #1667
- Добавлено свойство СистемнаяИнформация.ПолнаяКоманднаяСтрока для получения полной строки запуска процесса: #1678.
- Реализована поддержка оператора Перейти / Goto и меток: #1468, #1329, #6.
- В метод Процесс.Завершить() добавлен параметр завершения дочерних процессов #1660.
- В ЧтениеJSON добавлен метод ОткрытьПоток(), чтобы объект мог работать с потоками #1679.
Исправление ошибок
- Исправлена работа ЗагрузитьСценарий() в native-режиме: корректный возвращаемый тип и обработка ошибок компиляции скрипта: #1675.
- Исправлена native-компиляция вызовов методов с дополнительным параметром процесса (включая кейс ТаблицаЗначений.Сортировать()): #1673.
- Исправлено поведение ХешированиеДанных: инкрементальное хеширование, освобождение файлов и совместимость обработки параметра Количество: #1683.
- Исправлено чтение JSON-строк, содержащих ISO-дату: они больше не преобразуются ошибочно в Дата: #1681.
- Исправлена ошибка компилятора при некорректном "висячем" окончании синтаксического блока (улучшена диагностика ошибок): #1685.
- Метод ТаблицаЗначений.Найти теперь использует индекс таблицы значений. Ранее индекс использовался только методом НайтиСтроки #1661
- В режиме Native некорректно работало сложение даты с числом.
Прочее
- Обновлена документация проекта и разделы установки под актуальную платформу .NET 8.
New Contributors
Full Changelog: v2.0.2...v2.1.0
v2.0.1
Sorry, something went wrong.
No results found
Версия 2.0.1
Исправление ошибок
- #1646 Ошибка метода ЗаполнитьЗначенияСвойств на ФиксированнойСтруктуре
- #1647 Исправлена вставка ключа Null в соответствие
- #1649 Исправлена обработка символов '\0' в каталогах WebDAV
- #1654 В методе можно было объявлять параметры, не разделяя их запятой
- #1652 Исправлена обработка аннотаций для списка переменных, объявленных через запятую
- #1657 Исправлен приоритет активации источников в конфиге
Рефакторинг и оптимизация
- В парсере применен приоритет операторов вместо рекурсивного спуска (улучшена скорость компиляции)
- Загрузчик библиотек теперь разделяет ситуацию ненайденных библиотек и тех, которые не удается загрузить (улучшена диагностика ненайденных библиотек)
v2.0.0
Sorry, something went wrong.
No results found
Версия 2.0.0
Версия нового поколения, основанная на современной платформе .NET.
За счет этого обеспечивается кроссплатформенность без использования Mono на Linux и MacOS.
Требования по адаптации
За счет новой базовой платформы, потеряна бинарная совместимость с существующими внешними компонентами (dll).
Требуется перекомпиляция компоненты под новую версию .net, как минимум, под слой совместимости netstandard 2.0
Изменения по сравнению с ознакомительной версией 2.0.0-rc.10
- Уточнена консольная справка по режимам работы
- Исправлена лишняя остановка отладчиком на заголовке цикла Для Каждого
- Исправлены шаги отладчика. Ранее, отладчик ошибочно не останавливался на строке КонецЦикла
- Добавлена поддержка потока в ЗаписьТекста
- Оптимизирована производительность рефлектора
- Оптимизирована производительность компилятора
- Оптимизирована производительность создания таблицы значений
- В отладчике теперь отображаются переменные уровня модуля (ранее отображались только локальные)
- Улучшена совместимость функции СтрНайти с платформой 1С
Большое спасибо @Mr-Rm, @dmpas, @Bayselonarrend за участие в этом релизе!
v1.9.4
Sorry, something went wrong.
No results found
Исправления ошибок
- Добавлена проверка типов при записи свойств (#1592)
- Исправлена ошибка "Несовпадение типов" при повторном вызове COM-методов, которые изменяют тип параметра внутри метода. Теперь при передаче параметров по ссылке (ByRef) в COM-объекты корректно обрабатывается изменение типа (например, из Неопределено в Массив) (#1597)
- Улучшена передача объектов в COM-методы: объектные типы теперь передаются без преобразования, что предотвращает потерю данных и ошибки несоответствия типов. Также корректно обрабатываются пропущенные (необязательные) параметры (#1588, #1597)
- Исправлена ошибка доступа по индексу при передаче параметров, которая могла приводить к исключениям при работе с коллекциями (#1590, #1429)
2.0.0-rc.8
Sorry, something went wrong.
No results found
Новое в версии 2.0.0-rc.8
- Заменена библиотека DotNetZip на форк ProDotNetZip из-за незакрытой уязвимости CVE-2024-48510
- Существенно ускорена компиляция большого числа модулей. Запуск тяжелых приложений с множеством классов стал намного быстрее.
- Доработан отладчик и сервер отладки, введен новый протокол обмена данными для отказа от BinaryFormatter в рамках перехода на net8
- Изменен формат конфигурации для включения лога отладки. См. каталог установки расширения и файл VSCode.DebugAdapter.exe.config
- Изменен вывод компилятора в случае ошибки. Изменена отметка отметка позиции ошибки в строке. Более точное позиционирование ошибки
Исправление ошибок
- Разрешены комментарии после аннотаций модуля
- Разрешено использование комментариев в строке с директивой Использовать
- Слово Ждать вне асинхронного метода не должно иметь специального значения
v2.0.0-rc.7
Sorry, something went wrong.
No results found
Новое в версии 2.0.0-rc.7
- Проведена масштабная доработка ядра в части управления потоками bsl и удаления глобальных статических классов.
- Нумерация версий ошибочно не соответствовала semver в части пре-релизного номера. Нумерация приведена к semver
- Полностью переписан генератор документации OneScriptDocumenter
- ВебСервер учитывает настройку FormOptions в appsettings.json
- Проведена оптимизация экранирования символов в ЗаписьJSON
Исправление ошибок
- Отладчик неверно шагает, не встает на строку КонецПроцедуры/Функции при обработке возврата
- Возвращено поведение загрузчика из версии 1 с приоритетом ключа lib.additional
- TestApp не добавлялся в состав дистрибутива SCD для Windows
- Поведение Соответствия с ключом Неопределено приведено к новым версиям платформы.
- Метод ЧтениеДанных.ПрочитатьБайт не выбрасывает исключение в конце потока
- Исправление английского варианта метода КаталогПрограммы. Теперь используется совместимое с 1С название BinDir. Старый (неверный) вариант ProgramDirectory также поддерживаются с выдачей предупреждения
New Contributors
v1.9.3
Sorry, something went wrong.
No results found
Новое в версии 1.9.3
Исправление ошибок
- #1478: Исправлена загрузка 32-битных внешних компонент NativeApi из ZIP-архива в 64-битной среде
- #1513: Исправлена прокси-библиотека NativeApi для 32-битной архитектуры
- #1498: Исключение не перехватывает попыткой в случае если была вложенная попытка
- #1409: Сохранять позицию при переводе ДвоичныхДанных в строку
- #1424: Рефлексия свойств у загруженного с контекстом сценария +тест
Доработки ядра (для пользователей, встраивающих oscript в приложения C#)
- Возможность прерывать главный цикл машины
- Фильтр типов при инициализации движка
Благодарности
Традиционная благодарность Михаилу Рыбакину (@Mr-Rm) за поиск и исправление ошибок.
Также, большое спасибо Антону Титовцу (@Bayselonarrend) за поиск ошибок в механизме внешних компонент NativeAPI
v2.0.0-rc6
Sorry, something went wrong.
No results found
Версия 2.0.0-rc6
Релиз является тестовым для выпуска финальной версии 2.0
Новые возможности
- Чтение конфигурации Kestrel из appsettings.json
- Добавлены методы явного указания wwwroot и content-root в вебсерере
- Добавлена возможность работы с данными форм в вебсервере.
- Метод для остановки веб-сервера
- Регистрация обработчика прерывания по Ctrl+C, теперь можно подписаться на событие Консоль.CancelKeyPressed.
- Теперь при выбросе исключения с передачей ИнформацияОбОшибке в качестве параметра, создаётся новая ИнформацияОбОшибке которая содержит оригинальную информацию об ошибке в поле Причина
- В конструктор ИнформацияОбОшибке, добавлен параметр "Причина" для возможности указания причины текущей ошибки
Исправление ошибок
- Исправлена загрузка 32-битных внешних компонент NativeApi из ZIP-архива в 64-битной среде
- Исправлен возврат объекта внешней компоненты NativeApi из bsl-метода
- Исправлен конфигурационный параметр runtime.default позволяющий выбрать способ исполнения (нативный или классический стековый)
- Исправлено сравнение значений при поиске в коллекцииях значений (строгое сравнение)
- Объект Действие не ломает отображение переменных в отладке
- Исправлена работа ЧтенияДанных из ДвоичныхДанных большого размера
- Некорректный парсинг Асинх и Ждать в обычном контексте
- Исправлена коммутативность сравнения булевых
- Исправлен английский синоним для Консоль.КодировкаВыходногоПотока
- Исправлено Вычислить() с именами параметров процедуры
- И многие другие
Огромное спасибо всем участвовавшим в выпуске релиза!
2.0.0-rc5
Sorry, something went wrong.
No results found
Версия 2.0.0-rc5
Релиз является тестовым для выпуска финальной версии 2.0
Новые возможности
- Добавлен встроенный http-сервер на базе Kestrel
- Добавлена функция остановки по условию при отладке
- Реализована возможность фильтрации точек остановы для исключений по тексту ошибки
- Существенно переработана внутренняя реализация "памяти" виртуальной машины
- Движок переведен на платформу .NET 6
- Возможность управления кодировкой дебаг консоли
Исправление ошибок
- fix #1411 расхождение английских алиасов для некоторых методов
- fix #1451: обновление глобального скоупа при загрузке внешнего модуля
- fix #1459: диагностика использования встроенной функции как процедуры
- fix #1441: функциональный вариант Новый с ФиксированнымМассивом +тест
- замена на системные функции
- fix #1429: некорректная привязка номера строки в тексте ошибки к строке исполняемого кода
- fix вывода сообщения об ошибке в условии брэйкпоинта
- fix #1418 отладчик одинаково реагирует на Stop и Disconnect, продолжая выполнение
- fix ошибки потери информации об ошибке при вычислении во фрейме
- fix #1427: исправление раскрутки стека при исключении в Выполнить
- fix #1419: не проверяются типы Перечислений при передаче их параметрами
- Свойство "Символы" было доступно для записи
- fix #1373, #1404 для v2: Ошибки чтения JSON
- fix #1396 В отладчике не показывается переменная, добавленная в "загрузить сценарий", как внешний контекст.
v1.9.2
Sorry, something went wrong.
No results found
Новое в версии 1.9.2
- В методе Добавить списка значений, параметр Значение необязательный (совместимость с 1С)
- Исправлено: Если функция Выполнить() обёрнута в Попытку, а в исполняемом коде возникает исключение, то информация об ошибке теряется, и возникает ошибка стека ВМ
- Исправлено: При вызове через COM пропущенные параметры получали значение Неопределено вместо значения по умолчанию
- Исправлено: Неверно работал метод ЧтениеJSON.Пропустить()
- Чтение JsonToken.Undefined сразу выбрасывает исключение
- Уточнены сообщения о неверных данных в json
- Существенно переработан алгоритм чтения JSON см. #1373