[llvm-lit] Add REQUIRES: shell to BOLT permission test for lit internal shell #103012
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This patch adds the
REQUIRES: shell
directive to the BOLT permission test to ensure it only runs in environments with a full-featured Unix-like shell. This change is necessary because the test relies on advanced shell capabilities that are not supported by lit's internal shell.Reasoning: The BOLT permission test uses features like running commands in the background with
&
, performing arithmetic operations, and handling special number formats (octal). These features require a more capable shell than what lit's internal shell provides. Without a proper shell, the test could fail or behave unpredictably.Previously, this test was causing an
AttributeError
due to incompatibilities with lit's internal shell. By enforcing the use of an external shell with theREQUIRES: shell
directive, this patch addresses the issue temporarily. This approach fixes the problem for now, and when we later revisit and remove theREQUIRES: shell
directive, we can implement a more robust solution to fully support these features in the internal shell.This change is relevant for enabling the lit internal shell by default, as outlined in [RFC] Enabling the Lit Internal Shell by Default
fixes: #102399