onmyway133 / Arcane

:trident: CommonCrypto in Swift, and more
https://onmyway133.github.io/
Other
284 stars 22 forks source link

Add SPM support for Xcode 11 beta #23

Closed adamjcampbell closed 5 years ago

adamjcampbell commented 5 years ago

Adds version 5.1 Package.swift in order to import Arcane into Xcode 11 beta Apple have also released CryptoKit

However it does not support HMAC.SHA1 which is why I currently rely on Arcane

What Arcane SPM integration looks like in Xcode:

Screen Shot 2019-06-07 at 10 27 49 pm

Running tests via swift test now works (tests still work and pass in Xcode):

% swift test
[11/11] Linking ArcanePackageTests
Test Suite 'All tests' started at 2019-06-07 22:35:29.762
Test Suite 'ArcanePackageTests.xctest' started at 2019-06-07 22:35:29.762
Test Suite 'Tests' started at 2019-06-07 22:35:29.763
Test Case '-[ArcaneTests.Tests testAESWithData]' started.
Test Case '-[ArcaneTests.Tests testAESWithData]' passed (0.323 seconds).
Test Case '-[ArcaneTests.Tests testAESWithString]' started.
Test Case '-[ArcaneTests.Tests testAESWithString]' passed (0.000 seconds).
Test Case '-[ArcaneTests.Tests testBase64WithData]' started.
Test Case '-[ArcaneTests.Tests testBase64WithData]' passed (0.000 seconds).
Test Case '-[ArcaneTests.Tests testBase64WithString]' started.
Test Case '-[ArcaneTests.Tests testBase64WithString]' passed (0.000 seconds).
Test Case '-[ArcaneTests.Tests testHashWithData]' started.
Test Case '-[ArcaneTests.Tests testHashWithData]' passed (0.000 seconds).
Test Case '-[ArcaneTests.Tests testHashWithString]' started.
Test Case '-[ArcaneTests.Tests testHashWithString]' passed (0.001 seconds).
Test Case '-[ArcaneTests.Tests testHMAC]' started.
Test Case '-[ArcaneTests.Tests testHMAC]' passed (0.001 seconds).
Test Case '-[ArcaneTests.Tests testHMACWithDigest]' started.
Test Case '-[ArcaneTests.Tests testHMACWithDigest]' passed (0.000 seconds).
Test Case '-[ArcaneTests.Tests testObfuscator]' started.
Test Case '-[ArcaneTests.Tests testObfuscator]' passed (0.000 seconds).
Test Suite 'Tests' passed at 2019-06-07 22:35:30.090.
     Executed 9 tests, with 0 failures (0 unexpected) in 0.327 (0.327) seconds
Test Suite 'ArcanePackageTests.xctest' passed at 2019-06-07 22:35:30.090.
     Executed 9 tests, with 0 failures (0 unexpected) in 0.327 (0.328) seconds
Test Suite 'All tests' passed at 2019-06-07 22:35:30.090.
     Executed 9 tests, with 0 failures (0 unexpected) in 0.327 (0.328) seconds

Testing carthage update on branch:

% carthage update
*** Fetching Arcane
*** Checking out Arcane at "cec1ac4435a2e8828cb4af4560de1f64a4309824"
*** xcodebuild output can be found in /var/folders/0d/jw4jdgs14ln2ljdl9h439zd40000gn/T/carthage-xcodebuild.izU4wP.log
*** Building scheme "Arcane-watchOS" in Arcane.xcodeproj
*** Building scheme "Arcane-tvOS" in Arcane.xcodeproj
*** Building scheme "Arcane-iOS" in Arcane.xcodeproj
*** Building scheme "Arcane-macOS" in Arcane.xcodeproj

Testing pod install on branch:

adamcampbell@Adams-MBP TestArcanePods % pod install
Analyzing dependencies
Pre-downloading: `Arcane` from `https://github.com/adamjcampbell/Arcane`, branch `spm-support`
Setting up CocoaPods master repo
  $ /usr/local/bin/git clone https://github.com/CocoaPods/Specs.git --progress -- master
  Cloning into 'master'...
  remote: Enumerating objects: 23835, done.        
  remote: Counting objects: 100% (23835/23835), done.        
  remote: Compressing objects: 100% (11913/11913), done.        
  remote: Total 3205154 (delta 13297), reused 19652 (delta 10990), pack-reused 3181319
  Receiving objects: 100% (3205154/3205154), 656.66 MiB | 1.91 MiB/s, done.
  Resolving deltas: 100% (1913231/1913231), done.
  Checking out files: 100% (334253/334253), done.
Setup completed
Downloading dependencies
Installing Arcane (2.1)
Generating Pods project
Integrating client project

[!] Please close any current Xcode sessions and use `TestArcanePods.xcworkspace` for this project from now on.
Sending stats
Pod installation complete! There is 1 dependency from the Podfile and 1 total pod installed.
onmyway133 commented 5 years ago

@adamjcampbell that's quick πŸš€ thanks for the PR

adamjcampbell commented 5 years ago

hey @onmyway133 thanks for the merge πŸ™, you may already be on it but you also must push a tag titled 2.1.1 to master for this to function correctly and be picked up by SPM

onmyway133 commented 5 years ago

@adamjcampbell Hi, can you check https://github.com/onmyway133/Arcane/releases/tag/2.1.1 ?

adamjcampbell commented 5 years ago

@onmyway133 can confirm that SPM support works on master and Xcode 11 beta πŸ‘

onmyway133 commented 5 years ago

@adamjcampbell awesome πŸŽ‰