From aec87aebd70f24f7b86d9cd09fd4850283afea57 Mon Sep 17 00:00:00 2001 From: dankinsoid <30962149+dankinsoid@users.noreply.github.com> Date: Thu, 2 May 2024 14:09:36 +0400 Subject: [PATCH 1/6] fix: Change classes to structs in order to avoid reference cycle --- .gitignore | 3 +- CHANGELOG.md | 6 ++++ Scripts/templates/api.mustache | 2 +- .../URLSessionImplementations.mustache | 2 +- Sources/InfluxDBSwift/DeleteAPI.swift | 2 +- Sources/InfluxDBSwift/InfluxDBClient.swift | 26 +++++++-------- .../InfluxDBSwift/InvokableScriptsAPI.swift | 2 +- Sources/InfluxDBSwift/Point.swift | 8 +++-- Sources/InfluxDBSwift/QueryAPI.swift | 2 +- Sources/InfluxDBSwift/WriteAPI.swift | 2 +- .../InfluxDBSwiftApis/Generated/APIs.swift | 2 +- .../Generated/APIs/AuthorizationsAPI.swift | 2 +- .../Generated/APIs/BucketsAPI.swift | 2 +- .../Generated/APIs/DBRPsAPI.swift | 2 +- .../Generated/APIs/HealthAPI.swift | 2 +- .../Generated/APIs/LabelsAPI.swift | 2 +- .../Generated/APIs/OrganizationsAPI.swift | 2 +- .../Generated/APIs/PingAPI.swift | 2 +- .../Generated/APIs/ReadyAPI.swift | 2 +- .../Generated/APIs/ScraperTargetsAPI.swift | 2 +- .../Generated/APIs/SecretsAPI.swift | 2 +- .../Generated/APIs/SetupAPI.swift | 2 +- .../Generated/APIs/SourcesAPI.swift | 2 +- .../Generated/APIs/TasksAPI.swift | 2 +- .../Generated/APIs/UsersAPI.swift | 2 +- .../Generated/APIs/VariablesAPI.swift | 2 +- .../Generated/URLSessionImplementations.swift | 2 +- Sources/InfluxDBSwiftApis/InfluxDB2API.swift | 32 +++++++++---------- 28 files changed, 66 insertions(+), 55 deletions(-) diff --git a/.gitignore b/.gitignore index af6ab893..de9dbbc2 100644 --- a/.gitignore +++ b/.gitignore @@ -105,4 +105,5 @@ junit.xml tests.xml Scripts/*.yml -Scripts/influxdb-clients-apigen/ \ No newline at end of file +Scripts/influxdb-clients-apigen/ +.DS_Store diff --git a/CHANGELOG.md b/CHANGELOG.md index 36f9ee21..22dac936 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,10 @@ +## 1.8.0 [unreleased] + ## 1.7.0 [unreleased] +1. [#63](https://github.com/influxdata/influxdb-client-swift/pull/64): Remove reference cycle and add `Sendable` conformances + +### Others +1. [#64](https://github.com/influxdata/influxdb-client-swift/pull/64): ## 1.6.0 [2022-12-01] diff --git a/Scripts/templates/api.mustache b/Scripts/templates/api.mustache index 93a3e8cc..ca50e58e 100644 --- a/Scripts/templates/api.mustache +++ b/Scripts/templates/api.mustache @@ -17,7 +17,7 @@ extension {{projectName}}API { {{#description}} /** {{description}} */{{/description}} -{{#objcCompatible}}@objc {{/objcCompatible}}{{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}public{{/nonPublicApi}} class {{classname}}{{#objcCompatible}} : NSObject{{/objcCompatible}} { +{{#objcCompatible}}@objc {{/objcCompatible}}{{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}public{{/nonPublicApi}} {{^objcCompatible}}struct {{classname}}: Sendable{{/objcCompatible}}{{#objcCompatible}}class {{classname}} : NSObject{{/objcCompatible}} { private let influxDB2API: InfluxDB2API public init(influxDB2API: InfluxDB2API) { diff --git a/Scripts/templates/libraries/urlsession/URLSessionImplementations.mustache b/Scripts/templates/libraries/urlsession/URLSessionImplementations.mustache index 1ba55213..2be9be80 100644 --- a/Scripts/templates/libraries/urlsession/URLSessionImplementations.mustache +++ b/Scripts/templates/libraries/urlsession/URLSessionImplementations.mustache @@ -13,7 +13,7 @@ import MobileCoreServices #endif import InfluxDBSwift -class URLSessionRequestBuilderFactory: RequestBuilderFactory { +final class URLSessionRequestBuilderFactory: RequestBuilderFactory { func getRequestNonDecodableBuilder(method: String, URLString: String, parameters: [String:Any]?, isBody: Bool, headers: [String:String] = [:], influxDB2API: InfluxDB2API) -> RequestBuilder { URLSessionRequestBuilder(method: method, URLString: URLString, parameters: parameters, isBody: isBody, influxDB2API: influxDB2API) } diff --git a/Sources/InfluxDBSwift/DeleteAPI.swift b/Sources/InfluxDBSwift/DeleteAPI.swift index 37145489..ee5800fd 100644 --- a/Sources/InfluxDBSwift/DeleteAPI.swift +++ b/Sources/InfluxDBSwift/DeleteAPI.swift @@ -23,7 +23,7 @@ import FoundationNetworking /// /// print("Successfully data data by:\n\n\(predicateRequest)") /// ```` -public class DeleteAPI { +public struct DeleteAPI: Sendable { /// Shared client. private let client: InfluxDBClient diff --git a/Sources/InfluxDBSwift/InfluxDBClient.swift b/Sources/InfluxDBSwift/InfluxDBClient.swift index 652a31b9..6af5a57d 100644 --- a/Sources/InfluxDBSwift/InfluxDBClient.swift +++ b/Sources/InfluxDBSwift/InfluxDBClient.swift @@ -22,7 +22,7 @@ import FoundationNetworking /// /// client.close() /// ```` -public class InfluxDBClient { +public struct InfluxDBClient: Sendable { /// Version of client. public static var version: String = "1.7.0dev" /// InfluxDB host and port. @@ -36,20 +36,20 @@ public class InfluxDBClient { /// Shared URLSession across the client. public let session: URLSession - /// Lazy initialized `QueryAPI`. - public lazy var queryAPI: QueryAPI = { + /// `QueryAPI`. + public var queryAPI: QueryAPI { QueryAPI(client: self) - }() + } - /// Lazy initialized `DeleteAPI`. - public lazy var deleteAPI: DeleteAPI = { + /// `DeleteAPI`. + public var deleteAPI: DeleteAPI { DeleteAPI(client: self) - }() + } - /// Lazy initialized `InvokableScriptsApi`. - public lazy var invokableScriptsApi: InvokableScriptsAPI = { + /// `InvokableScriptsApi`. + public var invokableScriptsApi: InvokableScriptsAPI { InvokableScriptsAPI(client: self) - }() + } /// Create a new client for a InfluxDB. /// @@ -102,7 +102,7 @@ public class InfluxDBClient { /// - protocolClasses: optional array of extra protocol subclasses that handle requests. /// /// - SeeAlso: https://docs.influxdata.com/influxdb/v1.8/tools/api/#influxdb-2-0-api-compatibility-endpoints - public convenience init(url: String, + public init(url: String, username: String, password: String, database: String, @@ -131,7 +131,7 @@ public class InfluxDBClient { extension InfluxDBClient { /// Options to use when creating a `InfluxDBClient`. - public struct InfluxDBOptions { + public struct InfluxDBOptions: @unchecked Sendable { /// Default organization bucket for writes. /// - SeeAlso: https://docs.influxdata.com/influxdb/latest/organizations/buckets/view-buckets/ public let bucket: String? @@ -247,7 +247,7 @@ extension InfluxDBClient { /// An enum represents the precision for the unix timestamps within the body line-protocol. /// - SeeAlso: https://docs.influxdata.com/influxdb/latest/write-data/#timestamp-precision - public enum TimestampPrecision: String, Codable, CaseIterable { + public enum TimestampPrecision: String, Codable, CaseIterable, Sendable { /// Milliseconds case ms /// Seconds diff --git a/Sources/InfluxDBSwift/InvokableScriptsAPI.swift b/Sources/InfluxDBSwift/InvokableScriptsAPI.swift index 3209524e..eaf51c96 100644 --- a/Sources/InfluxDBSwift/InvokableScriptsAPI.swift +++ b/Sources/InfluxDBSwift/InvokableScriptsAPI.swift @@ -8,7 +8,7 @@ import Foundation /// /// API invokable scripts let you assign scripts to API endpoints and then execute them /// as standard REST operations in InfluxDB Cloud. -public class InvokableScriptsAPI { +public struct InvokableScriptsAPI: Sendable { /// Shared client. private let client: InfluxDBClient diff --git a/Sources/InfluxDBSwift/Point.swift b/Sources/InfluxDBSwift/Point.swift index 87e783e5..58d30edf 100644 --- a/Sources/InfluxDBSwift/Point.swift +++ b/Sources/InfluxDBSwift/Point.swift @@ -95,10 +95,12 @@ extension InfluxDBClient { /// .addDefaultTag(key: "customer", value: "California Miner") /// .addDefaultTag(key: "data_center", value: "${env.DATA_CENTER_LOCATION}") /// ```` - public class PointSettings { + public struct PointSettings: Sendable { // Default tags which will be added to each point written by api. var tags: [String: String?] = [:] + public init() {} + /// Add new default tag with key and value. /// /// - Parameters: @@ -107,7 +109,9 @@ extension InfluxDBClient { /// - Returns: Self public func addDefaultTag(key: String?, value: String?) -> PointSettings { if let key = key { - tags[key] = value + var result = self + result.tags[key] = value + return result } return self } diff --git a/Sources/InfluxDBSwift/QueryAPI.swift b/Sources/InfluxDBSwift/QueryAPI.swift index e04dd326..685eee91 100644 --- a/Sources/InfluxDBSwift/QueryAPI.swift +++ b/Sources/InfluxDBSwift/QueryAPI.swift @@ -41,7 +41,7 @@ import Gzip /// /// client.close() /// ```` -public class QueryAPI { +public struct QueryAPI: Sendable { /// The default Query Dialect with annotation = ["datatype", "group", "default"] public static let defaultDialect = Dialect(annotations: [ diff --git a/Sources/InfluxDBSwift/WriteAPI.swift b/Sources/InfluxDBSwift/WriteAPI.swift index 9cb29c09..09c742f8 100644 --- a/Sources/InfluxDBSwift/WriteAPI.swift +++ b/Sources/InfluxDBSwift/WriteAPI.swift @@ -58,7 +58,7 @@ import Gzip /// print("Successfully written data:\n\n\(recordTuple)") /// /// ```` -public class WriteAPI { +public struct WriteAPI: Sendable { /// Shared client. private let client: InfluxDBClient /// Settings for DataPoint. diff --git a/Sources/InfluxDBSwiftApis/Generated/APIs.swift b/Sources/InfluxDBSwiftApis/Generated/APIs.swift index 1badc36c..b350d237 100644 --- a/Sources/InfluxDBSwiftApis/Generated/APIs.swift +++ b/Sources/InfluxDBSwiftApis/Generated/APIs.swift @@ -53,7 +53,7 @@ internal class RequestBuilder { } } -internal protocol RequestBuilderFactory { +internal protocol RequestBuilderFactory: Sendable { func getRequestNonDecodableBuilder(method: String, URLString: String, parameters: [String:Any]?, isBody: Bool, headers: [String:String], influxDB2API: InfluxDB2API) -> RequestBuilder func getRequestDecodableBuilder(method: String, URLString: String, parameters: [String:Any]?, isBody: Bool, headers: [String:String], influxDB2API: InfluxDB2API) -> RequestBuilder } diff --git a/Sources/InfluxDBSwiftApis/Generated/APIs/AuthorizationsAPI.swift b/Sources/InfluxDBSwiftApis/Generated/APIs/AuthorizationsAPI.swift index d08409ec..790d8ad8 100644 --- a/Sources/InfluxDBSwiftApis/Generated/APIs/AuthorizationsAPI.swift +++ b/Sources/InfluxDBSwiftApis/Generated/APIs/AuthorizationsAPI.swift @@ -11,7 +11,7 @@ import InfluxDBSwift extension InfluxDB2API { -public class AuthorizationsAPI { +public struct AuthorizationsAPI: Sendable { private let influxDB2API: InfluxDB2API public init(influxDB2API: InfluxDB2API) { diff --git a/Sources/InfluxDBSwiftApis/Generated/APIs/BucketsAPI.swift b/Sources/InfluxDBSwiftApis/Generated/APIs/BucketsAPI.swift index ba14acb0..35aadf78 100644 --- a/Sources/InfluxDBSwiftApis/Generated/APIs/BucketsAPI.swift +++ b/Sources/InfluxDBSwiftApis/Generated/APIs/BucketsAPI.swift @@ -11,7 +11,7 @@ import InfluxDBSwift extension InfluxDB2API { -public class BucketsAPI { +public struct BucketsAPI: Sendable { private let influxDB2API: InfluxDB2API public init(influxDB2API: InfluxDB2API) { diff --git a/Sources/InfluxDBSwiftApis/Generated/APIs/DBRPsAPI.swift b/Sources/InfluxDBSwiftApis/Generated/APIs/DBRPsAPI.swift index 3a5c018b..e85aaa2b 100644 --- a/Sources/InfluxDBSwiftApis/Generated/APIs/DBRPsAPI.swift +++ b/Sources/InfluxDBSwiftApis/Generated/APIs/DBRPsAPI.swift @@ -11,7 +11,7 @@ import InfluxDBSwift extension InfluxDB2API { -public class DBRPsAPI { +public struct DBRPsAPI: Sendable { private let influxDB2API: InfluxDB2API public init(influxDB2API: InfluxDB2API) { diff --git a/Sources/InfluxDBSwiftApis/Generated/APIs/HealthAPI.swift b/Sources/InfluxDBSwiftApis/Generated/APIs/HealthAPI.swift index a605219b..00fed222 100644 --- a/Sources/InfluxDBSwiftApis/Generated/APIs/HealthAPI.swift +++ b/Sources/InfluxDBSwiftApis/Generated/APIs/HealthAPI.swift @@ -11,7 +11,7 @@ import InfluxDBSwift extension InfluxDB2API { -public class HealthAPI { +public struct HealthAPI: Sendable { private let influxDB2API: InfluxDB2API public init(influxDB2API: InfluxDB2API) { diff --git a/Sources/InfluxDBSwiftApis/Generated/APIs/LabelsAPI.swift b/Sources/InfluxDBSwiftApis/Generated/APIs/LabelsAPI.swift index 875937c2..666426ba 100644 --- a/Sources/InfluxDBSwiftApis/Generated/APIs/LabelsAPI.swift +++ b/Sources/InfluxDBSwiftApis/Generated/APIs/LabelsAPI.swift @@ -11,7 +11,7 @@ import InfluxDBSwift extension InfluxDB2API { -public class LabelsAPI { +public struct LabelsAPI: Sendable { private let influxDB2API: InfluxDB2API public init(influxDB2API: InfluxDB2API) { diff --git a/Sources/InfluxDBSwiftApis/Generated/APIs/OrganizationsAPI.swift b/Sources/InfluxDBSwiftApis/Generated/APIs/OrganizationsAPI.swift index 016f11c9..abc179eb 100644 --- a/Sources/InfluxDBSwiftApis/Generated/APIs/OrganizationsAPI.swift +++ b/Sources/InfluxDBSwiftApis/Generated/APIs/OrganizationsAPI.swift @@ -11,7 +11,7 @@ import InfluxDBSwift extension InfluxDB2API { -public class OrganizationsAPI { +public struct OrganizationsAPI: Sendable { private let influxDB2API: InfluxDB2API public init(influxDB2API: InfluxDB2API) { diff --git a/Sources/InfluxDBSwiftApis/Generated/APIs/PingAPI.swift b/Sources/InfluxDBSwiftApis/Generated/APIs/PingAPI.swift index d01a09d7..a61bbcdc 100644 --- a/Sources/InfluxDBSwiftApis/Generated/APIs/PingAPI.swift +++ b/Sources/InfluxDBSwiftApis/Generated/APIs/PingAPI.swift @@ -11,7 +11,7 @@ import InfluxDBSwift extension InfluxDB2API { -public class PingAPI { +public struct PingAPI: Sendable { private let influxDB2API: InfluxDB2API public init(influxDB2API: InfluxDB2API) { diff --git a/Sources/InfluxDBSwiftApis/Generated/APIs/ReadyAPI.swift b/Sources/InfluxDBSwiftApis/Generated/APIs/ReadyAPI.swift index ce438240..2965bc2a 100644 --- a/Sources/InfluxDBSwiftApis/Generated/APIs/ReadyAPI.swift +++ b/Sources/InfluxDBSwiftApis/Generated/APIs/ReadyAPI.swift @@ -11,7 +11,7 @@ import InfluxDBSwift extension InfluxDB2API { -public class ReadyAPI { +public struct ReadyAPI: Sendable { private let influxDB2API: InfluxDB2API public init(influxDB2API: InfluxDB2API) { diff --git a/Sources/InfluxDBSwiftApis/Generated/APIs/ScraperTargetsAPI.swift b/Sources/InfluxDBSwiftApis/Generated/APIs/ScraperTargetsAPI.swift index 053767ac..261ea328 100644 --- a/Sources/InfluxDBSwiftApis/Generated/APIs/ScraperTargetsAPI.swift +++ b/Sources/InfluxDBSwiftApis/Generated/APIs/ScraperTargetsAPI.swift @@ -11,7 +11,7 @@ import InfluxDBSwift extension InfluxDB2API { -public class ScraperTargetsAPI { +public struct ScraperTargetsAPI: Sendable { private let influxDB2API: InfluxDB2API public init(influxDB2API: InfluxDB2API) { diff --git a/Sources/InfluxDBSwiftApis/Generated/APIs/SecretsAPI.swift b/Sources/InfluxDBSwiftApis/Generated/APIs/SecretsAPI.swift index d242769f..41f230af 100644 --- a/Sources/InfluxDBSwiftApis/Generated/APIs/SecretsAPI.swift +++ b/Sources/InfluxDBSwiftApis/Generated/APIs/SecretsAPI.swift @@ -11,7 +11,7 @@ import InfluxDBSwift extension InfluxDB2API { -public class SecretsAPI { +public struct SecretsAPI: Sendable { private let influxDB2API: InfluxDB2API public init(influxDB2API: InfluxDB2API) { diff --git a/Sources/InfluxDBSwiftApis/Generated/APIs/SetupAPI.swift b/Sources/InfluxDBSwiftApis/Generated/APIs/SetupAPI.swift index 0697eaec..4c6159e3 100644 --- a/Sources/InfluxDBSwiftApis/Generated/APIs/SetupAPI.swift +++ b/Sources/InfluxDBSwiftApis/Generated/APIs/SetupAPI.swift @@ -11,7 +11,7 @@ import InfluxDBSwift extension InfluxDB2API { -public class SetupAPI { +public struct SetupAPI: Sendable { private let influxDB2API: InfluxDB2API public init(influxDB2API: InfluxDB2API) { diff --git a/Sources/InfluxDBSwiftApis/Generated/APIs/SourcesAPI.swift b/Sources/InfluxDBSwiftApis/Generated/APIs/SourcesAPI.swift index df0b47f2..3e516853 100644 --- a/Sources/InfluxDBSwiftApis/Generated/APIs/SourcesAPI.swift +++ b/Sources/InfluxDBSwiftApis/Generated/APIs/SourcesAPI.swift @@ -11,7 +11,7 @@ import InfluxDBSwift extension InfluxDB2API { -public class SourcesAPI { +public struct SourcesAPI: Sendable { private let influxDB2API: InfluxDB2API public init(influxDB2API: InfluxDB2API) { diff --git a/Sources/InfluxDBSwiftApis/Generated/APIs/TasksAPI.swift b/Sources/InfluxDBSwiftApis/Generated/APIs/TasksAPI.swift index 1ba47042..65e73f34 100644 --- a/Sources/InfluxDBSwiftApis/Generated/APIs/TasksAPI.swift +++ b/Sources/InfluxDBSwiftApis/Generated/APIs/TasksAPI.swift @@ -11,7 +11,7 @@ import InfluxDBSwift extension InfluxDB2API { -public class TasksAPI { +public struct TasksAPI: Sendable { private let influxDB2API: InfluxDB2API public init(influxDB2API: InfluxDB2API) { diff --git a/Sources/InfluxDBSwiftApis/Generated/APIs/UsersAPI.swift b/Sources/InfluxDBSwiftApis/Generated/APIs/UsersAPI.swift index 6e90bae5..12e7db2a 100644 --- a/Sources/InfluxDBSwiftApis/Generated/APIs/UsersAPI.swift +++ b/Sources/InfluxDBSwiftApis/Generated/APIs/UsersAPI.swift @@ -11,7 +11,7 @@ import InfluxDBSwift extension InfluxDB2API { -public class UsersAPI { +public struct UsersAPI: Sendable { private let influxDB2API: InfluxDB2API public init(influxDB2API: InfluxDB2API) { diff --git a/Sources/InfluxDBSwiftApis/Generated/APIs/VariablesAPI.swift b/Sources/InfluxDBSwiftApis/Generated/APIs/VariablesAPI.swift index e2d1df7f..7c371423 100644 --- a/Sources/InfluxDBSwiftApis/Generated/APIs/VariablesAPI.swift +++ b/Sources/InfluxDBSwiftApis/Generated/APIs/VariablesAPI.swift @@ -11,7 +11,7 @@ import InfluxDBSwift extension InfluxDB2API { -public class VariablesAPI { +public struct VariablesAPI: Sendable { private let influxDB2API: InfluxDB2API public init(influxDB2API: InfluxDB2API) { diff --git a/Sources/InfluxDBSwiftApis/Generated/URLSessionImplementations.swift b/Sources/InfluxDBSwiftApis/Generated/URLSessionImplementations.swift index 0fe39631..3d88ba36 100644 --- a/Sources/InfluxDBSwiftApis/Generated/URLSessionImplementations.swift +++ b/Sources/InfluxDBSwiftApis/Generated/URLSessionImplementations.swift @@ -13,7 +13,7 @@ import MobileCoreServices #endif import InfluxDBSwift -class URLSessionRequestBuilderFactory: RequestBuilderFactory { +final class URLSessionRequestBuilderFactory: RequestBuilderFactory { func getRequestNonDecodableBuilder(method: String, URLString: String, parameters: [String:Any]?, isBody: Bool, headers: [String:String] = [:], influxDB2API: InfluxDB2API) -> RequestBuilder { URLSessionRequestBuilder(method: method, URLString: URLString, parameters: parameters, isBody: isBody, influxDB2API: influxDB2API) } diff --git a/Sources/InfluxDBSwiftApis/InfluxDB2API.swift b/Sources/InfluxDBSwiftApis/InfluxDB2API.swift index 9669d4bf..1a1921bd 100644 --- a/Sources/InfluxDBSwiftApis/InfluxDB2API.swift +++ b/Sources/InfluxDBSwiftApis/InfluxDB2API.swift @@ -28,7 +28,7 @@ import InfluxDBSwift /// /// client.close() /// ```` -public class InfluxDB2API { +public struct InfluxDB2API: Sendable { internal let client: InfluxDBClient internal let basePath: String internal let requestBuilderFactory: RequestBuilderFactory @@ -39,49 +39,49 @@ public class InfluxDB2API { } /// Lazy initialized `AuthorizationsAPI`. - public lazy var authorizationsAPI: AuthorizationsAPI = { AuthorizationsAPI(influxDB2API: self) }() + public var authorizationsAPI: AuthorizationsAPI { AuthorizationsAPI(influxDB2API: self) } /// Lazy initialized `BucketsAPI`. - public lazy var bucketsAPI: BucketsAPI = { BucketsAPI(influxDB2API: self) }() + public var bucketsAPI: BucketsAPI { BucketsAPI(influxDB2API: self) } /// Lazy initialized `DBRPsAPI`. - public lazy var dbrpsAPI: DBRPsAPI = { DBRPsAPI(influxDB2API: self) }() + public var dbrpsAPI: DBRPsAPI { DBRPsAPI(influxDB2API: self) } /// Lazy initialized `HealthAPI`. - public lazy var healthAPI: HealthAPI = { HealthAPI(influxDB2API: self) }() + public var healthAPI: HealthAPI { HealthAPI(influxDB2API: self) } /// Lazy initialized `PingAPI`. - public lazy var pingAPI: PingAPI = { PingAPI(influxDB2API: self) }() + public var pingAPI: PingAPI { PingAPI(influxDB2API: self) } /// Lazy initialized `LabelsAPI`. - public lazy var labelsAPI: LabelsAPI = { LabelsAPI(influxDB2API: self) }() + public var labelsAPI: LabelsAPI { LabelsAPI(influxDB2API: self) } /// Lazy initialized `OrganizationsAPI`. - public lazy var organizationsAPI: OrganizationsAPI = { OrganizationsAPI(influxDB2API: self) }() + public var organizationsAPI: OrganizationsAPI { OrganizationsAPI(influxDB2API: self) } /// Lazy initialized `ReadyAPI`. - public lazy var readyAPI: ReadyAPI = { ReadyAPI(influxDB2API: self) }() + public var readyAPI: ReadyAPI { ReadyAPI(influxDB2API: self) } /// Lazy initialized `ScraperTargetsAPI`. - public lazy var scraperTargetsAPI: ScraperTargetsAPI = { ScraperTargetsAPI(influxDB2API: self) }() + public var scraperTargetsAPI: ScraperTargetsAPI { ScraperTargetsAPI(influxDB2API: self) } /// Lazy initialized `SecretsAPI`. - public lazy var secretsAPI: SecretsAPI = { SecretsAPI(influxDB2API: self) }() + public var secretsAPI: SecretsAPI { SecretsAPI(influxDB2API: self) } /// Lazy initialized `SetupAPI`. - public lazy var setupAPI: SetupAPI = { SetupAPI(influxDB2API: self) }() + public var setupAPI: SetupAPI { SetupAPI(influxDB2API: self) } /// Lazy initialized `SourcesAPI`. - public lazy var sourcesAPI: SourcesAPI = { SourcesAPI(influxDB2API: self) }() + public var sourcesAPI: SourcesAPI { SourcesAPI(influxDB2API: self) } /// Lazy initialized `TasksAPI`. - public lazy var tasksAPI: TasksAPI = { TasksAPI(influxDB2API: self) }() + public var tasksAPI: TasksAPI { TasksAPI(influxDB2API: self) } /// Lazy initialized `UsersAPI`. - public lazy var usersAPI: UsersAPI = { UsersAPI(influxDB2API: self) }() + public var usersAPI: UsersAPI { UsersAPI(influxDB2API: self) } /// Lazy initialized `VariablesAPI`. - public lazy var variablesAPI: VariablesAPI = { VariablesAPI(influxDB2API: self) }() + public var variablesAPI: VariablesAPI { VariablesAPI(influxDB2API: self) } /// Create a new managements client for a InfluxDB. /// From 1d4c64d9d2e0bc178e957a4c4cbbc67636b0276f Mon Sep 17 00:00:00 2001 From: dankinsoid <30962149+dankinsoid@users.noreply.github.com> Date: Thu, 2 May 2024 14:13:12 +0400 Subject: [PATCH 2/6] fix: arguments alignment --- Sources/InfluxDBSwift/InfluxDBClient.swift | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Sources/InfluxDBSwift/InfluxDBClient.swift b/Sources/InfluxDBSwift/InfluxDBClient.swift index 6af5a57d..ad7bfdc9 100644 --- a/Sources/InfluxDBSwift/InfluxDBClient.swift +++ b/Sources/InfluxDBSwift/InfluxDBClient.swift @@ -103,12 +103,12 @@ public struct InfluxDBClient: Sendable { /// /// - SeeAlso: https://docs.influxdata.com/influxdb/v1.8/tools/api/#influxdb-2-0-api-compatibility-endpoints public init(url: String, - username: String, - password: String, - database: String, - retentionPolicy: String, - precision: TimestampPrecision = TimestampPrecision.ns, - protocolClasses: [AnyClass]? = nil) { + username: String, + password: String, + database: String, + retentionPolicy: String, + precision: TimestampPrecision = TimestampPrecision.ns, + protocolClasses: [AnyClass]? = nil) { let options = InfluxDBOptions(bucket: "\(database)/\(retentionPolicy)", precision: precision) self.init(url: url, token: "\(username):\(password)", options: options, protocolClasses: protocolClasses) From 1309beb56eef5040992e89bf7ee5899d149de640 Mon Sep 17 00:00:00 2001 From: dankinsoid <30962149+dankinsoid@users.noreply.github.com> Date: Thu, 2 May 2024 14:39:28 +0400 Subject: [PATCH 3/6] fix: remove Sendable conformances to support old swift versions --- CHANGELOG.md | 2 +- Scripts/templates/api.mustache | 2 +- Sources/InfluxDBSwift/DeleteAPI.swift | 2 +- Sources/InfluxDBSwift/InfluxDBClient.swift | 6 +++--- Sources/InfluxDBSwift/InvokableScriptsAPI.swift | 2 +- Sources/InfluxDBSwift/Point.swift | 2 +- Sources/InfluxDBSwift/QueryAPI.swift | 2 +- Sources/InfluxDBSwift/WriteAPI.swift | 2 +- Sources/InfluxDBSwiftApis/Generated/APIs.swift | 2 +- .../Generated/APIs/AuthorizationsAPI.swift | 2 +- Sources/InfluxDBSwiftApis/Generated/APIs/BucketsAPI.swift | 2 +- Sources/InfluxDBSwiftApis/Generated/APIs/DBRPsAPI.swift | 2 +- Sources/InfluxDBSwiftApis/Generated/APIs/HealthAPI.swift | 2 +- Sources/InfluxDBSwiftApis/Generated/APIs/LabelsAPI.swift | 2 +- .../InfluxDBSwiftApis/Generated/APIs/OrganizationsAPI.swift | 2 +- Sources/InfluxDBSwiftApis/Generated/APIs/PingAPI.swift | 2 +- Sources/InfluxDBSwiftApis/Generated/APIs/ReadyAPI.swift | 2 +- .../Generated/APIs/ScraperTargetsAPI.swift | 2 +- Sources/InfluxDBSwiftApis/Generated/APIs/SecretsAPI.swift | 2 +- Sources/InfluxDBSwiftApis/Generated/APIs/SetupAPI.swift | 2 +- Sources/InfluxDBSwiftApis/Generated/APIs/SourcesAPI.swift | 2 +- Sources/InfluxDBSwiftApis/Generated/APIs/TasksAPI.swift | 2 +- Sources/InfluxDBSwiftApis/Generated/APIs/UsersAPI.swift | 2 +- Sources/InfluxDBSwiftApis/Generated/APIs/VariablesAPI.swift | 2 +- Sources/InfluxDBSwiftApis/InfluxDB2API.swift | 2 +- 25 files changed, 27 insertions(+), 27 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 22dac936..19d0951d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,7 +1,7 @@ ## 1.8.0 [unreleased] ## 1.7.0 [unreleased] -1. [#63](https://github.com/influxdata/influxdb-client-swift/pull/64): Remove reference cycle and add `Sendable` conformances +1. [#63](https://github.com/influxdata/influxdb-client-swift/pull/64): Remove reference cycle ### Others 1. [#64](https://github.com/influxdata/influxdb-client-swift/pull/64): diff --git a/Scripts/templates/api.mustache b/Scripts/templates/api.mustache index ca50e58e..c58e0c05 100644 --- a/Scripts/templates/api.mustache +++ b/Scripts/templates/api.mustache @@ -17,7 +17,7 @@ extension {{projectName}}API { {{#description}} /** {{description}} */{{/description}} -{{#objcCompatible}}@objc {{/objcCompatible}}{{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}public{{/nonPublicApi}} {{^objcCompatible}}struct {{classname}}: Sendable{{/objcCompatible}}{{#objcCompatible}}class {{classname}} : NSObject{{/objcCompatible}} { +{{#objcCompatible}}@objc {{/objcCompatible}}{{#nonPublicApi}}internal{{/nonPublicApi}}{{^nonPublicApi}}public{{/nonPublicApi}} {{^objcCompatible}}struct {{classname}}{{/objcCompatible}}{{#objcCompatible}}class {{classname}} : NSObject{{/objcCompatible}} { private let influxDB2API: InfluxDB2API public init(influxDB2API: InfluxDB2API) { diff --git a/Sources/InfluxDBSwift/DeleteAPI.swift b/Sources/InfluxDBSwift/DeleteAPI.swift index ee5800fd..52834cda 100644 --- a/Sources/InfluxDBSwift/DeleteAPI.swift +++ b/Sources/InfluxDBSwift/DeleteAPI.swift @@ -23,7 +23,7 @@ import FoundationNetworking /// /// print("Successfully data data by:\n\n\(predicateRequest)") /// ```` -public struct DeleteAPI: Sendable { +public struct DeleteAPI { /// Shared client. private let client: InfluxDBClient diff --git a/Sources/InfluxDBSwift/InfluxDBClient.swift b/Sources/InfluxDBSwift/InfluxDBClient.swift index ad7bfdc9..294a76b5 100644 --- a/Sources/InfluxDBSwift/InfluxDBClient.swift +++ b/Sources/InfluxDBSwift/InfluxDBClient.swift @@ -22,7 +22,7 @@ import FoundationNetworking /// /// client.close() /// ```` -public struct InfluxDBClient: Sendable { +public struct InfluxDBClient { /// Version of client. public static var version: String = "1.7.0dev" /// InfluxDB host and port. @@ -131,7 +131,7 @@ public struct InfluxDBClient: Sendable { extension InfluxDBClient { /// Options to use when creating a `InfluxDBClient`. - public struct InfluxDBOptions: @unchecked Sendable { + public struct InfluxDBOptions: { /// Default organization bucket for writes. /// - SeeAlso: https://docs.influxdata.com/influxdb/latest/organizations/buckets/view-buckets/ public let bucket: String? @@ -247,7 +247,7 @@ extension InfluxDBClient { /// An enum represents the precision for the unix timestamps within the body line-protocol. /// - SeeAlso: https://docs.influxdata.com/influxdb/latest/write-data/#timestamp-precision - public enum TimestampPrecision: String, Codable, CaseIterable, Sendable { + public enum TimestampPrecision: String, Codable, CaseIterable { /// Milliseconds case ms /// Seconds diff --git a/Sources/InfluxDBSwift/InvokableScriptsAPI.swift b/Sources/InfluxDBSwift/InvokableScriptsAPI.swift index eaf51c96..c7a89c29 100644 --- a/Sources/InfluxDBSwift/InvokableScriptsAPI.swift +++ b/Sources/InfluxDBSwift/InvokableScriptsAPI.swift @@ -8,7 +8,7 @@ import Foundation /// /// API invokable scripts let you assign scripts to API endpoints and then execute them /// as standard REST operations in InfluxDB Cloud. -public struct InvokableScriptsAPI: Sendable { +public struct InvokableScriptsAPI { /// Shared client. private let client: InfluxDBClient diff --git a/Sources/InfluxDBSwift/Point.swift b/Sources/InfluxDBSwift/Point.swift index 58d30edf..1bb67723 100644 --- a/Sources/InfluxDBSwift/Point.swift +++ b/Sources/InfluxDBSwift/Point.swift @@ -95,7 +95,7 @@ extension InfluxDBClient { /// .addDefaultTag(key: "customer", value: "California Miner") /// .addDefaultTag(key: "data_center", value: "${env.DATA_CENTER_LOCATION}") /// ```` - public struct PointSettings: Sendable { + public struct PointSettings { // Default tags which will be added to each point written by api. var tags: [String: String?] = [:] diff --git a/Sources/InfluxDBSwift/QueryAPI.swift b/Sources/InfluxDBSwift/QueryAPI.swift index 685eee91..5a4b453d 100644 --- a/Sources/InfluxDBSwift/QueryAPI.swift +++ b/Sources/InfluxDBSwift/QueryAPI.swift @@ -41,7 +41,7 @@ import Gzip /// /// client.close() /// ```` -public struct QueryAPI: Sendable { +public struct QueryAPI { /// The default Query Dialect with annotation = ["datatype", "group", "default"] public static let defaultDialect = Dialect(annotations: [ diff --git a/Sources/InfluxDBSwift/WriteAPI.swift b/Sources/InfluxDBSwift/WriteAPI.swift index 09c742f8..1812df83 100644 --- a/Sources/InfluxDBSwift/WriteAPI.swift +++ b/Sources/InfluxDBSwift/WriteAPI.swift @@ -58,7 +58,7 @@ import Gzip /// print("Successfully written data:\n\n\(recordTuple)") /// /// ```` -public struct WriteAPI: Sendable { +public struct WriteAPI { /// Shared client. private let client: InfluxDBClient /// Settings for DataPoint. diff --git a/Sources/InfluxDBSwiftApis/Generated/APIs.swift b/Sources/InfluxDBSwiftApis/Generated/APIs.swift index b350d237..1badc36c 100644 --- a/Sources/InfluxDBSwiftApis/Generated/APIs.swift +++ b/Sources/InfluxDBSwiftApis/Generated/APIs.swift @@ -53,7 +53,7 @@ internal class RequestBuilder { } } -internal protocol RequestBuilderFactory: Sendable { +internal protocol RequestBuilderFactory { func getRequestNonDecodableBuilder(method: String, URLString: String, parameters: [String:Any]?, isBody: Bool, headers: [String:String], influxDB2API: InfluxDB2API) -> RequestBuilder func getRequestDecodableBuilder(method: String, URLString: String, parameters: [String:Any]?, isBody: Bool, headers: [String:String], influxDB2API: InfluxDB2API) -> RequestBuilder } diff --git a/Sources/InfluxDBSwiftApis/Generated/APIs/AuthorizationsAPI.swift b/Sources/InfluxDBSwiftApis/Generated/APIs/AuthorizationsAPI.swift index 790d8ad8..aed10da2 100644 --- a/Sources/InfluxDBSwiftApis/Generated/APIs/AuthorizationsAPI.swift +++ b/Sources/InfluxDBSwiftApis/Generated/APIs/AuthorizationsAPI.swift @@ -11,7 +11,7 @@ import InfluxDBSwift extension InfluxDB2API { -public struct AuthorizationsAPI: Sendable { +public struct AuthorizationsAPI { private let influxDB2API: InfluxDB2API public init(influxDB2API: InfluxDB2API) { diff --git a/Sources/InfluxDBSwiftApis/Generated/APIs/BucketsAPI.swift b/Sources/InfluxDBSwiftApis/Generated/APIs/BucketsAPI.swift index 35aadf78..e2dae371 100644 --- a/Sources/InfluxDBSwiftApis/Generated/APIs/BucketsAPI.swift +++ b/Sources/InfluxDBSwiftApis/Generated/APIs/BucketsAPI.swift @@ -11,7 +11,7 @@ import InfluxDBSwift extension InfluxDB2API { -public struct BucketsAPI: Sendable { +public struct BucketsAPI { private let influxDB2API: InfluxDB2API public init(influxDB2API: InfluxDB2API) { diff --git a/Sources/InfluxDBSwiftApis/Generated/APIs/DBRPsAPI.swift b/Sources/InfluxDBSwiftApis/Generated/APIs/DBRPsAPI.swift index e85aaa2b..0c782352 100644 --- a/Sources/InfluxDBSwiftApis/Generated/APIs/DBRPsAPI.swift +++ b/Sources/InfluxDBSwiftApis/Generated/APIs/DBRPsAPI.swift @@ -11,7 +11,7 @@ import InfluxDBSwift extension InfluxDB2API { -public struct DBRPsAPI: Sendable { +public struct DBRPsAPI { private let influxDB2API: InfluxDB2API public init(influxDB2API: InfluxDB2API) { diff --git a/Sources/InfluxDBSwiftApis/Generated/APIs/HealthAPI.swift b/Sources/InfluxDBSwiftApis/Generated/APIs/HealthAPI.swift index 00fed222..b9c89aad 100644 --- a/Sources/InfluxDBSwiftApis/Generated/APIs/HealthAPI.swift +++ b/Sources/InfluxDBSwiftApis/Generated/APIs/HealthAPI.swift @@ -11,7 +11,7 @@ import InfluxDBSwift extension InfluxDB2API { -public struct HealthAPI: Sendable { +public struct HealthAPI { private let influxDB2API: InfluxDB2API public init(influxDB2API: InfluxDB2API) { diff --git a/Sources/InfluxDBSwiftApis/Generated/APIs/LabelsAPI.swift b/Sources/InfluxDBSwiftApis/Generated/APIs/LabelsAPI.swift index 666426ba..65c86c68 100644 --- a/Sources/InfluxDBSwiftApis/Generated/APIs/LabelsAPI.swift +++ b/Sources/InfluxDBSwiftApis/Generated/APIs/LabelsAPI.swift @@ -11,7 +11,7 @@ import InfluxDBSwift extension InfluxDB2API { -public struct LabelsAPI: Sendable { +public struct LabelsAPI { private let influxDB2API: InfluxDB2API public init(influxDB2API: InfluxDB2API) { diff --git a/Sources/InfluxDBSwiftApis/Generated/APIs/OrganizationsAPI.swift b/Sources/InfluxDBSwiftApis/Generated/APIs/OrganizationsAPI.swift index abc179eb..cbd4e9cf 100644 --- a/Sources/InfluxDBSwiftApis/Generated/APIs/OrganizationsAPI.swift +++ b/Sources/InfluxDBSwiftApis/Generated/APIs/OrganizationsAPI.swift @@ -11,7 +11,7 @@ import InfluxDBSwift extension InfluxDB2API { -public struct OrganizationsAPI: Sendable { +public struct OrganizationsAPI { private let influxDB2API: InfluxDB2API public init(influxDB2API: InfluxDB2API) { diff --git a/Sources/InfluxDBSwiftApis/Generated/APIs/PingAPI.swift b/Sources/InfluxDBSwiftApis/Generated/APIs/PingAPI.swift index a61bbcdc..32ecf556 100644 --- a/Sources/InfluxDBSwiftApis/Generated/APIs/PingAPI.swift +++ b/Sources/InfluxDBSwiftApis/Generated/APIs/PingAPI.swift @@ -11,7 +11,7 @@ import InfluxDBSwift extension InfluxDB2API { -public struct PingAPI: Sendable { +public struct PingAPI { private let influxDB2API: InfluxDB2API public init(influxDB2API: InfluxDB2API) { diff --git a/Sources/InfluxDBSwiftApis/Generated/APIs/ReadyAPI.swift b/Sources/InfluxDBSwiftApis/Generated/APIs/ReadyAPI.swift index 2965bc2a..4ecdedf4 100644 --- a/Sources/InfluxDBSwiftApis/Generated/APIs/ReadyAPI.swift +++ b/Sources/InfluxDBSwiftApis/Generated/APIs/ReadyAPI.swift @@ -11,7 +11,7 @@ import InfluxDBSwift extension InfluxDB2API { -public struct ReadyAPI: Sendable { +public struct ReadyAPI { private let influxDB2API: InfluxDB2API public init(influxDB2API: InfluxDB2API) { diff --git a/Sources/InfluxDBSwiftApis/Generated/APIs/ScraperTargetsAPI.swift b/Sources/InfluxDBSwiftApis/Generated/APIs/ScraperTargetsAPI.swift index 261ea328..e4e7f5b3 100644 --- a/Sources/InfluxDBSwiftApis/Generated/APIs/ScraperTargetsAPI.swift +++ b/Sources/InfluxDBSwiftApis/Generated/APIs/ScraperTargetsAPI.swift @@ -11,7 +11,7 @@ import InfluxDBSwift extension InfluxDB2API { -public struct ScraperTargetsAPI: Sendable { +public struct ScraperTargetsAPI { private let influxDB2API: InfluxDB2API public init(influxDB2API: InfluxDB2API) { diff --git a/Sources/InfluxDBSwiftApis/Generated/APIs/SecretsAPI.swift b/Sources/InfluxDBSwiftApis/Generated/APIs/SecretsAPI.swift index 41f230af..d32732d5 100644 --- a/Sources/InfluxDBSwiftApis/Generated/APIs/SecretsAPI.swift +++ b/Sources/InfluxDBSwiftApis/Generated/APIs/SecretsAPI.swift @@ -11,7 +11,7 @@ import InfluxDBSwift extension InfluxDB2API { -public struct SecretsAPI: Sendable { +public struct SecretsAPI { private let influxDB2API: InfluxDB2API public init(influxDB2API: InfluxDB2API) { diff --git a/Sources/InfluxDBSwiftApis/Generated/APIs/SetupAPI.swift b/Sources/InfluxDBSwiftApis/Generated/APIs/SetupAPI.swift index 4c6159e3..264c483b 100644 --- a/Sources/InfluxDBSwiftApis/Generated/APIs/SetupAPI.swift +++ b/Sources/InfluxDBSwiftApis/Generated/APIs/SetupAPI.swift @@ -11,7 +11,7 @@ import InfluxDBSwift extension InfluxDB2API { -public struct SetupAPI: Sendable { +public struct SetupAPI { private let influxDB2API: InfluxDB2API public init(influxDB2API: InfluxDB2API) { diff --git a/Sources/InfluxDBSwiftApis/Generated/APIs/SourcesAPI.swift b/Sources/InfluxDBSwiftApis/Generated/APIs/SourcesAPI.swift index 3e516853..64163212 100644 --- a/Sources/InfluxDBSwiftApis/Generated/APIs/SourcesAPI.swift +++ b/Sources/InfluxDBSwiftApis/Generated/APIs/SourcesAPI.swift @@ -11,7 +11,7 @@ import InfluxDBSwift extension InfluxDB2API { -public struct SourcesAPI: Sendable { +public struct SourcesAPI { private let influxDB2API: InfluxDB2API public init(influxDB2API: InfluxDB2API) { diff --git a/Sources/InfluxDBSwiftApis/Generated/APIs/TasksAPI.swift b/Sources/InfluxDBSwiftApis/Generated/APIs/TasksAPI.swift index 65e73f34..51f15626 100644 --- a/Sources/InfluxDBSwiftApis/Generated/APIs/TasksAPI.swift +++ b/Sources/InfluxDBSwiftApis/Generated/APIs/TasksAPI.swift @@ -11,7 +11,7 @@ import InfluxDBSwift extension InfluxDB2API { -public struct TasksAPI: Sendable { +public struct TasksAPI { private let influxDB2API: InfluxDB2API public init(influxDB2API: InfluxDB2API) { diff --git a/Sources/InfluxDBSwiftApis/Generated/APIs/UsersAPI.swift b/Sources/InfluxDBSwiftApis/Generated/APIs/UsersAPI.swift index 12e7db2a..7ebed566 100644 --- a/Sources/InfluxDBSwiftApis/Generated/APIs/UsersAPI.swift +++ b/Sources/InfluxDBSwiftApis/Generated/APIs/UsersAPI.swift @@ -11,7 +11,7 @@ import InfluxDBSwift extension InfluxDB2API { -public struct UsersAPI: Sendable { +public struct UsersAPI { private let influxDB2API: InfluxDB2API public init(influxDB2API: InfluxDB2API) { diff --git a/Sources/InfluxDBSwiftApis/Generated/APIs/VariablesAPI.swift b/Sources/InfluxDBSwiftApis/Generated/APIs/VariablesAPI.swift index 7c371423..2d70bccd 100644 --- a/Sources/InfluxDBSwiftApis/Generated/APIs/VariablesAPI.swift +++ b/Sources/InfluxDBSwiftApis/Generated/APIs/VariablesAPI.swift @@ -11,7 +11,7 @@ import InfluxDBSwift extension InfluxDB2API { -public struct VariablesAPI: Sendable { +public struct VariablesAPI { private let influxDB2API: InfluxDB2API public init(influxDB2API: InfluxDB2API) { diff --git a/Sources/InfluxDBSwiftApis/InfluxDB2API.swift b/Sources/InfluxDBSwiftApis/InfluxDB2API.swift index 1a1921bd..d3d57b3f 100644 --- a/Sources/InfluxDBSwiftApis/InfluxDB2API.swift +++ b/Sources/InfluxDBSwiftApis/InfluxDB2API.swift @@ -28,7 +28,7 @@ import InfluxDBSwift /// /// client.close() /// ```` -public struct InfluxDB2API: Sendable { +public struct InfluxDB2API { internal let client: InfluxDBClient internal let basePath: String internal let requestBuilderFactory: RequestBuilderFactory From 74b8a3e1e6771969129ced82f326acba6d181ae8 Mon Sep 17 00:00:00 2001 From: dankinsoid <30962149+dankinsoid@users.noreply.github.com> Date: Thu, 2 May 2024 14:53:00 +0400 Subject: [PATCH 4/6] fix: remove colon --- Sources/InfluxDBSwift/InfluxDBClient.swift | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Sources/InfluxDBSwift/InfluxDBClient.swift b/Sources/InfluxDBSwift/InfluxDBClient.swift index 294a76b5..7c61097e 100644 --- a/Sources/InfluxDBSwift/InfluxDBClient.swift +++ b/Sources/InfluxDBSwift/InfluxDBClient.swift @@ -131,7 +131,7 @@ public struct InfluxDBClient { extension InfluxDBClient { /// Options to use when creating a `InfluxDBClient`. - public struct InfluxDBOptions: { + public struct InfluxDBOptions { /// Default organization bucket for writes. /// - SeeAlso: https://docs.influxdata.com/influxdb/latest/organizations/buckets/view-buckets/ public let bucket: String? From b4f30d63eda98a2efc44abfdd4ed07ca7adb1ec7 Mon Sep 17 00:00:00 2001 From: dankinsoid <30962149+dankinsoid@users.noreply.github.com> Date: Thu, 2 May 2024 15:10:01 +0400 Subject: [PATCH 5/6] doc: add doc comment to Point init --- Sources/InfluxDBSwift/Point.swift | 1 + 1 file changed, 1 insertion(+) diff --git a/Sources/InfluxDBSwift/Point.swift b/Sources/InfluxDBSwift/Point.swift index 1bb67723..e2fb1dda 100644 --- a/Sources/InfluxDBSwift/Point.swift +++ b/Sources/InfluxDBSwift/Point.swift @@ -99,6 +99,7 @@ extension InfluxDBClient { // Default tags which will be added to each point written by api. var tags: [String: String?] = [:] + /// Create a new PointSettings. public init() {} /// Add new default tag with key and value. From 92ebb73336aef8aaf7f17b77d34715cc2071c50a Mon Sep 17 00:00:00 2001 From: dankinsoid <30962149+dankinsoid@users.noreply.github.com> Date: Thu, 2 May 2024 19:40:54 +0400 Subject: [PATCH 6/6] fix changelog --- CHANGELOG.md | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 19d0951d..e9ecd6c1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,10 +1,7 @@ -## 1.8.0 [unreleased] - ## 1.7.0 [unreleased] -1. [#63](https://github.com/influxdata/influxdb-client-swift/pull/64): Remove reference cycle ### Others -1. [#64](https://github.com/influxdata/influxdb-client-swift/pull/64): +1. [#63](https://github.com/influxdata/influxdb-client-swift/pull/64): Remove reference cycle ## 1.6.0 [2022-12-01]