danger-xcode_warnings 0.1.2 → 0.2.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 +4 -4
- data/.travis.yml +2 -2
- data/Gemfile.lock +2 -2
- data/README.md +72 -9
- data/doc/sample.png +0 -0
- data/lib/xcode_warnings/gem_version.rb +1 -1
- data/lib/xcode_warnings/log_parser.rb +11 -4
- data/lib/xcode_warnings/log_parser_xcpretty.rb +71 -0
- data/lib/xcode_warnings/plugin.rb +18 -4
- data/spec/fixtures/log_with_build_timing_summary +3 -0
- data/spec/fixtures/log_xcpretty +6 -0
- data/spec/xcode_warnings_spec.rb +121 -51
- metadata +6 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2f94dacd6aee8f4012677af4107ea3fb65cd9317bdc437d130a579a334e33eef
|
4
|
+
data.tar.gz: f2f701e8545958f3e0b5dc65612b6d7944eee1c936089d70919cbfd0d6c5627c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3366a501dd6cb01111c1a8aecb5d0353b181c45721a0c6f776253e3aafce2323ceb65ffbb9dbceee314a9cf660357e528e80b87b3ebbe3ba5a2e9fcb018e84f5
|
7
|
+
data.tar.gz: 6e21b5cb8dc22eefeb2f52d0b41d5aedf65488e02d31123d47fef2bddb4e89d1b196de48febccac6b388a7e15176ccd7f868211eaeeb3a9914b0b6c3fe9b2498
|
data/.travis.yml
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
danger-xcode_warnings (0.
|
4
|
+
danger-xcode_warnings (0.2.0)
|
5
5
|
danger-plugin-api (~> 1.0)
|
6
6
|
|
7
7
|
GEM
|
@@ -19,7 +19,7 @@ GEM
|
|
19
19
|
colored2 (3.1.2)
|
20
20
|
cork (0.3.0)
|
21
21
|
colored2 (~> 3.1)
|
22
|
-
danger (6.0
|
22
|
+
danger (6.1.0)
|
23
23
|
claide (~> 1.0)
|
24
24
|
claide-plugins (>= 0.9.2)
|
25
25
|
colored2 (~> 3.1)
|
data/README.md
CHANGED
@@ -1,38 +1,101 @@
|
|
1
1
|
# danger-xcode_warnings
|
2
2
|
|
3
|
-
[](https://github.com/Scior/danger-xcode_warnings)
|
4
4
|
[](https://travis-ci.org/Scior/danger-xcode_warnings)
|
5
5
|
[](https://opensource.org/licenses/MIT)
|
6
6
|
|
7
|
-
A Danger plugin to show warnings from xcodebuild.
|
7
|
+
A Danger plugin to format and show warnings from xcodebuild.
|
8
|
+
|
9
|
+

|
10
|
+
|
11
|
+
## Features
|
12
|
+
|
13
|
+
- Extract the compiler and linker warnings from the build log and format them for Danger
|
14
|
+
- Both `xcodebuild` and `xcpretty` format are supported
|
15
|
+
- Gather the build timing summary and show
|
8
16
|
|
9
17
|
## Installation
|
10
18
|
|
11
19
|
```sh
|
12
|
-
gem install
|
13
|
-
gem specific_install git@github.com:Scior/danger-xcode_warnings.git
|
20
|
+
gem install danger-xcode_warnings
|
14
21
|
```
|
15
22
|
|
16
23
|
Or using Bundler,
|
17
24
|
|
18
25
|
```ruby
|
19
|
-
gem 'danger-xcode_warnings'
|
26
|
+
gem 'danger-xcode_warnings'
|
20
27
|
```
|
21
28
|
|
22
29
|
## Usage
|
23
30
|
|
24
|
-
|
31
|
+
### With xcodebuild
|
32
|
+
|
33
|
+
Firstly, collect the log from `xcodebuild`.
|
34
|
+
|
35
|
+
```sh
|
36
|
+
xcodebuild clean build -workspace ... > build.log
|
37
|
+
# If you want to show the log with xcpretty
|
38
|
+
xcodebuild clean build -workspace ... | tee build.log | xcpretty
|
39
|
+
```
|
40
|
+
|
41
|
+
And then, call `analyze_file` method in your `Dangerfile` to analyze the build log,
|
42
|
+
|
43
|
+
```ruby
|
44
|
+
xcode_warnings.analyze_file 'build.log'
|
45
|
+
```
|
46
|
+
|
47
|
+
with some shell scripts with your CI, like:
|
48
|
+
|
49
|
+
```sh
|
50
|
+
bundle install
|
51
|
+
bundle exec danger
|
52
|
+
```
|
53
|
+
|
54
|
+
### With xcpretty
|
55
|
+
|
56
|
+
If you want to analyze the xcpretty log, you MUST set the `use_xcpretty` flag in your `Dangerfile`:
|
57
|
+
|
58
|
+
```ruby
|
59
|
+
xcode_warnings.use_xcpretty = true
|
60
|
+
xcode_warnings.analyze_file 'build.log'
|
61
|
+
```
|
62
|
+
|
63
|
+
Your build script for CI should be like,
|
25
64
|
|
26
65
|
```sh
|
27
|
-
xcodebuild clean build
|
66
|
+
xcodebuild clean build -workspace ... | xcpretty > build.log
|
28
67
|
```
|
29
68
|
|
30
|
-
|
69
|
+
### Show linker warnings
|
70
|
+
|
71
|
+
To show linker warnings, set the `show_linker_warnings` to `true` before analyzing the log:
|
31
72
|
|
32
73
|
```ruby
|
33
|
-
xcode_warnings.
|
74
|
+
xcode_warnings.show_linker_warnings = true
|
75
|
+
xcode_warnings.analyze_file 'build.log'
|
34
76
|
```
|
35
77
|
|
78
|
+
### Gathering build timing sumamry
|
79
|
+
|
80
|
+
To gather the build timing summary, you have to add `-showBuildTimingSummary` option to your build script:
|
81
|
+
|
82
|
+
```sh
|
83
|
+
xcodebuild clean build -workspace ... -showBuildTimingSummary > build.log
|
84
|
+
```
|
85
|
+
|
86
|
+
Then, set the `build_timing_summary` flag to `true`.
|
87
|
+
|
88
|
+
```ruby
|
89
|
+
xcode_warnings.build_timing_summary = true
|
90
|
+
xcode_warnings.analyze_file 'build.log'
|
91
|
+
```
|
92
|
+
|
93
|
+
### See also
|
94
|
+
|
95
|
+
`RubyDoc` for this plugin is here:
|
96
|
+
|
97
|
+
- <https://www.rubydoc.info/gems/danger-xcode_warnings>
|
98
|
+
|
36
99
|
## Development
|
37
100
|
|
38
101
|
1. Clone this repo
|
data/doc/sample.png
ADDED
Binary file
|
@@ -1,5 +1,5 @@
|
|
1
1
|
#
|
2
|
-
# Parser for the xcodebuild log.
|
2
|
+
# Parser class for the xcodebuild log.
|
3
3
|
#
|
4
4
|
class LogParser
|
5
5
|
# The keyword for detecing warnings.
|
@@ -20,7 +20,7 @@ class LogParser
|
|
20
20
|
# @return [void]
|
21
21
|
attr_accessor :show_build_timing_summary
|
22
22
|
|
23
|
-
# Parses the log text into array of Warnings.
|
23
|
+
# Parses the log text into an array of Warnings.
|
24
24
|
#
|
25
25
|
# @param [String] text The text to parse.
|
26
26
|
# @return [Array] Array of `Warning`.
|
@@ -39,10 +39,17 @@ class LogParser
|
|
39
39
|
return nil unless @show_build_timing_summary
|
40
40
|
|
41
41
|
lines = text.lines.map!(&:chomp)
|
42
|
-
index = lines.index("Build Timing Summary")
|
42
|
+
index = lines.reverse.index("Build Timing Summary")
|
43
43
|
return nil if index.nil?
|
44
44
|
|
45
|
-
lines[index
|
45
|
+
build_times = lines[-index..-1]
|
46
|
+
.select { |s| s =~ /.+/ }
|
47
|
+
.reject { |s| s.include?("*") }
|
48
|
+
total_time = build_times
|
49
|
+
.map { |s| s.split(" | ")[1].split[0].to_f }
|
50
|
+
.inject(:+)
|
51
|
+
|
52
|
+
"#{build_times.join("\n")}\nTotal Build Time: **#{total_time}s**"
|
46
53
|
end
|
47
54
|
|
48
55
|
private
|
@@ -0,0 +1,71 @@
|
|
1
|
+
#
|
2
|
+
# Parser class for the xcpretty log.
|
3
|
+
#
|
4
|
+
class LogParserXCPretty
|
5
|
+
# The keyword for detecing warnings.
|
6
|
+
KEYWORD_WARNING = "\u26A0".freeze
|
7
|
+
|
8
|
+
# Struct represents warnings.
|
9
|
+
Warning = Struct.new(:file, :line, :message)
|
10
|
+
|
11
|
+
# Whether show build warnings or not.
|
12
|
+
# @return [void]
|
13
|
+
attr_accessor :show_build_warnings
|
14
|
+
|
15
|
+
# Whether show linker warnings or not.
|
16
|
+
# @return [void]
|
17
|
+
attr_accessor :show_linker_warnings
|
18
|
+
|
19
|
+
# Parses the log text into an array of Warnings.
|
20
|
+
#
|
21
|
+
# @param [String] text The text to parse.
|
22
|
+
# @return [Array] Array of `Warning`.
|
23
|
+
#
|
24
|
+
def parse_warnings(text)
|
25
|
+
warning_texts = text.each_line.select { |s| s.include?(KEYWORD_WARNING) }.uniq
|
26
|
+
warning_texts.map! { |s| parse_warning_text(s) }.compact
|
27
|
+
end
|
28
|
+
|
29
|
+
# Parses the log text into a build timing summary message.
|
30
|
+
#
|
31
|
+
# @param [String] text The text to parse.
|
32
|
+
# @return [String] Message of build timing summary.
|
33
|
+
#
|
34
|
+
def parse_build_timing_summary(text)
|
35
|
+
return nil unless @show_build_timing_summary
|
36
|
+
|
37
|
+
lines = text.lines.map!(&:chomp)
|
38
|
+
index = lines.reverse.index("Build Timing Summary")
|
39
|
+
return nil if index.nil?
|
40
|
+
|
41
|
+
build_times = lines[-index..-1]
|
42
|
+
.select { |s| s =~ /.+/ }
|
43
|
+
.reject { |s| s.include?("*") }
|
44
|
+
total_time = build_times
|
45
|
+
.map { |s| s.split(" | ")[1].split[0].to_f }
|
46
|
+
.inject(:+)
|
47
|
+
|
48
|
+
"#{build_times.join("\n")}\nTotal Build Time: **#{total_time}s**"
|
49
|
+
end
|
50
|
+
|
51
|
+
private
|
52
|
+
|
53
|
+
def parse_warning_text(text)
|
54
|
+
puts text
|
55
|
+
position, message = text.split(" ", 3).slice(1, 2)
|
56
|
+
if position.start_with?("ld")
|
57
|
+
# Linker warning
|
58
|
+
return nil unless @show_linker_warnings
|
59
|
+
|
60
|
+
return Warning.new(nil, nil, message.chomp)
|
61
|
+
end
|
62
|
+
|
63
|
+
# Build warnings
|
64
|
+
return nil unless @show_build_warnings
|
65
|
+
|
66
|
+
path, line, _column = position.split(":")
|
67
|
+
return nil if path.nil?
|
68
|
+
|
69
|
+
Warning.new(path.gsub("#{Dir.pwd}/", ""), line, message.chomp)
|
70
|
+
end
|
71
|
+
end
|
@@ -1,4 +1,5 @@
|
|
1
1
|
require_relative "./log_parser"
|
2
|
+
require_relative "./log_parser_xcpretty"
|
2
3
|
require_relative "./message_formatter"
|
3
4
|
|
4
5
|
module Danger
|
@@ -14,15 +15,20 @@ module Danger
|
|
14
15
|
# @return [void]
|
15
16
|
attr_accessor :show_build_warnings
|
16
17
|
|
17
|
-
# Whether show linker warnings or not.
|
18
|
+
# Whether show linker warnings or not. The default value is `false`.
|
18
19
|
# @return [void]
|
19
20
|
attr_accessor :show_linker_warnings
|
20
21
|
|
21
|
-
# Whether show build timing summary or not.
|
22
|
+
# Whether show build timing summary or not. The default value is `false`.
|
22
23
|
# @return [void]
|
23
24
|
attr_accessor :show_build_timing_summary
|
24
25
|
|
26
|
+
# Whether use xcpretty for formatting logs. The default value is `false`.
|
27
|
+
# @return [void]
|
28
|
+
attr_accessor :use_xcpretty
|
29
|
+
|
25
30
|
# rubocop:disable Lint/DuplicateMethods
|
31
|
+
|
26
32
|
def show_build_warnings
|
27
33
|
@show_build_warnings.nil? ? true : @show_build_warnings
|
28
34
|
end
|
@@ -34,6 +40,10 @@ module Danger
|
|
34
40
|
def show_build_timing_summary
|
35
41
|
@show_build_timing_summary || false
|
36
42
|
end
|
43
|
+
|
44
|
+
def use_xcpretty
|
45
|
+
@use_xcpretty || false
|
46
|
+
end
|
37
47
|
# rubocop:enable Lint/DuplicateMethods
|
38
48
|
|
39
49
|
# Parses the log text from xcodebuild and show warnings.
|
@@ -44,10 +54,14 @@ module Danger
|
|
44
54
|
# @return [void]
|
45
55
|
#
|
46
56
|
def analyze(log_text, inline: false, sticky: true)
|
47
|
-
|
57
|
+
if use_xcpretty
|
58
|
+
parser = LogParserXCPretty.new
|
59
|
+
else
|
60
|
+
parser = LogParser.new
|
61
|
+
parser.show_build_timing_summary = show_build_timing_summary
|
62
|
+
end
|
48
63
|
parser.show_build_warnings = show_build_warnings
|
49
64
|
parser.show_linker_warnings = show_linker_warnings
|
50
|
-
parser.show_build_timing_summary = show_build_timing_summary
|
51
65
|
|
52
66
|
parsed = parser.parse_warnings(log_text)
|
53
67
|
parsed.each do |warning|
|
@@ -0,0 +1,6 @@
|
|
1
|
+
|
2
|
+
▸ Compiling UIColor+.swift
|
3
|
+
⚠️ /Users/fujino/iOS/ColorStock/ColorStock/Utility/Extension/UIColor+.swift:13:17: initializer 'init(r:g:b:)' took 177ms to type-check (limit: 100ms)
|
4
|
+
▸ Linking RxDataSources
|
5
|
+
▸ Linking NotificationService
|
6
|
+
⚠️ ld: linking against a dylib which is not safe for use in application extensions: /hoge
|
data/spec/xcode_warnings_spec.rb
CHANGED
@@ -1,81 +1,151 @@
|
|
1
1
|
require File.expand_path("spec_helper", __dir__)
|
2
2
|
|
3
|
+
# rubocop:disable Metrics/ModuleLength
|
3
4
|
module Danger
|
4
5
|
describe Danger::DangerXcodeWarnings do
|
5
6
|
it "should be a plugin" do
|
6
7
|
expect(Danger::DangerXcodeWarnings.new(nil)).to be_a Danger::Plugin
|
7
8
|
end
|
8
9
|
|
9
|
-
#
|
10
|
-
# You should test your custom attributes and methods here
|
11
|
-
#
|
12
10
|
describe "with Dangerfile" do
|
13
11
|
before do
|
14
12
|
@dangerfile = testing_dangerfile
|
15
13
|
@xcode_warnings = @dangerfile.xcode_warnings
|
16
14
|
end
|
17
15
|
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
16
|
+
context "with default settings" do
|
17
|
+
before do
|
18
|
+
@xcode_warnings.analyze_file "spec/fixtures/log_with_4_errors"
|
19
|
+
end
|
20
|
+
|
21
|
+
it "warn 3 lines" do
|
22
|
+
expect(@dangerfile.status_report[:warnings]).to eq [
|
23
|
+
"**/Users/fujino/iOS/ColorStock/ColorStock/Utility/Extension/UIColor+.swift#L13** initializer 'init(r:g:b:)' took 177ms to type-check (limit: 100ms)",
|
24
|
+
"**/Users/fujino/iOS/ColorStock/ColorStock/Presentation/ViewModel/Implementation/ColorSelectorViewModel.swift#L75** instance method 'makeFlowLayout(with:)' took 104ms to type-check (limit: 100ms)",
|
25
|
+
"**/Users/fujino/iOS/ColorStock/ColorStock/Data/Entity/Color.swift#L22** variable 'hoge' was never used; consider replacing with '_' or removing it"
|
26
|
+
]
|
27
|
+
end
|
28
|
+
it "put a single message" do
|
29
|
+
expect(@dangerfile.status_report[:messages]).to eq [
|
30
|
+
"Detected 3 build-time warnings."
|
31
|
+
]
|
32
|
+
end
|
29
33
|
end
|
30
34
|
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
35
|
+
context "enable showing build and linker warnings" do
|
36
|
+
before do
|
37
|
+
@xcode_warnings.show_build_warnings = true
|
38
|
+
@xcode_warnings.show_linker_warnings = true
|
39
|
+
@xcode_warnings.analyze_file "spec/fixtures/log_with_4_errors"
|
40
|
+
end
|
41
|
+
|
42
|
+
it "warn 4 lines" do
|
43
|
+
expect(@dangerfile.status_report[:warnings]).to eq [
|
44
|
+
"linking against a dylib which is not safe for use in application extensions: /hoge",
|
45
|
+
"**/Users/fujino/iOS/ColorStock/ColorStock/Utility/Extension/UIColor+.swift#L13** initializer 'init(r:g:b:)' took 177ms to type-check (limit: 100ms)",
|
46
|
+
"**/Users/fujino/iOS/ColorStock/ColorStock/Presentation/ViewModel/Implementation/ColorSelectorViewModel.swift#L75** instance method 'makeFlowLayout(with:)' took 104ms to type-check (limit: 100ms)",
|
47
|
+
"**/Users/fujino/iOS/ColorStock/ColorStock/Data/Entity/Color.swift#L22** variable 'hoge' was never used; consider replacing with '_' or removing it"
|
48
|
+
]
|
49
|
+
end
|
50
|
+
it "put a single message" do
|
51
|
+
expect(@dangerfile.status_report[:messages]).to eq [
|
52
|
+
"Detected 4 build-time warnings."
|
53
|
+
]
|
54
|
+
end
|
45
55
|
end
|
46
56
|
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
57
|
+
context "disable all settings" do
|
58
|
+
before do
|
59
|
+
@xcode_warnings.show_build_warnings = false
|
60
|
+
@xcode_warnings.show_linker_warnings = false
|
61
|
+
@xcode_warnings.analyze_file "spec/fixtures/log_with_4_errors"
|
62
|
+
end
|
51
63
|
|
52
|
-
|
53
|
-
|
64
|
+
it "show no warnings" do
|
65
|
+
expect(@dangerfile.status_report[:warnings]).to eq []
|
66
|
+
end
|
67
|
+
it "show no messages" do
|
68
|
+
expect(@dangerfile.status_report[:messages]).to eq []
|
69
|
+
end
|
54
70
|
end
|
55
71
|
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
72
|
+
context "enable showing build timing summary" do
|
73
|
+
before do
|
74
|
+
@xcode_warnings.show_build_timing_summary = true
|
75
|
+
@xcode_warnings.analyze_file "spec/fixtures/log_with_build_timing_summary"
|
76
|
+
end
|
77
|
+
|
78
|
+
it "show no warnings" do
|
79
|
+
expect(@dangerfile.status_report[:warnings]).to eq []
|
80
|
+
end
|
81
|
+
it "show build timing summary" do
|
82
|
+
expect(@dangerfile.status_report[:messages]).to eq [
|
83
|
+
"CompileStoryboard (2 tasks) | 10.000 seconds\n" \
|
84
|
+
"CompileSwiftSources (1 task) | 2.000 seconds\n" \
|
85
|
+
"Ld (1 task) | 0.000 seconds\n" \
|
86
|
+
"LinkStoryboards (1 task) | 0.000 seconds\n" \
|
87
|
+
"Total Build Time: **12.0s**"
|
88
|
+
]
|
89
|
+
end
|
67
90
|
end
|
68
91
|
|
69
|
-
|
70
|
-
|
92
|
+
context "with the clean build log" do
|
93
|
+
before do
|
94
|
+
@xcode_warnings.analyze_file "spec/fixtures/log_without_error"
|
95
|
+
end
|
96
|
+
|
97
|
+
it "show no warnings" do
|
98
|
+
expect(@dangerfile.status_report[:warnings]).to eq []
|
99
|
+
end
|
100
|
+
it "show no messages" do
|
101
|
+
expect(@dangerfile.status_report[:messages]).to eq []
|
102
|
+
end
|
103
|
+
end
|
71
104
|
|
72
|
-
|
73
|
-
|
105
|
+
context "file not found" do
|
106
|
+
it "do nothing" do
|
107
|
+
@xcode_warnings.analyze_file "spec/fixtures/hoge"
|
108
|
+
end
|
74
109
|
end
|
75
110
|
|
76
|
-
|
77
|
-
|
111
|
+
context "use xcpretty log with default settings" do
|
112
|
+
before do
|
113
|
+
@xcode_warnings.use_xcpretty = true
|
114
|
+
@xcode_warnings.analyze_file "spec/fixtures/log_xcpretty"
|
115
|
+
end
|
116
|
+
|
117
|
+
it "warn 2 lines" do
|
118
|
+
expect(@dangerfile.status_report[:warnings]).to eq [
|
119
|
+
"**/Users/fujino/iOS/ColorStock/ColorStock/Utility/Extension/UIColor+.swift#L13** initializer 'init(r:g:b:)' took 177ms to type-check (limit: 100ms)"
|
120
|
+
]
|
121
|
+
end
|
122
|
+
it "put a single message" do
|
123
|
+
expect(@dangerfile.status_report[:messages]).to eq [
|
124
|
+
"Detected 1 build-time warnings."
|
125
|
+
]
|
126
|
+
end
|
127
|
+
end
|
128
|
+
|
129
|
+
context "use xcpretty log and enable linker warnings" do
|
130
|
+
before do
|
131
|
+
@xcode_warnings.use_xcpretty = true
|
132
|
+
@xcode_warnings.show_linker_warnings = true
|
133
|
+
@xcode_warnings.analyze_file "spec/fixtures/log_xcpretty"
|
134
|
+
end
|
135
|
+
|
136
|
+
it "warn 2 lines" do
|
137
|
+
expect(@dangerfile.status_report[:warnings]).to eq [
|
138
|
+
"**/Users/fujino/iOS/ColorStock/ColorStock/Utility/Extension/UIColor+.swift#L13** initializer 'init(r:g:b:)' took 177ms to type-check (limit: 100ms)",
|
139
|
+
"linking against a dylib which is not safe for use in application extensions: /hoge"
|
140
|
+
]
|
141
|
+
end
|
142
|
+
it "put 2 messages" do
|
143
|
+
expect(@dangerfile.status_report[:messages]).to eq [
|
144
|
+
"Detected 2 build-time warnings."
|
145
|
+
]
|
146
|
+
end
|
78
147
|
end
|
79
148
|
end
|
80
149
|
end
|
81
150
|
end
|
151
|
+
# rubocop:enable Metrics/ModuleLength
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: danger-xcode_warnings
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Scior
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-
|
11
|
+
date: 2019-11-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: danger-plugin-api
|
@@ -168,15 +168,18 @@ files:
|
|
168
168
|
- README.md
|
169
169
|
- Rakefile
|
170
170
|
- danger-xcode_warnings.gemspec
|
171
|
+
- doc/sample.png
|
171
172
|
- lib/danger_plugin.rb
|
172
173
|
- lib/danger_xcode_warnings.rb
|
173
174
|
- lib/xcode_warnings/gem_version.rb
|
174
175
|
- lib/xcode_warnings/log_parser.rb
|
176
|
+
- lib/xcode_warnings/log_parser_xcpretty.rb
|
175
177
|
- lib/xcode_warnings/message_formatter.rb
|
176
178
|
- lib/xcode_warnings/plugin.rb
|
177
179
|
- spec/fixtures/log_with_4_errors
|
178
180
|
- spec/fixtures/log_with_build_timing_summary
|
179
181
|
- spec/fixtures/log_without_error
|
182
|
+
- spec/fixtures/log_xcpretty
|
180
183
|
- spec/spec_helper.rb
|
181
184
|
- spec/xcode_warnings_spec.rb
|
182
185
|
homepage: https://github.com/Scior/danger-xcode_warnings
|
@@ -207,5 +210,6 @@ test_files:
|
|
207
210
|
- spec/fixtures/log_with_4_errors
|
208
211
|
- spec/fixtures/log_with_build_timing_summary
|
209
212
|
- spec/fixtures/log_without_error
|
213
|
+
- spec/fixtures/log_xcpretty
|
210
214
|
- spec/spec_helper.rb
|
211
215
|
- spec/xcode_warnings_spec.rb
|