simplecov-buildkite 0.1.1 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 983bfc983d04ce54e3ce8ff6e42a1fae9a5ff44692ddffdfeb9f49e9f05561ff
4
- data.tar.gz: ef42a76b01d7ab95c5ad61e89bf0e7d85f8a6c179523e9c042efb77347cfaa99
3
+ metadata.gz: e36c234f39a45a5ad45377384e89fb607ff930845c4721ffd7401137d29f45e7
4
+ data.tar.gz: dbdfe7265bd71b56a98fb622fb26a0d8dcd42e58f473db653e1d0a7cfa2c3c4f
5
5
  SHA512:
6
- metadata.gz: 2bea09dc88c7c1304c0a9f9b622905728b1151fef54c186b12d0ad2d42ea6c3e9bb59343e89927136433abb6935cb5daa2d6d4aebde5a269ec9941f128f02744
7
- data.tar.gz: 35d47820c5eaf13bf7a51ac38d0e1e089d8b4db7496dc91f47a0aaca4588332207b7315b5f0b794b63022f0d48a8c06bb3b47f1fc16fb950b3d93b1f061b7a36
6
+ metadata.gz: c017b754d7276b541cdbe4f1ceb72ed91325c60d223fb02d80cb7861f963480ab3a0b40390e528b3c17748c0a6b77b989fb39ad0438a0579517000d3a2466581
7
+ data.tar.gz: 21de73e229ee87dc405e4004b85752d74a8c8f2196dc2da6f4013950f75ed0f398cad02b0ab2d2f0f0f41dd120e069d2674e557b63f31b7122d18ff4a0d85c96
data/CHANGELOG.md CHANGED
@@ -4,18 +4,46 @@ All notable changes to this project will be documented in this file.
4
4
  The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
5
5
  and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
6
6
 
7
+ ## [Unreleased]
8
+ [Unreleased]: https://github.com/buildkite/simplecov-buildkite/compare/v0.3.0...HEAD
9
+
10
+ - Nothing yet.
11
+
12
+ ## [0.3.0] - 2024-01-10
13
+ [0.3.0]: https://github.com/buildkite/simplecov-buildkite/compare/v0.2.0...v0.3.0
14
+
15
+ ### Added
16
+ - Set the annotation title with the `SIMPLECOV_BUILDKITE_TITLE` env var
17
+ ([#21](https://github.com/buildkite/simplecov-buildkite/pull/21))
18
+ - Set the annotation context with the `SIMPLECOV_BUILDKITE_CONTEXT` env var. This is useful for
19
+ adding multiple annotations to a single build
20
+ ([#18](https://github.com/buildkite/simplecov-buildkite/pull/18),
21
+ [#21](https://github.com/buildkite/simplecov-buildkite/pull/21))
22
+
23
+ ## [0.2.0] - 2020-09-08
24
+ [0.2.0]: https://github.com/buildkite/simplecov-buildkite/compare/v0.1.1...v0.2.0
25
+
26
+ ### Changed
27
+ - git integration: SimpleCov groups are automatically generated based on branch
28
+ and commit metadata.
29
+ ([#2](https://github.com/buildkite/simplecov-buildkite/pull/2),
30
+ [#8](https://github.com/buildkite/simplecov-buildkite/pull/8))
31
+ - Headers are now in sentence case
32
+ ([#9](https://github.com/buildkite/simplecov-buildkite/pull/9))
33
+ - Update specs for SimpleCov 0.19.0
34
+ ([#12](https://github.com/buildkite/simplecov-buildkite/pull/12))
35
+
7
36
  ## [0.1.1] - 2018-05-30
37
+ [0.1.1]: https://github.com/buildkite/simplecov-buildkite/compare/v0.1.0...v0.1.1
38
+
8
39
  ### Changed
9
40
  - Output is now enclosed in a `<details>` for a brief summary with expandable
10
41
  group stats
11
42
 
12
43
  ## [0.1.0] - 2018-05-30
44
+ [0.1.0]: https://github.com/buildkite/simplecov-buildkite/commits/v0.1.0
45
+
13
46
  ### Added
14
47
  - New gem, simplecov-buildkite. 🎉
15
48
  - Buildkite annotation formatter to consolidate reports from multiple simplecov
16
49
  runs into a Buildkite annotation.
17
-
18
- [Unreleased]: https://github.com/ticky/simplecov-buildkite/compare/v0.1.1...HEAD
19
- [0.1.1]: https://github.com/ticky/simplecov-buildkite/compare/v0.1.0...v0.1.1
20
- [0.1.0]: https://github.com/ticky/simplecov-buildkite/commits/v0.1.0
21
-
data/README.md CHANGED
@@ -1,5 +1,7 @@
1
1
  # SimpleCov::Buildkite
2
2
 
3
+ [![Gem Version](https://badge.fury.io/rb/simplecov-buildkite.svg)](https://rubygems.org/gems/simplecov-buildkite) [![Build Status](https://travis-ci.org/buildkite/simplecov-buildkite.svg?branch=develop)](https://travis-ci.org/buildkite/simplecov-buildkite)
4
+
3
5
  Generate [Buildkite annotations] from your [SimpleCov] coverage reports when running your build on [Buildkite].
4
6
 
5
7
  [Buildkite]: https://buildkite.com
@@ -34,6 +36,8 @@ require "simplecov"
34
36
  require "simplecov-buildkite"
35
37
 
36
38
  SimpleCov.start "rails" do
39
+ load_profile "buildkite"
40
+
37
41
  formatter SimpleCov::Formatter::MultiFormatter.new([
38
42
  SimpleCov::Formatter::HTMLFormatter,
39
43
  SimpleCov::Buildkite::AnnotationFormatter,
@@ -41,9 +45,24 @@ SimpleCov.start "rails" do
41
45
  end
42
46
  ```
43
47
 
44
- When run on Buildkite, this will also output a pretty Buildkite annotation:
48
+ When run on Buildkite with the `"buildkite"` profile enabled, this will also output a pretty Buildkite annotation, with coverage change breakdowns for the current PR or branch and commit:
49
+
50
+ <img width="577" alt="Buildkite build showing a SimpleCov report in a Buildkite annotation" src="https://user-images.githubusercontent.com/282113/42116587-c2e9731e-7bac-11e8-9d2f-50fa7f071f09.png">
45
51
 
46
- <img width="473" alt="Buildkite build showing a SimpleCov report in a Buildkite annotation" src="https://user-images.githubusercontent.com/282113/40627591-b8de5bc4-6274-11e8-8483-245e35c873af.png">
52
+ You can customize the title and annotation context using environment variables in your Pipeline. You can provide multiple coverage reports for a single build by providing distinct values for the annotation context.
53
+
54
+ ```yaml
55
+ steps:
56
+ - command: bin/rails engine1:spec
57
+ env:
58
+ SIMPLECOV_BUILDKITE_TITLE: "Engine 1 Coverage"
59
+ SIMPLECOV_BUILDKITE_CONTEXT: "engine-1-coverage"
60
+
61
+ - command: bin/rails engine2:spec
62
+ env:
63
+ SIMPLECOV_BUILDKITE_TITLE: "Engine 2 Coverage"
64
+ SIMPLECOV_BUILDKITE_CONTEXT: "engine-2-coverage"
65
+ ```
47
66
 
48
67
  [Rails]: https://rubyonrails.org
49
68
  [RSpec]: http://rspec.info
@@ -56,7 +75,7 @@ To install this gem onto your local machine, run `bundle exec rake install`. To
56
75
 
57
76
  ## Contributing
58
77
 
59
- Bug reports and pull requests are welcome on GitHub at https://github.com/ticky/simplecov-buildkite. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant] code of conduct.
78
+ Bug reports and pull requests are welcome on GitHub at https://github.com/buildkite/simplecov-buildkite. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant] code of conduct.
60
79
 
61
80
  [Contributor Covenant]: http://contributor-covenant.org
62
81
 
@@ -66,4 +85,4 @@ The gem is available as open source under the terms of the [MIT License](https:/
66
85
 
67
86
  ## Code of Conduct
68
87
 
69
- Everyone interacting in the SimpleCov::Buildkite project’s codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/ticky/simplecov-buildkite/blob/master/CODE_OF_CONDUCT.md).
88
+ Everyone interacting in the SimpleCov::Buildkite project’s codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/buildkite/simplecov-buildkite/blob/master/CODE_OF_CONDUCT.md).
@@ -1,19 +1,65 @@
1
+ require "shellwords"
2
+
1
3
  module SimpleCov::Buildkite
2
4
  class AnnotationFormatter
5
+ GIT_ANNOTATION_FORMAT_REGEX = /^Files (?<action>changed|added) in (?<changeset>[a-zA-Z0-9.]+)$/
6
+
3
7
  def format(result)
8
+ git_results, general_results = filter_git_groups(ignore_empty_groups(result.groups))
9
+ .values_at(:git, :general)
10
+
4
11
  message = <<~MESSAGE
5
- <details>
6
- <summary>#{format_element(result)}</summary>
7
- <ul>
8
- #{result.groups.map do |name, group|
9
- "<li><strong>#{name}</strong>: #{format_element(group)}</li>"
10
- end.join("\n")}
11
- </ul>
12
- </details>
12
+ #### #{annotation_title}
13
+
14
+ <dl class="flex flex-wrap m1 mxn2">
13
15
  MESSAGE
14
16
 
15
- if ENV["BUILDKITE"]
16
- system "buildkite-agent", "annotate", "--context", "simplecov", "--style", "info", message
17
+ git_results.to_a.reverse.each do |git_result|
18
+ name, group = git_result
19
+
20
+ matches = name.match GIT_ANNOTATION_FORMAT_REGEX
21
+
22
+ type = if matches[:action] == 'added'
23
+ 'New files'
24
+ else
25
+ 'Files changed'
26
+ end
27
+
28
+ changeset = if matches[:changeset].include?('...')
29
+ 'branch'
30
+ else
31
+ 'commit'
32
+ end
33
+
34
+ message += format_as_metric "#{type} in #{changeset}",
35
+ group,
36
+ changeset: matches[:changeset]
37
+ end
38
+
39
+ message += format_as_metric 'All files', result
40
+
41
+ message += <<~MESSAGE
42
+ </dl>
43
+ MESSAGE
44
+
45
+ if general_results.any?
46
+ message += <<~MESSAGE
47
+ <details><summary>Coverage breakdown</summary>
48
+
49
+ #{general_results.map do |name, group|
50
+ "- **#{name}**: #{format_group(group)}"
51
+ end.join("\n")}
52
+
53
+ </details>
54
+ MESSAGE
55
+ end
56
+
57
+ if ENV['BUILDKITE']
58
+ system 'buildkite-agent',
59
+ 'annotate',
60
+ '--context', annotation_context,
61
+ '--style', 'info',
62
+ message
17
63
  else
18
64
  puts message
19
65
  end
@@ -21,12 +67,63 @@ module SimpleCov::Buildkite
21
67
 
22
68
  private
23
69
 
24
- def format_element(element)
25
- "#{element.covered_percent.round(2)}% coverage: #{format_integer(element.covered_lines)} of #{format_integer(element.covered_lines + element.missed_lines)} lines"
70
+ def annotation_title
71
+ ENV.fetch("SIMPLECOV_BUILDKITE_TITLE", "Coverage")
72
+ end
73
+
74
+ def annotation_context
75
+ Shellwords.shellescape(ENV.fetch("SIMPLECOV_BUILDKITE_CONTEXT", "simplecov"))
76
+ end
77
+
78
+ def ignore_empty_groups(groups)
79
+ groups.select do |_name, group|
80
+ (group.covered_lines + group.missed_lines).positive?
81
+ end
82
+ end
83
+
84
+ def filter_git_groups(groups)
85
+ groups.each_with_object(git: {}, general: {}) do |unzipped_group, cats|
86
+ name, group = unzipped_group
87
+
88
+ if name.match? GIT_ANNOTATION_FORMAT_REGEX
89
+ cats[:git][name] = group
90
+ else
91
+ cats[:general][name] = group
92
+ end
93
+ end
26
94
  end
27
95
 
28
96
  def format_integer(integer)
29
- integer.to_s.gsub(/(\d)(?=(\d\d\d)+(?!\d))/, "\\1,")
97
+ Kernel.format('%<integer>d', integer: integer).gsub(/(\d)(?=(\d\d\d)+(?!\d))/, "\\1,")
98
+ end
99
+
100
+ def format_float(float)
101
+ Kernel.format('%<floored_float>g', floored_float: float.floor(2))
102
+ end
103
+
104
+ def format_as_metric(name, element, changeset: nil)
105
+ metric = <<~METRIC_HEADER
106
+ <div class="m2"><dt#{changeset.nil? ? '' : " title=\"#{changeset}\""}>#{name}</dt><dd>
107
+ METRIC_HEADER
108
+
109
+ metric += <<~METRIC_VALUE
110
+
111
+ **<span class="h2 regular">#{format_float(element.covered_percent)}</span>%**
112
+ #{format_line_count(element)}
113
+
114
+ METRIC_VALUE
115
+
116
+ metric += <<~METRIC_FOOTER
117
+ </dd></div>
118
+ METRIC_FOOTER
119
+ end
120
+
121
+ def format_group(element)
122
+ "#{format_float(element.covered_percent)}% coverage: #{format_line_count(element)}"
123
+ end
124
+
125
+ def format_line_count(element)
126
+ "#{format_integer(element.covered_lines)} of #{format_integer(element.covered_lines + element.missed_lines)} lines"
30
127
  end
31
128
  end
32
129
  end
@@ -0,0 +1,115 @@
1
+ # frozen_string_literal: true
2
+
3
+ module SimpleCov::Buildkite::Profiles
4
+ def self.run(*args)
5
+ IO.popen(args, &:read).tap do
6
+ $?.success? or fail("Command exited with status #{$?.exitstatus}: #{args.join(" ")}")
7
+ end.chomp
8
+ end
9
+
10
+ def self.git(*args)
11
+ run 'git',
12
+ *args
13
+ end
14
+
15
+ def self.git_diff_names(*args, diff_filter: '')
16
+ git('diff',
17
+ '--name-only',
18
+ "--diff-filter=#{diff_filter}",
19
+ *args).split "\n"
20
+ end
21
+
22
+ def self.git_short_commit(commit)
23
+ git 'rev-parse',
24
+ '--short',
25
+ commit
26
+ end
27
+
28
+ def self.git_merge_base(*refs)
29
+ git 'merge-base',
30
+ *refs
31
+ end
32
+
33
+ SimpleCov.profiles.define 'buildkite' do
34
+ STDERR.puts 'SimpleCov::Buildkite profile initialising...'
35
+ fail('Not running on Buildkite') unless ENV['BUILDKITE'] == 'true'
36
+
37
+ branch_name = ENV['BUILDKITE_BRANCH']
38
+
39
+ STDERR.puts "branch_name=#{branch_name}"
40
+
41
+ base_branch_name = ENV['BUILDKITE_PULL_REQUEST_BASE_BRANCH']
42
+ if base_branch_name.nil? || base_branch_name.empty?
43
+ base_branch_name = ENV['BUILDKITE_PIPELINE_DEFAULT_BRANCH']
44
+ end
45
+
46
+ STDERR.puts "base_branch_name=#{base_branch_name}"
47
+
48
+ current_commit = ENV['BUILDKITE_COMMIT']
49
+
50
+ STDERR.puts "current_commit=#{current_commit}"
51
+
52
+ current_commit_short = git_short_commit(current_commit)
53
+
54
+ STDERR.puts "current_commit_short=#{current_commit_short}"
55
+
56
+ changed_files_in_commit = git_diff_names(current_commit,
57
+ diff_filter: 'd')
58
+
59
+ STDERR.puts "changed_files_in_commit.count=#{changed_files_in_commit.count}"
60
+
61
+ add_group "Files changed in #{current_commit_short}" do |tested_file|
62
+ changed_files_in_commit.detect do |changed_file|
63
+ tested_file.filename.end_with?(changed_file)
64
+ end
65
+ end
66
+
67
+ added_files_in_commit = git_diff_names(current_commit,
68
+ diff_filter: 'A')
69
+
70
+ STDERR.puts "added_files_in_commit.count=#{added_files_in_commit.count}"
71
+
72
+ add_group "Files added in #{current_commit_short}" do |tested_file|
73
+ added_files_in_commit.detect do |added_file|
74
+ tested_file.filename.end_with?(added_file)
75
+ end
76
+ end
77
+
78
+ # Compare with the base branch if it's not this branch
79
+ if base_branch_name && base_branch_name != branch_name
80
+ merge_base = git_merge_base(current_commit,
81
+ base_branch_name)
82
+
83
+ merge_base_short = git_short_commit(merge_base)
84
+
85
+ STDERR.puts "merge_base=#{merge_base}"
86
+ STDERR.puts "merge_base_short=#{merge_base_short}"
87
+
88
+ changed_files_in_branch = git_diff_names(merge_base,
89
+ current_commit,
90
+ diff_filter: 'd')
91
+
92
+ STDERR.puts "changed_files_in_branch.count=#{changed_files_in_branch.count}"
93
+
94
+ add_group "Files changed in #{merge_base_short}...#{current_commit_short}" do |tested_file|
95
+ changed_files_in_branch.detect do |changed_file|
96
+ tested_file.filename.end_with?(changed_file)
97
+ end
98
+ end
99
+
100
+ added_files_in_branch = git_diff_names(merge_base,
101
+ current_commit,
102
+ diff_filter: 'A')
103
+
104
+ STDERR.puts "added_files_in_branch.count=#{added_files_in_branch.count}"
105
+
106
+ add_group "Files added in #{merge_base_short}...#{current_commit_short}" do |tested_file|
107
+ added_files_in_branch.detect do |added_file|
108
+ tested_file.filename.end_with?(added_file)
109
+ end
110
+ end
111
+ end
112
+ rescue RuntimeError => error
113
+ STDERR.puts error
114
+ end
115
+ end
@@ -1,3 +1,3 @@
1
1
  module SimpleCov::Buildkite
2
- VERSION = "0.1.1"
2
+ VERSION = "0.3.0"
3
3
  end
@@ -5,3 +5,4 @@ end
5
5
 
6
6
  require "simplecov/buildkite/version"
7
7
  require "simplecov/buildkite/annotation_formatter"
8
+ require "simplecov/buildkite/profiles"
metadata CHANGED
@@ -1,35 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: simplecov-buildkite
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
- - Jessica Stokes
8
- - Samuel Cochran
9
- autorequire:
7
+ - Buildkite
8
+ autorequire:
10
9
  bindir: bin
11
- cert_chain:
12
- - |
13
- -----BEGIN CERTIFICATE-----
14
- MIIDKDCCAhCgAwIBAgIBBTANBgkqhkiG9w0BAQUFADA6MQ0wCwYDVQQDDARzajI2
15
- MRQwEgYKCZImiZPyLGQBGRYEc2oyNjETMBEGCgmSJomT8ixkARkWA2NvbTAeFw0x
16
- NzA3MzEwNTQ3MDVaFw0xODA3MzEwNTQ3MDVaMDoxDTALBgNVBAMMBHNqMjYxFDAS
17
- BgoJkiaJk/IsZAEZFgRzajI2MRMwEQYKCZImiZPyLGQBGRYDY29tMIIBIjANBgkq
18
- hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsr60Eo/ttCk8GMTMFiPr3GoYMIMFvLak
19
- xSmTk9YGCB6UiEePB4THSSA5w6IPyeaCF/nWkDp3/BAam0eZMWG1IzYQB23TqIM0
20
- 1xzcNRvFsn0aQoQ00k+sj+G83j3T5OOV5OZIlu8xAChMkQmiPd1NXc6uFv+Iacz7
21
- kj+CMsI9YUFdNoU09QY0b+u+Rb6wDYdpyvN60YC30h0h1MeYbvYZJx/iZK4XY5zu
22
- 4O/FL2ChjL2CPCpLZW55ShYyrzphWJwLOJe+FJ/ZBl6YXwrzQM9HKnt4titSNvyU
23
- KzE3L63A3PZvExzLrN9u09kuWLLJfXB2sGOlw3n9t72rJiuBr3/OQQIDAQABozkw
24
- NzAJBgNVHRMEAjAAMAsGA1UdDwQEAwIEsDAdBgNVHQ4EFgQU99dfRjEKFyczTeIz
25
- m3ZsDWrNC80wDQYJKoZIhvcNAQEFBQADggEBADGiXpvK754s0zTFx3y31ZRDdvAI
26
- lA209JIjUlDyr9ptCRadihyfF2l9/hb+hLemiPEYppzG6vEK1TIyzbAR36yOJ8CX
27
- 4vPkCXLuwHhs6UIRbwN+IEy41nsIlBxmjLYei8h3t/G2Vm2oOaLdbjDXS+Srl9U8
28
- shsE8ft81PxSQfzEL7Mr9cC9XvWbHW+SyTpfGm8rAtaqZkNeke4U8a0di4oz2EfA
29
- P4lSfmXxsd1C71ckIp0cyXkPhyTtpyS/5hq9HhuUNzEHkSDe36/Rd1xYKV5JxMC2
30
- YAttWFUs06lor2q1wwncPaMtUtbWwW35+1IV6xhs2rFY6DD/I6ZkK3GnHdY=
31
- -----END CERTIFICATE-----
32
- date: 2018-05-30 00:00:00.000000000 Z
10
+ cert_chain: []
11
+ date: 2024-01-10 00:00:00.000000000 Z
33
12
  dependencies:
34
13
  - !ruby/object:Gem::Dependency
35
14
  name: simplecov
@@ -49,30 +28,30 @@ dependencies:
49
28
  name: bundler
50
29
  requirement: !ruby/object:Gem::Requirement
51
30
  requirements:
52
- - - "~>"
31
+ - - ">="
53
32
  - !ruby/object:Gem::Version
54
- version: '1.16'
33
+ version: '0'
55
34
  type: :development
56
35
  prerelease: false
57
36
  version_requirements: !ruby/object:Gem::Requirement
58
37
  requirements:
59
- - - "~>"
38
+ - - ">="
60
39
  - !ruby/object:Gem::Version
61
- version: '1.16'
40
+ version: '0'
62
41
  - !ruby/object:Gem::Dependency
63
42
  name: rake
64
43
  requirement: !ruby/object:Gem::Requirement
65
44
  requirements:
66
45
  - - "~>"
67
46
  - !ruby/object:Gem::Version
68
- version: '10.0'
47
+ version: '13.0'
69
48
  type: :development
70
49
  prerelease: false
71
50
  version_requirements: !ruby/object:Gem::Requirement
72
51
  requirements:
73
52
  - - "~>"
74
53
  - !ruby/object:Gem::Version
75
- version: '10.0'
54
+ version: '13.0'
76
55
  - !ruby/object:Gem::Dependency
77
56
  name: rspec
78
57
  requirement: !ruby/object:Gem::Requirement
@@ -87,10 +66,9 @@ dependencies:
87
66
  - - "~>"
88
67
  - !ruby/object:Gem::Version
89
68
  version: '3.0'
90
- description:
69
+ description:
91
70
  email:
92
- - hello@jessicastokes.net
93
- - sj26@sj26.com
71
+ - support@buildkite.com
94
72
  executables: []
95
73
  extensions: []
96
74
  extra_rdoc_files: []
@@ -102,13 +80,14 @@ files:
102
80
  - lib/simplecov-buildkite.rb
103
81
  - lib/simplecov/buildkite.rb
104
82
  - lib/simplecov/buildkite/annotation_formatter.rb
83
+ - lib/simplecov/buildkite/profiles.rb
105
84
  - lib/simplecov/buildkite/version.rb
106
85
  homepage: https://github.com/ticky/simplecov-buildkite
107
86
  licenses:
108
87
  - MIT
109
88
  metadata:
110
89
  changelog_uri: https://github.com/ticky/simplecov-buildkite/blob/master/CHANGELOG.md
111
- post_install_message:
90
+ post_install_message:
112
91
  rdoc_options: []
113
92
  require_paths:
114
93
  - lib
@@ -123,9 +102,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
123
102
  - !ruby/object:Gem::Version
124
103
  version: '0'
125
104
  requirements: []
126
- rubyforge_project:
127
- rubygems_version: 2.7.7
128
- signing_key:
105
+ rubygems_version: 3.5.3
106
+ signing_key:
129
107
  specification_version: 4
130
108
  summary: Generate SimpleCov reports for your parallel Buildkite builds
131
109
  test_files: []
checksums.yaml.gz.sig DELETED
@@ -1,2 +0,0 @@
1
- et�b���TB�=��Ø[�+x��;X�*C��^6�'J3����X��������x���$g��06q-��}^�e8 �@W& "�0� q��ϰ9��N| �Fk��*qN��q��Q������M��axؤ#���wG�J��jf�q��9��/�ؕ����0��6v�(�w!,�A���M�Z,� V)
2
- rn�j������TG?���/v��GJ�E6�8�X/"F~c\S����P�S��&�
data.tar.gz.sig DELETED
Binary file
metadata.gz.sig DELETED
@@ -1,2 +0,0 @@
1
- b'��2�+V��U j��\�S��l�-�M_SxfF�-�/8�?�0��e�i!��4���i|�t&K-s�;F���������rg'�B>|<�
2
- ���ʰ��C%K�07��z��G�B��)<~<�y���.cND��6`SM���?j��s��?�h7�r�r�k��),�˓���x�v(��i�V���<(@k����ݹ�̣��>.��жl���nc_b�>�EJ�D�{m#