Skip to content

TIOJ 3.0.0: The Contest Update

Compare
Choose a tag to compare
@adrien1018 adrien1018 released this 01 Sep 05:10
· 67 commits to main since this release
e75cb47

This version introduces relatively major features and improvements, mostly focused on contest-related features.

The judge client should be updated to v2.0.0 before using this version.

New Features

  • Single Contest website: setup a standalone website for any given contest by simply reverse-proxying a URL
    • See Wiki for more details
  • Add contest registration & simple contest user generation
    • The old user whitelist feature is removed and automatically migrated by making the contest registration-required and adding matched users to registered users
  • Support new IOI-style scoring (union by subtasks)
  • Brand new contest dashboard
    • Dashboard history: view past rankings at any time during the contest
    • Independent dashboard visibility settings
    • Automatic dashboard refresh using ActionCable
  • Allow submitting code by uploading a file
  • Allow raw code download in the submission page
  • Allow specifying additional arguments for special judge compilation (#25)

Enhancements

  • Upgrade outdated JavaScripts & cleanup unused assets
    • If using Git, untracked files under public/ can be removed after pulling this version
  • Migrate to esbuild for better JavaScript version management
  • Limit motto display size to prevent clobbered TopCoder or Ranklist
  • Store subtask results in database for better performance

Bug Fixes

  • Fix broken avatar generation
    • Some users might not have an avatar because of this bug; run rails avatar:generate_missing to fix it
  • Fix code line numbers slightly off-aligned
  • Fix checkbox UI
  • Fix problem numbering in contests with more than 26 problems