Difference between revisions of "Изменения в версии 3.12.0"
(...) |
(...) |
||
(One intermediate revision by the same user not shown) | |||
Line 3: | Line 3: | ||
Время выхода: 29 декабря 2023 г. | Время выхода: 29 декабря 2023 г. | ||
− | [[Изменения в версии 3.11.0|Предыдущая версия]] | + | [[Изменения в версии 3.11.0|Предыдущая версия]] [[Изменения в версии 3.13.0|Следующая версия]] |
=== Основные улучшения === | === Основные улучшения === | ||
Line 164: | Line 164: | ||
Добавлен конфигурационный параметр задачи | Добавлен конфигурационный параметр задачи | ||
<code>[[serve.cfg:problem:test_generator_cmd|test_generator_cmd]]</code>. | <code>[[serve.cfg:problem:test_generator_cmd|test_generator_cmd]]</code>. | ||
− | Он позволяет задать программу для генерации тестовых данных "на лету". | + | Он позволяет задать [[Программы генерации тестов|программу для генерации тестовых данных]] "на лету". |
Добавлен конфигурационный параметр задачи | Добавлен конфигурационный параметр задачи | ||
<code>[[serve.cfg:problem:test_generator_env|test_generator_env]]</code>. | <code>[[serve.cfg:problem:test_generator_env|test_generator_env]]</code>. | ||
− | Он позволяет задать переменные окружения для программы генерации | + | Он позволяет задать переменные окружения для |
− | тестовых данных на лету. | + | [[Программы генерации тестов|программы генерации тестовых данных]] |
+ | "на лету". | ||
Добавлено эвристическое определение ошибки [[Memory-Limit Exceeded]] | Добавлено эвристическое определение ошибки [[Memory-Limit Exceeded]] |
Latest revision as of 05:19, 29 December 2024
Навигация: Главная страница/Система ejudge/Разработка/История версий/Изменения в версии 3.12.0
Время выхода: 29 декабря 2023 г.
Предыдущая версия Следующая версия
Contents
Основные улучшения
- Добавлена поддержка языка PostgresQL.
- Реализована возможность передать исходный код посылки в проверяющую программу.
- Поддерживаются задачи с динамической генерацией условий и тестов.
- Поддерживается эвристическое определение ошибки Memory-Limit Exceeded.
- Поддерживается регистрация на турнир и получение пароля для входа для уже зарегистрированных пользователей с помощью Telegram-бота.
Полный список закрытых ошибок и улучшений доступен здесь.
ej-compile
Добавлен конфигурационный параметр
compiler_container_options
, который позволяет задать настройки контейнеризации
для запуска транслятора данного языка программирования.
Обратите внимание, что параметр
container_options
применяется для запуска программ, написанных на данном языке
программирования.
Добавлен конфигурационный параметр языка программирования
preserve_line_numbers
,
который включает или выключает режим сохранения номеров строк
в программах на скриптовых языках для конкретного языка программирования.
Добавлена поддержка для языка SQL в реализации Postgres (см. Issue #222).
Для языка Rust поддерживается сборка с помощью cargo.
ej-contests
Добавлен конфигурационный параметр задачи
plugin_entry_name
.
Этот параметр позволяет задать имя точки входа в плагин задачи.
Добавлен конфигурационный параметр задачи
statement_ignore_ip
.
Этот параметр разрешает показ условия задачи без ограничения на
IP-адрес.
Добавлен конфигурационный параметр задачи
enable_src_for_testing
.
Этот параметр включает передачу исходного кода тестируемой посылки
в программу ej-super-run.
При просмотре исходного кода посылок, сданных с помощью интеграции с системами контроля версий, добавлена ссылка на соответствующий коммит в системе контроля версий (см. Issue #263).
Исправлена ошибка, которая приводила к потере пакетов, содержащих результаты компиляции или тестирования, если в конфигурационном файле соответствующего турнира содержалась ошибка, которая приводила к невозможности загрузки турнира в память (см. Issue #267).
При экспорте архива с посылками добавлено экранирование "проблемных" символов в названии задачи (см. Issue #244).
Добавлена возможность скачивания "скрытых" посылок (см. Issue #246).
Исправлена ошибка утечки файловых дескрипторов при просмотре очереди посылок (см. Issue #266).
Исправлена ошибка двойного освобождения памяти (см. Issue #261).
Для посылок в формате Microsoft Office 2007 и выше правильно определяется mime type (см. Issue #257).
В лог-файл выводится больше информации о действиях привилегированных пользователей (см. Issue #255).
Исправлена ошибка неправильного значения поля user_score
в XML-протоколе тестирования.
(см. Issue #237).
Реализована поддержка динамической генерации условия задачи (см. Issue #231).
ej-jobs
Поддерживается регистрация в ejudge и на турнир с помощью Telegram.
Для этого добавлен атрибут
enable_telegram_registration
в конфигурационный файл ejudge.xml
и атрибут
enable_telegram_registration
в конфигурационный файл турнира contest.xml.
При аутентификации OAUTH или Telegram корректно поддерживаются
свойства user_contest
(см. Issue #260).
Бот Telegram поддерживает выдачу паролей с помощью команды password
(см. Issue #238).
ej-polygon
Улучшения импорта из системы polygon (см. Issue #227):
- при импорте создается statement.xml, который включает условие задачи в HTML-формате с помощью iframe
- по умолчанию используется polygon API
- по умолчанию у импортированных задач игнорируется главное решение
- поддерживается импорт задач с правами доступа OWNER
ej-suid-container
Улучшена поддержка языка java и других jvm-языков. Им для работы
нужно актуальное содержимое каталога /etc/java
,
поэтому этот каталог монтируется с хост-системы
(см. Issue #276).
Поддерживается эвристическое определение ошибок Memory-Limit Exceeded и Security Violation.
Улучшена изоляция запускаемых решений.
ej-super-run
Добавлен конфигурационный параметр задачи
disable_vm_size_limit
.
Этот параметр снимает ограничение на размер виртуального адресного пространства.
Добавлен конфигурационный параметр задачи
ignore_term_signal
.
Этот параметр включает игнорирование аварийного завершения тестируемой
программы по сигналу.
Добавлен конфигурационный параметр языка программирования
enable_ejudge_env
.
Этот параметр включает передачу различных параметров тестирования
в тестируемую программу с помощью
переменных окружения.
Добавлен конфигурационный параметр языка программирования
run_env_file
.
Этот параметр позволяет задать имя файла с переменными окружения,
которые будут переданы в тестируемую программу.
Добавлен конфигурационный параметр языка программирования
clean_up_cmd
.
Этот параметр позволяет задать имя программы, которая будет
выполняться после тестирования программы на данном языке,
и задача которой корректно очистить окружение.
Добавлен конфигурационный параметр языка программирования
clean_up_env_file
.
Этот параметр позволяет задать имя файла с переменными окружения,
которые будут переданы в программу очистки окружения.
Добавлен конфигурационный параметр задачи
test_generator_cmd
.
Он позволяет задать программу для генерации тестовых данных "на лету".
Добавлен конфигурационный параметр задачи
test_generator_env
.
Он позволяет задать переменные окружения для
программы генерации тестовых данных
"на лету".
Добавлено эвристическое определение ошибки Memory-Limit Exceeded при выполнения программ в контейнере (см. Issue #221).
Исправлена ошибка, заключающаяся в том, что слишком большой файл стандартного потока вывода или стандартного потока ошибок не добавлялся в протокол тестирования. Теперь файл обрезается до максимально допустимого размера (см. Issue #240).
В запускаемые программы передаётся переменная окружения
EJUDGE_SUPER_RUN_SERIAL
.
ej-super-server
При операции "Check contests settings" поддерживается конфигурационный
параметр задачи
problem_dir
.
Таким образом, эта операция работает, когда задачи не находятся
в каталоге турнира
(см. Issue #265).
.inf-файлы
Добавлен параметр ignore_term_signal
для игнорирования
аварийного завершения тестируемой программы по сигналу на данном тесте.
cmp_binary
Новая стандартная проверяющая программа, которая сравнивает заданный файл в рабочем каталоге тестируемой программы после её завершения и эталонный файл с ответом.