xcoder 0.1.7 → 0.1.8

Sign up to get free protection for your applications and to get access to all the features.
data/README.md CHANGED
@@ -187,6 +187,22 @@ You can also supply a block to provide additional configuration to specify the f
187
187
  rake hudson:project-alpha:targetname:debug:build
188
188
  # ...
189
189
 
190
+ ## [Guard](https://github.com/guard/guard)
191
+
192
+ Guard provides the ability to launch commands when files changed. There is a [guard-xcoder](https://github.com/burtlo/guard-xcoder) which allows you easily execute build actions whenever your project file changes.
193
+
194
+ gem install guard
195
+ gem install guard-xcoder
196
+
197
+ guard init
198
+ guard init xcoder
199
+
200
+ Afterwards you will need to define the project you want to monitor and the actions that you want to take place when a source files changes within the project file.
201
+
202
+ guard 'xcoder', :actions => [ :clean, :build, :test ] do
203
+ watch('ProjectName')
204
+ watch('ProjectName//TargetName')
205
+ end
190
206
 
191
207
  ## Manipulating a Project
192
208
 
@@ -254,4 +270,4 @@ Currently these tests only assert the basic project file parsing and build code
254
270
 
255
271
  ## Feedback
256
272
 
257
- Please raise issues if you find defects or have a feature request.
273
+ Please raise issues if you find defects or have a feature request.
@@ -101,16 +101,24 @@ module Xcode
101
101
  #
102
102
  # Creates a keychain with the given name that lasts for the duration of the provided block.
103
103
  # The keychain is deleted even if the block throws an exception.
104
- #
105
- # @param [String] the name of the temporary keychain to create
106
104
  #
107
- def self.temp(&block)
105
+ # If no block is provided, the temporary keychain is returned and it is deleted on system exit
106
+ #
107
+ def self.temp
108
108
  kc = Xcode::Keychain.create("/tmp/xcoder#{Time.now.to_i}", TEMP_PASSWORD)
109
- begin
110
- kc.unlock(TEMP_PASSWORD)
111
- block.call(kc)
112
- ensure
113
- kc.delete
109
+ kc.unlock(TEMP_PASSWORD)
110
+
111
+ if !block_given?
112
+ at_exit do
113
+ kc.delete
114
+ end
115
+ kc
116
+ else
117
+ begin
118
+ yield(kc)
119
+ ensure
120
+ kc.delete
121
+ end
114
122
  end
115
123
  end
116
124
 
@@ -71,6 +71,7 @@ module Xcode
71
71
  'PBXFileReference' => FileReference,
72
72
  'PBXGroup' => Group,
73
73
  'PBXNativeTarget' => [Target, ConfigurationOwner],
74
+ 'PBXLegacyTarget' => [Target, ConfigurationOwner],
74
75
  'PBXAggregateTarget' => Target,
75
76
  'PBXFrameworksBuildPhase' => BuildPhase,
76
77
  'PBXSourcesBuildPhase' => BuildPhase,
data/lib/xcode/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Xcode
2
- VERSION = "0.1.7"
2
+ VERSION = "0.1.8"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: xcoder
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.7
4
+ version: 0.1.8
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -10,11 +10,11 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2012-02-28 00:00:00.000000000Z
13
+ date: 2012-03-16 00:00:00.000000000Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: json
17
- requirement: &70110993243560 !ruby/object:Gem::Requirement
17
+ requirement: &70302521954920 !ruby/object:Gem::Requirement
18
18
  none: false
19
19
  requirements:
20
20
  - - ! '>='
@@ -22,10 +22,10 @@ dependencies:
22
22
  version: '0'
23
23
  type: :runtime
24
24
  prerelease: false
25
- version_requirements: *70110993243560
25
+ version_requirements: *70302521954920
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: plist
28
- requirement: &70110987983600 !ruby/object:Gem::Requirement
28
+ requirement: &70302524739260 !ruby/object:Gem::Requirement
29
29
  none: false
30
30
  requirements:
31
31
  - - ! '>='
@@ -33,10 +33,10 @@ dependencies:
33
33
  version: '0'
34
34
  type: :runtime
35
35
  prerelease: false
36
- version_requirements: *70110987983600
36
+ version_requirements: *70302524739260
37
37
  - !ruby/object:Gem::Dependency
38
38
  name: nokogiri
39
- requirement: &70110987983180 !ruby/object:Gem::Requirement
39
+ requirement: &70302524738840 !ruby/object:Gem::Requirement
40
40
  none: false
41
41
  requirements:
42
42
  - - ! '>='
@@ -44,10 +44,10 @@ dependencies:
44
44
  version: '0'
45
45
  type: :runtime
46
46
  prerelease: false
47
- version_requirements: *70110987983180
47
+ version_requirements: *70302524738840
48
48
  - !ruby/object:Gem::Dependency
49
49
  name: builder
50
- requirement: &70110987982760 !ruby/object:Gem::Requirement
50
+ requirement: &70302524738420 !ruby/object:Gem::Requirement
51
51
  none: false
52
52
  requirements:
53
53
  - - ! '>='
@@ -55,10 +55,10 @@ dependencies:
55
55
  version: '0'
56
56
  type: :runtime
57
57
  prerelease: false
58
- version_requirements: *70110987982760
58
+ version_requirements: *70302524738420
59
59
  - !ruby/object:Gem::Dependency
60
60
  name: rest-client
61
- requirement: &70110987982340 !ruby/object:Gem::Requirement
61
+ requirement: &70302524738000 !ruby/object:Gem::Requirement
62
62
  none: false
63
63
  requirements:
64
64
  - - ! '>='
@@ -66,7 +66,7 @@ dependencies:
66
66
  version: '0'
67
67
  type: :runtime
68
68
  prerelease: false
69
- version_requirements: *70110987982340
69
+ version_requirements: *70302524738000
70
70
  description: Provides a ruby based object-model for parsing project structures and
71
71
  invoking builds
72
72
  email: