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

From EjudgeWiki
(Created page with "Навигация: Главная страница/Система ejudge/Разработка/История версий/Изменения в в...")
 
(...)
Line 1: Line 1:
 
Навигация: [[Main Page|Главная страница]]/[[Система ejudge]]/[[Разработка]]/[[История версий]]/[[Изменения в версии 3.11.0]]
 
Навигация: [[Main Page|Главная страница]]/[[Система ejudge]]/[[Разработка]]/[[История версий]]/[[Изменения в версии 3.11.0]]
 +
 +
Время выхода:  2023 г.
 +
 +
[[Изменения в версии 3.10.3|Предыдущая версия]]
 +
 +
В этой версии добавлены две новых возможности:
 +
* [[Внешние идентификаторы пользователей]]
 +
* [[Нотификации во внешние системы]]
 +
 +
Они могут быть полезными при использовании ejudge как сервиса для проверки
 +
решений.
 +
 +
Добавлена автоматическая сборка докер-образа при коммите в ветку
 +
master на github. Исправлена ошибка сборки
 +
([https://github.com/blackav/ejudge/issues/196 Issue #196]).
 +
 +
=== [[ej-agent]] ===
 +
 +
Исправлена ошибка [https://github.com/blackav/ejudge/issues/207 Issue #207].
 +
 +
=== [[ej-compile]] ===
 +
 +
Исправлена ошибка [https://github.com/blackav/ejudge/issues/206 Issue #206].
 +
 +
Добавлена опция <code>--lang-id-map</code>, которая позволяет
 +
задать отображение идентификаторов языков во входных пакетах в
 +
идентификаторы языков, обрабатываемых на данном сервере компиляции
 +
([https://github.com/blackav/ejudge/issues/205 Issue #205]).
 +
 +
=== [[ej-contests]] ===
 +
 +
Исправлены ошибки:
 +
* [https://github.com/blackav/ejudge/issues/218 Issue #218]
 +
* [https://github.com/blackav/ejudge/issues/202 Issue #202]
 +
* [https://github.com/blackav/ejudge/issues/197 Issue #197]
 +
 +
Добавлена поддержка глобального конфигурационного параметра турнира
 +
<code>[[serve.cfg:global:enable_remote_cache|enable_remote_cache]]</code>
 +
для уменьшения количества передаваемых данных по сети
 +
([https://github.com/blackav/ejudge/issues/212 Issue #212]).
 +
 +
Добавлена поддержка глобального конфигурационного параметра турнира
 +
<code>[[serve.cfg:global:preserve_line_numbers|preserve_line_numbers]]</code>,
 +
назначение которого &mdash; сохранять номера строк, которые были в исходном
 +
коде, при исполнении программы на скриптовом языке
 +
([https://github.com/blackav/ejudge/issues/213 Issue #213]).
 +
 +
Добавлена поддержка
 +
[[Внешние идентификаторы пользователей|внешних идентификаторов пользователя]]
 +
в базе данных посылок
 +
([https://github.com/blackav/ejudge/issues/169 Issue #169],
 +
[https://github.com/blackav/ejudge/issues/188 Issue #188]).
 +
 +
=== [[ej-suid-container]] ===
 +
 +
Добавлена поддержка опции <code>ml</code> для настройки loopback
 +
сетевого интерфейса в контейнере
 +
([https://github.com/blackav/ejudge/issues/204 Issue #204]).
 +
 +
Добавлена поддержка опцити <code>mr</code> для сохранения исходного
 +
каталога <code>/run</code> в создаваемом контейнере
 +
([https://github.com/blackav/ejudge/issues/203 Issue #203]).
 +
 +
=== [[ej-super-run]] ===
 +
 +
Поддерживается опция командной строк <code>--local-cache</code>,
 +
которая включает поддержку кеширования исполняемых файлов
 +
на стороне хоста тестирования и исполнения
 +
([https://github.com/blackav/ejudge/issues/212 Issue #212]).
 +
 +
Поддерживается режим сохранения номеров строк исходного файла
 +
скриптовых языков ([https://github.com/blackav/ejudge/issues/213 Issue #213]).
 +
В этом случае программа ej-super-run убирает начало файла
 +
с добавленной строкой <code>#! INTERP</code>, и обрабатывает
 +
эту строку самостоятельно и вызывает указанный интерпретатор
 +
<code>INTERP</code> напрямую.
 +
 +
=== Изменения в поддержке языков программирования ===
 +
 +
Ускорена компиляция [[Lang:dotnet-cs|dotnet C#]].
 +
Скрипт компиляции не создает новый проект
 +
при каждой компиляции, а пытается использовать заранее сохраненный
 +
готовый проект. Это уменьшает время компиляции примерно на секунду.
 +
 +
Для языка [[Lang:scala|scala]] поддерживается компиляция с помощью sbt.
 +
При использовании
 +
sbt компиляция работает намного медленнее, чем без него, зато sbt
 +
генерирует самодостаточные jar-файлы, которые запускаются обычной
 +
командой java. Это позволяет, например, при компиляции подключать
 +
внешние зависимости, которые будут добавлены в jar-файл.
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
[https://github.com/blackav/ejudge/issues/194 Issue #194]
 +
 +
[https://github.com/blackav/ejudge/issues/189 Issue #189]
 +
 +
 +
 +
[https://github.com/blackav/ejudge/issues/187 Issue #187]
 +
 +
[https://github.com/blackav/ejudge/issues/186 Issue #186]
 +
 +
[https://github.com/blackav/ejudge/issues/180 Issue #180]

Revision as of 05:33, 1 August 2023

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

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

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

В этой версии добавлены две новых возможности:

Они могут быть полезными при использовании ejudge как сервиса для проверки решений.

Добавлена автоматическая сборка докер-образа при коммите в ветку master на github. Исправлена ошибка сборки (Issue #196).

ej-agent

Исправлена ошибка Issue #207.

ej-compile

Исправлена ошибка Issue #206.

Добавлена опция --lang-id-map, которая позволяет задать отображение идентификаторов языков во входных пакетах в идентификаторы языков, обрабатываемых на данном сервере компиляции (Issue #205).

ej-contests

Исправлены ошибки:

Добавлена поддержка глобального конфигурационного параметра турнира enable_remote_cache для уменьшения количества передаваемых данных по сети (Issue #212).

Добавлена поддержка глобального конфигурационного параметра турнира preserve_line_numbers, назначение которого — сохранять номера строк, которые были в исходном коде, при исполнении программы на скриптовом языке (Issue #213).

Добавлена поддержка внешних идентификаторов пользователя в базе данных посылок (Issue #169, Issue #188).

ej-suid-container

Добавлена поддержка опции ml для настройки loopback сетевого интерфейса в контейнере (Issue #204).

Добавлена поддержка опцити mr для сохранения исходного каталога /run в создаваемом контейнере (Issue #203).

ej-super-run

Поддерживается опция командной строк --local-cache, которая включает поддержку кеширования исполняемых файлов на стороне хоста тестирования и исполнения (Issue #212).

Поддерживается режим сохранения номеров строк исходного файла скриптовых языков (Issue #213). В этом случае программа ej-super-run убирает начало файла с добавленной строкой #! INTERP, и обрабатывает эту строку самостоятельно и вызывает указанный интерпретатор INTERP напрямую.

Изменения в поддержке языков программирования

Ускорена компиляция dotnet C#. Скрипт компиляции не создает новый проект при каждой компиляции, а пытается использовать заранее сохраненный готовый проект. Это уменьшает время компиляции примерно на секунду.

Для языка scala поддерживается компиляция с помощью sbt. При использовании sbt компиляция работает намного медленнее, чем без него, зато sbt генерирует самодостаточные jar-файлы, которые запускаются обычной командой java. Это позволяет, например, при компиляции подключать внешние зависимости, которые будут добавлены в jar-файл.











Issue #194

Issue #189


Issue #187

Issue #186

Issue #180