Новости | FAQ | Авторы | Документация | В действии | Библиотека |
Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
Выпущена версия 3.5.0
В дополнение к встроенным классам table и hash добавлен класс array, предназначенный для работы с обычными или разреженными массивами и совместимый с хешами, использующими числовые ключи. Добавлен новый синтаксис $a[v1;v2;v3...] для инициализации массивов.
Добавлена поддержка синтаксиса $a.(expression)[value], $a.(expression) и ^v.(expression)[args] для упрощения использования выражений при работе с массивами и хешами.
Добавлена поддержка именованных параметров в методах с использованием синтаксиса @method[arg;.named_arg;.named_arg2].
Значительно отредактирована документация (несколько тысяч правок), актуализированы примеры.
Добавлен метод ^hash.rename[from;to] для переименования ключей хеша.
Новый метод ^inet:hostname[] возвращает текущее имя хоста.
В драйвер SQLite добавлена функция regexp, реализованная с использованием упрощенной библиотеки регулярных выражений.
В SQL драйверах и curl добавлена возможность указания через запятую нескольких клиентских библиотек.
Метод ^break[] теперь поддерживается в ^hash.select[] и ^table.select[] для прерывания операций выбора.
Добавлена возможность наследования метода @auto при его объявлении с двумя параметрами.
С помощью опции $.order[self|arg] можно задать порядок элементов в ^a.intersection[$b].
Новый метод ^math:uuid7[] поддерживает стандарт UUID версии 7.
В класс date добавлены методы ^date.double[], ^date.int[].
Реализована поддержка PCRE2, новой версии библиотеки для работы с регулярными выражениями.
Добавлен метод ^math:atan2[a;b] для вычисления четырёхквадрантного арктангенса.
При задании тела ответа в заголовок Content-Disposition добавлено поле filename* для поддержки имен файлов в кодировке UTF-8.
Новое поле $request:path возвращает декодированный путь из URI запроса.
В экранирование HTML добавлено экранирование одинарных кавычек.
Реализован доступ к переменным окружения процесса парсера в режиме веб-сервера.
Новый метод ^reflection:class_alias[] позволяет создавать псевдонимы классов.
В ^string.split[] добавлена опция ’a’ для преобразования строки в массив.
Новый метод ^table.cells[] возвращает массив ячеек текущей строки таблицы.
Новый метод ^table.array[] преобразует таблицу в массив.
Метод запуска скриптов принимает массив аргументов ^file::exec[cmd;;$array].
Поле $json:array[array|hash] задаёт способ обработки JSON-массивов при разборе JSON, по умолчанию они превращаются в массив.
Новая опция $.array[compact|array|object] метода ^json:string[] задаёт вид, в котором массивы преобразуются в JSON.
Добавлен метод ^hash.set[first или last][value] или ^hash.set(индекс)[value] для задания значений элементам хеша по индексу.
Добавлено поле $form:elements, предоставляющее доступ ко всем элементам формы, включая файлы, как к массивам.
Добавлен параметр командной строки -l для указания файла с логами, поле $status:mode с режимом работы парсера.
В методе ^math:digest[] добавлена поддержка HMAC в виде файла и возврата результата в виде файла.
Добавлена возможность передавать файловые объекты в методы работы с путями, такие как ^file:dirname[].
Реализована поддержка блокировок для чтения файлов под Windows.
Ускорена работа с переменной $result.
Исправлен ряд ошибок:
Исправлена некорректная обработка конструкций вида $[a]{ $b }.
Устранены проблемы с формированием списка колонок в режиме передаче нескольких SQL запросов.
Исправлен прием писем с Windows-переносами строк.
Исправлена несовместимость работы с числами в библиотеке libxml на Windows x86.
Исправлено получение статуса возврата ^file::exec[] при его вызове в режиме HTTP-сервера.
Устранена возможность передачи хеша в качестве файлового параметра.
Устранена возможность использовании чисел как хеша.
Исключено влияние 80-битных операций при работе типом double, что приводило к некорректному округлению при вычитании.
Добавлена обработка переполнения при преобразовании double в int.
Cтроки «+» и «-» более не считаются допустимыми числами.
Устранена ошибка «parser already configured» при запуске парсера из каталога с конфигурационным файлом auto.p.
Устранена возможная бесконечная рекурсия в @GET[mode].
Исправлена работа метода ^json:string[..; $.date[unix-timestamp]] с большими датами.
Текущая строка таблицы восстанавливается после исключений в ^t.menu{}.
Исправлена ошибка httpd.write: error sending response: Success (0) в режиме веб-сервера.
Исправлена ошибка инициализации в методах с произвольным числом параметров, если они не были заданы.
Maximum Auto — Купить подержанный автомобиль по выгодной цене. Продажа бу авто с пробегом в кредит или за наличные. Большой выбор машин различных марок в Санкт-Петербурге. Фото, цены, технические характеристики / Dmitry Pigrov
ПроКлинику — Сервис собрал информацию о всех лечебных учреждениях России, помогает пациентам находить необходимые лечебные учреждения, а клиникам работать эффективнее. / Студия «Манитура»
ООО “Кветен” — Основная специализация интернет-магазина — постельные принадлежности премиум-класса. / Альма
ООО «Топ Медиа» — Посадочная страница для компании, специализирующейся на приобретении и управлении проблемной задолженностью физических и юридических лиц (г. Брянск) / Студия «WebSun»
Спецмедика - медицинские товары — Каталог медицинских товаров для профессионалов и простых пользователей / Студия «ClickON»
Сайт Валентина Ивановича Вихорева — Энциклопедия о жизни и творчестве петербуржского автора-исполнителя. / Михаил Колодин
VTC.World — Сообщество, объединяющее игроков в Euro Truck Simulator 2 и American Truck Simulator / Александр Бобров
Кадастровые услуги в Анапе — Сайт с полезной информацией, стоимостью услуг и контактами. / Андрей Шпигунов
Indestroom EU — Escape Room Productions — Производство и продажа готовых эскейп-комнат (квестов) в Европе. / Escape Room Productions