rules_swift icon indicating copy to clipboard operation
rules_swift copied to clipboard

Add feature for partially explicit modules

Open keith opened this issue 3 years ago • 5 comments

As of Swift 5.6 and this PR https://github.com/apple/swift/pull/39887 the new json format used for entirely explicit module builds can be used without entirely disabling implicit modules. This provides an alternative to VFS overlays for discovering dependencies without -I search paths. This is theoretically about the same but I expect this file format to have better support in general than VFS overlays for things like the new incremental compilation support, which currently doesn't support VFS overlays, and this shouldn't have any downsides vs VFS files.

This format does support some more keys than just the 2 we pass, as far as I can tell they are unused today, so I'm opting not to pass them. We may have to revisit this in the future.

keith avatar Feb 12 '22 20:02 keith

Lyft integration job started: https://buildkite.com/lyft/rules-swift/builds/236 (must be Lyft employee to view)

lyft-lint-bot avatar Feb 12 '22 20:02 lyft-lint-bot

Lyft integration job started: https://buildkite.com/lyft/rules-swift/builds/237 (must be Lyft employee to view)

lyft-lint-bot avatar Feb 15 '22 18:02 lyft-lint-bot

Lyft integration job started: https://buildkite.com/lyft/rules-swift/builds/238 (must be Lyft employee to view)

lyft-lint-bot avatar Feb 18 '22 23:02 lyft-lint-bot

Lyft integration job started: https://buildkite.com/lyft/rules-swift/builds/348 (must be Lyft employee to view)

lyft-lint-bot avatar Apr 25 '22 21:04 lyft-lint-bot

https://github.com/bazelbuild/rules_swift/commit/1666670edadfe6e440b23d7142b0e21bf1043402

brentleyjones avatar Jun 30 '22 13:06 brentleyjones

ok I pushed a new version here where I manually pulled changes from the upstream commit, but also left the VFS feature around for existing users. we can probably remove it as upstream did once we're confident this works without downsides and we don't care about older swift versions

keith avatar Oct 10 '22 21:10 keith