From 24e72cbd1e9cbb01e7052d0479a8ccc4b4665287 Mon Sep 17 00:00:00 2001 From: Ignacio Tischelman <114942102+NachoEmbrace@users.noreply.github.com> Date: Thu, 27 Feb 2025 12:49:31 -0300 Subject: [PATCH] Deprecating `Embrace.Endpoints.developmentBaseURL` (#185) --- .../EmbraceCore/Internal/Embrace+Setup.swift | 7 +++--- .../Options/Embrace+Endpoints.swift | 22 ++++++++++++++----- .../Options/Embrace+OptionsTests.swift | 2 +- .../Public/EmbraceCoreTests.swift | 1 - .../Public/EmbraceEndpointsTest.swift | 1 - 5 files changed, 20 insertions(+), 13 deletions(-) diff --git a/Sources/EmbraceCore/Internal/Embrace+Setup.swift b/Sources/EmbraceCore/Internal/Embrace+Setup.swift index f4e61e8a..1da96dad 100644 --- a/Sources/EmbraceCore/Internal/Embrace+Setup.swift +++ b/Sources/EmbraceCore/Internal/Embrace+Setup.swift @@ -38,10 +38,9 @@ extension Embrace { return nil } - let baseUrl = EMBDevice.isDebuggerAttached ? endpoints.developmentBaseURL : endpoints.baseURL - guard let spansURL = URL.spansEndpoint(basePath: baseUrl), - let logsURL = URL.logsEndpoint(basePath: baseUrl), - let attachmentsURL = URL.attachmentsEndpoint(basePath: baseUrl) else { + guard let spansURL = URL.spansEndpoint(basePath: endpoints.baseURL), + let logsURL = URL.logsEndpoint(basePath: endpoints.baseURL), + let attachmentsURL = URL.attachmentsEndpoint(basePath: endpoints.baseURL) else { Embrace.logger.error("Failed to initialize endpoints!") return nil } diff --git a/Sources/EmbraceCore/Options/Embrace+Endpoints.swift b/Sources/EmbraceCore/Options/Embrace+Endpoints.swift index 0d1068e6..e6413b71 100644 --- a/Sources/EmbraceCore/Options/Embrace+Endpoints.swift +++ b/Sources/EmbraceCore/Options/Embrace+Endpoints.swift @@ -13,21 +13,31 @@ extension Embrace { /// The base URL to upload session data @objc public let baseURL: String - /// The base URL to upload session data while a debugger is attached - @objc public let developmentBaseURL: String - /// The base URL to retrieve remote config @objc public let configBaseURL: String + @available(*, deprecated, message: "Development base URL is not used anymore.") + @objc public let developmentBaseURL: String = "" + + /// Initializer that allows for custom endpoints. + /// - Note: If you wish to use the default endpoints please refer to the convenience initializer: `init(appId: String)`. + /// - Parameters: + /// - baseURL: Endpoint for session data upload + /// - configBaseURL: Endpoint to fetch the remote config + @objc public init(baseURL: String, configBaseURL: String) { + self.baseURL = baseURL + self.configBaseURL = configBaseURL + } + /// Initializer that allows for custom endpoints. /// - Note: If you wish to use the default endpoints please refer to the convenience initializer: `init(appId: String)`. /// - Parameters: /// - baseURL: Endpoint for session data upload /// - developmentBaseURL: Endpoint for session data upload while debugging /// - configBaseURL: Endpoint to fetch the remote config + @available(*, deprecated, message: "Use `init(baseURL:configBaseURL)` instead.") @objc public init(baseURL: String, developmentBaseURL: String, configBaseURL: String) { self.baseURL = baseURL - self.developmentBaseURL = developmentBaseURL self.configBaseURL = configBaseURL } } @@ -39,7 +49,7 @@ extension Embrace.Endpoints { @objc convenience init(appId: String) { self.init( baseURL: "https://a-\(appId).data.emb-api.com", - developmentBaseURL: "https://data-dev.emb-api.com", - configBaseURL: "https://a-\(appId).config.emb-api.com") + configBaseURL: "https://a-\(appId).config.emb-api.com" + ) } } diff --git a/Tests/EmbraceCoreTests/Options/Embrace+OptionsTests.swift b/Tests/EmbraceCoreTests/Options/Embrace+OptionsTests.swift index 41698f9b..e6505e54 100644 --- a/Tests/EmbraceCoreTests/Options/Embrace+OptionsTests.swift +++ b/Tests/EmbraceCoreTests/Options/Embrace+OptionsTests.swift @@ -17,7 +17,7 @@ final class Embrace_OptionsTests: XCTestCase { } func test_init_withEndpoints_setsEndpoints() throws { - let endpoints = Embrace.Endpoints(baseURL: "base", developmentBaseURL: "base", configBaseURL: "config") + let endpoints = Embrace.Endpoints(baseURL: "base", configBaseURL: "config") let options = Embrace.Options(appId: "myApp", endpoints: endpoints, captureServices: [], crashReporter: nil) XCTAssertEqual(options.endpoints, endpoints) } diff --git a/Tests/EmbraceCoreTests/Public/EmbraceCoreTests.swift b/Tests/EmbraceCoreTests/Public/EmbraceCoreTests.swift index e2ab8b65..b9e81415 100644 --- a/Tests/EmbraceCoreTests/Public/EmbraceCoreTests.swift +++ b/Tests/EmbraceCoreTests/Public/EmbraceCoreTests.swift @@ -292,7 +292,6 @@ final class EmbraceCoreTests: XCTestCase { // use fake endpoints let endpoints = Embrace.Endpoints( baseURL: "https://embrace.\(testName).com/api", - developmentBaseURL: "https://embrace.\(testName).com/api-dev", configBaseURL: "https://embrace.\(testName).com/config" ) diff --git a/Tests/EmbraceCoreTests/Public/EmbraceEndpointsTest.swift b/Tests/EmbraceCoreTests/Public/EmbraceEndpointsTest.swift index 942518bc..f8fd999f 100644 --- a/Tests/EmbraceCoreTests/Public/EmbraceEndpointsTest.swift +++ b/Tests/EmbraceCoreTests/Public/EmbraceEndpointsTest.swift @@ -12,7 +12,6 @@ final class EmbraceEndpointsTests: XCTestCase { // then the URLs have the correct domains XCTAssert(endpoints.baseURL.contains("a-appId")) - XCTAssertFalse(endpoints.developmentBaseURL.contains("a-appId")) XCTAssert(endpoints.configBaseURL.contains("a-appId")) } }