cp.nvim/scrapers
Barrett Ruth b53c8ca44e
Some checks are pending
luarocks / ci (push) Waiting to run
luarocks / publish (push) Blocked by required conditions
fix(security): harden credential storage and transmission (#369)
## Problem

Credential and cookie files were world-readable (0644), passwords
transited via `CP_CREDENTIALS` env var (visible in `/proc/PID/environ`),
and Kattis/USACO echoed passwords back through stdout unnecessarily.

## Solution

Set 0600 permissions on `cp-nvim.json` and `cookies.json` after every
write, pass credentials via stdin pipe instead of env var, and stop
emitting passwords in ndjson from Kattis/USACO `LoginResult` (CSES token
emission unchanged).
2026-03-07 18:14:34 -05:00
..
__init__.py lol 2025-09-24 21:23:06 -04:00
atcoder.py fix(scrapers): bad credentials detection and error message cleanup (#367) 2026-03-07 17:58:25 -05:00
base.py fix(security): harden credential storage and transmission (#369) 2026-03-07 18:14:34 -05:00
codechef.py fix(scrapers): bad credentials detection and error message cleanup (#367) 2026-03-07 17:58:25 -05:00
codeforces.py fix(scrapers): bad credentials detection and error message cleanup (#367) 2026-03-07 17:58:25 -05:00
cses.py fix(scrapers): bad credentials detection and error message cleanup (#367) 2026-03-07 17:58:25 -05:00
kattis.py fix(security): harden credential storage and transmission (#369) 2026-03-07 18:14:34 -05:00
language_ids.py feat(codechef): implement full CodeChef support (#354) 2026-03-06 23:10:44 -05:00
models.py feat: race countdown support and language version selection (#346) 2026-03-06 18:18:21 -05:00
timeouts.py fix: codechef submit fixes and atcoder cleanup (#355) 2026-03-06 23:40:12 -05:00
usaco.py fix(security): harden credential storage and transmission (#369) 2026-03-07 18:14:34 -05:00