Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix edge cases in selective execution #4140

Merged
merged 19 commits into from
Dec 16, 2024

Conversation

lihaoyi
Copy link
Member

@lihaoyi lihaoyi commented Dec 16, 2024

  • Fixes handling of private tasks and added tests for that and for renaming tasks. As private tasks and overridden tasks are assigned a .super.xyz suffix during planning, we need to ensure we use the Terminal#render label which includes this suffix rather than the .ctx.segments.render label which does not

  • Ensure we preserve all watches during --watch, even if some portion of the build graph was skipped due to selective execution. This ensures that inputs that were skipped can continue to be watched and still trigger downstream changes later

  • We should make sure in selective.resolve that we do not call resolve on the outcome of diffMetadata, as that may include private tasks that cannot be resolved externally. Instead we should only call resolve when there is no diff to be had, in which case we need to take the input selector and resolve it to concrete task names to display

@lihaoyi lihaoyi marked this pull request as ready for review December 16, 2024 09:11
@lihaoyi lihaoyi merged commit c2bc74b into com-lihaoyi:main Dec 16, 2024
26 checks passed
@lefou lefou added this to the 0.12.4 milestone Dec 16, 2024
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.

2 participants