longbow 1.0.0 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 73f95934d5cf17c32f132c28f1bcf58cf55c792a
4
- data.tar.gz: b5c3aecf5eebabeb4382b3a6462d9791049c2760
3
+ metadata.gz: 46fbbd327d526495745c97c3cc037053119370ec
4
+ data.tar.gz: 4656656db3a2dff91be06591fa333ff3edd41427
5
5
  SHA512:
6
- metadata.gz: de4004db97b741fb0e69c4931126d37a1310924bd204837e6a059d39fd3a9f7834d49c6de28dc88937cf0afe162220531a991bf22ac94ea969eb5ed98172b30c
7
- data.tar.gz: 9e22e2301503257cefd03ad33e00c26bc14f08256673857aa1084d901bf9d8c4448b77db16cefd972308f4edec7c928281ba169e662b8ef78c3ef040a009386d
6
+ metadata.gz: 13dea7fb7afdbb1e0d06516e62b9601b5de7baa6ae08f6d8060606cb51753380227e337dbaeef9d4d0394d609aa7d8f64818102efda85648a6d16a0a7afcf3a9
7
+ data.tar.gz: 669a8a1a5393692c6a2808dc053a3c5fc61e0ceb8b95c64070882415ea96fe7f258cb7e39df9c265b2e680993614356be925345dba5a50a5a8e2b5f2ab32add1
data/README.md CHANGED
@@ -109,6 +109,7 @@ If you leave off the `-n` option, it will run for all targets in the `longbow.js
109
109
 
110
110
  * `-d, --directory` - if not in the current directory, specify a new path
111
111
  * `-u, --url` - the url of a longbow formatted JSON file
112
+ * `-i, --images` - set this flag to not recreate images in the longbow file
112
113
 
113
114
  `longbow shoot -n NameOfTarget -d ~/Path/To/App -u http://someurl.com/longbow.json`
114
115
 
@@ -13,6 +13,7 @@ command :aim do |c|
13
13
  c.option '-d', '--directory DIRECTORY', 'Path where the .xcodeproj or .xcworkspace file && the longbow.json file live.'
14
14
  c.option '-u', '--url URL', 'URL of a longbow formatted JSON file.'
15
15
  c.option '-n', '--name NAME', 'Name of the target to get a screenshot for.'
16
+ c.option '-v', '--verbose', 'Output all logs from UIAutomation/xcodebuild'
16
17
 
17
18
  c.action do |args, options|
18
19
  # Check for newer version
@@ -55,16 +56,16 @@ command :aim do |c|
55
56
  resources_path = File.dirname(__FILE__) + '/../../../resources'
56
57
 
57
58
  FileUtils.cp "#{resources_path}/capture.js", "capture.js"
58
-
59
+ FileUtils.cp "#{resources_path}/config-screenshots.sh", "config-screenshots.sh"
60
+ FileUtils.cp "#{resources_path}/ui-screen-shooter.sh", "ui-screen-shooter.sh"
61
+ FileUtils.cp "#{resources_path}/unix_instruments.sh", "unix_instruments.sh"
62
+ @target_names = []
59
63
  @targets.each do |t|
60
- Longbow::blue " Running screenshooter for #{t['name']}"
61
- begin
62
- `#{resources_path}/ui-screen-shooter.sh ~/Desktop/screenshots/#{t['name']} #{t['name']} #{@script}`
63
- rescue
64
- Longbow::red "Failed while running screenshooter for #{t['name']}"
65
- end
64
+ @target_names << t['name']
66
65
  end
67
-
68
- FileUtils.rm "capture.js"
66
+ target_string = @target_names.join(',')
67
+ Longbow::blue " Beginning screenshots..."
68
+ exec "#{resources_path}/aim.sh #{target_string} verbose" if options.verbose
69
+ exec "#{resources_path}/aim.sh #{target_string}" if !options.verbose
69
70
  end
70
71
  end
@@ -83,7 +83,7 @@ module Longbow
83
83
  deployment_target = main_target.deployment_target
84
84
 
85
85
  # Create New Target
86
- new_target = Xcodeproj::Project::ProjectHelper.new_target project, :application, target, :ios, deployment_target, project.products_group
86
+ new_target = Xcodeproj::Project::ProjectHelper.new_target project, :application, target, :ios, deployment_target, project.products_group, 'en'
87
87
  if new_target
88
88
  # Add Build Phases
89
89
  main_target.build_phases.objects.each do |b|
@@ -2,7 +2,7 @@ $:.push File.expand_path('../', __FILE__)
2
2
  require 'colors'
3
3
 
4
4
  module Longbow
5
- VERSION = '1.0.0'
5
+ VERSION = '1.1.0'
6
6
 
7
7
  def self.check_for_newer_version
8
8
  unless Gem.latest_version_for('longbow').to_s == VERSION
data/resources/aim.sh ADDED
@@ -0,0 +1,31 @@
1
+ #!/bin/bash
2
+ set -e # Bomb on any script errors
3
+ target_string="$1"
4
+ verbose=false
5
+ if [ -n "$2" ]; then
6
+ verbose=true
7
+ fi
8
+
9
+ function main {
10
+ # Get targets into an array, run 'em
11
+ IFS=',' read -a targets <<< "$target_string"
12
+ for target in "${targets[@]}"; do
13
+ _run_target $target;
14
+ done
15
+ # Remove files added by ruby script
16
+ rm "capture.js"
17
+ rm "config-screenshots.sh"
18
+ rm "ui-screen-shooter.sh"
19
+ rm "unix_instruments.sh"
20
+ }
21
+
22
+ function _run_target {
23
+ echo " Running $1"
24
+ if [ "$verbose" = true ]; then
25
+ source ui-screen-shooter.sh "$HOME/Desktop/screenshots/$1" "$1"
26
+ else
27
+ source ui-screen-shooter.sh "$HOME/Desktop/screenshots/$1" "$1" >/dev/null 2>/dev/null
28
+ fi
29
+ }
30
+
31
+ main
data/resources/capture.js CHANGED
@@ -18,6 +18,25 @@
18
18
  // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19
19
  // THE SOFTWARE.
20
20
 
21
+ var kPortraitString = "portrait"
22
+ var kLandscapeString = "landscape"
23
+
24
+ var kMaxDimension4inch = 568;
25
+ var kMaxDimension4point7inch = 667;
26
+ var kMaxDimension5point5inch = 736;
27
+
28
+ // rectMaxSizeMatchesPhoneWithMaxDimensionForOrientation(rect, maxDimension, orientation)
29
+ //
30
+ // Returns whether the given rect matches a given max dimension in a particular orientation.
31
+ //
32
+ // `rect` is the rectangle representing the image size you want to check
33
+ // `maxDimension` is the size of the longest side of the screen on a given device
34
+ // `orientation` is...well...duh!
35
+ //
36
+ function rectMaxSizeMatchesPhoneWithMaxDimensionForOrientation(rect, maxDimension, orientation) {
37
+ return (orientation == kPortraitString && rect.size.height == maxDimension) || (orientation == kLandscapeString && rect.size.width == maxDimension)
38
+ }
39
+
21
40
  // captureLocalizedScreenshot(name)
22
41
  //
23
42
  // Tells the local target to take a screen shot and names the file after the
@@ -38,13 +57,22 @@ function captureLocalizedScreenshot(name) {
38
57
  var model = target.model();
39
58
  var rect = target.rect();
40
59
 
41
- var orientation = "portrait";
42
- if (rect.size.height < rect.size.width) orientation = "landscape";
60
+ var orientation = kPortraitString;
61
+ if (rect.size.height < rect.size.width) {
62
+ orientation = kLandscapeString;
63
+ }
43
64
 
44
65
  if (model.match(/iPhone/)) {
45
- if ((orientation == "portrait" && rect.size.height > 480) || (orientation == "landscape" && rect.size.width > 480)) {
66
+ if (rectMaxSizeMatchesPhoneWithMaxDimensionForOrientation(rect, kMaxDimension4inch, orientation)) {
46
67
  model = "iOS-4-in";
47
- } else {
68
+ }
69
+ else if (rectMaxSizeMatchesPhoneWithMaxDimensionForOrientation(rect, kMaxDimension4point7inch, orientation)) {
70
+ model = "iOS-4.7-in";
71
+ }
72
+ else if (rectMaxSizeMatchesPhoneWithMaxDimensionForOrientation(rect, kMaxDimension5point5inch, orientation)) {
73
+ model = "iOS-5.5-in";
74
+ }
75
+ else {
48
76
  model = "iOS-3.5-in";
49
77
  }
50
78
  } else {
@@ -54,4 +82,3 @@ function captureLocalizedScreenshot(name) {
54
82
  var parts = [model, orientation, name];
55
83
  target.captureScreenWithName(parts.join("___"));
56
84
  }
57
-
@@ -0,0 +1,28 @@
1
+ #!/bin/bash
2
+ # This is an example configuration file to be used with ui-screen-shooter
3
+ # It is designed to work with the Hello World International application
4
+ # Please copy to config-screenshots.sh and edit for your needs
5
+
6
+
7
+ # LOCALE
8
+ # ======
9
+ # Set the locales here in which your screenshots should be made.
10
+ # Use format like en-US zh-Hans for filenames compatible with iTMSTransporter
11
+ # Note: to get the locale names for your existing app:
12
+ # - Download .itmsp file with iTMSTransporter
13
+ # - Run `grep locale ~/Desktop/*.itmsp/metadata.xml | grep name | sort -u`
14
+
15
+ export languages="en-US"
16
+
17
+
18
+ # SIMULATORS
19
+ # ==========
20
+ # The simulators we want to run the script against, declared as a Bash array.
21
+ # Run `instruments -s devices` to get a list of all the possible string values.
22
+
23
+ declare -xa simulators=(
24
+ "iPhone 6 (8.1 Simulator)",
25
+ "iPhone 6 Plus (8.1 Simulator)",
26
+ "iPhone 5S (8.1 Simulator)",
27
+ "iPhone 4S (8.1 Simulator)"
28
+ )
@@ -28,33 +28,28 @@ destination="$1"
28
28
  scheme_name="$2"
29
29
  ui_script="$3"
30
30
 
31
- # The locale identifiers for the languages you want to shoot
32
- # Use the format like en-US zh-Hans for filenames compatible with iTunes
33
- # connect upload tool
34
- # FYI: get the locale names for you existing app with iTMSTransporter and:
35
- # grep locale ~/Desktop/*.itmsp/metadata.xml | grep name | sort -u
36
- languages="en-US"
37
-
38
- # The simulators we want to run the script against, declared as a Bash array.
39
- # Run `instruments -w help` to get a list of all the possible string values.
40
- #declare -a simulators=(
41
- #"iPhone Retina (3.5-inch) - Simulator - iOS 7.1"
42
- #"iPhone Retina (4-inch) - Simulator - iOS 7.1"
43
- #"iPad Retina - Simulator - iOS 7.1"
44
- #)
45
- declare -a simulators=(
46
- "iPhone 4s"
47
- "iPhone 5s"
48
- "iPhone 6"
49
- "iPhone 6 Plus"
50
- )
51
-
52
31
  function main {
32
+ # Load configuration
33
+ # Not in a separate function because you can't exort arrays
34
+ # https://stackoverflow.com/questions/5564418/exporting-an-array-in-bash-script
35
+ # Will export languages and simulators bash variables
36
+ export UISS_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
37
+ if [ -f "$UISS_DIR"/config-screenshots.sh ]; then
38
+ source "$UISS_DIR"/config-screenshots.sh
39
+ else
40
+ if [ -f "$UISS_DIR"/config-screenshots.example.sh ]; then
41
+ source "$UISS_DIR"/config-screenshots.example.sh
42
+ echo "WARNING: Using example config-screenshots file, you should create your own"
43
+ else
44
+ echo "Configuration \"config-screenshots.sh\" does not exist! Aborting."
45
+ exit 1
46
+ fi
47
+ fi
48
+
53
49
  _check_destination
54
50
  _check_ui_script
55
51
  _check_scheme_name
56
52
  _xcode clean build
57
- _reset_sim
58
53
 
59
54
  for simulator in "${simulators[@]}"; do
60
55
  for language in $languages; do
@@ -92,11 +87,16 @@ function _check_ui_script {
92
87
  # Abort if the UI script does not exist.
93
88
 
94
89
  if [ -z "$ui_script" ]; then
95
- ui_script="./shoot_the_screens.js"
90
+ ui_script="./config-automation.js"
96
91
  fi
97
92
  if [ ! -f "$ui_script" ]; then
98
- echo "UI script \"$ui_script\" does not exist! Aborting."
99
- exit 1
93
+ if [ -f "./config-automation.example.js" ]; then
94
+ ui_script="./config-automation.js"
95
+ echo "WARNING: Using example config-automation, please create your own"
96
+ else
97
+ echo "Config-automation does not exist! Aborting."
98
+ exit 1
99
+ fi
100
100
  fi
101
101
  }
102
102
 
@@ -121,7 +121,8 @@ function _xcode {
121
121
  # or how I became to know this fact
122
122
  xcodebuild -sdk "iphonesimulator$ios_version" \
123
123
  CONFIGURATION_BUILD_DIR="$build_dir/build" \
124
- -workspace $base.xcworkspace -scheme $scheme_name -configuration AdHoc \
124
+ -workspace "$base.xcworkspace" -scheme "$scheme_name" -configuration Debug \
125
+ PRODUCT_NAME="$scheme_name" \
125
126
  DSTROOT=$build_dir \
126
127
  OBJROOT=$build_dir \
127
128
  SYMROOT=$build_dir \
@@ -129,14 +130,15 @@ function _xcode {
129
130
  "$@"
130
131
  xcodebuild -sdk "iphonesimulator$ios_version" \
131
132
  CONFIGURATION_BUILD_DIR="$build_dir/build" \
132
- PRODUCT_NAME=app \
133
- -workspace $base.xcworkspace -scheme $scheme_name -configuration AdHoc \
133
+ -workspace "$base.xcworkspace" -scheme "$scheme_name" -configuration Debug \
134
+ PRODUCT_NAME="$scheme_name" \
134
135
  DSTROOT=$build_dir \
135
136
  OBJROOT=$build_dir \
136
137
  SYMROOT=$build_dir \
137
138
  ONLY_ACTIVE_ARCH=NO \
138
139
  "$@"
139
- cp -r "$build_dir/build/app.app" "$build_dir"
140
+ cp -r "$build_dir/build/$scheme_name.app" "$build_dir"
141
+ bundle_dir="$build_dir/$scheme_name.app"
140
142
  else
141
143
  xcodebuild -sdk "iphonesimulator$ios_version" \
142
144
  CONFIGURATION_BUILD_DIR=$build_dir \
@@ -166,7 +168,7 @@ function _run_automation {
166
168
  in language \"${language}\"..."
167
169
 
168
170
  dev_tools_dir=`xcode-select -print-path`
169
- tracetemplate="$dev_tools_dir/../Applications/Instruments.app/Contents/PlugIns/AutomationInstrument.xrplugin/Contents/Resources/Automation.tracetemplate"
171
+ tracetemplate="Automation"
170
172
 
171
173
  # Check out the `unix_instruments.sh` script to see why we need this wrapper.
172
174
  DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
@@ -174,12 +176,11 @@ function _run_automation {
174
176
  -w "$simulator" \
175
177
  -D "$trace_results_dir/trace" \
176
178
  -t "$tracetemplate" \
177
- $bundle_dir \
179
+ "$bundle_dir" \
178
180
  -e UIARESULTSPATH "$trace_results_dir" \
179
181
  -e UIASCRIPT "$automation_script" \
180
182
  -AppleLanguages "($language)" \
181
- -AppleLocale "$language" \
182
- "$@"
183
+ -AppleLocale "$language"
183
184
 
184
185
  find $trace_results_dir/Run\ 1/ -name *landscape*png -type f -exec sips -r -90 \{\} \;
185
186
  }
@@ -195,18 +196,11 @@ function _copy_screenshots {
195
196
  cp $trace_results_dir/Run\ 1/*.png "$destination/$language"
196
197
  }
197
198
 
198
- function _reset_sim {
199
- count=`ps aux | grep [l]aunchd_sim | wc -l`
200
- if [ $count -ne 0 ]
201
- then
202
- kill -9 $(ps -ef | grep [l]aunchd_sim | awk {'print $2'})
203
- fi
204
- }
205
-
206
199
  function _close_sim {
207
200
  # I know, I know. It says "iPhone Simulator". For some reason,
208
201
  # that's the only way Applescript can identify it.
209
202
  osascript -e "tell application \"iPhone Simulator\" to quit"
210
203
  }
211
204
 
212
- main
205
+ main
206
+
metadata CHANGED
@@ -1,125 +1,125 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: longbow
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Intermark Interactive
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-10-27 00:00:00.000000000 Z
11
+ date: 2015-07-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ~>
18
18
  - !ruby/object:Gem::Version
19
19
  version: '1.3'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - "~>"
24
+ - - ~>
25
25
  - !ruby/object:Gem::Version
26
26
  version: '1.3'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: fileutils
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ">="
31
+ - - '>='
32
32
  - !ruby/object:Gem::Version
33
33
  version: '0'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ">="
38
+ - - '>='
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: commander
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - "~>"
45
+ - - ~>
46
46
  - !ruby/object:Gem::Version
47
47
  version: '4.1'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - "~>"
52
+ - - ~>
53
53
  - !ruby/object:Gem::Version
54
54
  version: '4.1'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: dotenv
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - "~>"
59
+ - - ~>
60
60
  - !ruby/object:Gem::Version
61
61
  version: '0.7'
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - "~>"
66
+ - - ~>
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0.7'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: rmagick
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - "~>"
73
+ - - ~>
74
74
  - !ruby/object:Gem::Version
75
75
  version: 2.13.2
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - "~>"
80
+ - - ~>
81
81
  - !ruby/object:Gem::Version
82
82
  version: 2.13.2
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: xcodeproj
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - ">="
87
+ - - '>='
88
88
  - !ruby/object:Gem::Version
89
89
  version: '0'
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - ">="
94
+ - - '>='
95
95
  - !ruby/object:Gem::Version
96
96
  version: '0'
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: json
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
- - - ">="
101
+ - - '>='
102
102
  - !ruby/object:Gem::Version
103
103
  version: '0'
104
104
  type: :runtime
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
- - - ">="
108
+ - - '>='
109
109
  - !ruby/object:Gem::Version
110
110
  version: '0'
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: rake
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
- - - ">="
115
+ - - '>='
116
116
  - !ruby/object:Gem::Version
117
117
  version: '0'
118
118
  type: :development
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
- - - ">="
122
+ - - '>='
123
123
  - !ruby/object:Gem::Version
124
124
  version: '0'
125
125
  description: One codebase. Multiple App Store submission targets with different icons,
@@ -131,27 +131,28 @@ executables:
131
131
  extensions: []
132
132
  extra_rdoc_files: []
133
133
  files:
134
- - "./Gemfile"
135
- - "./Gemfile.lock"
136
- - "./LICENSE.txt"
137
- - "./README.md"
138
- - "./Rakefile"
139
- - "./lib/longbow.rb"
140
- - "./lib/longbow/colors.rb"
141
- - "./lib/longbow/commands.rb"
142
- - "./lib/longbow/commands/aim.rb"
143
- - "./lib/longbow/commands/install.rb"
144
- - "./lib/longbow/commands/shoot.rb"
145
- - "./lib/longbow/images.rb"
146
- - "./lib/longbow/json.rb"
147
- - "./lib/longbow/plist.rb"
148
- - "./lib/longbow/targets.rb"
149
- - "./lib/longbow/utilities.rb"
150
- - "./lib/longbow/version.rb"
151
- - "./resources/banner.png"
152
- - "./resources/capture.js"
153
- - "./resources/ui-screen-shooter.sh"
154
- - "./resources/unix_instruments.sh"
134
+ - ./Gemfile
135
+ - ./LICENSE.txt
136
+ - ./README.md
137
+ - ./Rakefile
138
+ - ./lib/longbow.rb
139
+ - ./lib/longbow/colors.rb
140
+ - ./lib/longbow/commands.rb
141
+ - ./lib/longbow/commands/aim.rb
142
+ - ./lib/longbow/commands/install.rb
143
+ - ./lib/longbow/commands/shoot.rb
144
+ - ./lib/longbow/images.rb
145
+ - ./lib/longbow/json.rb
146
+ - ./lib/longbow/plist.rb
147
+ - ./lib/longbow/targets.rb
148
+ - ./lib/longbow/utilities.rb
149
+ - ./lib/longbow/version.rb
150
+ - ./resources/aim.sh
151
+ - ./resources/banner.png
152
+ - ./resources/capture.js
153
+ - ./resources/config-screenshots.sh
154
+ - ./resources/ui-screen-shooter.sh
155
+ - ./resources/unix_instruments.sh
155
156
  - bin/longbow
156
157
  homepage: https://github.com/intermark/longbow
157
158
  licenses:
@@ -163,17 +164,17 @@ require_paths:
163
164
  - lib
164
165
  required_ruby_version: !ruby/object:Gem::Requirement
165
166
  requirements:
166
- - - ">="
167
+ - - '>='
167
168
  - !ruby/object:Gem::Version
168
169
  version: '0'
169
170
  required_rubygems_version: !ruby/object:Gem::Requirement
170
171
  requirements:
171
- - - ">="
172
+ - - '>='
172
173
  - !ruby/object:Gem::Version
173
174
  version: '0'
174
175
  requirements: []
175
176
  rubyforge_project:
176
- rubygems_version: 2.2.2
177
+ rubygems_version: 2.4.2
177
178
  signing_key:
178
179
  specification_version: 4
179
180
  summary: Better target creation for one iOS codebase.
data/Gemfile.lock DELETED
@@ -1,44 +0,0 @@
1
- PATH
2
- remote: .
3
- specs:
4
- longbow (0.6.3)
5
- bundler (~> 1.3)
6
- commander (~> 4.1)
7
- dotenv (~> 0.7)
8
- fileutils
9
- json
10
- rmagick (~> 2.13.2)
11
- xcodeproj
12
-
13
- GEM
14
- remote: https://rubygems.org/
15
- specs:
16
- CFPropertyList (2.2.8)
17
- activesupport (3.2.19)
18
- i18n (~> 0.6, >= 0.6.4)
19
- multi_json (~> 1.0)
20
- colored (1.2)
21
- commander (4.2.0)
22
- highline (~> 1.6.11)
23
- dotenv (0.11.1)
24
- dotenv-deployment (~> 0.0.2)
25
- dotenv-deployment (0.0.2)
26
- fileutils (0.7)
27
- rmagick (>= 2.13.1)
28
- highline (1.6.21)
29
- i18n (0.6.11)
30
- json (1.8.1)
31
- multi_json (1.10.1)
32
- rake (10.1.1)
33
- rmagick (2.13.3)
34
- xcodeproj (0.19.1)
35
- CFPropertyList (~> 2.2)
36
- activesupport (~> 3.0)
37
- colored (~> 1.2)
38
-
39
- PLATFORMS
40
- ruby
41
-
42
- DEPENDENCIES
43
- longbow!
44
- rake