ENUM
ForeignBuild.Input
Contents
- Cases
file(_:)folder(_:)glob(_:)script(_:)
swift
public enum Input: Codable, Hashable, SendableDescribes an input that affects a foreign build dependency's output.
Inputs serve two purposes:
- Build phase input file list: file, folder, and glob inputs are passed as input paths to the Xcode build phase so that Xcode can skip re-running the script when inputs haven't changed.
- Content hashing: all inputs (including scripts) are used to compute a content hash for Tuist's binary caching and selective testing, so that the foreign build step can be skipped when inputs are unchanged.
Cases
file(_:)
swift
case file(Path)A single file whose contents affect the build output.
folder(_:)
swift
case folder(Path)A folder whose contents (recursively) affect the build output.
glob(_:)
swift
case glob(Path)A glob pattern that resolves to files whose contents affect the build output.
script(_:)
swift
case script(String)A shell script whose stdout produces a cache key component (e.g. "git rev-parse HEAD").
Script inputs only contribute to the content hash and are not included in the build phase input file list.
