Skip to content

Conversation

MaxDesiatov
Copy link
Contributor

assertMacroExpansion requires macros to be compiled for target platform and evaluated in-process. We can't handle the case of indirect macro dependencies cleanly, those will be still compiled for the host. Supersedes #7349.

This doesn't contain tests to expedite the fix and unblock broken CI jobs, but I've verified locally that test products of the Examples package in apple/swift-syntax repo can be built successfully and these tests all pass.

`assertMacroExpansion` requires macros to be compiled for target platform and evaluated in-process. We can't handle the case of indirect macro dependencies cleanly, those will be still compiled for the host. Supersedes #7349.
@MaxDesiatov MaxDesiatov added bug cross-compilation build system Changes to interactions with build systems needs tests This change needs test coverage modules graph Modules dependency resolution labels Feb 19, 2024
@MaxDesiatov MaxDesiatov self-assigned this Feb 19, 2024
@MaxDesiatov
Copy link
Contributor Author

@swift-ci test

Copy link
Member

@ahoppen ahoppen left a comment

Choose a reason for hiding this comment

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

Seems reasonable to me

This fixes `PackageToolTests.testPluginAPIs` assertion failures caused by randomized ordering.
@MaxDesiatov
Copy link
Contributor Author

@swift-ci test

@MaxDesiatov
Copy link
Contributor Author

@swift-ci test windows

@MaxDesiatov MaxDesiatov enabled auto-merge (squash) February 19, 2024 22:17
@MaxDesiatov
Copy link
Contributor Author

@swift-ci test windows

@MaxDesiatov MaxDesiatov merged commit 2c18196 into main Feb 20, 2024
@MaxDesiatov MaxDesiatov deleted the maxd/fix-swift-syntax-example branch February 20, 2024 01:01
MaxDesiatov added a commit that referenced this pull request Feb 20, 2024
furby-tm pushed a commit to wabiverse/swift-package-manager that referenced this pull request May 15, 2024
`assertMacroExpansion` requires macros to be compiled for target
platform and evaluated in-process. We can't handle the case of indirect
macro dependencies cleanly, those will be still compiled for the host.
Supersedes swiftlang#7349.

This doesn't contain tests to expedite the fix and unblock broken CI
jobs, but I've verified locally that test products of the `Examples`
package in `apple/swift-syntax` repo can be built successfully and these
tests all pass.
furby-tm pushed a commit to wabiverse/swift-package-manager that referenced this pull request May 15, 2024
`assertMacroExpansion` requires macros to be compiled for target
platform and evaluated in-process. We can't handle the case of indirect
macro dependencies cleanly, those will be still compiled for the host.
Supersedes swiftlang#7349.

This doesn't contain tests to expedite the fix and unblock broken CI
jobs, but I've verified locally that test products of the `Examples`
package in `apple/swift-syntax` repo can be built successfully and these
tests all pass.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug build system Changes to interactions with build systems cross-compilation modules graph Modules dependency resolution needs tests This change needs test coverage

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants