Выпущена 23.1.0 версия BrowserAutomationStudio
-
Данная версия является результатом работы команды, поэтому изменений больше чем обычно. Первоначально планировалось выпустить релиз за неделю, но в результате разработка заняла целый месяц.
Поиск действий.
Поиск действий был полностью переработан. Основная идея состоит в том, что теперь вы можете вводить поисковый запрос, а новая система поиска выдаст список действий наиболее отвечающим этому запросу. Вот ключевые особенности новой системы:
- Поиск не только в названии действия, но по таким факторам: описание действия, документация, название модуля, название переменных и специальное поле в котором содержатся ключевые слова.
- Поиск выдает результат по совокупности разных факторов. Например, если искомый запрос встречается и в документации и в названии, то это повышает релевантность ответа.
- Не обязательно вводить точный поисковый запрос, чтобы получить результат, допускаются опечатки и перестановки слов.
- Новый интерфейс для поиска поддерживает многостраничность, подсветку найденных слов, отображение описания действий, и т. д.
- Теперь у абсолютно каждого действия есть хотя бы минимальное описание, это сделано для того, чтобы оно отображалось в поиске.
Для создателей модулей. Чтобы ваши действия лучше находились в поиске, вы можете добавить в них дополнительные ключевые слова. Для этого нужно задать такое поле в любом из объектов массива "actions":
"suggestion":{"en": "zip, rar, 7z, unzip","ru": "zip, rar, 7z, разархивировать"}
. Это пример из модуля для работы с архивами.Разработкой поиска занимался @Oyasumi-Punpun
Работа с Node.js.
В этой и в следующих версиях мы будем добавлять новые модули, которые реализованы с помощью Node.js. Именно для этого интеграция с языком была значительно улучшена. Изменениям подвергся в первую очередь процесс установки. Идея была в том, чтобы сделать его максимально безболезненным, результативным и быстрым. Вот основной список изменений:
- Добавлена новая версия Node.js v12.18.3
- Исправлены проблемы с превышением максимальной длины пути при установке.
- Последний дистрибутив языка теперь поставляется вместе с BAS, чтобы избежать задержки при его скачивании.
- Пакеты Node.js, которые используются в модулях FTP и Archive теперь предустановлены.
- Все операции по установке проходят в отдельных потоках, это позволяет оставлять интерфейс отзывчивым во время установки.
- Лог установки пакетов Node.js отображается при нажатии на соответствующую кнопку. Таким образом ошибки при установке пакетов легче отследить.
- Улучшены логи, простой лог отображается в интерфейсе, а детальный - в файле.
- Переработан процесс установки языка, исправлены типичные ошибки, добавлены таймауты, поддерживается перезапуск всего процесса в случае ошибки.
- Окно установки теперь имеет новый понятный интерфейс.
- Исправлены некоторые проблемы с повторным использованием кода при помощи файлов.
Новый интерфейс:
Бенчмарк:
Первый запуск приложения с использованием модуля FTP и Archive занял 3.1 секунду, повторный запуск 0.07 секунд.
Впрочем, у вас результаты могут отличаться, но фактически процесс установки сводится только к копированию файлов.
Надеюсь, что данный апдейт сделает возможным массового использования Node.js в приложениях написанных на BAS, поскольку риски, связанные с использованием языка, минимальны, а выгода огромна.
Модуль для работы с FTP/SSH
Помимо стандартных загрузки и скачивания файлов и папок, данный модуль позволяет работать с файлами на сервере практически так же легко, как и с файлами на локальном диске. На самом деле, часть его действий копирует модуль "Файловая система".
Еще одной полезной особенностью модуля является кеширование соединения, это означает, что при работе в цикле соединение не будет создаваться заново при каждом действии. После настраиваемого периода бездействия соединение автоматически закроется.
Модуль поддерживает не только действия связанные с файловой системой, но и выполнение произвольных команд на сервере. Действие "Выполнить команду (SSH)".
Модуль хорошо документирован, поэтому для получения дополнительной информации достаточно открыть любое действие.
Дополнительные модули написаны на Node.js и по умолчанию отключены. Включить их можно на основной странице
При запуске или в скомпилированном приложении Node.js не будет устанавливаться, если ни одно из действий по работе с FTP или архивами не было использовано.
Разработкой модуля занимался @GhostZ
HTTP клиент
Верcия libcurl была обновлена до 7.71.1, openssl до 1.1.1g. Это позволит использовать современные методы шифрования и не вызывать подозрения у сайтов при использовании хттп клиента.
HTTP клиент теперь понимает сложные значения в хедере Location, поведение было скопировано их Chrome последней версии. Например, редирект к такому урл теперь обработается без проблем.
../../test.php
HTTP клиент теперь повторно отправляет содержимое запроса для статусов 307 и 308.
Загрузка и установка скомпилированных приложений.
Обновлено приложения для запуска скомпилированных скриптов. Теперь при обновлении кода через сайт у пользователей не будет скопировано содержание папки, следовательно, установка пройдет гораздо быстрее.
Папка будет создана заново только в случае обновления версии BAS. При использовании Node.js, в случае обновления BAS установка языка пройдет заново. Раньше файлы node.js копировались в новую папку из старой и это могло вызвать проблемы.
Для авторов скриптов желательно скомпилировать приложение заново и разослать клиентам. Но это не является обязательным.
Защита приложений.
В новой версии существенно доработана система защиты приложений. Было сделано почти 10 больших изменений. К сожалению, рассказывать о каждом из них я не могу, чтобы не компрометировать новые методы. Но вот 2 из них:
-
Скрипты в базе находятся теперь в защищенном виде, это исключает вероятность получения кода скрипта через возможные уязвимости на сайте.
-
Теперь часть работы по защите скрипта происходит на сервере, следовательно этот механизм менее уязвим.
Как следствие второго пункта, редактируемый исходный код приложения теперь невозможно получить(даже если каким-то образом снять защиту), он просто не отправляется на клиент.
При компиляции теперь можно выбрать степень защищенности приложения:
Нагрузка переместилась с клиента на сервер, это значит, что запуск больших скриптов на клиенте будет быстрее.
Есть и неприятный момент, загрузить скрипт на сервер через сайт теперь невозможно. Это можно сделать только через Меню -> Скомпилировать.
!ВАЖНО Новая защита будет работать только после перехода скрипта на версию BAS 23.1.0 или старше. Сделать это рекомендуется как можно быстрее.
!ВАЖНО Данная тема будет модерироваться. Сообщения не относящиеся к новой версии будут удалены. Пользователи сообщающие об ошибке без указания необходимых сведений (https://community.bablosoft.com/topic/2706) будут забанены на 1 неделю.
-
@support said in Выпущена 23.1.0 версия BrowserAutomationStudio:
Есть и неприятный момент, загрузить скрипт на сервер через сайт теперь невозможно. Это можно сделать только через Меню -> Скомпилировать.
Немного не понял. Чтобы обновить скрипт, мне теперь каждый раз надо заново компилировать скрипт? Скрипт как бы загрузиться как и раньше, но появится лишний мусор в виде папки с шабом?
-
Не понимаю зачем потратили столько сил на поиск действий. Надеюсь, что он хотя бы транслит или qwerty раскладку может понимать по-русски написанную на английском. А то на виртуалках часто нет русского языка и сидишь думаешь как функция может называться.
За все остальное спасибо! Есть несколько полезных фич.
P.S. верю, что однажды разрабы узнают, что такое custdev. И будут создавать продукт под пользователей, а не из головы. Может даже спросят нас, проведут опрос (хотя бы среди платных юзеров) о том какой функционал нужен.
-
@FastSpace said in Выпущена 23.1.0 версия BrowserAutomationStudio:
Немного не понял. Чтобы обновить скрипт, мне теперь каждый раз надо заново компилировать скрипт? Скрипт как бы загрузиться как и раньше, но появится лишний мусор в виде папки с шабом?
Если убрать эту галку, то мусора не создастся.
-
@korzhec said in Выпущена 23.1.0 версия BrowserAutomationStudio:
Не понимаю зачем потратили столько сил на поиск действий.
На сколько понимаю в команду BAS набирали людей исходя из их областей знаний.
Это видно из шапки темы, что каждый человек занимался своим делом.
И если к примеру запрос касается внутреннего функционала BAS, то вряд - ли же его будет делать тот кто занимается модулями или интерфейсом. Обновление защиты было критическим и node js ждали давно, поэтому маловероятно что в нем было бы что - то другое. Как по мне отличное обновление, круто что оно касается разных областей программы.Часто использую поиск и довольно удобно что есть последние действия:
-
This post is deleted!
-
Не знаю, связано ли это с конкретно этой версией, либо же с системой обновлений в целом, но я с 2-ух раз не смог загрузить апдейт. Фаза скачивания завершалась, после чего просто открывалась версия 22.9.1. Заглянув в папку с версиями, я обнаружил это:
Как оказалось, всё нормально полностью скачивалось, но в последний момент папка с версией не переименовывалась, в результате чего система обновлений не распознавала её как отдельную версию. Стоило мне вручную переименовать папку в "23.1.0", как всё заработало. Вроде бы, у меня начались подобные проблемы после апдейта системы обновлений 22.7. Но тогда я был на win7, на которой у меня были и другие баги, которых у нормальных людей быть не должно. Сейчас у меня свеженькая win10, баг всё равно повторился. Прошу пофиксить.
-
This post is deleted!
-
Большое спасибо автору за замечательное обновление!
-
@DoctorKrolic win7, всё нормально обновилось без ручного вмешательства
-
Тож Вин 7 Обновился без Проблем, но Скрипты в Записи, чёт дольше стали Запускаться :)
-
@super84 said in Выпущена 23.1.0 версия BrowserAutomationStudio:
Скрипты в Записи, чёт дольше стали Запускаться :)
Тоже так показалось, думаю скорей всего из-за новой системы поиска тк видимо она при запуске редактора индексирует описания из различных действий.
-
@support В новой версии перестала работать команда Получить сообщение в модуле Почта. Вылетает с ошибкой. Вернулся на версию 22.9.1. Там все работает корректно. В скрипте ничего не менял, изменений в самой почте тоже не было.
-
-
@UserTrue номера то и у меня ищет, а конкретное сообщение ошибка вылетает
-
@smeckoi77 у меня в гифке и получает сообщение..
-
@UserTrue хм, некоторые сообщения получает, а некоторые ошибка
-
-
А седьмое письмо норм. В 22.9.1. все письма открываются.
-
@smeckoi77 Обратите внимание, просто эти гадания трата времени.
@support said in Выпущена 23.1.0 версия BrowserAutomationStudio:
!ВАЖНО Данная тема будет модерироваться. Сообщения не относящиеся к новой версии будут удалены. Пользователи сообщающие об ошибке без указания необходимых сведений (https://community.bablosoft.com/topic/2706) будут забанены на 1 неделю.