cp.nvim/lua/cp
Barrett Ruth 0b40e0f33e
fix: replace curl_cffi with scrapling in codeforces metadata (#334)
## Problem

`codeforces.py` used `curl_cffi` to bypass Cloudflare when fetching
contest problem HTML, making it unavailable in the nix python env and
requiring an extra dependency across `pyproject.toml` and `flake.nix`.

## Solution

Rewrite `_fetch_problems_html` to use scrapling `StealthySession` with
`solve_cloudflare=True`, matching the existing CF submit pattern. Extend
`needs_browser` in `scraper.lua` to route CF `metadata` and `tests`
through the FHS env on NixOS. Remove `curl-cffi` from `pyproject.toml`,
`flake.nix`, and test mocks.
2026-03-06 13:25:44 -05:00
..
commands feat(commands): implement :CP open [problem|contest|standings] (#319) 2026-03-05 19:16:05 -05:00
pickers fix(submit): use file path over stdin; fix CF CodeMirror textarea (#305) 2026-03-05 14:34:14 -05:00
runner fix(submit): use file path over stdin; fix CF CodeMirror textarea (#305) 2026-03-05 14:34:14 -05:00
ui fix: cancel active process on contest switch (#316) 2026-03-05 17:42:50 -05:00
cache.lua fix(kattis): fix nil display_name in contest picker (#332) 2026-03-06 13:25:17 -05:00
config.lua refactor: remove open_url config option in favour of :CP open (#322) 2026-03-05 22:55:43 -05:00
constants.lua feat(commands): implement :CP open [problem|contest|standings] (#319) 2026-03-05 19:16:05 -05:00
credentials.lua feat: validate credentials on :CP <platform> login (#310) 2026-03-05 15:12:09 -05:00
health.lua fix: replace deprecated vim.loop with vim.uv 2026-02-26 22:45:07 -05:00
helpers.lua feat(ui): auto-hide source buffer on close 2025-10-24 14:47:12 -04:00
init.lua fix(submit): use file path over stdin; fix CF CodeMirror textarea (#305) 2026-03-05 14:34:14 -05:00
log.lua fix(submit): use file path over stdin; fix CF CodeMirror textarea (#305) 2026-03-05 14:34:14 -05:00
race.lua fix(submit): use file path over stdin; fix CF CodeMirror textarea (#305) 2026-03-05 14:34:14 -05:00
restore.lua fix(submit): use file path over stdin; fix CF CodeMirror textarea (#305) 2026-03-05 14:34:14 -05:00
scraper.lua fix: replace curl_cffi with scrapling in codeforces metadata (#334) 2026-03-06 13:25:44 -05:00
setup.lua refactor: remove open_url config option in favour of :CP open (#322) 2026-03-05 22:55:43 -05:00
state.lua refactor(run): remove I/O view test navigation keymaps 2026-03-04 00:26:22 -05:00
stress.lua fix: cancel active process on contest switch (#316) 2026-03-05 17:42:50 -05:00
submit.lua fix(scrapers): fix Kattis and USACO login and submit (#330) 2026-03-06 12:38:32 -05:00
utils.lua fix(submit): use file path over stdin; fix CF CodeMirror textarea (#305) 2026-03-05 14:34:14 -05:00
version.lua fix: refactor 2025-09-21 11:19:00 -04:00