guard-xcode 1.0.5 → 1.0.6

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.
@@ -3,7 +3,7 @@ $:.push File.expand_path("../lib", __FILE__)
3
3
 
4
4
  Gem::Specification.new do |s|
5
5
  s.name = "guard-xcode"
6
- s.version = "1.0.5"
6
+ s.version = "1.0.6"
7
7
 
8
8
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
9
9
 
@@ -18,9 +18,11 @@ module Guard
18
18
  @config = options[:configuration]
19
19
  @scheme = options[:scheme]
20
20
  @arch = options[:arch]
21
+ @sdk = options[:sdk]
21
22
  @suppress_all_output = options[:suppress_all_output] or false
22
23
  @all = options[:all] or false
23
24
  @target = options[:target] unless @all
25
+ @workspace = options[:workspace] unless @all
24
26
  @quiet = options[:quiet] or false
25
27
  @clean = options[:clean] or false
26
28
 
@@ -39,6 +41,10 @@ module Guard
39
41
  build_line += "-target #{@target} "
40
42
  end
41
43
 
44
+ unless nil == @workspace
45
+ build_line += "-workspace #{@workspace} "
46
+ end
47
+
42
48
  if @all
43
49
  build_line += "-alltargets "
44
50
  end
@@ -51,6 +57,10 @@ module Guard
51
57
  build_line += "-arch #{@arch} "
52
58
  end
53
59
 
60
+ unless nil == @sdk
61
+ build_line += "-sdk #{@sdk} "
62
+ end
63
+
54
64
  if @clean
55
65
  build_line += "clean "
56
66
  end
@@ -70,15 +80,15 @@ module Guard
70
80
 
71
81
  unless @quiet or @suppress_all_output
72
82
  UI.info "guard-xcode: starting build"
73
- Notifier.notify("kicking off build with:\n#{build_line}")
83
+ Notifier.notify("kicking off build with:\n#{build_line}", :image => :pending)
74
84
  end
75
85
 
76
86
  output = `#{build_line} 2>&1`
77
87
  res = $?
78
88
 
79
- unless @quiet or @suppress_all_output
80
- UI.info "guard-xcode: build finished."
81
- Notifier.notify("build finished.")
89
+ if not ((not 0 == res or output =~ /errors? generated/) or (output =~ /warnings? generated/))
90
+ UI.info "guard-xcode: Build succeeded!" unless @quiet or @suppress_all_output
91
+ Notifier.notify("Build succeeded!") unless @quiet or @suppress_all_output
82
92
  end
83
93
 
84
94
  unless @quiet or @suppress_all_output
@@ -86,14 +96,14 @@ module Guard
86
96
  end
87
97
 
88
98
  if not 0 == res or output =~ /errors? generated/
89
- UI.info "guard-xcode: errors in build" unless @suppress_all_output
90
- Notifier.notify("guard-xcode: errors in build!") unless @suppress_all_output
99
+ UI.info "guard-xcode: Errors in build." unless @suppress_all_output
100
+ Notifier.notify("Errors in build.", :image => :failed) unless @suppress_all_output
91
101
  alerts.push :errors
92
102
  end
93
103
 
94
- if output =~ /warning/
95
- UI.info "guard-xcode: warnings in build" unless @suppress_all_output
96
- Notifier.notify("guard-xcode: warnings in build!") unless @suppress_all_output
104
+ if output =~ /warnings? generated/
105
+ UI.info "guard-xcode: Warnings in build." unless @suppress_all_output
106
+ Notifier.notify("Warnings in build.", :image => :failed) unless @suppress_all_output
97
107
  alerts.push :warnings
98
108
  end
99
109
 
@@ -127,14 +137,14 @@ module Guard
127
137
  # Called on file(s) modifications that the Guard watches.
128
138
  # @param [Array<String>] paths the changes files or paths
129
139
  # @raise [:task_has_failed] when run_on_change has failed
130
- def run_on_change(paths)
140
+ def run_on_changes(paths)
131
141
  run_build(get_build_line)
132
142
  end
133
143
 
134
144
  # Called on file(s) deletions that the Guard watches.
135
145
  # @param [Array<String>] paths the deleted files or paths
136
146
  # @raise [:task_has_failed] when run_on_change has failed
137
- def run_on_deletion(paths)
147
+ def run_on_removals(paths)
138
148
  run_build(get_build_line)
139
149
  end
140
150
 
@@ -8,6 +8,12 @@ class XcodeTestBuildLines < Test::Unit::TestCase
8
8
  assert target == targetGuard.get_build_line
9
9
  end
10
10
 
11
+ def test_workspace_build_line
12
+ workspace = 'xcodebuild -workspace MyApp build'
13
+ workspaceGuard = Guard::Xcode.new [], :workspace =>'MyApp'
14
+ assert workspace == workspaceGuard.get_build_line
15
+ end
16
+
11
17
  def test_config_build_line
12
18
  config = 'xcodebuild -configuration MyConfig build'
13
19
  configGuard = Guard::Xcode.new [], :configuration => 'MyConfig'
metadata CHANGED
@@ -1,37 +1,46 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: guard-xcode
3
- version: !ruby/object:Gem::Version
4
- version: 1.0.5
5
- prerelease:
3
+ version: !ruby/object:Gem::Version
4
+ prerelease: false
5
+ segments:
6
+ - 1
7
+ - 0
8
+ - 6
9
+ version: 1.0.6
6
10
  platform: ruby
7
- authors:
11
+ authors:
8
12
  - Kyle Isom
9
13
  autorequire:
10
14
  bindir: bin
11
15
  cert_chain: []
12
- date: 2012-03-17 00:00:00.000000000 Z
13
- dependencies:
14
- - !ruby/object:Gem::Dependency
16
+
17
+ date: 2013-02-04 00:00:00 -07:00
18
+ default_executable:
19
+ dependencies:
20
+ - !ruby/object:Gem::Dependency
15
21
  name: guard
16
- requirement: &70200171504460 !ruby/object:Gem::Requirement
17
- none: false
18
- requirements:
19
- - - ! '>='
20
- - !ruby/object:Gem::Version
21
- version: '0'
22
- type: :runtime
23
22
  prerelease: false
24
- version_requirements: *70200171504460
23
+ requirement: &id001 !ruby/object:Gem::Requirement
24
+ requirements:
25
+ - - ">="
26
+ - !ruby/object:Gem::Version
27
+ segments:
28
+ - 0
29
+ version: "0"
30
+ type: :runtime
31
+ version_requirements: *id001
25
32
  description: Build an Xcode project when source files change.
26
- email:
33
+ email:
27
34
  - coder@kyleisom.net
28
35
  executables: []
36
+
29
37
  extensions: []
30
- extra_rdoc_files:
38
+
39
+ extra_rdoc_files:
31
40
  - CHANGELOG.md
32
41
  - LICENSE.md
33
42
  - README.md
34
- files:
43
+ files:
35
44
  - .gitignore
36
45
  - CHANGELOG.md
37
46
  - Gemfile
@@ -59,30 +68,36 @@ files:
59
68
  - test/data/main_warnings_error.m
60
69
  - test/test_build.rb
61
70
  - test/test_build_lines.rb
71
+ has_rdoc: true
62
72
  homepage: https://github.com/kisom/guard-xcode
63
- licenses:
73
+ licenses:
64
74
  - ISC
65
75
  - public domain
66
76
  post_install_message:
67
77
  rdoc_options: []
68
- require_paths:
78
+
79
+ require_paths:
69
80
  - lib
70
- required_ruby_version: !ruby/object:Gem::Requirement
71
- none: false
72
- requirements:
73
- - - ! '>='
74
- - !ruby/object:Gem::Version
75
- version: '0'
76
- required_rubygems_version: !ruby/object:Gem::Requirement
77
- none: false
78
- requirements:
79
- - - ! '>='
80
- - !ruby/object:Gem::Version
81
- version: '0'
81
+ required_ruby_version: !ruby/object:Gem::Requirement
82
+ requirements:
83
+ - - ">="
84
+ - !ruby/object:Gem::Version
85
+ segments:
86
+ - 0
87
+ version: "0"
88
+ required_rubygems_version: !ruby/object:Gem::Requirement
89
+ requirements:
90
+ - - ">="
91
+ - !ruby/object:Gem::Version
92
+ segments:
93
+ - 0
94
+ version: "0"
82
95
  requirements: []
96
+
83
97
  rubyforge_project:
84
- rubygems_version: 1.8.15
98
+ rubygems_version: 1.3.6
85
99
  signing_key:
86
100
  specification_version: 3
87
101
  summary: Run Xcode builds when source files change.
88
102
  test_files: []
103
+