Список изменений в версии 2.1.29 (20040420)

Если в результате тестирования этой версии не будет обнаружено ошибок, следующая версия (полностью совпадающая с текущей) получит номер 2.2.0. Таким образом произойдёт переход к новой стабильной версии системы ejudge.

Все параметры периода компиляции, которые не могут быть изменены с помощью конфигурационных файлов, вынесены в отдельный заголовочный файл settings.h. Файл содержит определения следующих констант:

В конфигурационный файл описания турнира contest.xml добавлен новый атрибут closed элемента <contest>. Атрибут может принимать значения yes (true) и no (false). Его значение по умолчанию - false. Если этот атрибут равен true, данный турнир считается "закрытым" (оконченным), то есть регистрация на него с помощью CGI-программы register невозможна, и запуск CGI-программы team для данного турнира также невозможен (будет выведено сообщение о том, что данный турнир закрыт). Данный атрибут турнира может устанавливаться, когда желательно предотвратить случайные бессмысленные попытки регистрации на турнир и участия в нём.

В конфигурационный файл описания турнира serve.cfg добавлены конфигурационные переменные priority_adjustment, user_priority_adjustment для установки приоритета проверки решений. Приоритет проверки решений изменяется от -16 (самый высокий приоритет) до 15 (самый низкий приоритет) и может устанавливаться глобально для турнира, в зависимости от участника турнира, в зависимости от языка программирования, задачи или тестировщика. Приоритет по умолчанию - 0, конфигурационные переменные описывают изменение приоритета, например, priority_adjustment равный -2 в секции описания задачи указывает, что проверка решений по данной задаче получает -2 к текущему значению приоритета. Полное значение приоритета получается сложением глобального приоритета, приоритета задачи, приоритета языка программирования и приоритета тестировщика.

Программа run выбирает запросы на тестирование из каталога запросов в зависимости от приоритета запроса. Более приоритетный запрос обрабатывается первым. Если во время тестирования некоторой посылки поступает более приоритетная посылка, тестирование текущей посылки доводится до конца. Обратите внимание, что приоритет тестирования не имеет отношения к приоритету процесса (т. н. nice), с которым работает программа тестирования.

В конфигурационный файл serve.cfg добавлена конфигурационная переменная disable_language секции описания задачи. Данная конфигурационная переменная позволяет указать языки программирования, которые не могут использоваться для посылок по данной задаче. Каждый раз указывается только одно короткое имя языка программирования, но переменная disable_language может быть использована несколько раз в описании одной задачи. Например,

disable_language = "gcc"
disable_language = "g++"
Запрещает для некоторой задачи использование языков с коротким именем gcc и g++.

Last modified:

Copyright © 2003,2004 Alexander Chernov