mirror of
https://github.com/yonaskolb/XcodeGen.git
synced 2026-03-18 20:02:25 +00:00
c32aa4cc94
* update xcodeproj to 8.27.7 * add syncedFolder source type * drop xcode 15 support * Rely on fileReference instead of adding new synchronizedRootGroup (#1557) * fix: don't include untracked children in cache --------- Co-authored-by: Kirill Yakimovich <kirill.yakimovich@gmail.com>
34 lines
841 B
Swift
34 lines
841 B
Swift
import Foundation
|
|
import XcodeGenCore
|
|
import Version
|
|
|
|
public class CacheFile {
|
|
|
|
public let string: String
|
|
|
|
init?(version: Version, projectDictionary: [String: Any], project: Project) throws {
|
|
|
|
guard #available(OSX 10.13, *) else { return nil }
|
|
|
|
let files = Set(project.allTrackedFiles)
|
|
.map { ((try? $0.relativePath(from: project.basePath)) ?? $0).string }
|
|
.sorted { $0.localizedStandardCompare($1) == .orderedAscending }
|
|
.joined(separator: "\n")
|
|
|
|
let data = try JSONSerialization.data(withJSONObject: projectDictionary, options: [.sortedKeys, .prettyPrinted])
|
|
let spec = String(data: data, encoding: .utf8)!
|
|
|
|
string = """
|
|
# XCODEGEN VERSION
|
|
\(version)
|
|
|
|
# SPEC
|
|
\(spec)
|
|
|
|
# FILES
|
|
\(files)"
|
|
|
|
"""
|
|
}
|
|
}
|