From cd43b9c5f538b019a04ec7f3d34d69e1a0b28b0b Mon Sep 17 00:00:00 2001 From: Desu Sai Venkat <48179357+desusai7@users.noreply.github.com> Date: Thu, 4 Jul 2024 17:42:03 +0530 Subject: [PATCH] feat: added support for visionOS platform (#231) --- .github/workflows/main.yml | 4 +- Gemfile.lock | 145 +++--- JWTDecode.podspec | 7 +- JWTDecode.xcodeproj/project.pbxproj | 423 +++++++++++++++++- .../contents.xcworkspacedata | 2 +- .../xcschemes/JWTDecode-visionOS.xcscheme | 71 +++ JWTDecodeTests/JWTDecode-visionOS.xctestplan | 24 + Package.swift | 4 +- README.md | 10 +- 9 files changed, 599 insertions(+), 91 deletions(-) create mode 100644 JWTDecode.xcodeproj/xcshareddata/xcschemes/JWTDecode-visionOS.xcscheme create mode 100644 JWTDecodeTests/JWTDecode-visionOS.xctestplan diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 239df18..1f0b92b 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -78,12 +78,12 @@ jobs: pod-lint: name: Lint podspec using Xcode ${{ matrix.xcode }} - runs-on: macos-13 + runs-on: macos-13-xlarge strategy: matrix: xcode: - - '15.0.1' + - '15.2' steps: - name: Checkout diff --git a/Gemfile.lock b/Gemfile.lock index 446afb9..c313a38 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,45 +1,54 @@ GEM remote: https://rubygems.org/ specs: - CFPropertyList (3.0.6) + CFPropertyList (3.0.7) + base64 + nkf rexml - activesupport (7.0.8) + activesupport (7.1.3.4) + base64 + bigdecimal concurrent-ruby (~> 1.0, >= 1.0.2) + connection_pool (>= 2.2.5) + drb i18n (>= 1.6, < 2) minitest (>= 5.1) + mutex_m tzinfo (~> 2.0) - addressable (2.8.5) - public_suffix (>= 2.0.2, < 6.0) + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) algoliasearch (1.27.5) httpclient (~> 2.8, >= 2.8.3) json (>= 1.5.1) - artifactory (3.0.15) + artifactory (3.0.17) atomos (0.1.3) - aws-eventstream (1.2.0) - aws-partitions (1.832.0) - aws-sdk-core (3.185.0) - aws-eventstream (~> 1, >= 1.0.2) + aws-eventstream (1.3.0) + aws-partitions (1.950.0) + aws-sdk-core (3.200.0) + aws-eventstream (~> 1, >= 1.3.0) aws-partitions (~> 1, >= 1.651.0) - aws-sigv4 (~> 1.5) + aws-sigv4 (~> 1.8) jmespath (~> 1, >= 1.6.1) - aws-sdk-kms (1.72.0) - aws-sdk-core (~> 3, >= 3.184.0) + aws-sdk-kms (1.87.0) + aws-sdk-core (~> 3, >= 3.199.0) aws-sigv4 (~> 1.1) - aws-sdk-s3 (1.136.0) - aws-sdk-core (~> 3, >= 3.181.0) + aws-sdk-s3 (1.155.0) + aws-sdk-core (~> 3, >= 3.199.0) aws-sdk-kms (~> 1) - aws-sigv4 (~> 1.6) - aws-sigv4 (1.6.0) + aws-sigv4 (~> 1.8) + aws-sigv4 (1.8.0) aws-eventstream (~> 1, >= 1.0.2) babosa (1.0.4) + base64 (0.2.0) + bigdecimal (3.1.8) claide (1.1.0) clamp (1.3.2) - cocoapods (1.13.0) + cocoapods (1.15.2) addressable (~> 2.8) claide (>= 1.0.2, < 2.0) - cocoapods-core (= 1.13.0) + cocoapods-core (= 1.15.2) cocoapods-deintegrate (>= 1.0.3, < 2.0) - cocoapods-downloader (>= 1.6.0, < 2.0) + cocoapods-downloader (>= 2.1, < 3.0) cocoapods-plugins (>= 1.0.0, < 2.0) cocoapods-search (>= 1.0.0, < 2.0) cocoapods-trunk (>= 1.6.0, < 2.0) @@ -52,7 +61,7 @@ GEM nap (~> 1.0) ruby-macho (>= 2.3.0, < 3.0) xcodeproj (>= 1.23.0, < 2.0) - cocoapods-core (1.13.0) + cocoapods-core (1.15.2) activesupport (>= 5.0, < 8) addressable (~> 2.8) algoliasearch (~> 1.0) @@ -63,7 +72,7 @@ GEM public_suffix (~> 4.0) typhoeus (~> 1.0) cocoapods-deintegrate (1.0.5) - cocoapods-downloader (1.6.3) + cocoapods-downloader (2.1) cocoapods-plugins (1.0.0) nap cocoapods-search (1.0.1) @@ -75,18 +84,19 @@ GEM colored2 (3.1.2) commander (4.6.0) highline (~> 2.0.0) - concurrent-ruby (1.2.2) + concurrent-ruby (1.3.3) + connection_pool (2.4.1) declarative (0.0.20) digest-crc (0.6.5) rake (>= 12.0.0, < 14.0.0) - domain_name (0.5.20190701) - unf (>= 0.0.5, < 1.0.0) + domain_name (0.6.20240107) dotenv (2.8.1) + drb (2.2.1) emoji_regex (3.2.3) escape (0.0.4) ethon (0.16.0) ffi (>= 1.15.0) - excon (0.104.0) + excon (0.110.0) faraday (1.10.3) faraday-em_http (~> 1.0) faraday-em_synchrony (~> 1.0) @@ -115,15 +125,15 @@ GEM faraday-retry (1.0.3) faraday_middleware (1.2.0) faraday (~> 1.0) - fastimage (2.2.7) - fastlane (2.216.0) + fastimage (2.3.1) + fastlane (2.221.1) CFPropertyList (>= 2.3, < 4.0.0) addressable (>= 2.8, < 3.0.0) artifactory (~> 3.0) aws-sdk-s3 (~> 1.0) babosa (>= 1.0.3, < 2.0.0) bundler (>= 1.12.0, < 3.0.0) - colored + colored (~> 1.2) commander (~> 4.6) dotenv (>= 2.1.1, < 3.0.0) emoji_regex (>= 0.1, < 4.0) @@ -135,6 +145,7 @@ GEM gh_inspector (>= 1.1.2, < 2.0.0) google-apis-androidpublisher_v3 (~> 0.3) google-apis-playcustomapp_v1 (~> 0.1) + google-cloud-env (>= 1.6.0, < 2.0.0) google-cloud-storage (~> 1.31) highline (~> 2.0) http-cookie (~> 1.0.5) @@ -143,10 +154,10 @@ GEM mini_magick (>= 4.9.4, < 5.0.0) multipart-post (>= 2.0.0, < 3.0.0) naturally (~> 2.2) - optparse (~> 0.1.1) + optparse (>= 0.1.1, < 1.0.0) plist (>= 3.1.0, < 4.0.0) rubyzip (>= 2.0.0, < 3.0.0) - security (= 0.1.3) + security (= 0.1.5) simctl (~> 1.6.3) terminal-notifier (>= 2.0.0, < 3.0.0) terminal-table (~> 3) @@ -155,16 +166,16 @@ GEM word_wrap (~> 1.0.0) xcodeproj (>= 1.13.0, < 2.0.0) xcpretty (~> 0.3.0) - xcpretty-travis-formatter (>= 0.0.3) + xcpretty-travis-formatter (>= 0.0.3, < 2.0.0) fastlane-plugin-auth0_shipper (0.4.1) semantic (~> 1.5) - ffi (1.16.2) + ffi (1.17.0-arm64-darwin) fourflusher (2.3.1) fuzzy_match (2.0.4) gh_inspector (1.1.3) - google-apis-androidpublisher_v3 (0.50.0) + google-apis-androidpublisher_v3 (0.54.0) google-apis-core (>= 0.11.0, < 2.a) - google-apis-core (0.11.1) + google-apis-core (0.11.3) addressable (~> 2.5, >= 2.5.1) googleauth (>= 0.16.2, < 2.a) httpclient (>= 2.8.1, < 3.a) @@ -172,24 +183,23 @@ GEM representable (~> 3.0) retriable (>= 2.0, < 4.a) rexml - webrick google-apis-iamcredentials_v1 (0.17.0) google-apis-core (>= 0.11.0, < 2.a) google-apis-playcustomapp_v1 (0.13.0) google-apis-core (>= 0.11.0, < 2.a) - google-apis-storage_v1 (0.19.0) - google-apis-core (>= 0.9.0, < 2.a) - google-cloud-core (1.6.0) - google-cloud-env (~> 1.0) + google-apis-storage_v1 (0.31.0) + google-apis-core (>= 0.11.0, < 2.a) + google-cloud-core (1.7.0) + google-cloud-env (>= 1.0, < 3.a) google-cloud-errors (~> 1.0) google-cloud-env (1.6.0) faraday (>= 0.17.3, < 3.0) - google-cloud-errors (1.3.1) - google-cloud-storage (1.44.0) + google-cloud-errors (1.4.0) + google-cloud-storage (1.47.0) addressable (~> 2.8) digest-crc (~> 0.4) google-apis-iamcredentials_v1 (~> 0.1) - google-apis-storage_v1 (~> 0.19.0) + google-apis-storage_v1 (~> 0.31.0) google-cloud-core (~> 1.6) googleauth (>= 0.16.2, < 2.a) mini_mime (~> 1.0) @@ -200,45 +210,49 @@ GEM os (>= 0.9, < 2.0) signet (>= 0.16, < 2.a) highline (2.0.3) - http-cookie (1.0.5) + http-cookie (1.0.6) domain_name (~> 0.5) httpclient (2.8.3) - i18n (1.14.1) + i18n (1.14.5) concurrent-ruby (~> 1.0) jmespath (1.6.2) - json (2.6.3) - jwt (2.7.1) - mini_magick (4.12.0) + json (2.7.2) + jwt (2.8.2) + base64 + mini_magick (4.13.1) mini_mime (1.1.5) - minitest (5.20.0) + minitest (5.24.1) molinillo (0.8.0) multi_json (1.15.0) - multipart-post (2.3.0) + multipart-post (2.4.1) + mutex_m (0.2.0) nanaimo (0.3.0) nap (1.1.0) naturally (2.2.1) netrc (0.11.0) - nokogiri (1.15.4-x86_64-darwin) + nkf (0.2.0) + nokogiri (1.16.6-arm64-darwin) racc (~> 1.4) - optparse (0.1.1) + optparse (0.5.0) os (1.1.4) - plist (3.7.0) + plist (3.7.1) public_suffix (4.0.7) - racc (1.7.1) - rake (13.0.6) + racc (1.8.0) + rake (13.2.1) representable (3.2.0) declarative (< 0.1.0) trailblazer-option (>= 0.1.1, < 0.2.0) uber (< 0.2.0) retriable (3.1.2) - rexml (3.2.6) + rexml (3.2.9) + strscan rouge (2.0.7) ruby-macho (2.5.1) ruby2_keywords (0.0.5) rubyzip (2.3.2) - security (0.1.3) + security (0.1.5) semantic (1.6.1) - signet (0.18.0) + signet (0.19.0) addressable (~> 2.8) faraday (>= 0.17.5, < 3.a) jwt (>= 1.5, < 3.0) @@ -246,32 +260,29 @@ GEM simctl (1.6.10) CFPropertyList naturally - slather (2.7.5) + slather (2.8.2) CFPropertyList (>= 2.2, < 4) activesupport clamp (~> 1.3) nokogiri (>= 1.14.3) xcodeproj (~> 1.21) + strscan (3.1.0) terminal-notifier (2.0.0) terminal-table (3.0.2) unicode-display_width (>= 1.1.1, < 3) trailblazer-option (0.1.2) tty-cursor (0.7.1) - tty-screen (0.8.1) + tty-screen (0.8.2) tty-spinner (0.9.3) tty-cursor (~> 0.7) - typhoeus (1.4.0) + typhoeus (1.4.1) ethon (>= 0.9.0) tzinfo (2.0.6) concurrent-ruby (~> 1.0) uber (0.1.0) - unf (0.1.4) - unf_ext - unf_ext (0.0.8.2) unicode-display_width (2.5.0) - webrick (1.8.1) word_wrap (1.0.0) - xcodeproj (1.23.0) + xcodeproj (1.24.0) CFPropertyList (>= 2.3.3, < 4.0) atomos (~> 0.1.3) claide (>= 1.0.2, < 2.0) @@ -284,7 +295,9 @@ GEM xcpretty (~> 0.2, >= 0.0.7) PLATFORMS - ruby + arm64-darwin-22 + x86_64-darwin-20 + arm64-darwin-23 DEPENDENCIES cocoapods diff --git a/JWTDecode.podspec b/JWTDecode.podspec index f611d1e..c09ca2c 100644 --- a/JWTDecode.podspec +++ b/JWTDecode.podspec @@ -12,11 +12,12 @@ Pod::Spec.new do |s| s.source = { :git => 'https://github.com/auth0/JWTDecode.swift.git', :tag => s.version.to_s } s.social_media_url = 'https://twitter.com/auth0' - s.ios.deployment_target = '13.0' + s.ios.deployment_target = '14.0' s.osx.deployment_target = '11.0' - s.tvos.deployment_target = '13.0' + s.tvos.deployment_target = '14.0' s.watchos.deployment_target = '7.0' + s.visionos.deployment_target = '1.0' s.source_files = 'JWTDecode/*.swift' - s.swift_versions = ['5.7', '5.8'] + s.swift_versions = ['5.9'] end diff --git a/JWTDecode.xcodeproj/project.pbxproj b/JWTDecode.xcodeproj/project.pbxproj index 15c16f0..e4c9198 100644 --- a/JWTDecode.xcodeproj/project.pbxproj +++ b/JWTDecode.xcodeproj/project.pbxproj @@ -25,6 +25,20 @@ 918A8E651D63D2F7001F787B /* JWTDecode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F0069021B3B511F0048928E /* JWTDecode.swift */; }; 918A8E661D63D2FB001F787B /* JWT.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5FE49DCC1BA0D5F700DE57D3 /* JWT.swift */; }; 918A8E671D63D2FE001F787B /* JWTDecodeError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5FE49DCF1BA0D66F00DE57D3 /* JWTDecodeError.swift */; }; + C12BFE422C348AF500D1CC00 /* CwlPreconditionTesting in Frameworks */ = {isa = PBXBuildFile; productRef = C12BFE412C348AF500D1CC00 /* CwlPreconditionTesting */; }; + C1896EF92C1C69F400CA1000 /* JWTDecode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F0069021B3B511F0048928E /* JWTDecode.swift */; }; + C1896EFA2C1C69F400CA1000 /* JWTDecodeError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5FE49DCF1BA0D66F00DE57D3 /* JWTDecodeError.swift */; }; + C1896EFB2C1C69F400CA1000 /* JWT.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5FE49DCC1BA0D5F700DE57D3 /* JWT.swift */; }; + C1896F042C1C71AC00CA1000 /* JWTDecode.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C1896EF12C1C690E00CA1000 /* JWTDecode.framework */; }; + C1896F0C2C1C730F00CA1000 /* Nimble.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5CE9C9F926FC1E8F005A75FA /* Nimble.xcframework */; }; + C1896F0D2C1C730F00CA1000 /* Nimble.xcframework in Copy Files */ = {isa = PBXBuildFile; fileRef = 5CE9C9F926FC1E8F005A75FA /* Nimble.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + C1896F0F2C1C731000CA1000 /* Quick.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5CE9C9FA26FC1E8F005A75FA /* Quick.xcframework */; }; + C1896F102C1C731100CA1000 /* Quick.xcframework in Copy Files */ = {isa = PBXBuildFile; fileRef = 5CE9C9FA26FC1E8F005A75FA /* Quick.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + C1896F112C1C738900CA1000 /* JWTDecodeSpec.swift in Sources */ = {isa = PBXBuildFile; fileRef = 57EA5A02237EBBCA00264C01 /* JWTDecodeSpec.swift */; }; + C1896F122C1C738900CA1000 /* JWTHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 57EA5A04237EBBCB00264C01 /* JWTHelper.swift */; }; + C1D1FB862C2177DA008E9E3F /* CwlPreconditionTesting in Frameworks */ = {isa = PBXBuildFile; productRef = C1D1FB852C2177DA008E9E3F /* CwlPreconditionTesting */; }; + C1D1FB882C217FBF008E9E3F /* CwlPreconditionTesting in Frameworks */ = {isa = PBXBuildFile; productRef = C1D1FB872C217FBF008E9E3F /* CwlPreconditionTesting */; }; + C1D1FB8A2C218877008E9E3F /* CwlPreconditionTesting in Frameworks */ = {isa = PBXBuildFile; productRef = C1D1FB892C218877008E9E3F /* CwlPreconditionTesting */; }; E390BAD32288E6AF00780D6C /* JWTDecodeError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5FE49DCF1BA0D66F00DE57D3 /* JWTDecodeError.swift */; }; E390BAD82288E6AF00780D6C /* JWTDecode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5F0069021B3B511F0048928E /* JWTDecode.swift */; }; E390BAD92288E6AF00780D6C /* JWT.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5FE49DCC1BA0D5F700DE57D3 /* JWT.swift */; }; @@ -52,6 +66,13 @@ remoteGlobalIDString = 918A8E5A1D63D2E1001F787B; remoteInfo = "JWTDecode-tvOS"; }; + C1896F052C1C71AC00CA1000 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 5F0068D91B3B46240048928E /* Project object */; + proxyType = 1; + remoteGlobalIDString = C1896EF02C1C690E00CA1000; + remoteInfo = "JWTDecode-visionOS"; + }; /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ @@ -77,6 +98,9 @@ 5FE49DCF1BA0D66F00DE57D3 /* JWTDecodeError.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = JWTDecodeError.swift; sourceTree = ""; }; 918A8E5B1D63D2E1001F787B /* JWTDecode.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = JWTDecode.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 918A8E6C1D63D4E5001F787B /* JWTDecode-tvOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "JWTDecode-tvOSTests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; }; + C1896EF12C1C690E00CA1000 /* JWTDecode.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = JWTDecode.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + C1896F002C1C71AC00CA1000 /* JWTDecode-visionOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "JWTDecode-visionOSTests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; }; + C1896F212C1C7E7300CA1000 /* JWTDecode-visionOS.xctestplan */ = {isa = PBXFileReference; lastKnownFileType = text; path = "JWTDecode-visionOS.xctestplan"; sourceTree = ""; }; E390BAE22288E6AF00780D6C /* JWTDecode.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = JWTDecode.framework; sourceTree = BUILT_PRODUCTS_DIR; }; /* End PBXFileReference section */ @@ -126,6 +150,24 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + C1896EEE2C1C690E00CA1000 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + C1896EFD2C1C71AC00CA1000 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + C1D1FB862C2177DA008E9E3F /* CwlPreconditionTesting in Frameworks */, + C1896F0F2C1C731000CA1000 /* Quick.xcframework in Frameworks */, + C1896F0C2C1C730F00CA1000 /* Nimble.xcframework in Frameworks */, + C1896F042C1C71AC00CA1000 /* JWTDecode.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; E390BADA2288E6AF00780D6C /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; @@ -157,6 +199,8 @@ 918A8E5B1D63D2E1001F787B /* JWTDecode.framework */, 918A8E6C1D63D4E5001F787B /* JWTDecode-tvOSTests.xctest */, E390BAE22288E6AF00780D6C /* JWTDecode.framework */, + C1896EF12C1C690E00CA1000 /* JWTDecode.framework */, + C1896F002C1C71AC00CA1000 /* JWTDecode-visionOSTests.xctest */, ); name = Products; sourceTree = ""; @@ -183,6 +227,7 @@ 5F0068F11B3B46240048928E /* JWTDecodeTests */ = { isa = PBXGroup; children = ( + C1896F212C1C7E7300CA1000 /* JWTDecode-visionOS.xctestplan */, 57EA5A02237EBBCA00264C01 /* JWTDecodeSpec.swift */, 57EA5A04237EBBCB00264C01 /* JWTHelper.swift */, 5F0068F21B3B46240048928E /* Supporting Files */, @@ -237,6 +282,13 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + C1896EEC2C1C690E00CA1000 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; E390BADB2288E6AF00780D6C /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; @@ -280,6 +332,9 @@ 5F0068F01B3B46240048928E /* PBXTargetDependency */, ); name = "JWTDecode-iOSTests"; + packageProductDependencies = ( + C1D1FB872C217FBF008E9E3F /* CwlPreconditionTesting */, + ); productName = JWTDecodeTests; productReference = 5F0068ED1B3B46240048928E /* JWTDecode-iOSTests.xctest */; productType = "com.apple.product-type.bundle.unit-test"; @@ -317,6 +372,9 @@ 5F0069161B3B532E0048928E /* PBXTargetDependency */, ); name = "JWTDecode-macOSTests"; + packageProductDependencies = ( + C1D1FB892C218877008E9E3F /* CwlPreconditionTesting */, + ); productName = "JWTDecode-macOSTests"; productReference = 5F0069131B3B532E0048928E /* JWTDecode-macOSTests.xctest */; productType = "com.apple.product-type.bundle.unit-test"; @@ -354,10 +412,54 @@ 918A8E731D63D4E5001F787B /* PBXTargetDependency */, ); name = "JWTDecode-tvOSTests"; + packageProductDependencies = ( + C12BFE412C348AF500D1CC00 /* CwlPreconditionTesting */, + ); productName = "JWTDecode-tvOSTests"; productReference = 918A8E6C1D63D4E5001F787B /* JWTDecode-tvOSTests.xctest */; productType = "com.apple.product-type.bundle.unit-test"; }; + C1896EF02C1C690E00CA1000 /* JWTDecode-visionOS */ = { + isa = PBXNativeTarget; + buildConfigurationList = C1896EF72C1C690E00CA1000 /* Build configuration list for PBXNativeTarget "JWTDecode-visionOS" */; + buildPhases = ( + C1896EEC2C1C690E00CA1000 /* Headers */, + C1896EED2C1C690E00CA1000 /* Sources */, + C1896EEE2C1C690E00CA1000 /* Frameworks */, + C1896EEF2C1C690E00CA1000 /* Resources */, + C1896EF82C1C699500CA1000 /* SwiftLint */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = "JWTDecode-visionOS"; + productName = "JWTDecode-visionOS"; + productReference = C1896EF12C1C690E00CA1000 /* JWTDecode.framework */; + productType = "com.apple.product-type.framework"; + }; + C1896EFF2C1C71AC00CA1000 /* JWTDecode-visionOSTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = C1896F072C1C71AC00CA1000 /* Build configuration list for PBXNativeTarget "JWTDecode-visionOSTests" */; + buildPhases = ( + C1896EFC2C1C71AC00CA1000 /* Sources */, + C1896EFD2C1C71AC00CA1000 /* Frameworks */, + C1896EFE2C1C71AC00CA1000 /* Resources */, + C1896F0E2C1C730F00CA1000 /* Copy Files */, + ); + buildRules = ( + ); + dependencies = ( + C1896F062C1C71AC00CA1000 /* PBXTargetDependency */, + ); + name = "JWTDecode-visionOSTests"; + packageProductDependencies = ( + C1D1FB852C2177DA008E9E3F /* CwlPreconditionTesting */, + ); + productName = "JWTDecode-visionOSTests"; + productReference = C1896F002C1C71AC00CA1000 /* JWTDecode-visionOSTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; E390BAD12288E6AF00780D6C /* JWTDecode-watchOS */ = { isa = PBXNativeTarget; buildConfigurationList = E390BADF2288E6AF00780D6C /* Build configuration list for PBXNativeTarget "JWTDecode-watchOS" */; @@ -383,7 +485,7 @@ 5F0068D91B3B46240048928E /* Project object */ = { isa = PBXProject; attributes = { - LastSwiftUpdateCheck = 0730; + LastSwiftUpdateCheck = 1540; LastUpgradeCheck = 1400; ORGANIZATIONNAME = Auth0; TargetAttributes = { @@ -413,6 +515,12 @@ LastSwiftMigration = 0900; ProvisioningStyle = Manual; }; + C1896EF02C1C690E00CA1000 = { + CreatedOnToolsVersion = 15.4; + }; + C1896EFF2C1C71AC00CA1000 = { + CreatedOnToolsVersion = 15.4; + }; }; }; buildConfigurationList = 5F0068DC1B3B46240048928E /* Build configuration list for PBXProject "JWTDecode" */; @@ -424,6 +532,9 @@ Base, ); mainGroup = 5F0068D81B3B46240048928E; + packageReferences = ( + C1D1FB842C2177DA008E9E3F /* XCRemoteSwiftPackageReference "CwlPreconditionTesting" */, + ); productRefGroup = 5F0068E31B3B46240048928E /* Products */; projectDirPath = ""; projectRoot = ""; @@ -435,6 +546,8 @@ 918A8E5A1D63D2E1001F787B /* JWTDecode-tvOS */, 918A8E6B1D63D4E5001F787B /* JWTDecode-tvOSTests */, E390BAD12288E6AF00780D6C /* JWTDecode-watchOS */, + C1896EF02C1C690E00CA1000 /* JWTDecode-visionOS */, + C1896EFF2C1C71AC00CA1000 /* JWTDecode-visionOSTests */, ); }; /* End PBXProject section */ @@ -482,6 +595,20 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + C1896EEF2C1C690E00CA1000 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + C1896EFE2C1C71AC00CA1000 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; E390BADD2288E6AF00780D6C /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; @@ -535,6 +662,25 @@ shellPath = /bin/sh; shellScript = "if [ -z ${CI} ]; then\n if [[ \"$(uname -m)\" == arm64 ]]; then\n export PATH=\"/opt/homebrew/bin:$PATH\"\n fi\n\n if which swiftlint > /dev/null; then\n swiftlint\n else\n echo \"warning: SwiftLint not installed, download from https://github.com/realm/SwiftLint\"\n fi\nfi\n"; }; + C1896EF82C1C699500CA1000 /* SwiftLint */ = { + isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + ); + name = SwiftLint; + outputFileListPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "if [ -z ${CI} ]; then\n if [[ \"$(uname -m)\" == arm64 ]]; then\n export PATH=\"/opt/homebrew/bin:$PATH\"\n fi\n\n if which swiftlint > /dev/null; then\n swiftlint\n else\n echo \"warning: SwiftLint not installed, download from https://github.com/realm/SwiftLint\"\n fi\nfi\n"; + }; E390BADE2288E6AF00780D6C /* SwiftLint */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; @@ -609,6 +755,25 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + C1896EED2C1C690E00CA1000 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + C1896EF92C1C69F400CA1000 /* JWTDecode.swift in Sources */, + C1896EFA2C1C69F400CA1000 /* JWTDecodeError.swift in Sources */, + C1896EFB2C1C69F400CA1000 /* JWT.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + C1896EFC2C1C71AC00CA1000 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + C1896F112C1C738900CA1000 /* JWTDecodeSpec.swift in Sources */, + C1896F122C1C738900CA1000 /* JWTHelper.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; E390BAD22288E6AF00780D6C /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; @@ -637,6 +802,11 @@ target = 918A8E5A1D63D2E1001F787B /* JWTDecode-tvOS */; targetProxy = 918A8E721D63D4E5001F787B /* PBXContainerItemProxy */; }; + C1896F062C1C71AC00CA1000 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = C1896EF02C1C690E00CA1000 /* JWTDecode-visionOS */; + targetProxy = C1896F052C1C71AC00CA1000 /* PBXContainerItemProxy */; + }; /* End PBXTargetDependency section */ /* Begin XCBuildConfiguration section */ @@ -689,7 +859,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; + IPHONEOS_DEPLOYMENT_TARGET = 14.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; @@ -743,7 +913,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; + IPHONEOS_DEPLOYMENT_TARGET = 14.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; SWIFT_COMPILATION_MODE = wholemodule; @@ -769,7 +939,7 @@ DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = JWTDecode/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; + IPHONEOS_DEPLOYMENT_TARGET = 14.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -798,7 +968,7 @@ DYLIB_INSTALL_NAME_BASE = "@rpath"; INFOPLIST_FILE = JWTDecode/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; + IPHONEOS_DEPLOYMENT_TARGET = 14.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/Frameworks", @@ -827,11 +997,11 @@ "$(inherited)", ); INFOPLIST_FILE = JWTDecodeTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; + IPHONEOS_DEPLOYMENT_TARGET = 14.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", - "@executable_path/Frameworks", "@loader_path/Frameworks", + "@executable_path/Frameworks", ); PRODUCT_BUNDLE_IDENTIFIER = "com.auth0.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; @@ -849,11 +1019,11 @@ CLANG_ENABLE_MODULES = YES; DEVELOPMENT_TEAM = ""; INFOPLIST_FILE = JWTDecodeTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; + IPHONEOS_DEPLOYMENT_TARGET = 14.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", - "@executable_path/Frameworks", "@loader_path/Frameworks", + "@executable_path/Frameworks", ); PRODUCT_BUNDLE_IDENTIFIER = "com.auth0.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; @@ -1004,7 +1174,7 @@ SWIFT_SWIFT3_OBJC_INFERENCE = Default; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 13.0; + TVOS_DEPLOYMENT_TARGET = 14.0; }; name = Debug; }; @@ -1033,7 +1203,7 @@ SWIFT_SWIFT3_OBJC_INFERENCE = Default; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 13.0; + TVOS_DEPLOYMENT_TARGET = 14.0; }; name = Release; }; @@ -1056,7 +1226,7 @@ SWIFT_SWIFT3_OBJC_INFERENCE = Default; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2,3"; - TVOS_DEPLOYMENT_TARGET = 13.0; + TVOS_DEPLOYMENT_TARGET = 14.0; }; name = Debug; }; @@ -1080,7 +1250,182 @@ SWIFT_SWIFT3_OBJC_INFERENCE = Default; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2,3"; - TVOS_DEPLOYMENT_TARGET = 13.0; + TVOS_DEPLOYMENT_TARGET = 14.0; + }; + name = Release; + }; + C1896EF52C1C690E00CA1000 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + APPLICATION_EXTENSION_API_ONLY = YES; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + BUILD_LIBRARY_FOR_DISTRIBUTION = NO; + CLANG_ANALYZER_NONNULL = YES_NONAGGRESSIVE; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; + CLANG_ENABLE_OBJC_WEAK = NO; + CLANG_WARN_DOCUMENTATION_COMMENTS = NO; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_MODULE_VERIFIER = NO; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu17; + GENERATE_INFOPLIST_FILE = NO; + INFOPLIST_FILE = JWTDecode/Info.plist; + INFOPLIST_KEY_NSHumanReadableCopyright = ""; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + LOCALIZATION_PREFERS_STRING_CATALOGS = NO; + MARKETING_VERSION = ""; + MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++"; + MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu17 gnu++20"; + MTL_ENABLE_DEBUG_INFO = YES; + MTL_FAST_MATH = YES; + PRODUCT_BUNDLE_IDENTIFIER = com.auth0.JWTDecode; + PRODUCT_NAME = JWTDecode; + SDKROOT = xros; + SKIP_INSTALL = YES; + SUPPORTED_PLATFORMS = "xros xrsimulator"; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = ""; + SWIFT_EMIT_LOC_STRINGS = NO; + SWIFT_INSTALL_OBJC_HEADER = YES; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2,7"; + XROS_DEPLOYMENT_TARGET = 1.0; + }; + name = Debug; + }; + C1896EF62C1C690E00CA1000 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + APPLICATION_EXTENSION_API_ONLY = YES; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + BUILD_LIBRARY_FOR_DISTRIBUTION = NO; + CLANG_ANALYZER_NONNULL = YES_NONAGGRESSIVE; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; + CLANG_ENABLE_OBJC_WEAK = NO; + CLANG_WARN_DOCUMENTATION_COMMENTS = NO; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_MODULE_VERIFIER = NO; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu17; + GENERATE_INFOPLIST_FILE = NO; + INFOPLIST_FILE = JWTDecode/Info.plist; + INFOPLIST_KEY_NSHumanReadableCopyright = ""; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + LOCALIZATION_PREFERS_STRING_CATALOGS = NO; + MARKETING_VERSION = ""; + MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++"; + MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu17 gnu++20"; + MTL_FAST_MATH = YES; + PRODUCT_BUNDLE_IDENTIFIER = com.auth0.JWTDecode; + PRODUCT_NAME = JWTDecode; + SDKROOT = xros; + SKIP_INSTALL = YES; + SUPPORTED_PLATFORMS = "xros xrsimulator"; + SWIFT_EMIT_LOC_STRINGS = NO; + SWIFT_INSTALL_OBJC_HEADER = YES; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2,7"; + XROS_DEPLOYMENT_TARGET = 1.0; + }; + name = Release; + }; + C1896F082C1C71AC00CA1000 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES_NONAGGRESSIVE; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; + CLANG_ENABLE_OBJC_WEAK = NO; + CLANG_WARN_DOCUMENTATION_COMMENTS = NO; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu17; + GENERATE_INFOPLIST_FILE = NO; + INFOPLIST_FILE = JWTDecodeTests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "$(LD_RUNPATH_SEARCH_PATHS_SHALLOW_BUNDLE_$(SHALLOW_BUNDLE))", + "@executable_path/Frameworks", + ); + LOCALIZATION_PREFERS_STRING_CATALOGS = NO; + MARKETING_VERSION = ""; + MTL_ENABLE_DEBUG_INFO = YES; + MTL_FAST_MATH = YES; + PRODUCT_BUNDLE_IDENTIFIER = "com.auth0.JWTDecode-visionOSTests"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = xros; + SUPPORTED_PLATFORMS = "xros xrsimulator"; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = ""; + SWIFT_EMIT_LOC_STRINGS = NO; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2,7"; + XROS_DEPLOYMENT_TARGET = 1.0; + }; + name = Debug; + }; + C1896F092C1C71AC00CA1000 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES_NONAGGRESSIVE; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; + CLANG_ENABLE_OBJC_WEAK = NO; + CLANG_WARN_DOCUMENTATION_COMMENTS = NO; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_USER_SCRIPT_SANDBOXING = NO; + GCC_C_LANGUAGE_STANDARD = gnu17; + GENERATE_INFOPLIST_FILE = NO; + INFOPLIST_FILE = JWTDecodeTests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "$(LD_RUNPATH_SEARCH_PATHS_SHALLOW_BUNDLE_$(SHALLOW_BUNDLE))", + "@executable_path/Frameworks", + ); + LOCALIZATION_PREFERS_STRING_CATALOGS = NO; + MARKETING_VERSION = ""; + MTL_FAST_MATH = YES; + PRODUCT_BUNDLE_IDENTIFIER = "com.auth0.JWTDecode-visionOSTests"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = xros; + SUPPORTED_PLATFORMS = "xros xrsimulator"; + SWIFT_EMIT_LOC_STRINGS = NO; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2,7"; + XROS_DEPLOYMENT_TARGET = 1.0; }; name = Release; }; @@ -1214,6 +1559,24 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; + C1896EF72C1C690E00CA1000 /* Build configuration list for PBXNativeTarget "JWTDecode-visionOS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + C1896EF52C1C690E00CA1000 /* Debug */, + C1896EF62C1C690E00CA1000 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + C1896F072C1C71AC00CA1000 /* Build configuration list for PBXNativeTarget "JWTDecode-visionOSTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + C1896F082C1C71AC00CA1000 /* Debug */, + C1896F092C1C71AC00CA1000 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; E390BADF2288E6AF00780D6C /* Build configuration list for PBXNativeTarget "JWTDecode-watchOS" */ = { isa = XCConfigurationList; buildConfigurations = ( @@ -1224,6 +1587,40 @@ defaultConfigurationName = Release; }; /* End XCConfigurationList section */ + +/* Begin XCRemoteSwiftPackageReference section */ + C1D1FB842C2177DA008E9E3F /* XCRemoteSwiftPackageReference "CwlPreconditionTesting" */ = { + isa = XCRemoteSwiftPackageReference; + repositoryURL = "https://github.com/mattgallagher/CwlPreconditionTesting.git"; + requirement = { + kind = upToNextMajorVersion; + minimumVersion = 2.2.1; + }; + }; +/* End XCRemoteSwiftPackageReference section */ + +/* Begin XCSwiftPackageProductDependency section */ + C12BFE412C348AF500D1CC00 /* CwlPreconditionTesting */ = { + isa = XCSwiftPackageProductDependency; + package = C1D1FB842C2177DA008E9E3F /* XCRemoteSwiftPackageReference "CwlPreconditionTesting" */; + productName = CwlPreconditionTesting; + }; + C1D1FB852C2177DA008E9E3F /* CwlPreconditionTesting */ = { + isa = XCSwiftPackageProductDependency; + package = C1D1FB842C2177DA008E9E3F /* XCRemoteSwiftPackageReference "CwlPreconditionTesting" */; + productName = CwlPreconditionTesting; + }; + C1D1FB872C217FBF008E9E3F /* CwlPreconditionTesting */ = { + isa = XCSwiftPackageProductDependency; + package = C1D1FB842C2177DA008E9E3F /* XCRemoteSwiftPackageReference "CwlPreconditionTesting" */; + productName = CwlPreconditionTesting; + }; + C1D1FB892C218877008E9E3F /* CwlPreconditionTesting */ = { + isa = XCSwiftPackageProductDependency; + package = C1D1FB842C2177DA008E9E3F /* XCRemoteSwiftPackageReference "CwlPreconditionTesting" */; + productName = CwlPreconditionTesting; + }; +/* End XCSwiftPackageProductDependency section */ }; rootObject = 5F0068D91B3B46240048928E /* Project object */; } diff --git a/JWTDecode.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/JWTDecode.xcodeproj/project.xcworkspace/contents.xcworkspacedata index 341554b..919434a 100644 --- a/JWTDecode.xcodeproj/project.xcworkspace/contents.xcworkspacedata +++ b/JWTDecode.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -2,6 +2,6 @@ + location = "self:"> diff --git a/JWTDecode.xcodeproj/xcshareddata/xcschemes/JWTDecode-visionOS.xcscheme b/JWTDecode.xcodeproj/xcshareddata/xcschemes/JWTDecode-visionOS.xcscheme new file mode 100644 index 0000000..158f430 --- /dev/null +++ b/JWTDecode.xcodeproj/xcshareddata/xcschemes/JWTDecode-visionOS.xcscheme @@ -0,0 +1,71 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/JWTDecodeTests/JWTDecode-visionOS.xctestplan b/JWTDecodeTests/JWTDecode-visionOS.xctestplan new file mode 100644 index 0000000..0fcadd8 --- /dev/null +++ b/JWTDecodeTests/JWTDecode-visionOS.xctestplan @@ -0,0 +1,24 @@ +{ + "configurations" : [ + { + "id" : "DE726C37-73DB-44C8-B8EF-CE17A5231347", + "name" : "Configuration 1", + "options" : { + + } + } + ], + "defaultOptions" : { + + }, + "testTargets" : [ + { + "target" : { + "containerPath" : "container:JWTDecode.xcodeproj", + "identifier" : "C1896EFF2C1C71AC00CA1000", + "name" : "JWTDecode-visionOSTests" + } + } + ], + "version" : 1 +} diff --git a/Package.swift b/Package.swift index 839a14b..d2d68a0 100644 --- a/Package.swift +++ b/Package.swift @@ -1,10 +1,10 @@ -// swift-tools-version:5.7 +// swift-tools-version:5.9 import PackageDescription let package = Package( name: "JWTDecode", - platforms: [.iOS(.v13), .macOS(.v11), .tvOS(.v13), .watchOS(.v7)], + platforms: [.iOS(.v14), .macOS(.v11), .tvOS(.v14), .watchOS(.v7), .visionOS(.v1)], products: [.library(name: "JWTDecode", targets: ["JWTDecode"])], dependencies: [ .package(url: "https://github.com/Quick/Quick.git", .upToNextMajor(from: "7.0.0")), diff --git a/README.md b/README.md index e50fc0c..96efcc2 100644 --- a/README.md +++ b/README.md @@ -26,9 +26,9 @@ Migrating from v2? Check the [Migration Guide](V3_MIGRATION_GUIDE.md). ### Requirements -- iOS 13.0+ / macOS 11.0+ / tvOS 13.0+ / watchOS 7.0+ -- Xcode 14.x / 15.x -- Swift 5.7+ +- iOS 14.0+ / macOS 11.0+ / tvOS 14.0+ / watchOS 7.0+ +- Xcode 15.x +- Swift 5.9+ ### Installation @@ -157,7 +157,9 @@ The minimum supported Swift minor version is the one released with the oldest-su ### Platforms -Once a platform version becomes unsupported, dropping it from JWTDecode.swift **will not be considered a breaking change**, and will be done in a **minor** release. For example, iOS 13 will cease to be supported when iOS 17 gets released, and JWTDecode.swift will be able to drop it in a minor release. +We support only the last four major versions of any platform, including the current major version. + +Once a platform version becomes unsupported, dropping it from JWTDecode.swift **will not be considered a breaking change**, and will be done in a **minor** release. For example, iOS 14 will cease to be supported when iOS 18 gets released, and JWTDecode.swift will be able to drop it in a minor release. In the case of macOS, the yearly named releases are considered a major platform version for the purposes of this Policy, regardless of the actual version numbers.