coverband 5.2.6.rc.6 → 6.0.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/.github/workflows/main.yml +1 -0
- data/Gemfile.rails6.0 +10 -0
- data/Gemfile.rails6.1 +10 -0
- data/Gemfile.rails7.0 +10 -0
- data/Gemfile.rails7.1 +10 -0
- data/README.md +1 -1
- data/changes.md +8 -0
- data/coverband.gemspec +4 -2
- data/lib/coverband/adapters/web_service_store.rb +2 -2
- data/lib/coverband/collectors/view_tracker_service.rb +1 -1
- data/lib/coverband/reporters/web.rb +3 -3
- data/lib/coverband/utils/rails6_ext.rb +3 -3
- data/lib/coverband/utils/tasks.rb +9 -0
- data/lib/coverband/version.rb +1 -1
- data/test/coverband/integrations/background_middleware_test.rb +1 -1
- data/test/coverband/integrations/report_middleware_test.rb +1 -1
- data/test/fake_app/basic_rack.rb +1 -1
- metadata +12 -22
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 49c21ff66d025758b2d3edca8a16bd3863aad9ad38df0f084fd5171e5fb2243d
|
4
|
+
data.tar.gz: 1428dcab49562e2d244e466c06c60e5259a10c3191dd712d8c011ab95e454975
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9638310cb885222da8e13e4246f13935621be71f1ab5c92a6f7f13e1c3514053575c4ac1a3dcb681785ddd52c3b3d56e67b3f27e02bfc5cc24863799aaba4837
|
7
|
+
data.tar.gz: d21c5595168eb920f73176b6e4a2edf1b145c37d9abf138e296a921c86d8603b274166fea358d61a8df2b592e6349104833e7c8ff7a45b02f776feba5868a559
|
data/.github/workflows/main.yml
CHANGED
@@ -19,6 +19,7 @@ jobs:
|
|
19
19
|
# truffleruby,
|
20
20
|
# truffleruby-head,
|
21
21
|
# removing jruby again to flaky
|
22
|
+
gemfile: [ Gemfile.rails6.0, Gemfile.rails6.1, Gemfile.rails7.0, Gemfile.rails7.1 ]
|
22
23
|
# ruby: [2.3, 2.4, 2.5, 2.6, 2.7, "3.0", "3.1", jruby]
|
23
24
|
# need to add support for multiple gemfiles
|
24
25
|
ruby: ["2.7", "3.0", "3.1", "3.2"]
|
data/Gemfile.rails6.0
ADDED
data/Gemfile.rails6.1
ADDED
data/Gemfile.rails7.0
ADDED
data/Gemfile.rails7.1
ADDED
data/README.md
CHANGED
@@ -407,7 +407,7 @@ If you submit a change please make sure the tests and benchmarks are passing.
|
|
407
407
|
|
408
408
|
- run tests:
|
409
409
|
- `bundle exec rake`
|
410
|
-
- `BUNDLE_GEMFILE=Gemfile.
|
410
|
+
- `BUNDLE_GEMFILE=Gemfile.rails7 bundle exec rake` (Same tests using rails 7 instead of 6)
|
411
411
|
- view test coverage: `open coverage/index.html`
|
412
412
|
- run the benchmarks before and after your change to see impact
|
413
413
|
- `rake benchmarks`
|
data/changes.md
CHANGED
@@ -1,3 +1,11 @@
|
|
1
|
+
### Coverband 6.0.0
|
2
|
+
|
3
|
+
__NOTE: I ended up having 5.2.6 in various RCs for a long time, mostly because I had some breaking changes that were related to dropping support for old versions of Ruby and Rails__
|
4
|
+
|
5
|
+
* The 6.0.0 release is all that was the 6 different RC releases of 5.2.6
|
6
|
+
* Added Rails test matrix to github actions to test on all the supported versions
|
7
|
+
- Rails: 6.0.x, 6.1.x, 7.0.x, 7.1.x
|
8
|
+
|
1
9
|
### Coverband 5.2.6
|
2
10
|
|
3
11
|
__NOTE: the current RCs include below, but this might turn into coverband 6.0__
|
data/coverband.gemspec
CHANGED
@@ -35,7 +35,8 @@ Gem::Specification.new do |spec|
|
|
35
35
|
spec.add_development_dependency "capybara"
|
36
36
|
spec.add_development_dependency "m"
|
37
37
|
spec.add_development_dependency "memory_profiler"
|
38
|
-
|
38
|
+
# breaking change in minitest and mocha
|
39
|
+
spec.add_development_dependency "minitest", "= 5.18.1"
|
39
40
|
spec.add_development_dependency "minitest-fork_executor"
|
40
41
|
spec.add_development_dependency "minitest-stub-const"
|
41
42
|
spec.add_development_dependency "mocha", "~> 1.7.0"
|
@@ -47,7 +48,8 @@ Gem::Specification.new do |spec|
|
|
47
48
|
spec.add_development_dependency "standardrb"
|
48
49
|
|
49
50
|
spec.add_development_dependency "coveralls"
|
50
|
-
|
51
|
+
# minitest-profile is not compatible with Rails 7.1.0 setup... dropping it for now
|
52
|
+
# spec.add_development_dependency "minitest-profile"
|
51
53
|
spec.add_development_dependency "webmock"
|
52
54
|
|
53
55
|
# TODO: Remove when other production adapters exist
|
@@ -51,7 +51,7 @@ module Coverband
|
|
51
51
|
local_type ||= opts.key?(:override_type) ? opts[:override_type] : type
|
52
52
|
env_filter = opts.key?(:env_filter) ? opts[:env_filter] : "production"
|
53
53
|
uri = URI("#{coverband_url}/api/coverage?type=#{local_type}&env_filter=#{env_filter}")
|
54
|
-
req = Net::HTTP::Get.new(uri, "
|
54
|
+
req = Net::HTTP::Get.new(uri, "content-type" => "application/json", "Coverband-Token" => Coverband.configuration.api_key)
|
55
55
|
res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == "https") do |http|
|
56
56
|
http.request(req)
|
57
57
|
end
|
@@ -133,7 +133,7 @@ module Coverband
|
|
133
133
|
|
134
134
|
def send_report_body(coverage_body)
|
135
135
|
uri = URI("#{coverband_url}/api/collector")
|
136
|
-
req = ::Net::HTTP::Post.new(uri, "
|
136
|
+
req = ::Net::HTTP::Post.new(uri, "content-type" => "application/json", "Coverband-Token" => Coverband.configuration.api_key)
|
137
137
|
req.body = coverage_body
|
138
138
|
logger&.info "Coverband: saving (#{uri}) #{req.body}" if Coverband.configuration.verbose
|
139
139
|
res = ::Net::HTTP.start(
|
@@ -35,7 +35,7 @@ module Coverband
|
|
35
35
|
|
36
36
|
def save_tracked_views(views:, reported_time:)
|
37
37
|
uri = URI("#{Coverband.configuration.service_url}/api/collector")
|
38
|
-
req = Net::HTTP::Post.new(uri, "
|
38
|
+
req = Net::HTTP::Post.new(uri, "content-type" => "application/json", "Coverband-Token" => Coverband.configuration.api_key)
|
39
39
|
data = {
|
40
40
|
collection_type: "view_tracker_delta",
|
41
41
|
collection_data: {
|
@@ -66,7 +66,7 @@ module Coverband
|
|
66
66
|
elsif request_path_info =~ %r{\/clear_.*}
|
67
67
|
return clear_abstract_tracking(tracker)
|
68
68
|
else
|
69
|
-
return [200, {"
|
69
|
+
return [200, {"content-type" => "text/html"}, [display_abstract_tracker(tracker)]]
|
70
70
|
end
|
71
71
|
end
|
72
72
|
end
|
@@ -203,9 +203,9 @@ module Coverband
|
|
203
203
|
|
204
204
|
def coverband_headers(content_type: "text/html")
|
205
205
|
web_headers = {
|
206
|
-
"
|
206
|
+
"content-type" => content_type
|
207
207
|
}
|
208
|
-
web_headers["
|
208
|
+
web_headers["content-security-policy-report-only"] = CSP_HEADER if Coverband.configuration.csp_policy
|
209
209
|
web_headers
|
210
210
|
end
|
211
211
|
|
@@ -46,9 +46,9 @@ module ActionDispatch
|
|
46
46
|
body = ""
|
47
47
|
|
48
48
|
headers = {
|
49
|
-
"
|
50
|
-
"
|
51
|
-
"
|
49
|
+
"location" => uri.to_s,
|
50
|
+
"content-type" => "text/html",
|
51
|
+
"content-length" => body.length.to_s
|
52
52
|
}
|
53
53
|
|
54
54
|
ActionDispatch::Response.new(status, headers, body)
|
@@ -46,6 +46,15 @@ namespace :coverband do
|
|
46
46
|
Coverband.configuration.store.clear!
|
47
47
|
end
|
48
48
|
|
49
|
+
###
|
50
|
+
# clear all coverband trackers data
|
51
|
+
###
|
52
|
+
desc "reset Coverband trackers data (view, routes, translations, etc), helpful for development, debugging, etc"
|
53
|
+
task :clear_tracker do
|
54
|
+
trackers = Coverband.configuration.trackers
|
55
|
+
trackers.each(&:reset_recordings)
|
56
|
+
end
|
57
|
+
|
49
58
|
###
|
50
59
|
# Updates the data in the coverband store from one format to another
|
51
60
|
###
|
data/lib/coverband/version.rb
CHANGED
data/test/fake_app/basic_rack.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: coverband
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 6.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Dan Mayer
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2023-
|
12
|
+
date: 2023-10-29 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: benchmark-ips
|
@@ -71,16 +71,16 @@ dependencies:
|
|
71
71
|
name: minitest
|
72
72
|
requirement: !ruby/object:Gem::Requirement
|
73
73
|
requirements:
|
74
|
-
- -
|
74
|
+
- - '='
|
75
75
|
- !ruby/object:Gem::Version
|
76
|
-
version:
|
76
|
+
version: 5.18.1
|
77
77
|
type: :development
|
78
78
|
prerelease: false
|
79
79
|
version_requirements: !ruby/object:Gem::Requirement
|
80
80
|
requirements:
|
81
|
-
- -
|
81
|
+
- - '='
|
82
82
|
- !ruby/object:Gem::Version
|
83
|
-
version:
|
83
|
+
version: 5.18.1
|
84
84
|
- !ruby/object:Gem::Dependency
|
85
85
|
name: minitest-fork_executor
|
86
86
|
requirement: !ruby/object:Gem::Requirement
|
@@ -221,20 +221,6 @@ dependencies:
|
|
221
221
|
- - ">="
|
222
222
|
- !ruby/object:Gem::Version
|
223
223
|
version: '0'
|
224
|
-
- !ruby/object:Gem::Dependency
|
225
|
-
name: minitest-profile
|
226
|
-
requirement: !ruby/object:Gem::Requirement
|
227
|
-
requirements:
|
228
|
-
- - ">="
|
229
|
-
- !ruby/object:Gem::Version
|
230
|
-
version: '0'
|
231
|
-
type: :development
|
232
|
-
prerelease: false
|
233
|
-
version_requirements: !ruby/object:Gem::Requirement
|
234
|
-
requirements:
|
235
|
-
- - ">="
|
236
|
-
- !ruby/object:Gem::Version
|
237
|
-
version: '0'
|
238
224
|
- !ruby/object:Gem::Dependency
|
239
225
|
name: webmock
|
240
226
|
requirement: !ruby/object:Gem::Requirement
|
@@ -280,7 +266,11 @@ files:
|
|
280
266
|
- CODE_OF_CONDUCT.md
|
281
267
|
- CONTRIBUTING.md
|
282
268
|
- Gemfile
|
269
|
+
- Gemfile.rails6.0
|
270
|
+
- Gemfile.rails6.1
|
283
271
|
- Gemfile.rails7
|
272
|
+
- Gemfile.rails7.0
|
273
|
+
- Gemfile.rails7.1
|
284
274
|
- LICENSE
|
285
275
|
- LICENSE.txt
|
286
276
|
- README.md
|
@@ -519,9 +509,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
519
509
|
version: '2.3'
|
520
510
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
521
511
|
requirements:
|
522
|
-
- - "
|
512
|
+
- - ">="
|
523
513
|
- !ruby/object:Gem::Version
|
524
|
-
version:
|
514
|
+
version: '0'
|
525
515
|
requirements: []
|
526
516
|
rubygems_version: 3.2.32
|
527
517
|
signing_key:
|