Skip to content

ci: add sanitizer coverage - #58

Merged
kgofron merged 1 commit into
areaDetector:masterfrom
kgofron:fix/sanitizer-ci
Sep 29, 2026
Merged

kgofron merged 1 commit into
areaDetector:masterfrom
kgofron:fix/sanitizer-ci

Conversation

@kgofron

@kgofron kgofron commented Sep 29, 2026

Copy link
Copy Markdown
Member

Summary

  • Extend the EPICS Base 7 CI matrix with separate AddressSanitizer and UndefinedBehaviorSanitizer debug jobs.
  • Instrument ADTimePix3 and its deterministic test executable while keeping Base, asyn, and ADCore non-instrumented.
  • Stop sanitizer jobs immediately on detected errors.
  • Disable ASan leak detection because EPICS process-lifetime allocations are outside this module's ownership.
  • Retain separate TAP artifacts for the default, ASan, and UBSan jobs.
  • Document the sanitizer coverage in the contributor and R1-8-0 release notes.

No PV names, NDArray addresses, IOC databases, Phoebus screens, or runtime behavior are changed.

Validation

Local validation passed:

  • normal full IOC build;
  • 346/346 default tests;
  • 346/346 AddressSanitizer tests;
  • 346/346 UndefinedBehaviorSanitizer tests;
  • 11 implemented coordinate-map cases;
  • 47/47 Phoebus BOB files parsed as XML;
  • REUSE validation for 377/377 files;
  • workflow YAML and matrix validation;
  • git diff --check.

Generated local binaries were restored to a normal non-sanitized build after validation.

@kgofron
kgofron merged commit 081197e into areaDetector:master Sep 29, 2026
3 checks passed
@kgofron
kgofron deleted the fix/sanitizer-ci branch September 29, 2026 02:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant