diff --git a/Sources/tart/Commands/Run.swift b/Sources/tart/Commands/Run.swift index 46cf872..e98269d 100644 --- a/Sources/tart/Commands/Run.swift +++ b/Sources/tart/Commands/Run.swift @@ -1065,7 +1065,7 @@ struct DirectoryShare { process.standardInput = inPipe process.launch() - inPipe.fileHandleForWriting.write(response!.data) + try inPipe.fileHandleForWriting.write(contentsOf: response!.data) try inPipe.fileHandleForWriting.close() process.waitUntilExit() diff --git a/Sources/tart/Credentials/DockerConfigCredentialsProvider.swift b/Sources/tart/Credentials/DockerConfigCredentialsProvider.swift index 5f74033..6be901f 100644 --- a/Sources/tart/Credentials/DockerConfigCredentialsProvider.swift +++ b/Sources/tart/Credentials/DockerConfigCredentialsProvider.swift @@ -36,7 +36,11 @@ class DockerConfigCredentialsProvider: CredentialsProvider { process.launch() - inPipe.fileHandleForWriting.write("\(host)\n".data(using: .utf8)!) + do { + try inPipe.fileHandleForWriting.write(contentsOf: "\(host)\n".data(using: .utf8)!) + } catch { + throw CredentialsProviderError.Failed(message: "Failed to write host to Docker helper!") + } inPipe.fileHandleForWriting.closeFile() let outputData = try outPipe.fileHandleForReading.readToEnd() diff --git a/Sources/tart/OCI/Layerizer/DiskV1.swift b/Sources/tart/OCI/Layerizer/DiskV1.swift index ff11495..9c59a00 100644 --- a/Sources/tart/OCI/Layerizer/DiskV1.swift +++ b/Sources/tart/OCI/Layerizer/DiskV1.swift @@ -57,7 +57,7 @@ class DiskV1: Disk { // Decompress the layers onto the disk in a single stream let filter = try OutputFilter(.decompress, using: .lz4, bufferCapacity: Self.bufferSizeBytes) { data in if let data = data { - disk.write(data) + try disk.write(contentsOf: data) } } diff --git a/Sources/tart/OCI/Layerizer/DiskV2.swift b/Sources/tart/OCI/Layerizer/DiskV2.swift index 78180a6..2239985 100644 --- a/Sources/tart/OCI/Layerizer/DiskV2.swift +++ b/Sources/tart/OCI/Layerizer/DiskV2.swift @@ -268,7 +268,7 @@ class DiskV2: Disk { if chunk != actualContentsOnDisk { try disk.seek(toOffset: offset) - disk.write(chunk) + try disk.write(contentsOf: chunk) } } @@ -282,7 +282,7 @@ class DiskV2: Disk { // is zeroed via truncate(2) if chunk != zeroChunk { try disk.seek(toOffset: offset) - disk.write(chunk) + try disk.write(contentsOf: chunk) } offset += UInt64(chunk.count) diff --git a/Sources/tart/VM.swift b/Sources/tart/VM.swift index 714d698..39450de 100644 --- a/Sources/tart/VM.swift +++ b/Sources/tart/VM.swift @@ -115,7 +115,7 @@ class VM: NSObject, VZVirtualMachineDelegate, ObservableObject { let digest = Digest() for try await chunk in channel { - fileHandle.write(chunk) + try fileHandle.write(contentsOf: chunk) digest.update(chunk) progress.completedUnitCount += Int64(chunk.count) } diff --git a/Sources/tart/VMDirectory+OCI.swift b/Sources/tart/VMDirectory+OCI.swift index 6b642d8..98d1d11 100644 --- a/Sources/tart/VMDirectory+OCI.swift +++ b/Sources/tart/VMDirectory+OCI.swift @@ -24,7 +24,7 @@ extension VMDirectory { } let configFile = try FileHandle(forWritingTo: configURL) try await registry.pullBlob(configLayers.first!.digest) { data in - configFile.write(data) + try configFile.write(contentsOf: data) } try configFile.close() @@ -79,7 +79,7 @@ extension VMDirectory { } let nvram = try FileHandle(forWritingTo: nvramURL) try await registry.pullBlob(nvramLayers.first!.digest) { data in - nvram.write(data) + try nvram.write(contentsOf: data) } try nvram.close()