Permalink
Browse files

Enable BoringSSL for Themis iOS cocoapod (#330)

* playing around with boringssl podspec

* minor visual updates for iOS examples, update gitignore

* fix subspec in test podspec

* Update themis.podspec

* podspec name tests

* name tests

* try with boring only

* boringssl podspec: define -DCRYPTO_ENGINE_PATH=BORINGSSL

* -DCRYPTO_ENGINE_PATH=boringssl

* try boringssl-grpc

* move back original boringssl

* workaround and updated boringssl spec for ios

* double spec working

* disable using aes-256-xts in soter for iOS - boringssl

* update ios test to use both openssl and boringssl

* remove SOTER_BORINGSSL_DISABLE_XTS from openssl soter

* fix comments style

* incompatibility of pbxproj files between 1.5.3 and 1.6.0-beta2

* downgrade to 1.5.3 cocoapods

* separate subspecs because of cocoapods lint

* update iOS examples
  • Loading branch information...
vixentael committed Oct 30, 2018
1 parent efe288e commit 911bcaf7ebe79afc6606de184492f30976bc2bf8
Showing with 684 additions and 480 deletions.
  1. +12 −2 .gitignore
  2. +1 −1 docs/examples/Themis-server/Obj-C/Podfile
  3. +22 −15 docs/examples/Themis-server/Obj-C/Podfile.lock
  4. +34 −42 ...les/Themis-server/Obj-C/WorkingWithThemisServer/WorkingWithThemisServer.xcodeproj/project.pbxproj
  5. +12 −10 ...s-server/Obj-C/WorkingWithThemisServer/WorkingWithThemisServer/Base.lproj/LaunchScreen.storyboard
  6. +6 −1 docs/examples/Themis-server/swift/Podfile.lock
  7. +26 −34 ...s/Themis-server/swift/SwiftThemisServerExample/SwiftThemisServerExample.xcodeproj/project.pbxproj
  8. +5 −6 ...server/swift/SwiftThemisServerExample/SwiftThemisServerExample/Base.lproj/LaunchScreen.storyboard
  9. +30 −22 docs/examples/objc/ThemisTest/ThemisTest.xcodeproj/project.pbxproj
  10. +4 −5 docs/examples/objc/ThemisTest/ThemisTest/Resources/Base.lproj/LaunchScreen.xib
  11. +9 −6 docs/examples/objc/ThemisTest/ThemisTest/Resources/Base.lproj/Main.storyboard
  12. +6 −1 docs/examples/swift/Podfile.lock
  13. +43 −51 docs/examples/swift/ThemisSwift/ThemisSwift.xcodeproj/project.pbxproj
  14. +4 −5 docs/examples/swift/ThemisSwift/ThemisSwift/Resources/Base.lproj/LaunchScreen.storyboard
  15. +0 −202 tests/objcthemis/LICENSE
  16. +14 −2 tests/objcthemis/Podfile
  17. +35 −18 tests/objcthemis/Podfile.lock
  18. +228 −31 tests/objcthemis/objcthemis.xcodeproj/project.pbxproj
  19. +1 −3 tests/objcthemis/objcthemis.xcodeproj/xcshareddata/xcschemes/objthemis.xcscheme
  20. +90 −0 tests/objcthemis/objcthemis.xcodeproj/xcshareddata/xcschemes/objthemis_boring.xcscheme
  21. +8 −0 tests/objcthemis/objcthemis.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
  22. +24 −0 tests/objcthemis/objthemis/objthemis_boring-Info.plist
  23. +70 −23 themis.podspec
View
@@ -32,8 +32,6 @@ xcuserdata
*~.nib
*.swp
docs/examples/objc/Pods
# additional rules
DerivedData/
.idea/
@@ -53,3 +51,15 @@ tests/phpthemis/composer.phar
tests/phpthemis/composer.lock
third_party/boringssl/.externalNativeBuild
# php
*.lai
*.la
*.lo
# ios
docs/examples/Themis-server/swift/Pods
docs/examples/Themis-server/Obj-C/Pods
docs/examples/swift/Pods
docs/examples/objc/Pods
@@ -23,6 +23,6 @@ use_frameworks!
target :"WorkingWithThemisServer" do
pod 'themis', '0.10.0'
pod 'themis', '0.10.1'
end
@@ -1,22 +1,29 @@
PODS:
- GRKOpenSSLFramework (1.0.1.20.4)
- themis (0.10.0):
- GRKOpenSSLFramework (= 1.0.1.20.4)
- themis/core (= 0.10.0)
- themis/objcwrapper (= 0.10.0)
- themis/core (0.10.0):
- GRKOpenSSLFramework (= 1.0.1.20.4)
- themis/objcwrapper (0.10.0):
- GRKOpenSSLFramework (= 1.0.1.20.4)
- themis/core
- GRKOpenSSLFramework (1.0.2.14.1)
- themis (0.10.1):
- themis/themis-openssl (= 0.10.1)
- themis/themis-openssl (0.10.1):
- GRKOpenSSLFramework (~> 1.0.1)
- themis/themis-openssl/core (= 0.10.1)
- themis/themis-openssl/objcwrapper (= 0.10.1)
- themis/themis-openssl/core (0.10.1):
- GRKOpenSSLFramework (~> 1.0.1)
- themis/themis-openssl/objcwrapper (0.10.1):
- GRKOpenSSLFramework (~> 1.0.1)
- themis/themis-openssl/core
DEPENDENCIES:
- themis (= 0.10.0)
- themis (= 0.10.1)
SPEC REPOS:
https://github.com/cocoapods/specs.git:
- GRKOpenSSLFramework
- themis
SPEC CHECKSUMS:
GRKOpenSSLFramework: b6172cc34db9b999002483878772a4bf2a1687ba
themis: f06f5690dbb18276e98f3c8d7c9ba90e8100bd09
GRKOpenSSLFramework: 845532a41bd75c6f5b99c9d95b25858357268a78
themis: c80f35d57e92089078299c3a6f8f4b859206534c
PODFILE CHECKSUM: 9dc4b7a0641e98ce141f1a6d10e7fa122c604232
PODFILE CHECKSUM: 22bf67fbae64cd5fce05283a1bc8c83268c4e144
COCOAPODS: 1.3.1
COCOAPODS: 1.5.3
@@ -7,6 +7,7 @@
objects = {
/* Begin PBXBuildFile section */
07D532CC346E0B14B4065C30 /* Pods_WorkingWithThemisServer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 65A98E649DF5797B62EB85FC /* Pods_WorkingWithThemisServer.framework */; };
733BD9BC1BDBF58500C6DA2F /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 733BD9BB1BDBF58500C6DA2F /* main.m */; };
733BD9BF1BDBF58600C6DA2F /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 733BD9BE1BDBF58600C6DA2F /* AppDelegate.m */; };
733BD9C21BDBF58600C6DA2F /* ViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 733BD9C11BDBF58600C6DA2F /* ViewController.m */; };
@@ -17,7 +18,6 @@
733BD9E01BDBF58600C6DA2F /* WorkingWithThemisServerUITests.m in Sources */ = {isa = PBXBuildFile; fileRef = 733BD9DF1BDBF58600C6DA2F /* WorkingWithThemisServerUITests.m */; };
733BD9F11BDBF77700C6DA2F /* SMessageClient.m in Sources */ = {isa = PBXBuildFile; fileRef = 733BD9EE1BDBF77700C6DA2F /* SMessageClient.m */; };
733BD9F21BDBF77700C6DA2F /* SSessionClient.m in Sources */ = {isa = PBXBuildFile; fileRef = 733BD9F01BDBF77700C6DA2F /* SSessionClient.m */; };
8F97CD67105205D858F2FE8C /* Pods_WorkingWithThemisServer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0C2E62AF71CA6F9D9D759D1C /* Pods_WorkingWithThemisServer.framework */; };
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
@@ -38,7 +38,9 @@
/* End PBXContainerItemProxy section */
/* Begin PBXFileReference section */
0C2E62AF71CA6F9D9D759D1C /* Pods_WorkingWithThemisServer.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_WorkingWithThemisServer.framework; sourceTree = BUILT_PRODUCTS_DIR; };
2D48D85E6AB3EEEC756A7FFD /* Pods-WorkingWithThemisServer.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WorkingWithThemisServer.debug.xcconfig"; path = "../Pods/Target Support Files/Pods-WorkingWithThemisServer/Pods-WorkingWithThemisServer.debug.xcconfig"; sourceTree = "<group>"; };
3AF51B8253F0D19EE58D064B /* Pods-WorkingWithThemisServer.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WorkingWithThemisServer.release.xcconfig"; path = "../Pods/Target Support Files/Pods-WorkingWithThemisServer/Pods-WorkingWithThemisServer.release.xcconfig"; sourceTree = "<group>"; };
65A98E649DF5797B62EB85FC /* Pods_WorkingWithThemisServer.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_WorkingWithThemisServer.framework; sourceTree = BUILT_PRODUCTS_DIR; };
733BD9B71BDBF58500C6DA2F /* WorkingWithThemisServer.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = WorkingWithThemisServer.app; sourceTree = BUILT_PRODUCTS_DIR; };
733BD9BB1BDBF58500C6DA2F /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
733BD9BD1BDBF58500C6DA2F /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = "<group>"; };
@@ -59,16 +61,14 @@
733BD9EE1BDBF77700C6DA2F /* SMessageClient.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SMessageClient.m; sourceTree = "<group>"; };
733BD9EF1BDBF77700C6DA2F /* SSessionClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SSessionClient.h; sourceTree = "<group>"; };
733BD9F01BDBF77700C6DA2F /* SSessionClient.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SSessionClient.m; sourceTree = "<group>"; };
7B9D8E1F5438CEBFE6DACDE4 /* Pods-WorkingWithThemisServer.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WorkingWithThemisServer.debug.xcconfig"; path = "../Pods/Target Support Files/Pods-WorkingWithThemisServer/Pods-WorkingWithThemisServer.debug.xcconfig"; sourceTree = "<group>"; };
B074AD659E76B5716AA60D9E /* Pods-WorkingWithThemisServer.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WorkingWithThemisServer.release.xcconfig"; path = "../Pods/Target Support Files/Pods-WorkingWithThemisServer/Pods-WorkingWithThemisServer.release.xcconfig"; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
733BD9B41BDBF58500C6DA2F /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
8F97CD67105205D858F2FE8C /* Pods_WorkingWithThemisServer.framework in Frameworks */,
07D532CC346E0B14B4065C30 /* Pods_WorkingWithThemisServer.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -89,21 +89,21 @@
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
27B1110EFB0B8EFF1A83B6DE /* Pods */ = {
3E6B84F1B30DD14444ADF575 /* Frameworks */ = {
isa = PBXGroup;
children = (
7B9D8E1F5438CEBFE6DACDE4 /* Pods-WorkingWithThemisServer.debug.xcconfig */,
B074AD659E76B5716AA60D9E /* Pods-WorkingWithThemisServer.release.xcconfig */,
65A98E649DF5797B62EB85FC /* Pods_WorkingWithThemisServer.framework */,
);
name = Pods;
name = Frameworks;
sourceTree = "<group>";
};
5DAB478908E52821C625ACB0 /* Frameworks */ = {
5B4EAB849BFA9ADC914D265A /* Pods */ = {
isa = PBXGroup;
children = (
0C2E62AF71CA6F9D9D759D1C /* Pods_WorkingWithThemisServer.framework */,
2D48D85E6AB3EEEC756A7FFD /* Pods-WorkingWithThemisServer.debug.xcconfig */,
3AF51B8253F0D19EE58D064B /* Pods-WorkingWithThemisServer.release.xcconfig */,
);
name = Frameworks;
name = Pods;
sourceTree = "<group>";
};
733BD9AE1BDBF58500C6DA2F = {
@@ -113,8 +113,8 @@
733BD9D31BDBF58600C6DA2F /* WorkingWithThemisServerTests */,
733BD9DE1BDBF58600C6DA2F /* WorkingWithThemisServerUITests */,
733BD9B81BDBF58500C6DA2F /* Products */,
27B1110EFB0B8EFF1A83B6DE /* Pods */,
5DAB478908E52821C625ACB0 /* Frameworks */,
5B4EAB849BFA9ADC914D265A /* Pods */,
3E6B84F1B30DD14444ADF575 /* Frameworks */,
);
sourceTree = "<group>";
};
@@ -181,12 +181,11 @@
isa = PBXNativeTarget;
buildConfigurationList = 733BD9E41BDBF58600C6DA2F /* Build configuration list for PBXNativeTarget "WorkingWithThemisServer" */;
buildPhases = (
94E58B93F657D21E35249FD9 /* [CP] Check Pods Manifest.lock */,
A6B983AC75AC02909E5FDEF7 /* [CP] Check Pods Manifest.lock */,
733BD9B31BDBF58500C6DA2F /* Sources */,
733BD9B41BDBF58500C6DA2F /* Frameworks */,
733BD9B51BDBF58500C6DA2F /* Resources */,
8A9E8880110148B22F88A199 /* [CP] Embed Pods Frameworks */,
F92E650D0D4F7BDC4BD1AE61 /* [CP] Copy Pods Resources */,
D38B884232238A14E74428AF /* [CP] Embed Pods Frameworks */,
);
buildRules = (
);
@@ -303,36 +302,20 @@
/* End PBXResourcesBuildPhase section */
/* Begin PBXShellScriptBuildPhase section */
8A9E8880110148B22F88A199 /* [CP] Embed Pods Frameworks */ = {
A6B983AC75AC02909E5FDEF7 /* [CP] Check Pods Manifest.lock */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputPaths = (
"${SRCROOT}/../Pods/Target Support Files/Pods-WorkingWithThemisServer/Pods-WorkingWithThemisServer-frameworks.sh",
"${PODS_ROOT}/GRKOpenSSLFramework/OpenSSL-iOS/bin/openssl.framework",
"${BUILT_PRODUCTS_DIR}/themis/themis.framework",
);
name = "[CP] Embed Pods Frameworks";
outputPaths = (
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/openssl.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/themis.framework",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${SRCROOT}/../Pods/Target Support Files/Pods-WorkingWithThemisServer/Pods-WorkingWithThemisServer-frameworks.sh\"\n";
showEnvVarsInLog = 0;
};
94E58B93F657D21E35249FD9 /* [CP] Check Pods Manifest.lock */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
inputFileListPaths = (
);
inputPaths = (
"${PODS_PODFILE_DIR_PATH}/Podfile.lock",
"${PODS_ROOT}/Manifest.lock",
);
name = "[CP] Check Pods Manifest.lock";
outputFileListPaths = (
);
outputPaths = (
"$(DERIVED_FILE_DIR)/Pods-WorkingWithThemisServer-checkManifestLockResult.txt",
);
@@ -341,19 +324,28 @@
shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
showEnvVarsInLog = 0;
};
F92E650D0D4F7BDC4BD1AE61 /* [CP] Copy Pods Resources */ = {
D38B884232238A14E74428AF /* [CP] Embed Pods Frameworks */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
);
inputPaths = (
"${SRCROOT}/../Pods/Target Support Files/Pods-WorkingWithThemisServer/Pods-WorkingWithThemisServer-frameworks.sh",
"${PODS_ROOT}/GRKOpenSSLFramework/OpenSSL-iOS/bin/openssl.framework",
"${BUILT_PRODUCTS_DIR}/themis/themis.framework",
);
name = "[CP] Embed Pods Frameworks";
outputFileListPaths = (
);
name = "[CP] Copy Pods Resources";
outputPaths = (
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/openssl.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/themis.framework",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${SRCROOT}/../Pods/Target Support Files/Pods-WorkingWithThemisServer/Pods-WorkingWithThemisServer-resources.sh\"\n";
shellScript = "\"${SRCROOT}/../Pods/Target Support Files/Pods-WorkingWithThemisServer/Pods-WorkingWithThemisServer-frameworks.sh\"\n";
showEnvVarsInLog = 0;
};
/* End PBXShellScriptBuildPhase section */
@@ -520,7 +512,7 @@
};
733BD9E51BDBF58600C6DA2F /* Debug */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = 7B9D8E1F5438CEBFE6DACDE4 /* Pods-WorkingWithThemisServer.debug.xcconfig */;
baseConfigurationReference = 2D48D85E6AB3EEEC756A7FFD /* Pods-WorkingWithThemisServer.debug.xcconfig */;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
INFOPLIST_FILE = WorkingWithThemisServer/Info.plist;
@@ -532,7 +524,7 @@
};
733BD9E61BDBF58600C6DA2F /* Release */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = B074AD659E76B5716AA60D9E /* Pods-WorkingWithThemisServer.release.xcconfig */;
baseConfigurationReference = 3AF51B8253F0D19EE58D064B /* Pods-WorkingWithThemisServer.release.xcconfig */;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
INFOPLIST_FILE = WorkingWithThemisServer/Info.plist;
@@ -1,12 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13529" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" useTraitCollections="YES" colorMatched="YES" initialViewController="01J-lp-oVM">
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="14313.18" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" useTraitCollections="YES" colorMatched="YES" initialViewController="01J-lp-oVM">
<device id="retina4_7" orientation="portrait">
<adaptation id="fullscreen"/>
</device>
<dependencies>
<deployment identifier="iOS"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13527"/>
<capability name="Constraints to layout margins" minToolsVersion="6.0"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14283.14"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
<scenes>
@@ -23,25 +22,28 @@
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Themis Server Example ObjC" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="YtC-cy-O2u">
<rect key="frame" x="43" y="156" width="289" height="21"/>
<rect key="frame" x="76" y="156" width="223" height="21"/>
<fontDescription key="fontDescription" type="system" pointSize="17"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" misplaced="YES" text="Copyright (c) 2015-2017 Cossack Labs. All rights reserved." textAlignment="center" lineBreakMode="wordWrap" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="tSF-Q5-9YO">
<rect key="frame" x="43" y="544" width="289" height="57"/>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Copyright (c) 2015-2019 Cossack Labs. All rights reserved." textAlignment="center" lineBreakMode="wordWrap" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="tSF-Q5-9YO">
<rect key="frame" x="43" y="547" width="289" height="57"/>
<constraints>
<constraint firstAttribute="height" constant="57" id="y18-5p-OEg"/>
</constraints>
<fontDescription key="fontDescription" type="system" pointSize="17"/>
<nil key="textColor"/>
<nil key="highlightedColor"/>
</label>
</subviews>
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
<constraints>
<constraint firstItem="xb3-aO-Qok" firstAttribute="top" secondItem="tSF-Q5-9YO" secondAttribute="bottom" constant="66" id="5CW-sO-PYk"/>
<constraint firstItem="YtC-cy-O2u" firstAttribute="trailing" secondItem="tSF-Q5-9YO" secondAttribute="trailing" id="JdI-P8-j6Q"/>
<constraint firstItem="YtC-cy-O2u" firstAttribute="leading" secondItem="Ze5-6b-2t3" secondAttribute="leadingMargin" constant="27" id="W6S-R8-04m"/>
<constraint firstItem="xb3-aO-Qok" firstAttribute="top" secondItem="tSF-Q5-9YO" secondAttribute="bottom" constant="63" id="5CW-sO-PYk"/>
<constraint firstItem="tSF-Q5-9YO" firstAttribute="centerX" secondItem="Ze5-6b-2t3" secondAttribute="centerX" id="5q6-10-B6f"/>
<constraint firstItem="tSF-Q5-9YO" firstAttribute="leading" secondItem="Ze5-6b-2t3" secondAttribute="leadingMargin" constant="27" id="99g-sJ-ieZ"/>
<constraint firstItem="YtC-cy-O2u" firstAttribute="leading" relation="greaterThanOrEqual" secondItem="Ze5-6b-2t3" secondAttribute="leadingMargin" id="W6S-R8-04m"/>
<constraint firstItem="YtC-cy-O2u" firstAttribute="top" secondItem="Llm-lL-Icb" secondAttribute="bottom" constant="136" id="X5K-1R-N4Z"/>
<constraint firstItem="YtC-cy-O2u" firstAttribute="leading" secondItem="tSF-Q5-9YO" secondAttribute="leading" id="dsQ-c5-feG"/>
<constraint firstItem="YtC-cy-O2u" firstAttribute="centerX" secondItem="Ze5-6b-2t3" secondAttribute="centerX" id="mcB-VR-VyY"/>
</constraints>
</view>
@@ -13,10 +13,15 @@ PODS:
DEPENDENCIES:
- themis (= 0.10.0)
SPEC REPOS:
https://github.com/cocoapods/specs.git:
- GRKOpenSSLFramework
- themis
SPEC CHECKSUMS:
GRKOpenSSLFramework: b6172cc34db9b999002483878772a4bf2a1687ba
themis: f06f5690dbb18276e98f3c8d7c9ba90e8100bd09
PODFILE CHECKSUM: af84c943a14574229baf0161720d41017a267e8a
COCOAPODS: 1.3.1
COCOAPODS: 1.5.3
Oops, something went wrong.

0 comments on commit 911bcaf

Please sign in to comment.