latest
Pre-release
Pre-release
·
0 commits
to c755dc088b5fc15b65f7b5537c34f7a90b228e2c
since this release
Implement exclusions for custom soft errors Summary: Context: As part of "safer compatible with", we are rolling out enforcements of `dep_only_incompatible` errors to targets in the repo to prevent them from losing CI coverage due to a bad compatible_with definition change. Unfortunately, sometimes these rollout diffs break things and need to be reverted. I recently implemented custom soft errors as a way to more effectively source these issues before we roll things out. Each soft error has a set of target patterns attached and if any of those patterns violates `dep_only_incompatible`, then we fire the corresponding soft error that we can read in Scuba. This diff adds exclusions to custom soft errors to exclude a subset of target patterns specified from having soft errors. The exclusions help us get more targeted soft errors and match what we do for rollouts of `dep_only_incompatible` in having both inclusion and exclusion patterns. To support exclusions, I added a new provider `DepOnlyIncompatibleRollout` that supports a `target_patterns` field and an `exclusions` field. To make this backwards compatible with existing definitions, `DepOnlyIncompatibleInfo` now accepts either a list of strings or a `DepOnlyIncompatibleRollout` type in the `custom_soft_errors` field. Once version bump is out and the provider is migrated over, I will delete the existing support for list of target patterns. Reviewed By: Nero5023 Differential Revision: D71592839 fbshipit-source-id: 9c8e26cf4d92128f12b60f3a2253af03830b0ab2