xcoder 0.1.7 → 0.1.8

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.
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: