Skip to content

tioj-judge 2.0.0

Choose a tag to compare

@adrien1018 adrien1018 released this 01 Sep 05:10
· 21 commits to main since this release
ddb2f43

This version is NOT backward compatible with TIOJ 2.x. Upgrade to TIOJ 3.0 when upgrading the judge client.

Breaking Changes

Library

  • Separate Submission class into two classes: Submission for the settings and SubmissionResult for the results
  • Replace the old Reporter interface with Submission::reporter
  • Merge Submission::td_limits and Submission::td_groups into Submission::testdata using struct Submission::TestdataLimit
  • Explicitly specify the testdata paths in Submission::TestdataLimit::[input/answer]_file
    • The old testdata saving interface (e.g. TdInput, TdOutput) is thus removed

Judge Client

  • Use base64 code fetching of TIOJ 3.0

New Features

  • Judge client: Add a configuration file option to change the testdata storing path
    • Can be used for running multiple judge instances (#4)
  • Allow passing additional compilation arguments
    • Submission::[user/specjudge]_compile_options
  • Add Compiler::CUSTOM for custom compilation

Other Changes

  • Upgrade to spdlog 1.12.0 and use its built-in fmt library