The current way matches how Xcode bundles structured resources, and we did it this way for BwX mode. But representing these resources as folders has a few downsides:
More files can appear in Xcode than are actually referenced as inputs, because Bazel works on the level of files, not directories
The work to translate the files to folder paths isn’t free
The translation of files to folder paths broke with rules_apple’s recent runfiles support
In a future change I’ll remove all of the code around .isFolder, since folder-type files can go down the file_path path.
The current way matches how Xcode bundles structured resources, and we did it this way for BwX mode. But representing these resources as folders has a few downsides:
In a future change I’ll remove all of the code around
.isFolder
, since folder-type files can go down thefile_path
path.