From 08e02ff214c41df49bdd189ff837d68ba11c437b Mon Sep 17 00:00:00 2001 From: Danny Sung Date: Fri, 30 Sep 2022 15:09:09 -0700 Subject: [PATCH] Update CI; Swift 5.2 is now minimum; Update dependencies (#110) * Update CI; Swift 5.2 is now minimum; Update dependencies * Update Package.swift to better support differences between Swift 5.5 and prior --- .travis.yml | 46 ++++++++++--------------------------------- Package.swift | 24 +++++++++++++++------- Package@swift-4.swift | 41 -------------------------------------- README.md | 2 +- SwiftJWT.podspec | 10 +++++----- 5 files changed, 33 insertions(+), 90 deletions(-) delete mode 100644 Package@swift-4.swift diff --git a/.travis.yml b/.travis.yml index 4395f27..5fc6002 100644 --- a/.travis.yml +++ b/.travis.yml @@ -15,55 +15,29 @@ matrix: dist: xenial sudo: required services: docker - env: DOCKER_IMAGE=swift:4.0.3 SWIFT_SNAPSHOT=4.0.3 + env: DOCKER_IMAGE=docker.kitura.net/kitura/swift-ci-ubuntu16.04:5.2.5 SWIFT_TEST_ARGS="" - os: linux - dist: xenial - sudo: required - services: docker - env: DOCKER_IMAGE=swift:4.1.3 SWIFT_SNAPSHOT=4.1.3 - - os: linux - dist: xenial + dist: bionic sudo: required services: docker - env: DOCKER_IMAGE=swift:4.2.4 SWIFT_SNAPSHOT=4.2.4 + env: DOCKER_IMAGE=docker.kitura.net/kitura/swift-ci-ubuntu18.04:5.4 SWIFT_TEST_ARGS="" - os: linux dist: xenial sudo: required services: docker - env: DOCKER_IMAGE=swift:5.0.3-xenial SWIFT_SNAPSHOT=5.0.3 - - os: linux - dist: xenial - sudo: required - services: docker - env: DOCKER_IMAGE=swift:5.1 - - os: linux - dist: xenial - sudo: required - services: docker - env: DOCKER_IMAGE=swift:5.1 SWIFT_SNAPSHOT=$SWIFT_DEVELOPMENT_SNAPSHOT - - os: osx - osx_image: xcode9.2 - sudo: required - env: SWIFT_SNAPSHOT=4.0.3 - - os: osx - osx_image: xcode9.4 - sudo: required - env: SWIFT_SNAPSHOT=4.1.2 - - os: osx - osx_image: xcode10.1 - sudo: required - env: SWIFT_SNAPSHOT=4.2.1 + env: DOCKER_IMAGE=docker.kitura.net/kitura/swift-ci-ubuntu18.04:latest USE_SWIFT_DEVELOPMENT_SNAPSHOT=1 SWIFT_TEST_ARGS="" - os: osx - osx_image: xcode10.2 + osx_image: xcode12.2 sudo: required - env: SWIFT_SNAPSHOT=5.0.1 JAZZY_ELIGIBLE=true + env: JAZZY_ELIGIBLE=true SWIFT_TEST_ARGS="" - os: osx - osx_image: xcode11 + osx_image: xcode12.5 sudo: required + env: SWIFT_TEST_ARGS="" - os: osx - osx_image: xcode11 + osx_image: xcode12.5 sudo: required - env: SWIFT_SNAPSHOT=$SWIFT_DEVELOPMENT_SNAPSHOT + env: USE_SWIFT_DEVELOPMENT_SNAPSHOT=1 SWIFT_TEST_ARGS="" before_install: - git clone https://github.com/Kitura/Package-Builder.git diff --git a/Package.swift b/Package.swift index ec4c4c8..01d3fc2 100644 --- a/Package.swift +++ b/Package.swift @@ -1,4 +1,4 @@ -// swift-tools-version:5.0 +// swift-tools-version:5.2 /** * Copyright IBM Corporation and the Kitura project authors 2018-2020 @@ -18,6 +18,9 @@ import PackageDescription + +let targetDependencies: [Target.Dependency] + let package = Package( name: "SwiftJWT", products: [ @@ -28,15 +31,22 @@ let package = Package( ) ], dependencies: [ - .package(url: "https://github.com/Kitura/BlueRSA.git", from: "1.0.200"), - .package(url: "https://github.com/Kitura/BlueCryptor.git", from: "2.0.1"), - .package(url: "https://github.com/Kitura/BlueECC.git", from: "1.1.0"), - .package(url: "https://github.com/Kitura/LoggerAPI.git", from: "1.7.0"), - .package(url: "https://github.com/Kitura/KituraContracts.git", from: "1.2.200") + .package(name: "CryptorRSA", url: "https://github.com/Kitura/BlueRSA.git", from: "1.0.200"), + .package(name: "Cryptor", url: "https://github.com/Kitura/BlueCryptor.git", from: "2.0.1"), + .package(name: "CryptorECC", url: "https://github.com/Kitura/BlueECC.git", from: "1.2.200"), + .package(url: "https://github.com/Kitura/LoggerAPI.git", from: "2.0.0"), + .package(url: "https://github.com/Kitura/KituraContracts.git", from: "2.0.1") ], targets: [ - .target(name: "SwiftJWT", dependencies: ["CryptorRSA", "LoggerAPI", "KituraContracts", "Cryptor", "CryptorECC"]), + .target(name: "SwiftJWT", dependencies: [ + "LoggerAPI", + "KituraContracts", + "CryptorRSA", + "Cryptor", + "CryptorECC", + ]), .testTarget(name: "SwiftJWTTests", dependencies: ["SwiftJWT"]) ] ) + diff --git a/Package@swift-4.swift b/Package@swift-4.swift deleted file mode 100644 index 15caa6a..0000000 --- a/Package@swift-4.swift +++ /dev/null @@ -1,41 +0,0 @@ -// swift-tools-version:4.0 - -/** - * Copyright IBM Corporation and the Kitura project authors 2018-2020 - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - **/ - -import PackageDescription - -let package = Package( - name: "SwiftJWT", - products: [ - // Products define the executables and libraries produced by a package, and make them visible to other packages. - .library( - name: "SwiftJWT", - targets: ["SwiftJWT"] - ) - ], - dependencies: [ - .package(url: "https://github.com/Kitura/BlueRSA.git", from: "1.0.200"), - .package(url: "https://github.com/Kitura/BlueCryptor.git", from: "1.0.0"), - .package(url: "https://github.com/Kitura/BlueECC.git", from: "1.1.0"), - .package(url: "https://github.com/Kitura/LoggerAPI.git", from: "1.7.0"), - .package(url: "https://github.com/Kitura/KituraContracts.git", from: "1.2.200") - ], - targets: [ - .target(name: "SwiftJWT", dependencies: ["CryptorRSA", "LoggerAPI", "KituraContracts", "Cryptor", "CryptorECC"]), - .testTarget(name: "SwiftJWTTests", dependencies: ["SwiftJWT"]) - ] -) diff --git a/README.md b/README.md index 53cdde9..904e795 100644 --- a/README.md +++ b/README.md @@ -29,7 +29,7 @@ For more information on JSON Web Tokens, their use cases and how they work, we r **Reminder:** JWTs sent as JWS do **not** encrypt data, so never send anything sensitive or confidential in a JWT. This library does not currently support JWE. ## Swift version -The latest version of Swift-JWT requires **Swift 4.0** or later. You can download this version of the Swift binaries by following this [link](https://swift.org/download/). Compatibility with other Swift versions is not guaranteed. +The latest version of Swift-JWT requires **Swift 5.2** or later. You can download this version of the Swift binaries by following this [link](https://swift.org/download/). Compatibility with other Swift versions is not guaranteed. ## Usage diff --git a/SwiftJWT.podspec b/SwiftJWT.podspec index 6a874f1..904ec32 100644 --- a/SwiftJWT.podspec +++ b/SwiftJWT.podspec @@ -1,12 +1,12 @@ Pod::Spec.new do |s| s.name = "SwiftJWT" - s.version = "3.6.201" + s.version = "4.0.0" s.summary = "An implementation of JSON Web Token using Swift." s.homepage = "https://github.com/Kitura/Swift-JWT" s.license = { :type => "Apache License, Version 2.0" } s.authors = 'IBM and the Kitura project authors' s.module_name = 'SwiftJWT' - s.swift_version = '5.1' + s.swift_version = '5.2' s.osx.deployment_target = "10.13" s.ios.deployment_target = "11.0" s.tvos.deployment_target = "11.0" @@ -14,8 +14,8 @@ Pod::Spec.new do |s| s.source = { :git => "https://github.com/Kitura/Swift-JWT.git", :tag => s.version } s.source_files = "Sources/**/*.swift" s.dependency 'BlueRSA', '~> 1.0.200' - s.dependency 'BlueECC', '~> 1.1.0' - s.dependency 'LoggerAPI', '~> 1.7.0' - s.dependency 'KituraContracts', '~> 1.2.200' s.dependency 'BlueCryptor', '~> 2.0.1' + s.dependency 'BlueECC', '~> 1.2.200' + s.dependency 'LoggerAPI', '~> 2.0.0' + s.dependency 'KituraContracts', '~> 2.0.1' end