Commit Graph

4 Commits

Author SHA1 Message Date
5fcecd6cf2 Fix pre-commit OOM: oom_score_adj + Node heap caps
- Set oom_score_adj=1000 in git hooks so OOM killer targets
  pre-commit first, never crashing the PC
- Cap Node.js heap to 512MB for eslint/prettier/vitest
- Remove broken systemd-run cgroup wrapper (didn't work)
- cppcheck: process files one-at-a-time, --check-level=normal
- pytest: run packages sequentially in separate subprocesses
- Remove --force from cppcheck (exponential memory on #ifdef combos)
2026-04-12 21:34:56 +02:00
dee307700e Fix pytest OOM: wrap each package in 3GB cgroup sub-scope
systemd-run --scope -p MemoryMax=3G per pytest subprocess so each
package gets its own memory cap, freed completely before the next.
Also use shutil.which + pathlib per ruff rules.
2026-04-12 21:27:24 +02:00
030741c315 Fix pytest OOM: run packages sequentially in separate subprocesses
Each python_pkg subpackage now runs in its own pytest subprocess so
memory is freed between packages.  Prevents 4GB+ accumulation when
matplotlib, geopandas, pygame, etc. all load in a single process.
2026-04-12 21:25:58 +02:00
0462565d99 Add VS Code auto-optimizer and selective pytest pre-commit hook
- scripts/optimize_vscode.py: auto-detect hardware (CPU, RAM, GPU, disk)
  and apply optimal VS Code settings and Electron GPU flags
- scripts/pytest_changed_packages.py: pre-commit hook that runs pytest
  only for python_pkg subpackages with changed files
- .pre-commit-config.yaml: use new selective pytest hook
- scripts/check_python_location.sh: allow scripts/ directory
2026-03-25 21:56:37 +01:00