cp.nvim/scrapers
Barrett Ruth 5e4d3d1b61
fix(kattis): fix nil display_name in contest picker
Problem: `ContestSummary.display_name` defaults to `None`, which
serializes to JSON `null` → Lua `vim.NIL`. The picker displayed
"vim.NIL" for every entry, and `start_time` was always stored
because `vim.NIL` is truthy in Lua.

Solution: pass `display_name=name` explicitly in `_parse_contests_page`
so JSON never emits `null`. In `set_contest_summaries`, coerce
`display_name` via a `~= vim.NIL` guard and apply the same guard
before storing `start_time`.
2026-03-06 13:18:05 -05:00
..
__init__.py lol 2025-09-24 21:23:06 -04:00
atcoder.py feat(commands): implement :CP open [problem|contest|standings] (#319) 2026-03-05 19:16:05 -05:00
base.py feat: validate credentials on :CP <platform> login (#310) 2026-03-05 15:12:09 -05:00
codechef.py feat: implement login and submit for USACO, Kattis, and CodeChef (#325) 2026-03-06 00:09:16 -05:00
codeforces.py feat(commands): implement :CP open [problem|contest|standings] (#319) 2026-03-05 19:16:05 -05:00
cses.py feat(commands): implement :CP open [problem|contest|standings] (#319) 2026-03-05 19:16:05 -05:00
kattis.py fix(kattis): fix nil display_name in contest picker 2026-03-06 13:18:05 -05:00
language_ids.py feat: implement login and submit for USACO, Kattis, and CodeChef (#325) 2026-03-06 00:09:16 -05:00
models.py feat(commands): implement :CP open [problem|contest|standings] (#319) 2026-03-05 19:16:05 -05:00
timeouts.py fix(submit): use file path over stdin; fix CF CodeMirror textarea (#305) 2026-03-05 14:34:14 -05:00
usaco.py feat: implement login and submit for USACO, Kattis, and CodeChef (#325) 2026-03-06 00:09:16 -05:00