sigh 1.6.1 → 1.7.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c8c29db84c759030a3ce9a075a16a53848e486ca
4
- data.tar.gz: e6e89f2225f2cc026e7cf45a45660b6ee221fdc7
3
+ metadata.gz: c0a6111203a414e101d5ea0c626733f804556932
4
+ data.tar.gz: 5dacfa3e6b32ddf8db0a53a3a48d1958ca447068
5
5
  SHA512:
6
- metadata.gz: 10553c5768b7de1f9ff1b752fc1dfb109ef4e8a383d4685209c6b12f9cad6053ae2425fbd3106162c7ef793327bbcab72ad3c964d90e9a9e0337ebf5fa1ff8e2
7
- data.tar.gz: 603d7f4cd26f1f935aa825f720b69ef3d70b276a1b1249d73b63dfc4b7c14fd020ddf3e6becc2488bf7c4cb7c82022d52785b172904e27d17488600e5c97fbd9
6
+ metadata.gz: a21ee4e42712a199ac02da1d3f19e67d93023cbf97ec391fdbb9561b82afd9040fbc700d685fdc2c90460ebd7a15e87355837c96f71e36cee7398fa6e06e6bd9
7
+ data.tar.gz: 9de2cb74088c34847745880b53a8a1938e7c62c90875a1f81641015e8cdadb871ef49e40123aba25af5b3c44ff9f7800c47e4785c27cc4923d34691f5fa2ad55
data/bin/sigh CHANGED
@@ -61,12 +61,17 @@ class SighApplication
61
61
  c.syntax = 'sigh resign'
62
62
  c.description = 'Resigns an existing ipa file with the given provisioning profile'
63
63
  c.option '-i', '--signing_identity STRING', String, 'The signing identity to use. Must match the one defined in the provisioning profile.'
64
- c.option '-x', '--version_number STRING', String, 'Version number to force binary to use'
65
- c.option '-p', '--provisioning_profile PATH', String, '(or BUNDLE_ID=PATH) The path to the provisioning profile which should be used.'\
66
- 'Can be provided multiple times if the application contains nested applications and app extensions, which need their own provisioning profile.'\
64
+ c.option '-x', '--version_number STRING', String, 'Version number to force binary and all nested binaries to use. Changes both CFBundleShortVersionString and CFBundleIdentifier.'
65
+ c.option '-p', '--provisioning_profile PATH', String, '(or BUNDLE_ID=PATH) The path to the provisioning profile which should be used. '\
66
+ 'Can be provided multiple times if the application contains nested applications and app extensions, which need their own provisioning profile. '\
67
67
  'The path may be prefixed with a identifier in order to determine which provisioning profile should be used on which app.',
68
68
  &multiple_values_option_proc(c, "provisioning_profile", &proc { |value| value.split('=', 2) })
69
69
  c.option '-d', '--display_name STRING', String, 'Display name to use'
70
+ c.option '-e', '--entitlements PATH', String, 'The path to the entitlements file to use.'
71
+ c.option '--short-version STRING', String, 'Short version string to force binary to use (CFBundleShortVersionString). '\
72
+ '\nCannot be used together with -x|--version_number option.'
73
+ c.option '--bundle-version STRING', String, 'Bundle version to force binary and all nested binaries to use (CFBundleIdentifier). '\
74
+ 'Cannot be used together with -x|--version_number option.'
70
75
 
71
76
  c.action do |args, options|
72
77
  Sigh::Resign.new.run(options, args)
data/lib/assets/resign.sh CHANGED
@@ -85,10 +85,52 @@ function checkStatus {
85
85
  fi
86
86
  }
87
87
 
88
+ usage() {
89
+ echo -e "Usage: $(basename $0) source identity -p|--provisioning provisioning" >&2
90
+ echo -e "\t\t[-e|--entitlements entitlements]" >&2
91
+ echo -e "\t\t[-k|--keychain keychain]" >&2
92
+ echo -e "\t\t[-d|--display-name displayName]" >&2
93
+ echo -e "\t\t[-n|--version-number version]" >&2
94
+ echo -e "\t\t[--short-version shortVersion]" >&2
95
+ echo -e "\t\t[--bundle-version bundleVersion]" >&2
96
+ echo -e "\t\t[-b|--bundle-id bundleId]" >&2
97
+ echo -e "\t\toutputIpa" >&2
98
+ echo "Usage: $(basename $0) -h|--help" >&2
99
+ echo "Options:" >&2
100
+ echo -e "\t-p, --provisioning provisioning\t\tProvisioning profile option, may be provided multiple times." >&2
101
+ echo -e "\t\t\t\t\t\tYou can specify provisioning profile file name." >&2
102
+ echo -e "\t\t\t\t\t\t\t-p xxx.mobileprovision" >&2
103
+ echo "" >&2
104
+ echo -e "\t\t\t\t\t\tAlternatively you may provide multiple provisioning profiles if the application contains" >&2
105
+ echo -e "\t\t\t\t\t\tnested applications or app extensions, which need their own provisioning" >&2
106
+ echo -e "\t\t\t\t\t\tprofile. You can do so by providing -p option multiple times specifying" >&2
107
+ echo -e "\t\t\t\t\t\told bundle identifier and new provisioning profile for that bundle id joined with '='." >&2
108
+ echo -e "\t\t\t\t\t\t\t-p com.main-app=main-app.mobileprovision" >&2
109
+ echo -e "\t\t\t\t\t\t\t-p com.nested-app=nested-app.mobileprovision" >&2
110
+ echo -e "\t\t\t\t\t\t\t-p com.nested-extension=nested-extension.mobileprovision" >&2
111
+ echo "" >&2
112
+ echo -e "\t-e, --entitlements entitlements\t\tSpecify entitlements file path for code signing." >&2
113
+ echo -e "\t-k, --keychain keychain\t\t\tSpecify keychain for code signing." >&2
114
+ echo -e "\t-d, --display-name displayName\t\tSpecify new display name." >&2
115
+ echo -e "\t\t\t\t\t\t\tWarning: will apply for all nested apps and extensions." >&2
116
+ echo -e "\t-n, --version-number version\t\tSpecify new version number." >&2
117
+ echo -e "\t\t\t\t\t\t\tWill set CFBundleShortVersionString and CFBundleVersion values in Info.plist." >&2
118
+ echo -e "\t\t\t\t\t\t\tWill apply for all nested apps and extensions." >&2
119
+ echo -e "\t --short-version shortVersion\tSpecify new short version string (CFBundleShortVersionString)." >&2
120
+ echo -e "\t\t\t\t\t\t\tWill apply for all nested apps and extensions." >&2
121
+ echo -e "\t\t\t\t\t\t\tCan't use together with '-n, --version-number' option." >&2
122
+ echo -e "\t --bundle-version bundleVersion\tSpecify new bundle version (CFBundleVersion) number." >&2
123
+ echo -e "\t\t\t\t\t\t\tWill apply for all nested apps and extensions." >&2
124
+ echo -e "\t\t\t\t\t\t\tCan't use together with '-n, --version-number' option." >&2
125
+ echo -e "\t-b, --bundle-id bundleId\t\tSpecify new bundle identifier (CFBundleIdentifier)." >&2
126
+ echo -e "\t\t\t\t\t\t\tWarning: will NOT apply for nested apps and extensions." >&2
127
+ echo -e "\t-v, --verbose\t\t\t\tVerbose output." >&2
128
+ echo -e "\t-h, --help\t\t\t\tDisplay help message." >&2
129
+ exit 2
130
+ }
131
+
88
132
  if [ $# -lt 3 ]; then
89
- echo "usage: $0 source identity -p provisioning [-e entitlements] [-d displayName] [-n version] [-b bundleId] outputIpa" >&2
90
- echo " -p option may be provided multiple times" >&2
91
- exit 1
133
+ usage
92
134
  fi
93
135
 
94
136
  ORIGINAL_FILE="$1"
@@ -98,6 +140,8 @@ BUNDLE_IDENTIFIER=""
98
140
  DISPLAY_NAME=""
99
141
  KEYCHAIN=""
100
142
  VERSION_NUMBER=""
143
+ SHORT_VERSION=
144
+ BUNDLE_VERSION=
101
145
  RAW_PROVISIONS=()
102
146
  PROVISIONS_BY_ID=()
103
147
  DEFAULT_PROVISION=""
@@ -106,37 +150,57 @@ TEMP_DIR="_floatsignTemp"
106
150
  NESTED_APP_REFERENCE_KEYS=(":WKCompanionAppBundleIdentifier" ":NSExtension:NSExtensionAttributes:WKAppBundleIdentifier")
107
151
 
108
152
  # options start index
109
- OPTIND=3
110
- while getopts p:d:e:k:b:n:v opt; do
111
- case $opt in
112
- p)
113
- RAW_PROVISIONS+=("$OPTARG")
153
+ shift 2
154
+
155
+ # Parse args
156
+ while [ "$1" != "" ]; do
157
+ case $1 in
158
+ -p | --provisioning )
159
+ shift
160
+ RAW_PROVISIONS+=("$1")
161
+ ;;
162
+ -e | --entitlements )
163
+ shift
164
+ ENTITLEMENTS="$1"
114
165
  ;;
115
- d)
116
- DISPLAY_NAME="$OPTARG"
166
+ -d | --display-name )
167
+ shift
168
+ DISPLAY_NAME="$1"
117
169
  ;;
118
- e)
119
- ENTITLEMENTS="$OPTARG"
170
+ -b | --bundle-id )
171
+ shift
172
+ BUNDLE_IDENTIFIER="$1"
120
173
  ;;
121
- b)
122
- BUNDLE_IDENTIFIER="$OPTARG"
174
+ -k | --keychain )
175
+ shift
176
+ KEYCHAIN="$1"
123
177
  ;;
124
- k)
125
- KEYCHAIN="$OPTARG"
178
+ -n | --version-number )
179
+ shift
180
+ VERSION_NUMBER="$1"
126
181
  ;;
127
- n)
128
- VERSION_NUMBER="$OPTARG"
182
+ --short-version )
183
+ shift
184
+ SHORT_VERSION="$1"
129
185
  ;;
130
- v)
186
+ --bundle-version )
187
+ shift
188
+ BUNDLE_VERSION="$1"
189
+ ;;
190
+ -v | --verbose )
131
191
  VERBOSE="--verbose"
132
192
  ;;
133
- \?)
134
- error "Invalid option: -$OPTARG"
193
+ -h | --help )
194
+ usage
135
195
  ;;
136
- :)
137
- error "Option -$OPTARG requires an argument."
196
+ * )
197
+ [[ -n "$NEW_FILE" ]] && error "Multiple output file names specified!"
198
+ [[ -z "$NEW_FILE" ]] && NEW_FILE="$1"
138
199
  ;;
139
200
  esac
201
+
202
+ # Next arg
203
+ shift
140
204
  done
141
205
 
142
206
  # Log the options
@@ -147,15 +211,22 @@ for provision in ${RAW_PROVISIONS[@]}; do
147
211
  log "Specified provisioning profile: '$provision'"
148
212
  fi
149
213
  done
214
+
215
+ log "Original file: '$ORIGINAL_FILE'"
216
+ log "Certificate: '$CERTIFICATE'"
150
217
  [[ -n "${DISPLAY_NAME}" ]] && log "Specified display name: '$DISPLAY_NAME'"
151
218
  [[ -n "${ENTITLEMENTS}" ]] && log "Specified signing entitlements: '$ENTITLEMENTS'"
152
219
  [[ -n "${BUNDLE_IDENTIFIER}" ]] && log "Specified bundle identifier: '$BUNDLE_IDENTIFIER'"
153
- [[ -n "${KEYCHAIN}" ]] && log "Specified Keychain to use: '$KEYCHAIN'"
154
- [[ -n "${VERSION_NUMBER}" ]] && log "Specified version to use: '$VERSION_NUMBER'"
220
+ [[ -n "${KEYCHAIN}" ]] && log "Specified keychain to use: '$KEYCHAIN'"
221
+ [[ -n "${VERSION_NUMBER}" ]] && log "Specified version number to use: '$VERSION_NUMBER'"
222
+ [[ -n "${SHORT_VERSION}" ]] && log "Specified short version to use: '$SHORT_VERSION'"
223
+ [[ -n "${BUNDLE_VERSION}" ]] && log "Specified bundle version to use: '$BUNDLE_VERSION'"
224
+ [[ -n "${NEW_FILE}" ]] && log "Output file name: '$NEW_FILE'"
155
225
 
156
- shift $((OPTIND-1))
226
+ # Check that version number option is not clashing with short or bundle version options
227
+ [[ -n "$VERSION_NUMBER" && (-n "$SHORT_VERSION" || -n "$BUNDLE_VERSION") ]] && error "versionNumber option cannot be used in combination with shortVersion or bundleVersion options"
157
228
 
158
- NEW_FILE="$1"
229
+ # Check output file name
159
230
  if [ -z "$NEW_FILE" ];
160
231
  then
161
232
  error "Output file name required"
@@ -291,7 +362,7 @@ function resign {
291
362
  local NESTED="$2"
292
363
  local BUNDLE_IDENTIFIER="$BUNDLE_IDENTIFIER"
293
364
  local NEW_PROVISION="$NEW_PROVISION"
294
- local APP_IDENTIFER_PREFIX=""
365
+ local APP_IDENTIFIER_PREFIX=""
295
366
  local TEAM_IDENTIFIER=""
296
367
 
297
368
  if [[ "$NESTED" == NESTED ]]; then
@@ -357,20 +428,23 @@ function resign {
357
428
  security cms -D -i "$NEW_PROVISION" > "$TEMP_DIR/profile.plist"
358
429
  checkStatus
359
430
 
360
- APP_IDENTIFER_PREFIX=`PlistBuddy -c "Print :Entitlements:application-identifier" "$TEMP_DIR/profile.plist" | grep -E '^[A-Z0-9]*' -o | tr -d '\n'`
361
- if [ "$APP_IDENTIFER_PREFIX" == "" ];
431
+ APP_IDENTIFIER_PREFIX=`PlistBuddy -c "Print :Entitlements:application-identifier" "$TEMP_DIR/profile.plist" | grep -E '^[A-Z0-9]*' -o | tr -d '\n'`
432
+ if [ "$APP_IDENTIFIER_PREFIX" == "" ];
362
433
  then
363
- APP_IDENTIFER_PREFIX=`PlistBuddy -c "Print :ApplicationIdentifierPrefix:0" "$TEMP_DIR/profile.plist"`
364
- if [ "$APP_IDENTIFER_PREFIX" == "" ];
434
+ APP_IDENTIFIER_PREFIX=`PlistBuddy -c "Print :ApplicationIdentifierPrefix:0" "$TEMP_DIR/profile.plist"`
435
+ if [ "$APP_IDENTIFIER_PREFIX" == "" ];
365
436
  then
366
437
  error "Failed to extract any app identifier prefix from '$NEW_PROVISION'"
367
438
  else
368
- warning "WARNING: extracted an app identifier prefix '$APP_IDENTIFER_PREFIX' from '$NEW_PROVISION', but it was not found in the profile's entitlements"
439
+ warning "WARNING: extracted an app identifier prefix '$APP_IDENTIFIER_PREFIX' from '$NEW_PROVISION', but it was not found in the profile's entitlements"
369
440
  fi
370
441
  else
371
- log "Profile app identifier prefix is '$APP_IDENTIFER_PREFIX'"
442
+ log "Profile app identifier prefix is '$APP_IDENTIFIER_PREFIX'"
372
443
  fi
373
444
 
445
+ # Set new app identifer prefix if such entry exists in plist file
446
+ PlistBuddy -c "Set :AppIdentifierPrefix $APP_IDENTIFIER_PREFIX." "$APP_PATH/Info.plist" 2>/dev/null
447
+
374
448
  TEAM_IDENTIFIER=`PlistBuddy -c "Print :Entitlements:com.apple.developer.team-identifier" "$TEMP_DIR/profile.plist" | tr -d '\n'`
375
449
  if [ "$TEAM_IDENTIFIER" == "" ];
376
450
  then
@@ -408,6 +482,24 @@ function resign {
408
482
  fi
409
483
  fi
410
484
 
485
+ # Update short version string in the Info.plist if provided
486
+ if [[ -n "$SHORT_VERSION" ]];
487
+ then
488
+ CURRENT_VALUE="$(PlistBuddy -c "Print :CFBundleShortVersionString" "$APP_PATH/Info.plist")"
489
+ # Even if the old value is same - just update, less code, less debugging
490
+ log "Updating the short version string (CFBundleShortVersionString) from '$CURRENT_VALUE' to '$SHORT_VERSION'"
491
+ PlistBuddy -c "Set :CFBundleShortVersionString $SHORT_VERSION" "$APP_PATH/Info.plist"
492
+ fi
493
+
494
+ # Update bundle version in the Info.plist if provided
495
+ if [[ -n "$BUNDLE_VERSION" ]];
496
+ then
497
+ CURRENT_VALUE="$(PlistBuddy -c "Print :CFBundleVersion" "$APP_PATH/Info.plist")"
498
+ # Even if the old value is same - just update, less code, less debugging
499
+ log "Updating the bundle version (CFBundleVersion) from '$CURRENT_VALUE' to '$BUNDLE_VERSION'"
500
+ PlistBuddy -c "Set :CFBundleVersion $BUNDLE_VERSION" "$APP_PATH/Info.plist"
501
+ fi
502
+
411
503
  # Check for and resign any embedded frameworks (new feature for iOS 8 and above apps)
412
504
  FRAMEWORKS_DIR="$APP_PATH/Frameworks"
413
505
  if [ -d "$FRAMEWORKS_DIR" ];
@@ -452,16 +544,16 @@ function resign {
452
544
 
453
545
  if [ "$ENTITLEMENTS" != "" ];
454
546
  then
455
- if [ -n "$APP_IDENTIFER_PREFIX" ];
547
+ if [ -n "$APP_IDENTIFIER_PREFIX" ];
456
548
  then
457
549
  # sanity check the 'application-identifier' is present in the provided entitlements and matches the provisioning profile value
458
550
  ENTITLEMENTS_APP_ID_PREFIX=`PlistBuddy -c "Print :application-identifier" "$ENTITLEMENTS" | grep -E '^[A-Z0-9]*' -o | tr -d '\n'`
459
551
  if [ "$ENTITLEMENTS_APP_ID_PREFIX" == "" ];
460
552
  then
461
553
  error "Provided entitlements file is missing a value for the required 'application-identifier' key"
462
- elif [ "$ENTITLEMENTS_APP_ID_PREFIX" != "$APP_IDENTIFER_PREFIX" ];
554
+ elif [ "$ENTITLEMENTS_APP_ID_PREFIX" != "$APP_IDENTIFIER_PREFIX" ];
463
555
  then
464
- error "Provided entitlements file's app identifier prefix value '$ENTITLEMENTS_APP_ID_PREFIX' does not match the provided provisioning profile's value '$APP_IDENTIFER_PREFIX'"
556
+ error "Provided entitlements file's app identifier prefix value '$ENTITLEMENTS_APP_ID_PREFIX' does not match the provided provisioning profile's value '$APP_IDENTIFIER_PREFIX'"
465
557
  fi
466
558
  fi
467
559
 
@@ -481,7 +573,7 @@ function resign {
481
573
  log "Resigning application using certificate: '$CERTIFICATE'"
482
574
  log "and entitlements: $ENTITLEMENTS"
483
575
  cp -- "$ENTITLEMENTS" "$APP_PATH/archived-expanded-entitlements.xcent"
484
- /usr/bin/codesign ${VERBOSE} -f -s "$CERTIFICATE" --entitlements="$ENTITLEMENTS" "$APP_PATH"
576
+ /usr/bin/codesign ${VERBOSE} -f -s "$CERTIFICATE" --entitlements "$ENTITLEMENTS" "$APP_PATH"
485
577
  checkStatus
486
578
  else
487
579
  log "Extracting entitlements from provisioning profile"
@@ -490,7 +582,7 @@ function resign {
490
582
  log "Resigning application using certificate: '$CERTIFICATE'"
491
583
  log "and entitlements from provisioning profile: $NEW_PROVISION"
492
584
  cp -- "$TEMP_DIR/newEntitlements" "$APP_PATH/archived-expanded-entitlements.xcent"
493
- /usr/bin/codesign ${VERBOSE} -f -s "$CERTIFICATE" --entitlements="$TEMP_DIR/newEntitlements" "$APP_PATH"
585
+ /usr/bin/codesign ${VERBOSE} -f -s "$CERTIFICATE" --entitlements "$TEMP_DIR/newEntitlements" "$APP_PATH"
494
586
  checkStatus
495
587
  fi
496
588
 
data/lib/sigh/resign.rb CHANGED
@@ -6,16 +6,16 @@ module Sigh
6
6
  def run(options, args)
7
7
  # get the command line inputs and parse those into the vars we need...
8
8
 
9
- ipa, signing_identity, provisioning_profiles, entitlements, version, display_name = get_inputs(options, args)
9
+ ipa, signing_identity, provisioning_profiles, entitlements, version, display_name, short_version, bundle_version = get_inputs(options, args)
10
10
  # ... then invoke our programmatic interface with these vars
11
- resign(ipa, signing_identity, provisioning_profiles, entitlements, version, display_name)
11
+ resign(ipa, signing_identity, provisioning_profiles, entitlements, version, display_name, short_version, bundle_version)
12
12
  end
13
13
 
14
- def self.resign(ipa, signing_identity, provisioning_profiles, entitlements, version, display_name)
15
- self.new.resign(ipa, signing_identity, provisioning_profiles, entitlements, version, display_name)
14
+ def self.resign(ipa, signing_identity, provisioning_profiles, entitlements, version, display_name, short_version, bundle_version)
15
+ self.new.resign(ipa, signing_identity, provisioning_profiles, entitlements, version, display_name, short_version, bundle_version)
16
16
  end
17
17
 
18
- def resign(ipa, signing_identity, provisioning_profiles, entitlements, version, display_name)
18
+ def resign(ipa, signing_identity, provisioning_profiles, entitlements, version, display_name, short_version, bundle_version)
19
19
  resign_path = find_resign_path
20
20
  signing_identity = find_signing_identity(signing_identity)
21
21
 
@@ -29,6 +29,8 @@ module Sigh
29
29
  provisioning_options = provisioning_profiles.map { |fst, snd| "-p #{[fst, snd].compact.map(&:shellescape).join('=')}" }.join(' ')
30
30
  version = "-n #{version}" if version
31
31
  display_name = "-d #{display_name.shellescape}" if display_name
32
+ short_version = "--short-version #{short_version}" if short_version
33
+ bundle_version = "--bundle-version #{bundle_version}" if bundle_version
32
34
  verbose = "-v" if $verbose
33
35
 
34
36
  command = [
@@ -39,6 +41,8 @@ module Sigh
39
41
  entitlements,
40
42
  version,
41
43
  display_name,
44
+ short_version,
45
+ bundle_version,
42
46
  verbose,
43
47
  ipa.shellescape
44
48
  ].join(' ')
@@ -59,11 +63,17 @@ module Sigh
59
63
  ipa = args.first || find_ipa || ask('Path to ipa file: ')
60
64
  signing_identity = options.signing_identity || ask_for_signing_identity
61
65
  provisioning_profiles = options.provisioning_profile || find_provisioning_profile || ask('Path to provisioning file: ')
62
- entitlements = options.entitlements || find_entitlements
66
+ entitlements = options.entitlements || nil
63
67
  version = options.version_number || nil
64
68
  display_name = options.display_name || nil
69
+ short_version = options.short_version || nil
70
+ bundle_version = options.bundle_version || nil
65
71
 
66
- return ipa, signing_identity, provisioning_profiles, entitlements, version, display_name
72
+ if options.provisioning_name
73
+ UI.important "The provisioning_name (-n) option is not applicable to resign. You should use provisioning_profile (-p) instead"
74
+ end
75
+
76
+ return ipa, signing_identity, provisioning_profiles, entitlements, version, display_name, short_version, bundle_version
67
77
  end
68
78
 
69
79
  def find_resign_path
@@ -78,10 +88,6 @@ module Sigh
78
88
  Dir[File.join(Dir.pwd, '*.mobileprovision')].sort { |a, b| File.mtime(a) <=> File.mtime(b) }.first
79
89
  end
80
90
 
81
- def find_entitlements
82
- Dir[File.join(Dir.pwd, '*.entitlements')].sort { |a, b| File.mtime(a) <=> File.mtime(b) }.first
83
- end
84
-
85
91
  def find_signing_identity(signing_identity)
86
92
  until installed_identies.include?(signing_identity)
87
93
  UI.error "Couldn't find signing identity '#{signing_identity}'."
data/lib/sigh/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Sigh
2
- VERSION = "1.6.1"
2
+ VERSION = "1.7.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sigh
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.1
4
+ version: 1.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Felix Krause
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-04-04 00:00:00.000000000 Z
11
+ date: 2016-04-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: fastlane_core