Difference between revisions of "Изменения в версии 2.3.20"
(→ej-contests) |
|||
Line 93: | Line 93: | ||
Ограничение виртуальной памяти (<tt>[[serve.cfg:global:compile_max_vm_size|compile_max_vm_size]]</tt>) для компиляции увеличено для 512M в генерируемых конфигурационных файлах. | Ограничение виртуальной памяти (<tt>[[serve.cfg:global:compile_max_vm_size|compile_max_vm_size]]</tt>) для компиляции увеличено для 512M в генерируемых конфигурационных файлах. | ||
+ | |||
+ | === [[ejudge-upgrade-web]] === | ||
+ | |||
+ | Явно прописано, что скрипт должен исполняться /bin/bash. | ||
=== [[ej-contests]] === | === [[ej-contests]] === |
Revision as of 13:25, 26 December 2011
Навигация: Главная страница/Система ejudge/Разработка/История версий/Изменения в версии 2.3.20
Contents
contest.xml
Добавлен элемент <register_subject>, который позволяет задавать тему (поле subject:) писем, автоматически рассылаемых при регистрации новых пользователей.
Добавлен элемент <register_subject_en>, который позволяет задавать тему (поле subject:) писем, автоматически рассылаемых при регистрации новых пользователей, в случае, если выбран английский язык интерфейса.
Добавлен элемент <open_time>, позволяющий задавать время открытия виртуального турнира.
Добавлен элемент <close_time>, позволяющий задавать время открытия виртуального турнира.
Добавлен атрибут checkbox элемента <field>. Если значение атрибута установлено в значение "истина", то при редактировании анкеты пользователя соответствующее поле будет иметь тип ввода checkbox.
Добавлен бит полномочий UNLOAD_CONTEST. Пользователь, для которого установлен этот бит, может выполнять выгрузку турнира из памяти сервера (то есть пересчитываение конфигурационных файлов турнира) (Ticket #66).
serve.cfg
Добавлена глобальная конфигурационная переменная ignore_bom. Если переменная установлена в положительное значение, в сдаваемых на проверку текстовых файлах определяется и удаляется BOM (byte-order mark).
Добавлена глобальная конфигурационная переменная tgzdir_sfx. Переменная позволяет задать глобальное значение для суффикса имен рабочих каталогов тестирования.
Добавлена глобальная конфигурационная переменная tgzdir_pat. Переменная позволяет задать глобальное значение для шаблона имен рабочих каталогов тестирования.
Добавлена конфигурационная переменная задачи ignore_prev_ac. Если переменная установлена в положительное значение, то если очередная посылка пользователя по задаче получает статус "AC", то статус предыдущих посылок пользователя по этой задаче меняется на IG. Эта возможность полезна, когда решения задач просматриваются и утверждаются проверяющим, и позволяет избежать накопления посылок со статусом AC одного и того же пользователя по одной и той же задаче.
Добавлена конфигурационная переменная задачи tgzdir_sfx. Переменная позволяет задать значение для суффикса имен рабочих каталогов тестирования.
Добавлена конфигурационная переменная задачи tgzdir_pat. Переменная позволяет задать значение для шаблона имен рабочих каталогов тестирования.
Добавлена конфигурационная переменная задачи disable_stderr. Если переменная установлена в положительное значение, то для тестируемой программы запрещается вывод в stderr, то есть если программа что-либо вывела в stderr, вывод программы в stdout или в выходной файл не проверяется, а посылке присваивается статус Presentation Error.
Добавлена конфигурационная переменная задачи normalization. Переменная позволяет задать тип преобразования текстового файла теста при сохранении теста при использовании веб-интерфейса редактирования тестов.
Добавлена конфигурационная переменная задачи lang_compiler_env. Переменная позволяет задать переменные окружения для компиляции данной задачи.
Добавлена конфигурационная переменная задачи solution_src. Переменная позволяет задать имя исходного файла с решением задачи в случае, когда полный исходный текст программы для тестирования формируется добавлением хедера или футера.
Добавлена конфигурационная переменная задачи solution_cmd. Переменная позволяет задать имя исполняемой программы с эталонным решением задачи.
.inf-файлы
Добавлен параметр environ, который позволяет задавать переменные окружения для запуска тестируемой программы на данном тесте.
Добавлен параметр disable_stderr. Если данный параметр установлен в положительное значение, запрещается вывод программы на stderr, аналогично конфигурационной переменной disable_stderr раздела описания задачи.
Языки программирования
Добавлена поддержка компилятора FreeBasic [1]. Компилятор совместим с компилятором QuickBasic и может использоваться как его замена.
Поддерживается JDK 7.
Для языка make поддерживаются переменные окружения EJ_MAKE_CFLAGS и EJ_MAKE_CXXFLAGS, которые позволяют задавать значения для переменных CFLAGS и CXXFLAGS.
ejudge-contests-cmd
Добавлена поддержка команды unload-2 (Ticket #66).
ejudge-edit-users
Исправлены падения программы при редактировании очень больших баз пользователей (Ticket #61).
ejudge-execute
Существенно расширен набор опций, поддерживаемых этой программой. Программа теперь пригодна для использования в качестве инструмента контролируемого запуска программ из скриптов.
ejudge-setup
Ограничение виртуальной памяти (compile_max_vm_size) для компиляции увеличено для 512M в генерируемых конфигурационных файлах.
ejudge-upgrade-web
Явно прописано, что скрипт должен исполняться /bin/bash.
ej-contests
Сравнение посылок работает и для output-only задач, если сданные файлы являются текстовыми файлами.
Исправлены ошибки, приводившие к падению программы в случае, если в логе посылок встречались записи с недопустимым идентификатором задачи (например, если задача была удалена из конфигурационного файла) или с недопустимым идентификатором языка программирования.
В выражениях фильтра статусы посылок можно задавать как заглавными, так и строчными буквами, например
status == ok
Модифицирован внешний вид таблицы посылок в административном интерфейсе (new-master). Убрана кнопка изменения статуса посылки и выпадающий список возможных статусов. Вместо них добавлено всплывающее меню, активирующееся при клике по текущему статусу.
При отображении списка посылок у участника игнорируются посылки с недопустимым идентификатором задачи или языка программирования.
Исправлено отображение таблицы результатов в турнирах по системе Olympiad.
Исправлено падение программы при отображении протокола тестирования в некоторых случаях отображения вывода тестируемой программы на stderr.
При редактировании регистрационной анкеты кнопки Cancel и Submit обменяны местами, таким образом при нажатии Enter срабатывает кнопка Submit.
Улучшена обработка различных ошибок, которые могут возникать при отправке решения на тестирование. В частности, корректно диагностируется и отображается ошибка отсутствия файлов заголовка или тела (src_header, src_footer) программы (Ticket #58).
При скачивании исходного текста посылки в виде .tar архива корректно определяется тип сжатия архива и у скачиваемого файла формируется корректный суффикс (.tar, .tar.gz, .tar.bz2) (Ticket #65).
Если XML-файл с условием задачи был некорректно сформирован, то турнир все равно будет загружен и будет работать, но вместо соответствующего условия будет отображаться сообщение об ошибке. В предыдущих версиях турнир не грузился, если хотя бы один XML-файл с условием задачи содержал ошибку.
При рассылке писем с уведомлением о поступлении clar, о возникновении ситуации CF или суточной статистики используется значение элемента <register_email> глобального конфигурационного файла ejudge.cfg, если элемент <register_email> не задан в конфигурационном файле турнира (Ticket #68).
Поддерживаются форматные преобразования %U0 ... %U9 для выода полей field0 ... field9.
ej-make-archive
Новая программа для подготовки архивов рабочих каталогов для тестирования.
ej-run
Исправлена ошибка, которая могла приводить к падению программы.
Исправлена ошибка, из-за которой при некоторых условиях вывод проверяющей программы накапливался от теста к тесту, а не очищался.
Эталонный рабочий каталог тестируемой программы теперь должен иметь суффикс, задаваемый конфигурационными переменными tgzdir_sfx или tgzdir_pat. В предыдущих версиях эталонный рабочий каталог не имел никакого суффикса, то есть назывался по номеру теста.
ej-super-server
Исправлено падение программы при установке флагов регистрации на турнир при редактировании базы данных пользователей.
Поддерживается редактирование новых элементов XML-файла конфигурации турнира и новых конфигурационных переменных файла serve.cfg.
cmp_bytes
Исправлена ошибка, приводившая к падению программы.
cmp_file
Добавлена поддержка переменной окружения EJUDGE_NOCASE. Если данная переменная окружения установлена, сравнение строк ведется без учета регистра букв (только для базовых символов латинского алфавита). Переменные окружения можно устанавливать с помощью конфигурационной переменной checker_env раздела описания задачи.
style_archive
Добавлена поддержка переменной окружения EJ_FORBIDDEN_NAMES. Переменная позволяет задавать список имен файлов, которые не должны находиться в архиве. Имена в списке разделяются запятой. Например, при приеме архива для последующей компиляции с помощью make следуюет запретить нахождение в архиве исполняемого файла-цели компиляции.
Добавлена поддержка переменной окружения EJ_FORBIDDEN_SUFFIXES. Переменная позволяет задавать список суффиксов имен файлов, которые не должны находиться в архиве. Суффиксы в списке разделяются запятой. Например, при приеме архива для последующей компиляции с помощью make следуюет запретить нахождение в архиве объектных файлов (суффикс .o).