Difference between revisions of "Изменения в версии 3.13.0"

From EjudgeWiki
(...)
(...)
Line 5: Line 5:
 
[[Изменения в версии 3.12.0|Предыдущая версия]]
 
[[Изменения в версии 3.12.0|Предыдущая версия]]
  
 +
=== Список Pull Requests ===
  
 +
[https://github.com/blackav/ejudge/milestone/6?closed=1 Список изменений на GitHub]
  
 +
=== Большие новые возможности ===
 +
 +
* Добавлена поддержка [[Правила IOI расчета баллов|режима слияния подгрупп (правила IOI)]].
 +
* Добавлен универсальный плагин для [[Аутентификация с помощью OAUTH2|аутентификации по OIDC]].
 +
* Переработан механизм [[Улучшенная поддержка серверов компиляции|взаимодействия сервера турнира и агентов компиляции]].
 +
* Добавлен плагин для отправки нотификаций в redis streams.
 +
* В HTML-условиях поддерживается MathJax3.
  
 
=== [[ej-compile]] ===
 
=== [[ej-compile]] ===
Line 17: Line 26:
 
под разными идентификаторами пользователя и не будут влиять
 
под разными идентификаторами пользователя и не будут влиять
 
друг на друга.
 
друг на друга.
 +
 +
Поддерживаются расширенные свойства скомпилированных файлов.
 +
Они активируются с помощью установки глобального конфигурационного
 +
параметра enable_run_props турнира. В этом случае в скрипт
 +
компиляции передается третий параметр - путь к файлу,
 +
в который скрипт компиляции может записать дополнительные свойства
 +
сгенерированного исполняемого файла. Этот файл передается
 +
в сервис запуска решений.
 +
 +
При копировании файлов из каталога, заданного с помощью конфигурационного
 +
параметра extra_src_dir, в рабочий каталог компиляции
 +
выполняется рекурсивное копирование.
 +
 +
Для Typescript поддерживается альтернативный транслятор tsx.
 +
 +
В ejudge.xml поддерживается возможность не запускать инстансы ej-compile и ej-super-run (parallelism и
 +
compile_parallelism).
  
 
=== [[ej-compile-control]] ===
 
=== [[ej-compile-control]] ===
Line 36: Line 62:
 
Добавлена конфигурационная переменная задачи standard_valuer,
 
Добавлена конфигурационная переменная задачи standard_valuer,
 
которая позволяет задать стандартную программу оценивания gvaluer.
 
которая позволяет задать стандартную программу оценивания gvaluer.
 +
 +
Поддерживается экспорт архивов посылок в фоновом режиме.
 +
После нажатия "Download archive of runs" и выбора опций
 +
скачивания решений создаётся фоновое задание, статус исполнения
 +
которого можно отслеживать. Когда подготовка архива будет
 +
закончена, архив можно будет скачать по ссылке.
 +
 +
Добавлена поддержка привилегированного API-вызова <code>get-user</code>.
 +
 +
Добавлена поддержка привилегированного API-вызова <code>copy-user-info</code>.
 +
 +
Добавлена поддержка привилегированного API-вызова <code>change-registration</code>.
 +
 +
Добавлена поддержка привилегированного API-вызова <code>problem-status-json</code>.
 +
 +
Добавлена поддержка привилегированного API-вызова <code>list-languages</code>.
 +
 +
Добавлена поддержка привилегированного API-вызова <code>create-user-session</code>.
 +
 +
Добавлена поддержка привилегированного API-вызова <code>change-registrations</code>.
 +
 +
Добавлена поддержка API-вызова <code>special-flow</code>.
 +
 +
В протоколах тестирования отображается размер использованной памяти (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.
 +
 +
Добавлен глобальный конфигурационный параметр language_import.
 +
 +
Переработан механизм взаимодействия сервера турнира и агентов компиляции.
 +
 +
Пользователь может завершить невиртуальный турнир в любой момент времени.
 +
 +
Добавлен конфигурационный параметр enable_group_merge задач.
 +
 +
Добавлен конфигурационный параметр run_max_file_size языков программирования.
 +
 +
Добавлен глобальный конфигурационный параметр disable_bson_store.
  
 
=== [[ej-polygon]] ===
 
=== [[ej-polygon]] ===
Line 50: Line 130:
 
При импорте турнира из полигона задачи сортируются по строковому
 
При импорте турнира из полигона задачи сортируются по строковому
 
значению ключа задачи, он же используется для короткого имени задачи.
 
значению ключа задачи, он же используется для короткого имени задачи.
 +
 +
Добавлена опция enable_rss_limit при импорте из полигона.
  
 
=== [[ej-suid-container]] ===
 
=== [[ej-suid-container]] ===
Line 55: Line 137:
 
Поддерживается переключение в разные непривилегированные пользователи
 
Поддерживается переключение в разные непривилегированные пользователи
 
для параллельной компиляции.
 
для параллельной компиляции.
 +
 +
=== [[ej-super-run]] ===
 +
 +
=== [[ej-super-server]] ===
 +
 +
Поддерживается заголовок 'Authorization:' для последующей реализации API-вызовов.
 +
 +
Добавлена поддержка привилегированного API-вызова <code>login-action-json</code>.
 +
 +
=== [[ejudge-control]] ===
 +
 +
Добавлена опция --compile-queue.
  
 
=== [[gvaluer]] ===
 
=== [[gvaluer]] ===

Revision as of 19:04, 18 November 2024

Навигация: Главная страница/Система ejudge/Разработка/История версий/Изменения в версии 3.13.0

Время выхода: TBA г.

Предыдущая версия

Список Pull Requests

Список изменений на GitHub

Большие новые возможности

ej-compile

Поддерживается аргумент командной строки -y, в котором передаётся серийный номер параллельного запуска программы на одном хосте. Этот параметр используется при запуске процесса компиляции в контейнере, чтобы использовать отдельный идентификатор пользователя компиляции. Параллельные компиляции на одном хосте будут выполняться под разными идентификаторами пользователя и не будут влиять друг на друга.

Поддерживаются расширенные свойства скомпилированных файлов. Они активируются с помощью установки глобального конфигурационного параметра enable_run_props турнира. В этом случае в скрипт компиляции передается третий параметр - путь к файлу, в который скрипт компиляции может записать дополнительные свойства сгенерированного исполняемого файла. Этот файл передается в сервис запуска решений.

При копировании файлов из каталога, заданного с помощью конфигурационного параметра extra_src_dir, в рабочий каталог компиляции выполняется рекурсивное копирование.

Для Typescript поддерживается альтернативный транслятор tsx.

В ejudge.xml поддерживается возможность не запускать инстансы ej-compile и ej-super-run (parallelism и compile_parallelism).

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.

Добавлен глобальный конфигурационный параметр 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++.