fix: complete language version IDs for all platforms (#350)

## Problem

`LANGUAGE_VERSIONS` only covered cpp and python. Several platform IDs
were wrong — CodeChef used `C++ 17`/`Python 3` (correct: `C++`/`PYTH
3`), USACO listed nonexistent c++20/c++23 options, and CSES only had
C++17.

## Solution

Verify every platform's submit page and update all language ID tables.
Add java and rust entries where supported, fix incorrect CodeChef and
USACO IDs, and expand CSES `CSES_LANGUAGES` dict with
C++11/C++20/PyPy3/Java/Rust variants.
This commit is contained in:
Barrett Ruth 2026-03-06 19:28:06 -05:00 committed by GitHub
parent 2776aaeb21
commit 425a8f36e9
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 64 additions and 34 deletions

View file

@ -74,21 +74,39 @@ M.signal_codes = {
}
M.LANGUAGE_VERSIONS = {
atcoder = { cpp = { ['c++23'] = '6017' }, python = { python3 = '6082' } },
atcoder = {
cpp = { ['c++20'] = '6054', ['c++23'] = '6017' },
python = { python3 = '6082', pypy3 = '6083' },
java = { java = '6056' },
rust = { rust = '6088' },
},
codeforces = {
cpp = { ['c++17'] = '54', ['c++20'] = '89', ['c++23'] = '91' },
python = { python3 = '31', pypy3 = '70' },
},
cses = { cpp = { ['c++17'] = 'C++17' }, python = { python3 = 'Python3' } },
cses = {
cpp = { ['c++11'] = 'C++11', ['c++17'] = 'C++17', ['c++20'] = 'C++20' },
python = { python3 = 'Python3', pypy3 = 'PyPy3' },
java = { java = 'Java' },
rust = { rust2018 = 'Rust2018', rust2021 = 'Rust2021' },
},
kattis = {
cpp = { ['c++17'] = 'C++', ['c++20'] = 'C++', ['c++23'] = 'C++' },
python = { python3 = 'Python 3' },
java = { java = 'Java' },
rust = { rust = 'Rust' },
},
usaco = {
cpp = { ['c++17'] = 'cpp', ['c++20'] = 'cpp', ['c++23'] = 'cpp' },
cpp = { ['c++11'] = 'cpp', ['c++17'] = 'cpp' },
python = { python3 = 'python' },
java = { java = 'java' },
},
codechef = {
cpp = { ['c++20'] = 'C++' },
python = { python3 = 'PYTH 3', pypy3 = 'PYPY3' },
java = { java = 'JAVA' },
rust = { rust = 'rust' },
},
codechef = { cpp = { ['c++17'] = 'C++ 17' }, python = { python3 = 'Python 3' } },
}
M.DEFAULT_VERSIONS = { cpp = 'c++20', python = 'python3' }