Skip to content

split sanitizers into per-sanitizer features, flags, and constraints#5

Merged
FScholPer merged 2 commits into
eclipse-score:mainfrom
RSingh1511:rs/sanitizer-split
Jun 11, 2026
Merged

split sanitizers into per-sanitizer features, flags, and constraints#5
FScholPer merged 2 commits into
eclipse-score:mainfrom
RSingh1511:rs/sanitizer-split

Conversation

@RSingh1511

@RSingh1511 RSingh1511 commented May 22, 2026

Copy link
Copy Markdown
Contributor

Summary

Split sanitizers into independent, composable units — each sanitizer (ASan, UBSan, LSan, TSan) now has its own bool_flag, Bazel feature, and execution constraint
Enables enabling any single sanitizer in isolation (--config=asan, --config=tsan, etc.)
Supports selective composition (--config=asan_ubsan_lsan)
Adds fine-grained constraints (no_asan, only_tsan, etc.) to skip tests incompatible with a specific sanitizer

Notes for Reviewer

Pre-Review Checklist for the PR Author

  • PR title is short, expressive and meaningful
  • Commits are properly organized
  • Relevant issues are linked in the References section
  • Tests are conducted
  • Unit tests are added

Checklist for the PR Reviewer

  • Commits are properly organized and messages follow S-CORE commit guidelines
  • Unit tests have been written for new behavior
  • Public API is documented
  • PR title describes the changes

Post-review Checklist for the PR Author

  • All open points are addressed and tracked via issues

References

Closes #4

@RSingh1511 RSingh1511 force-pushed the rs/sanitizer-split branch from 1a93c35 to 953168c Compare May 22, 2026 13:16
@RSingh1511 RSingh1511 marked this pull request as ready for review May 29, 2026 06:49
@RSingh1511 RSingh1511 requested a review from 4og May 29, 2026 06:50
@RSingh1511 RSingh1511 force-pushed the rs/sanitizer-split branch from 953168c to 1c69b11 Compare May 29, 2026 07:39
@RSingh1511 RSingh1511 force-pushed the rs/sanitizer-split branch from 83df2c4 to 07e724b Compare June 9, 2026 07:04
FScholPer
FScholPer previously approved these changes Jun 10, 2026
…eprecated shim

- sanitizers/flags/BUILD.bazel: add _invalid_asan_tsan / _invalid_lsan_tsan
  config_setting_groups and a sanitizer_combination_check genrule that fails
  at build time for invalid combos; add deprecated :sanitizer string_flag shim
  with actionable error message pointing to migration guide
- sanitizers/wrapper.sh: load env files in deterministic sorted order via
  find+sort instead of glob expansion; first-definition-wins semantics prevent
  silent variable clobber when multiple sanitizers are active simultaneously
- tests/.bazelrc: add tsan_ubsan --extra_toolchains entry alongside asan_ubsan_lsan
- tests/BUILD.bazel: add validate_sanitizer_combination genrule so that
  'bazel test //...' enforces combination guards automatically
- .github/workflows/tests.yml: add tsan_ubsan to sanitizer CI matrix
- sanitizers/README.md: add valid combinations table and no_asan_ubsan_lsan
  before/after behaviour note
@RSingh1511 RSingh1511 force-pushed the rs/sanitizer-split branch from 1d1bd86 to 9d3550a Compare June 11, 2026 03:00
@RSingh1511 RSingh1511 requested a review from FScholPer June 11, 2026 03:12
@FScholPer FScholPer merged commit 9e38009 into eclipse-score:main Jun 11, 2026
7 checks passed
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.

Separation of santitizer config to align with current repos

2 participants