TIOJ 2.3.0
This version includes some new features and bug fixes.
Upgrade Notes
- Username validation is broken in previous versions, which allowed users to create accounts with Unicode usernames or usernames that can cause issues or even crashes. It is thus strongly recommended to run the command
rails user:check_invalid_username
to identify any accounts with issue-causing usernames. The validation is fixed in this version. As a result, the system will now only allow alphanumeric usernames by default. Unicode usernames can still be enabled as an optional feature. This policy change only applies to new users; previously registered users are not affected. - If there are old submissions from pre-2.0.0 version, add
old_submission_view: true
inconfig/settings.yml
to enable viewing old submission results. - If upgrade directly from pre-2.0.0 versions to this version, old submissions won't be rejudged. To rejudge old submissions, upgrade to 2.2.1 first and then upgrade to 2.3.0 after the rejudge is finished.
New Features
- Set different contest description before the start of the contest
- Add per-contest announcements (viewable only in contest pages)
- Configurable per-problem code length limit
- Optionally disable registration & enable Unicode username in
config/settings.yml
- Add pages for viewing pre-2.0.0 submission results and ranklists
- Disabled by default, can be enabled in
config/settings.yml
- Disabled by default, can be enabled in
Enhancements & Other Changes
- Pin & highlight upcoming and currently-running contests on homepage
- Remove old submission rejudging
Bug Fixes
- Fix crash when
config/settings.yml
is empty - Fix broken username validation
- Always use username in URL