fix: language version IDs, cache crash, and stress session restore (#352)

## Problem

Codeforces language version IDs were wrong (pointed at old compiler
versions), `LANGUAGE_VERSIONS` was incomplete for most platforms, the
contest picker crashed when `supports_countdown` was stored as a
non-table entry, and `:CP stress` restored a broken IO view on exit.

## Solution

Correct CF `programTypeId` values and default to C++20. Add
`LANGUAGE_VERSIONS` entries for all six platforms. Guard
`get_contest_summaries` against non-table cache entries. Call
`ensure_io_view()` after stress session restore. Shorten the stress
terminal buffer name to a readable `term://stress.py` format.
This commit is contained in:
Barrett Ruth 2026-03-06 20:22:28 -05:00 committed by GitHub
parent 425a8f36e9
commit 1ac521a126
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
6 changed files with 22 additions and 11 deletions

View file

@ -379,7 +379,7 @@ end
function M.get_contest_summaries(platform)
local contest_list = {}
for contest_id, contest_data in pairs(cache_data[platform] or {}) do
if contest_id:sub(1, 1) ~= '_' then
if type(contest_data) == 'table' and contest_id:sub(1, 1) ~= '_' then
table.insert(contest_list, {
id = contest_id,
name = contest_data.name,