diff --git a/Sources/swift-doc/Supporting Types/Page.swift b/Sources/swift-doc/Supporting Types/Page.swift index 14b20741..9f0dc031 100644 --- a/Sources/swift-doc/Supporting Types/Page.swift +++ b/Sources/swift-doc/Supporting Types/Page.swift @@ -48,9 +48,8 @@ func path(for symbol: Symbol, with baseURL: String) -> String { } func path(for identifier: CustomStringConvertible, with baseURL: String) -> String { - var urlComponents = URLComponents(string: baseURL) - urlComponents = urlComponents?.appendingPathComponent("\(identifier)") - guard let string = urlComponents?.string else { + let url = URL(string: baseURL)?.appendingPathComponent("\(identifier)") + guard let string = url?.path else { logger.critical("Unable to construct path for \(identifier) with baseURL \(baseURL)") fatalError() } @@ -65,16 +64,3 @@ func writeFile(_ data: Data, to url: URL) throws { try data.write(to: url) try fileManager.setAttributes([.posixPermissions: 0o744], ofItemAtPath: url.path) } - -// MARK: - - -fileprivate extension URLComponents { - func appendingPathComponent(_ component: String) -> URLComponents? { - var urlComponents = self - var pathComponents = urlComponents.path.split(separator: "/").map { "\($0)" } - pathComponents.append(component) - urlComponents.path = "/" + pathComponents.joined(separator: "/") - - return urlComponents - } -}