Skip to content

DMOJ Judge v5.0.0

Latest

Choose a tag to compare

@Xyene Xyene released this 14 Jun 19:26

Breaking

  • As announced in the v4.0.0 release, the deprecated problem_storage_root configuration option has been removed. (#1102)
  • The generator specification has been simplified, removing some obscure corner cases. (#1240)

Features

  • On kernels that support it, input data is fed to submissions via memfds. This improves grading efficiency, decreases runtime jitter, and allows submissions to seek the input stream. (#990)
  • Python compile errors are now syntax-highlighted. (#1178)
  • New dmoj-cli locate command for resolving the directory of a problem code. (#1126)
  • Input validator support has been added to the problem specification format. (#1093)
  • The judge now exports statistics for Prometheus ingestion. (#1230)
  • Added demangling of C++ exceptions names. (#1123)
  • Judge credential may now be specified through the environment variabels DMOJ_JUDGE_NAME and DMOJ_JUDGE_KEY. (#1125)

Runtimes

  • Many sandbox and configuration changes to chase support for newer versions of all supported runtimes.
  • New runtimes supported:
  • Java sun.misc.Unsafe is disallowed by default for all submissions. (#1144)

Bugfixes

  • Compiler OLE messages now display the actual limit, as opposed to a possibly-wrong, hardcoded "64 kb". (#1236, #1242)
  • Interactor compilation errors are now reported as internal errors, as opposed to user compilation errors. (#1115)
  • Docker judges shut down properly (#1110) and reap zombies (#1117).

New Contributors

Full Changelog: v4.1.0...v5.0.0