Skip to content

[Incremental Builds] Separately check whether we can skip 'emit-module' on an incremental module-only build #1905

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

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

artemcm
Copy link
Contributor

@artemcm artemcm commented May 19, 2025

When the incremental machinery is in a state that no source files require to be re-compiled, it may also determine that all the corresponding before-compile tasks may also be skipped, such as emit-module. On emit-module-only builds however, this logic is invalid because the individual file compilation is always skipped by not being included in the build plan.

This PR adds logic for specifically cases where no source files must be compiled on an incremental build because the build plan does not require source compilation, adding logic to ensure that the emit-module tasks are skipped only when all of the .swift inputs to the tasks are older than all of the existing outputs of such tasks.

Resolves rdar://151626629

@artemcm
Copy link
Contributor Author

artemcm commented May 19, 2025

@swift-ci test

@artemcm artemcm force-pushed the IncrementalEmitModuleOnly branch from 0c71e8d to 1909528 Compare May 19, 2025 23:39
@artemcm
Copy link
Contributor Author

artemcm commented May 19, 2025

@swift-ci test

@artemcm
Copy link
Contributor Author

artemcm commented May 19, 2025

@swift-ci test Windows platform

1 similar comment
@artemcm
Copy link
Contributor Author

artemcm commented May 21, 2025

@swift-ci test Windows platform

@artemcm artemcm force-pushed the IncrementalEmitModuleOnly branch from 1909528 to 6d04f92 Compare May 21, 2025 17:49
@artemcm artemcm requested review from cachemeifyoucan and owenv May 21, 2025 17:49
@artemcm
Copy link
Contributor Author

artemcm commented May 21, 2025

@swift-ci test

@artemcm artemcm force-pushed the IncrementalEmitModuleOnly branch from 6d04f92 to ae2a999 Compare May 21, 2025 17:58
@artemcm
Copy link
Contributor Author

artemcm commented May 21, 2025

@swift-ci test

@artemcm artemcm marked this pull request as ready for review May 21, 2025 17:58
…e' on an incremental module-only build

Resolves rdar://151626629
@artemcm artemcm force-pushed the IncrementalEmitModuleOnly branch from ae2a999 to 82a2ef6 Compare May 21, 2025 18:16
@artemcm
Copy link
Contributor Author

artemcm commented May 21, 2025

@swift-ci test

@artemcm
Copy link
Contributor Author

artemcm commented May 21, 2025

@swift-ci test Windows platform

Copy link
Contributor

@cachemeifyoucan cachemeifyoucan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

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.

3 participants