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

From EjudgeWiki
(New page: === Общие изменения === Улучшен запуск и остановка ejudge. Программы проверяют, что они уже запущены, по спис...)
 
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
 +
Навигация: [[Main Page|Главная страница]]/[[Система ejudge]]/[[Разработка]]/[[История версий]]/[[Изменения в версии 2.3.13]]
 +
 
=== Общие изменения ===
 
=== Общие изменения ===
  
Line 28: Line 30:
 
=== ej-contests ===
 
=== ej-contests ===
  
Добавлены новые переменные `stand_column', `stand_name',
+
Добавлены новые переменные <tt>stand_column</tt>, <tt>stand_name</tt>, <tt>internal_name</tt> секции описания задачи.
`internal_name' секции описания задачи.
 
  
Переменная `stand_name' позволяет задавать название столбца задачи в
+
Переменная <tt>stand_name</tt> позволяет задавать название столбца задачи в таблице текущих результатов турнира. Если переменная не определена, то в качестве названия столбца используется короткое имя задачи <tt>short_name</tt>.
таблице текущих результатов турнира. Если переменная не определена, то
 
в качестве названия столбца используется короткое имя задачи
 
`short_name'.
 
  
Переменная `stand_column' позволяет отображать результаты по данной
+
Переменная <tt>stand_column</tt> позволяет отображать результаты по данной задаче в столбце, относящемся к другой задаче, имя которой задается в значении переменной. Столбец, относящийся к задаче с установленным значением <tt>stand_column</tt>, не показывается. Значением <tt>stand_column</tt> должно быть либо значение <tt>stand_name</tt>, либо значение <tt>short_name</tt>
задаче в столбце, относящемся к другой задаче, имя которой задается в
+
некоторой другой задачи, у которой не должна быть установлена <tt>stand_column</tt>. Например:
значении переменной. Столбец, относящийся к задаче с установленным
 
значением `stand_column', не показывается. Значением `stand_column'
 
должно быть либо значение `stand_name', либо значение `short_name'
 
некоторой другой задачи, у которой не должна быть установлена
 
`stand_column'. Например:
 
  
[problem]
+
[problem]
short_name = "A-1"
+
short_name = "A-1"
stand_name = "A"
+
stand_name = "A"
 +
[problem]
 +
short_name = "A-2"
 +
stand_column = "A"
 +
[problem]
 +
short_name = "A-3"
 +
stand_column = "A"
  
[problem]
+
Результаты по задачам "A-1", "A-2" и "A-3" будут отображены в столбце "A". Отдельных столбцов для "A-2" и "A-3" в таблице не будет. Переменной `stand_name' соответствует форматная подстановка <tt>%PS</tt>.
short_name = "A-2"
 
stand_column = "A"
 
  
[problem]
+
Значение переменной <tt>internal_name</tt> может использоваться в качестве компоненты пути к тестам или проверяющим программам. Этой переменной соответствует форматная подстановка <tt>%PL</tt>. Пример использования:
short_name = "A-3"
 
stand_column = "A"
 
  
Результаты по задачам "A-1", "A-2" и "A-3" будут отображены в столбце
+
[problem]
"A". Отдельных столбцов для "A-2" и "A-3" в таблице не будет.
+
short_name = "A"
Переменной `stand_name' соответствует форматная подстановка %PS.
+
internal_name = "abc"
 +
long_name = "An Abc problem"
 +
test_dir = "%PL"
  
Значение переменной `internal_name' может использоваться в качестве
+
В этом случае файлы с тестами будут размещаться не в каталоге <tt>tests/A</tt>, а в каталоге <tt>tests/abc</tt>.
компоненты пути к тестам или проверяющим программам. Этой переменной
 
соответствует форматная подстановка %PL. Пример использования:
 
  
[problem]
+
На странице привилегированных пользователей доступны ссылки "View users for IP addresses" и "View IP addresses for users". По первой ссылке отображается таблица, в которой для каждого IP-адреса в турнире перечисляется список пользователей, входивших с этого адреса. По второй ссылке отображается таблица, в которой для каждого пользователя перечисляется список IP-адресов, с которых он заходил в
short_name = "A"
+
турнир.
internal_name = "abc"
 
long_name = "An Abc problem"
 
test_dir = "%PL"
 
 
 
В этом случае файлы с тестами будут размещаться не в каталоге
 
`tests/A', а в каталоге `tests/abc'.
 
  
На странице привилегированных пользователей доступны ссылки
+
Добавление новых записей по CSV-таблице (ссылка "Add new runs in CSV format") возможно в трех режимах:
"View users for IP addresses" и "View IP addresses for users".
+
* "Create new submits, fail if a submit already exists" - в котором добавляются только новые записи
По первой ссылке отображается таблица, в которой для каждого IP-адреса
+
* "Modify existing submits, fail if a submit does not exist" - в котором только модифицируются существующие записи
в турнире перечисляется список пользователей, входивших с этого
+
* "Create non-existing submits and modify existing submits" - если запись существует, то она модифицируется, а в противном случае создается.
адреса. По второй ссылке отображается таблица, в которой для каждого
 
пользователя перечисляется список IP-адресов, с которых он заходил в
 
турнир.
 
Добавление новых записей по CSV-таблице (ссылка "Add new runs in CSV
 
format") возможно в трех режимах:
 
"Create new submits, fail if a submit already exists" - в котором
 
добавляются только новые записи
 
"Modify existing submits, fail if a submit does not exist" - в котором
 
только модифицируются существующие записи
 
"Create non-existing submits and modify existing submits" - если
 
запись существует, то она модифицируется, а в противном случае
 
создается.
 
  
При ручной установке статуса посылки в OK автоматически
+
При ручной установке статуса посылки в OK автоматически устанавливается максимальное количество баллов за задачу.
устанавливается максимальное количество баллов за задачу.
 
  
На странице просмотра непривилегированных пользователей выводится
+
На странице просмотра непривилегированных пользователей выводится информация о суммарном числе посылок и о суммарном размере посылок.
информация о суммарном числе посылок и о суммарном размере посылок.
 
  
В XML-условиях задач поддерживаются подстановки переменных в вариантах
+
В XML-условиях задач поддерживаются подстановки переменных в вариантах ответов.
ответов.
 
  
Поддерживаются интерактивные задачи. В интерактивных задачах ход
+
Поддерживаются интерактивные задачи. В интерактивных задачах ход тестирования определяется не только фиксированными тестовыми данными, но и выводом тестируемой программы. Для интерактивных задач параллельно с тестируемой программой запускается программа-интерактор. Стандартный вывод тестируемой программы направляется на стандартный ввод программы-интерактора, а стандартный ввод тестируемой программы соединяется со стандартным выводом программы-интерактора. Правила описания программы-интерактора описаны
тестирования определяется не только фиксированными тестовыми данными,
+
на странице: [[программы-интеракторы]].
но и выводом тестируемой программы. Для интерактивных задач
 
параллельно с тестируемой программой запускается
 
программа-интерактор. Стандартный вывод тестируемой программы
 
направляется на стандартный ввод программы-интерактора, а стандартный
 
ввод тестируемой программы соединяется со стандартным выводом
 
программы-интерактора. Правила описания программы-интерактора описаны
 
на странице:
 
http://ejudge.ru/wiki/index.php/%D0%9F%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%B\
 
C%D1%8B-%D0%B8%D0%BD%D1%82%D0%B5%D1%80%D0%B0%D0%BA%D1%82%D0%BE%D1%80%D1%8B
 
  
Для интерактивных задач должна быть установлена переменная
+
Для интерактивных задач должна быть установлена переменная <tt>interactor_cmd</tt> раздела описания задачи. Кроме того, может быть установлена переменная <tt>interactor_env</tt> для установки массива переменных окружения.
`interactor_cmd' раздела описания задачи. Кроме того, может быть
 
установлена переменная `interactor_env' для установки массива
 
переменных окружения.
 
  
 
=== ej-super-server ===
 
=== ej-super-server ===
  
Полностью реализовано новое редактирование настроек турнира.
+
Полностью реализовано новое редактирование настроек турнира. Особенность нового режима редактирования - не нужно нажимать на кнопку
Особенность нового режима редактирования - не нужно нажимать на кнопку
 
 
"Change" при изменении значения параметра.
 
"Change" при изменении значения параметра.

Latest revision as of 06:51, 10 April 2011

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

Общие изменения

Улучшен запуск и остановка ejudge. Программы проверяют, что они уже запущены, по списку процессов и никогда не запускаются, если уже работают.

Для единообразия переименованы многие программы: командный интерфейс пользователя:

       new-server-cmd          ->      ejudge-contests-cmd
       edit-userlist           ->      ejudge-edit-users
       execute                 ->      ejudge-execute
       job-server-cmd          ->      ejudge-jobs-cmd

серверные программы:

       compile                 ->      ej-compile
       compile-control         ->      ej-compile-control
       new-server              ->      ej-contests
       new-server-control      ->      ej-contests-control
       convert-clars           ->      ej-convert-clars
       convert-runs            ->      ej-convert-runs
       job-server              ->      ej-jobs
       job-server-control      ->      ej-jobs-control
       run                     ->      ej-run
       serve                   ->      ej-serve
       super-serve             ->      ej-super-server
       super-serve-control     ->      ej-super-server-control
       userlist-server         ->      ej-users
       userlist-server-control ->      ej-users-control

ej-contests

Добавлены новые переменные stand_column, stand_name, internal_name секции описания задачи.

Переменная stand_name позволяет задавать название столбца задачи в таблице текущих результатов турнира. Если переменная не определена, то в качестве названия столбца используется короткое имя задачи short_name.

Переменная stand_column позволяет отображать результаты по данной задаче в столбце, относящемся к другой задаче, имя которой задается в значении переменной. Столбец, относящийся к задаче с установленным значением stand_column, не показывается. Значением stand_column должно быть либо значение stand_name, либо значение short_name некоторой другой задачи, у которой не должна быть установлена stand_column. Например:

[problem]
short_name = "A-1"
stand_name = "A"
[problem]
short_name = "A-2"
stand_column = "A"
[problem]
short_name = "A-3"
stand_column = "A"

Результаты по задачам "A-1", "A-2" и "A-3" будут отображены в столбце "A". Отдельных столбцов для "A-2" и "A-3" в таблице не будет. Переменной `stand_name' соответствует форматная подстановка %PS.

Значение переменной internal_name может использоваться в качестве компоненты пути к тестам или проверяющим программам. Этой переменной соответствует форматная подстановка %PL. Пример использования:

[problem]
short_name = "A"
internal_name = "abc"
long_name = "An Abc problem"
test_dir = "%PL"

В этом случае файлы с тестами будут размещаться не в каталоге tests/A, а в каталоге tests/abc.

На странице привилегированных пользователей доступны ссылки "View users for IP addresses" и "View IP addresses for users". По первой ссылке отображается таблица, в которой для каждого IP-адреса в турнире перечисляется список пользователей, входивших с этого адреса. По второй ссылке отображается таблица, в которой для каждого пользователя перечисляется список IP-адресов, с которых он заходил в турнир.

Добавление новых записей по CSV-таблице (ссылка "Add new runs in CSV format") возможно в трех режимах:

  • "Create new submits, fail if a submit already exists" - в котором добавляются только новые записи
  • "Modify existing submits, fail if a submit does not exist" - в котором только модифицируются существующие записи
  • "Create non-existing submits and modify existing submits" - если запись существует, то она модифицируется, а в противном случае создается.

При ручной установке статуса посылки в OK автоматически устанавливается максимальное количество баллов за задачу.

На странице просмотра непривилегированных пользователей выводится информация о суммарном числе посылок и о суммарном размере посылок.

В XML-условиях задач поддерживаются подстановки переменных в вариантах ответов.

Поддерживаются интерактивные задачи. В интерактивных задачах ход тестирования определяется не только фиксированными тестовыми данными, но и выводом тестируемой программы. Для интерактивных задач параллельно с тестируемой программой запускается программа-интерактор. Стандартный вывод тестируемой программы направляется на стандартный ввод программы-интерактора, а стандартный ввод тестируемой программы соединяется со стандартным выводом программы-интерактора. Правила описания программы-интерактора описаны на странице: программы-интеракторы.

Для интерактивных задач должна быть установлена переменная interactor_cmd раздела описания задачи. Кроме того, может быть установлена переменная interactor_env для установки массива переменных окружения.

ej-super-server

Полностью реализовано новое редактирование настроек турнира. Особенность нового режима редактирования - не нужно нажимать на кнопку "Change" при изменении значения параметра.