coverband 5.2.6.rc.6 → 6.0.0
Sign up to get free protection for your applications and to get access to all the features.
- 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:
|