Изменения в версии 3.13.0
Навигация: Главная страница/Система ejudge/Разработка/История версий/Изменения в версии 3.13.0
Время выхода: 25 декабря 2024 г.
Contents
Обновление с предыдущих версий
После инсталляции новой версии ejudge обязательно выполните команды ejudge-suid-setup
и ejudge-upgrade-web
из-под пользователя root и команду
ejudge-configure-compilers
из-под пользователя ejudge.
Список Pull Requests
Главные новые возможности и улучшения
- Добавлена поддержка режима слияния подгрупп (правила IOI).
- Добавлен универсальный плагин для аутентификации по OIDC.
- Переработан механизм взаимодействия сервера турнира и агентов компиляции.
- Улучшена поддержка задач на неполные программы.
- В HTML-условиях поддерживается MathJax3.
- Добавлен плагин для отправки нотификаций в redis streams.
- Обновлена программа ej-polygon импорта задач из системы Polygon.
ej-compile
Поддерживается аргумент командной строки -y
, в котором
передаётся серийный номер параллельного запуска программы на одном
хосте. Этот параметр используется при запуске процесса компиляции
в контейнере, чтобы использовать отдельный идентификатор пользователя
компиляции. Параллельные компиляции на одном хосте будут выполняться
под разными идентификаторами пользователя и не будут влиять
друг на друга.
Поддерживаются расширенные свойства скомпилированных файлов. Они активируются с помощью установки глобального конфигурационного параметра enable_run_props турнира. В этом случае в скрипт компиляции передается третий параметр — путь к файлу, в который скрипт компиляции может записать дополнительные свойства сгенерированного исполняемого файла. Этот файл передается в сервис запуска решений.
При копировании файлов из каталога, заданного с помощью конфигурационного параметра extra_src_dir, в рабочий каталог компиляции выполняется рекурсивное копирование.
Для Typescript поддерживается альтернативный транслятор tsx.
В ejudge.xml поддерживается возможность не запускать инстансы ej-compile и ej-super-run ( parallelism и compile_parallelism могут быть равны 0).
ej-compile-control
Поддерживается аргумент командной строки -y
, который
передаётся в ej-compile.
ej-contests
В конфигурационном параметре open_tests поддерживатся видимость тестов
icpc
. Если для группы тестов установлена видимость icpc
, то
участнику турнира отображается только балл и минимальная информация
о первом непрошедшем тесте в группе.
Если у задачи была хотя бы одна группа тестов с видимостью icpc, протокол тестирования для участника показывает только информацию об открытых тестах и суммарную информацию по группам тестов.
Добавлена конфигурационная переменная задачи standard_valuer
,
которая позволяет задать стандартную программу оценивания gvaluer и не копировать её каждый раз
в каталог турнира.
Поддерживается экспорт архивов посылок в фоновом режиме. После нажатия "Download archive of runs" и выбора опций скачивания решений создаётся фоновое задание, статус исполнения которого можно отслеживать. Когда подготовка архива будет закончена, архив можно будет скачать по ссылке.
Добавлена поддержка привилегированного API-вызова get-user
.
Добавлена поддержка привилегированного API-вызова copy-user-info
.
Добавлена поддержка привилегированного API-вызова change-registration
.
Добавлена поддержка привилегированного API-вызова problem-status-json
.
Добавлена поддержка привилегированного API-вызова list-languages
.
Добавлена поддержка привилегированного API-вызова create-user-session
.
Добавлена поддержка привилегированного API-вызова change-registrations
.
Добавлена поддержка API-вызова special-flow
.
В протоколах тестирования отображается размер использованной памяти (RSS). Это поддерживается только в случае запуска решений в контейнере.
Добавлен глобальный конфигурационный параметр enable_run_props..
Исправлена ошибка, из-за которой не работала смена языка интерфейса.
Если apache не может подключиться к ej-contests, клиенту возвращается http status 500.
Добавлены атрибуты enable_user_finish, disable_user_finish, которые модифицируют возможность пользовательского завершения турнира.
Добавлен конфигурационный параметр default_disabled языков программирования.
Добавлен конфигурационный параметр version языков программирования.
Добавлен конфигурационный параметр disable_auto_update языков программирования.
Добавлен глобальный конфигурационный параметр enable_language_import.
Добавлен глобальный конфигурационный параметр enable_language_import.
Переработан механизм взаимодействия сервера турнира и агентов компиляции.
Пользователь может завершить невиртуальный турнир в любой момент времени.
Добавлен конфигурационный параметр enable_group_merge задач.
Добавлен конфигурационный параметр run_max_file_size языков программирования.
Добавлен глобальный конфигурационный параметр disable_bson_store.
ej-polygon
При импорте из полигона поддерживаются баллы за тесты и группы тестов,
которые хранятся в элементах tests
и group
.
Поддерживается генерация параметров test_score_list, open_tests, final_open_tests.
Поддерживается генерация файла valuer.cfg для оценивающей программы gvaluer.
При импорте турнира из полигона задачи сортируются по строковому значению ключа задачи, он же используется для короткого имени задачи.
Добавлена опция enable_rss_limit при импорте из полигона.
ej-suid-container
Поддерживается переключение в разные непривилегированные пользователи для параллельной компиляции.
ej-super-run
ej-super-server
Поддерживается заголовок 'Authorization:' для последующей реализации API-вызовов.
Добавлена поддержка привилегированного API-вызова login-action-json
.
ejudge-control
Добавлена опция --compile-queue.
gvaluer
При компиляции ejudge программа автоматически компилируется и инсталлируется в каталог с проверяющими программами. Для этого в системе должен быть установлен компилятор C++.