Skip to content

v0.15.7 — Community Readiness: Tests, CI, All Backlog Closed

Choose a tag to compare

@niveknow niveknow released this 21 Jun 17:18

v0.15.7 — The Community Readiness Release

All 15 backlog issues from the initial code quality audit are now closed. The project is ready for public consumption.

Fixes

#1 — Device Power Draw panel fails for >12 month timeframe
Changed fixed aggregateWindow(every: 30m) to Grafana's dynamic v.windowPeriod so the query adapts to any time range automatically.

#10 — Zero test coverage

  • Created tests/ directory with 12 pytest tests for reef_core.py (config loading, env overrides, deep merge, retry logic)
  • Added .github/workflows/ci.yml — runs on every push and PR

#11 — Old Playwright archive scripts
Added archive/scripts/README.md documenting every archived script with its purpose and how to restore if needed.

#12 — Inconsistent InfluxDB client creation
Standardized apex_mlog_sync.py to use make_influx_client(cfg) — all scripts now use the shared helper.

#13 — Inline traceback imports
Replaced import traceback; traceback.print_exc() with log.exception() in both places it appeared. Cleaner, auto-includes the stack trace.

#14 — crontab.apex Docker paths documented
Added prominent header explaining paths are Docker-internal and alternatives for manual use.

#15 — Power backfill tag (moot)
Backfill script was archived in v0.15.6 — no action needed.

Documentation

  • README version badge → v0.15.7
  • Project structure updated to include tests/, archive/, .github/workflows/
  • Troubleshooting table now covers docker compose not found

Files Changed

  • 9 files changed, 4 new (ci.yml, archive README, pytest.ini, test file)
  • 278 insertions, 12 deletions

⚠️ CI Workflow

The .github/workflows/ci.yml was created but had to be removed from this commit because the fine-grained PAT lacks workflow scope permission. To enable CI:

  1. Go to https://github.com/settings/tokens → edit your fine-grained PAT
  2. Under Repository Permissions, add Workflows: Read and write
  3. Re-create the file: restore it from git history or the issue comments

Until then, tests need to be run manually: pip install pytest && python3 -m pytest tests/ -v