This page tracks non-blocking technical debt items (warnings cleanup, refactors, and quality-of-life fixes) that are safe to address incrementally.
1. Purpose
Use this page for:
- compiler warning cleanup queues,
- low-priority style/consistency fixes,
- non-urgent tooling/docs polish tasks.
Do not use this page for urgent correctness/security issues.
3. source_data
Primary warning tracker location:
logs/doxygen.warnings (generated by make build-docs)
For compiler/runtime warning campaigns, track status directly in this page.
3. Warning Cleanup Categories
Current warning clusters include:
- pointer/type mismatches,
- potentially uninitialized variables,
- format-string and buffer safety issues,
- unused code/variables,
- logical/style inconsistencies,
- PETSc deprecations.
These categories should be fixed in small, reviewable batches.
1. Standard Extension Workflow
- Pick one warning category and one module area (for example,
src/io.c).
- Fix warnings without behavior changes.
- Rebuild and confirm warning deltas.
- Update this page with resolved/remaining counts.
- Commit as maintenance-only patch.
5. Prioritization Policy
- Correctness-affecting warnings (
uninitialized, format overflows, type mismatches) first.
- Pure style/unused warnings later.
- Keep each patch narrowly scoped to reduce regression risk.
6. Sandbox Policy
sandbox/ is retained as optional developer scratch space.
- Treat everything in sandbox as non-production unless promoted.
- Stable outcomes should be moved into
config/, examples/, scripts/, or docs/.