diff --git a/Sources/RawStructuredFieldValues/ComponentTypes.swift b/Sources/RawStructuredFieldValues/ComponentTypes.swift index 7365350..aafa307 100644 --- a/Sources/RawStructuredFieldValues/ComponentTypes.swift +++ b/Sources/RawStructuredFieldValues/ComponentTypes.swift @@ -21,7 +21,7 @@ /// `ItemOrInnerList` represents the values in a structured header dictionary, or the /// entries in a structured header list. -public enum ItemOrInnerList: SHSendable { +public enum ItemOrInnerList: Sendable { case item(Item) case innerList(InnerList) } @@ -32,7 +32,7 @@ extension ItemOrInnerList: Hashable {} /// `BareItem` is a representation of the base data types at the bottom of a structured /// header field. These types are not parameterised: they are raw data. -public enum BareItem: SHSendable { +public enum BareItem: Sendable { /// A boolean item. case bool(Bool) @@ -87,7 +87,7 @@ extension BareItem: Hashable {} /// `Item` represents a structured header field item: a combination of a `bareItem` /// and some parameters. -public struct Item: SHSendable { +public struct Item: Sendable { /// The `BareItem` that this `Item` contains. public var bareItem: BareItem @@ -106,7 +106,7 @@ extension Item: Hashable {} /// A `BareInnerList` represents the items contained within an ``InnerList``, without /// the associated parameters. -public struct BareInnerList: Hashable, SHSendable { +public struct BareInnerList: Hashable, Sendable { private var items: [Item] public init() { @@ -179,7 +179,7 @@ extension BareInnerList.Index: Comparable { // MARK: - InnerList /// An `InnerList` is a list of items, with some associated parameters. -public struct InnerList: Hashable, SHSendable { +public struct InnerList: Hashable, Sendable { /// The items contained within this inner list. public var bareInnerList: BareInnerList diff --git a/Sources/RawStructuredFieldValues/Errors.swift b/Sources/RawStructuredFieldValues/Errors.swift index a9359eb..fa63e3c 100644 --- a/Sources/RawStructuredFieldValues/Errors.swift +++ b/Sources/RawStructuredFieldValues/Errors.swift @@ -15,7 +15,7 @@ // MARK: - StructuredHeaderError /// Errors that may be encountered when working with structured headers. -public struct StructuredHeaderError: Error, SHSendable { +public struct StructuredHeaderError: Error, Sendable { private enum _BaseError: Hashable { case invalidTrailingBytes case invalidInnerList diff --git a/Sources/RawStructuredFieldValues/FieldParser.swift b/Sources/RawStructuredFieldValues/FieldParser.swift index 21d497c..a761e93 100644 --- a/Sources/RawStructuredFieldValues/FieldParser.swift +++ b/Sources/RawStructuredFieldValues/FieldParser.swift @@ -25,7 +25,7 @@ public struct StructuredFieldValueParser where } } -extension StructuredFieldValueParser: SHSendable where BaseData: SHSendable, BaseData.SubSequence: SHSendable {} +extension StructuredFieldValueParser: Sendable where BaseData: Sendable, BaseData.SubSequence: Sendable {} extension StructuredFieldValueParser { // Helper typealiases to avoid the explosion of generic parameters diff --git a/Sources/RawStructuredFieldValues/FieldSerializer.swift b/Sources/RawStructuredFieldValues/FieldSerializer.swift index 3bff96e..0ebf48d 100644 --- a/Sources/RawStructuredFieldValues/FieldSerializer.swift +++ b/Sources/RawStructuredFieldValues/FieldSerializer.swift @@ -15,7 +15,7 @@ private let validIntegerRange = Int64(-999_999_999_999_999) ... Int64(999_999_999_999_999) /// A `StructuredFieldValueSerializer` is the basic parsing object for structured header field values. -public struct StructuredFieldValueSerializer: SHSendable { +public struct StructuredFieldValueSerializer: Sendable { private var data: [UInt8] public init() { diff --git a/Sources/RawStructuredFieldValues/OrderedMap.swift b/Sources/RawStructuredFieldValues/OrderedMap.swift index 732ad91..a92242a 100644 --- a/Sources/RawStructuredFieldValues/OrderedMap.swift +++ b/Sources/RawStructuredFieldValues/OrderedMap.swift @@ -67,14 +67,14 @@ extension OrderedMap { } } -extension OrderedMap: SHSendable where Key: SHSendable, Value: SHSendable {} +extension OrderedMap: Sendable where Key: Sendable, Value: Sendable {} -extension OrderedMap.Entry: SHSendable where Key: SHSendable, Value: SHSendable {} +extension OrderedMap.Entry: Sendable where Key: Sendable, Value: Sendable {} // MARK: - Collection conformances extension OrderedMap: RandomAccessCollection, MutableCollection { - public struct Index: SHSendable { + public struct Index: Sendable { fileprivate var baseIndex: Array<(Key, Value)>.Index fileprivate init(_ baseIndex: Array<(Key, Value)>.Index) { diff --git a/Sources/RawStructuredFieldValues/PseudoDecimal.swift b/Sources/RawStructuredFieldValues/PseudoDecimal.swift index c3884c9..d5a6b63 100644 --- a/Sources/RawStructuredFieldValues/PseudoDecimal.swift +++ b/Sources/RawStructuredFieldValues/PseudoDecimal.swift @@ -34,7 +34,7 @@ import Glibc /// is 999,999,999,999,999. The exponent ranges from -3 to 0. Additionally, there may be no more than 12 decimal digits before /// the decimal place, so while the maximum value of the significand is 999,999,999,999,999, that is only acceptable if the /// exponent is -3. -public struct PseudoDecimal: Hashable, SHSendable { +public struct PseudoDecimal: Hashable, Sendable { private var _mantissa: Int64 private var _exponent: Int8 diff --git a/Sources/RawStructuredFieldValues/Sendable.swift b/Sources/RawStructuredFieldValues/Sendable.swift deleted file mode 100644 index 6ff80ec..0000000 --- a/Sources/RawStructuredFieldValues/Sendable.swift +++ /dev/null @@ -1,19 +0,0 @@ -//===----------------------------------------------------------------------===// -// -// This source file is part of the SwiftNIO open source project -// -// Copyright (c) 2022 Apple Inc. and the SwiftNIO project authors -// Licensed under Apache License v2.0 -// -// See LICENSE.txt for license information -// See CONTRIBUTORS.txt for the list of SwiftNIO project authors -// -// SPDX-License-Identifier: Apache-2.0 -// -//===----------------------------------------------------------------------===// - -#if swift(>=5.5) && canImport(_Concurrency) -public typealias SHSendable = Sendable -#else -public typealias SHSendable = Any -#endif diff --git a/Sources/StructuredFieldValues/Decoder/StructuredFieldValueDecoder.swift b/Sources/StructuredFieldValues/Decoder/StructuredFieldValueDecoder.swift index 05e24bd..e11e1da 100644 --- a/Sources/StructuredFieldValues/Decoder/StructuredFieldValueDecoder.swift +++ b/Sources/StructuredFieldValues/Decoder/StructuredFieldValueDecoder.swift @@ -16,7 +16,7 @@ import RawStructuredFieldValues /// A `StructuredFieldValueDecoder` allows decoding `Decodable` objects from a HTTP /// structured header field. -public struct StructuredFieldValueDecoder: SHSendable { +public struct StructuredFieldValueDecoder: Sendable { /// A strategy that should be used to map coding keys to wire format keys. public var keyDecodingStrategy: KeyDecodingStrategy? @@ -25,7 +25,7 @@ public struct StructuredFieldValueDecoder: SHSendable { extension StructuredFieldValueDecoder { /// A strategy that should be used to map coding keys to wire format keys. - public struct KeyDecodingStrategy: Hashable, SHSendable { + public struct KeyDecodingStrategy: Hashable, Sendable { fileprivate enum Base: Hashable { case lowercase } diff --git a/Sources/StructuredFieldValues/Encoder/StructuredFieldValueEncoder.swift b/Sources/StructuredFieldValues/Encoder/StructuredFieldValueEncoder.swift index 74ccde7..505e225 100644 --- a/Sources/StructuredFieldValues/Encoder/StructuredFieldValueEncoder.swift +++ b/Sources/StructuredFieldValues/Encoder/StructuredFieldValueEncoder.swift @@ -16,7 +16,7 @@ import RawStructuredFieldValues /// A `StructuredFieldValueEncoder` allows encoding `Encodable` objects to the format of a HTTP /// structured header field. -public struct StructuredFieldValueEncoder: SHSendable { +public struct StructuredFieldValueEncoder: Sendable { public var keyEncodingStrategy: KeyEncodingStrategy? public init() {} @@ -24,7 +24,7 @@ public struct StructuredFieldValueEncoder: SHSendable { extension StructuredFieldValueEncoder { /// A strategy that should be used to map coding keys to wire format keys. - public struct KeyEncodingStrategy: Hashable, SHSendable { + public struct KeyEncodingStrategy: Hashable, Sendable { fileprivate enum Base: Hashable { case lowercase } diff --git a/docker/docker-compose.2004.55.yaml b/docker/docker-compose.2004.55.yaml deleted file mode 100644 index 8787f0e..0000000 --- a/docker/docker-compose.2004.55.yaml +++ /dev/null @@ -1,23 +0,0 @@ -version: "3" - -services: - - runtime-setup: - image: swift-http-structured-headers:20.04-5.5 - build: - args: - swift_version: "5.5" - ubuntu_version: "focal" - - unit-tests: - image: swift-http-structured-headers:20.04-5.5 - - documentation-check: - image: swift-http-structured-headers:20.04-5.5 - - test: - image: swift-http-structured-headers:20.04-5.5 - - shell: - image: swift-http-structured-headers:20.04-5.5 -