-
Notifications
You must be signed in to change notification settings - Fork 469
rfc(engine): sandbox only when needed rather than throwing an error #8854
Copy link
Copy link
Closed
Labels
acceptedaccepted proposalsaccepted proposalsproposalRFC's that are awaiting discussion to be accepted or rejectedRFC's that are awaiting discussion to be accepted or rejected
Milestone
Description
Problem
When a rule is configured to be sandboxed, however the action of the rule does not need sandboxing, we raise the following error message:
User_error.raise
~loc
[ Pp.text
"Rule dependencies are configured to require sandboxing, but the rule \
has no actions that could potentially require sandboxing."
]This can appear in some rather cryptic locations such as:
- Inline_tests with empty partition #8848
- which led to a fix like Fix inline_tests action when partition list is empty #8849
- Add
whenaction available in lockfiles #8443 (comment)
In this situation, it doesn't really make alot of sense that raise a user error for the following reasons:
- Because incorrect sandbox configurations are generally out of the users control and can be internal to dune.
- We have a better alternative solution which is to simply not sandbox.
Proposal 1
We should modify the behaviour in this case to simply conform to the sandboxing needs. If an action doesn't need to be sandboxed, then we should simply not sandbox it.
Proposal 2
In the aforementioned cases, the action in question was in fact the "empty actions" which is just (progn). Perhaps it is vacuously useful to sandbox in this case and we should just change it?
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
acceptedaccepted proposalsaccepted proposalsproposalRFC's that are awaiting discussion to be accepted or rejectedRFC's that are awaiting discussion to be accepted or rejected