simplecov 0.16.1 → 0.21.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (50) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGELOG.md +107 -407
  3. data/README.md +378 -126
  4. data/doc/alternate-formatters.md +21 -1
  5. data/doc/commercial-services.md +5 -0
  6. data/lib/minitest/simplecov_plugin.rb +15 -0
  7. data/lib/simplecov/combine/branches_combiner.rb +32 -0
  8. data/lib/simplecov/combine/files_combiner.rb +24 -0
  9. data/lib/simplecov/combine/lines_combiner.rb +43 -0
  10. data/lib/simplecov/combine/results_combiner.rb +60 -0
  11. data/lib/simplecov/combine.rb +30 -0
  12. data/lib/simplecov/command_guesser.rb +6 -3
  13. data/lib/simplecov/configuration.rb +191 -15
  14. data/lib/simplecov/coverage_statistics.rb +56 -0
  15. data/lib/simplecov/default_formatter.rb +20 -0
  16. data/lib/simplecov/defaults.rb +15 -12
  17. data/lib/simplecov/exit_codes/exit_code_handling.rb +29 -0
  18. data/lib/simplecov/exit_codes/maximum_coverage_drop_check.rb +83 -0
  19. data/lib/simplecov/exit_codes/minimum_coverage_by_file_check.rb +54 -0
  20. data/lib/simplecov/exit_codes/minimum_overall_coverage_check.rb +53 -0
  21. data/lib/simplecov/exit_codes.rb +5 -0
  22. data/lib/simplecov/file_list.rb +72 -13
  23. data/lib/simplecov/filter.rb +9 -6
  24. data/lib/simplecov/formatter/multi_formatter.rb +5 -7
  25. data/lib/simplecov/formatter/simple_formatter.rb +4 -4
  26. data/lib/simplecov/formatter.rb +2 -2
  27. data/lib/simplecov/last_run.rb +3 -1
  28. data/lib/simplecov/lines_classifier.rb +5 -5
  29. data/lib/simplecov/no_defaults.rb +1 -1
  30. data/lib/simplecov/process.rb +19 -0
  31. data/lib/simplecov/profiles/hidden_filter.rb +5 -0
  32. data/lib/simplecov/profiles/rails.rb +1 -1
  33. data/lib/simplecov/profiles.rb +9 -7
  34. data/lib/simplecov/result.rb +18 -12
  35. data/lib/simplecov/result_adapter.rb +30 -0
  36. data/lib/simplecov/result_merger.rb +130 -59
  37. data/lib/simplecov/simulate_coverage.rb +29 -0
  38. data/lib/simplecov/source_file/branch.rb +84 -0
  39. data/lib/simplecov/source_file/line.rb +72 -0
  40. data/lib/simplecov/source_file.rb +273 -127
  41. data/lib/simplecov/useless_results_remover.rb +18 -0
  42. data/lib/simplecov/version.rb +1 -1
  43. data/lib/simplecov.rb +308 -121
  44. metadata +45 -47
  45. data/CONTRIBUTING.md +0 -51
  46. data/ISSUE_TEMPLATE.md +0 -23
  47. data/lib/simplecov/jruby_fix.rb +0 -44
  48. data/lib/simplecov/railtie.rb +0 -9
  49. data/lib/simplecov/railties/tasks.rake +0 -13
  50. data/lib/simplecov/raw_coverage.rb +0 -41
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 340ec350009dc4d27081bccbe681b30a6dfbe03f
4
- data.tar.gz: 5eedaa4adbf5662d5dc6bf43f9d4965c2e135eeb
2
+ SHA256:
3
+ metadata.gz: 4e5385d84c9f26fc48afe9fb5b4883d431a7f346c116ea21ca7b65a744e19db8
4
+ data.tar.gz: 78f2089648f1167fac351d819c7eb7579ae4a4cae323882a2b56f245481296e7
5
5
  SHA512:
6
- metadata.gz: 80b657d9ebef95e175be573adb3abec9946352eb8d6bbb1408f6fcafc890ef4f260f76abcfd13389d3367efed1c517b56d9f2041783eb41548b7ad663a4138e0
7
- data.tar.gz: d5747876139d624da59057ec9c212ea459c0e288a0fcf4ef45228efc0683c9f4479488e2e4063d9cf2ca6eeb38a38feb3fdf6a7f52ba02b43faa7f62d1774623
6
+ metadata.gz: 071375d821a918217c1318bca354dde933d04c572761c247ecb77f976b8085a489d3dfe7463994b88705685f1c0f5d1e7861d79df0f949935982f45e342ad862
7
+ data.tar.gz: ca85cde65a7f2f6987be16d542e571312cd763f6fadca1ebcc1f44be7a7fc70f7375ba79a3afe44c893f4db118fd6e6ef81292e858f962647df19defa80f0ebc
data/CHANGELOG.md CHANGED
@@ -1,481 +1,181 @@
1
- 0.16.1 (2018-03-16)
2
- ===================
3
-
4
- ## Bugfixes
5
-
6
- * Include the LICENSE in the distributed gem again (accidentally removed in 0.16.0). (thanks @tas50)
7
-
8
- 0.16.0 (2018-03-15)
9
- ===================
10
-
11
- ## Enhancements
12
-
13
- * Relax version constraint on `docile`, per SemVer
14
- * exception that occurred on exit is available as `exit_exception`! See [#639](https://github.com/colszowka/simplecov/pull/639) (thanks @thomas07vt)
15
- * Performance: processing results now runs from 2.5x to 3.75x faster. See [#662](https://github.com/colszowka/simplecov/pull/662) (thanks @BMorearty & @eregon)
16
- * Decrease gem size by only shipping lib and docs
1
+ 0.21.2 (2021-01-09)
2
+ ==========
17
3
 
18
4
  ## Bugfixes
5
+ * `maximum_coverage_drop` won't fail any more if `.last_run.json` is still in the old format. Thanks [@petertellgren](https://github.com/petertellgren)
6
+ * `maximum_coverage_drop` won't fail if an expectation is specified for a previous unrecorded criterion, it will just pass (there's nothing, so nothing to drop)
7
+ * fixed bug in `maximum_coverage_drop` calculation that could falsely report it had dropped for minimal differences
19
8
 
20
- * (breaking) Stop handling string filters as regular expressions, use the dedicated regex filter if you need that behaviour. See [#616](https://github.com/colszowka/simplecov/pull/616) (thanks @yujinakayama)
21
- * Avoid overwriting the last coverage results on unsuccessful test runs. See [#625](https://github.com/colszowka/simplecov/pull/625) (thanks @thomas07vt)
22
- * Don't crash on invalid UTF-8 byte sequences. (thanks @BMorearty)
23
-
24
- 0.15.1 (2017-09-11) ([changes](https://github.com/colszowka/simplecov/compare/v0.15.0...v0.15.1))
25
- =======
9
+ 0.21.1 (2021-01-04)
10
+ ==========
26
11
 
27
12
  ## Bugfixes
13
+ * `minimum_coverage_by_file` works again as expected (errored out before 😱)
28
14
 
29
- * Filter directories outside SimpleCov.root that have it as a prefix. See [#617](https://github.com/colszowka/simplecov/pull/617) (thanks @jenseng)
30
- * Fix standard rails profile rails filter (didn't work). See [#618](https://github.com/colszowka/simplecov/pull/618) (thanks @jenseng again!)
15
+ 0.21.0 (2021-01-03)
16
+ ==========
31
17
 
32
- 0.15.0 (2017-08-14) ([changes](https://github.com/colszowka/simplecov/compare/v0.14.1...v0.15.0))
33
- =======
18
+ The "Collate++" release making it more viable for big CI setups by limiting memory consumption. Also includes some nice new additions for branch coverage settings.
34
19
 
35
20
  ## Enhancements
21
+ * Performance of `SimpleCov.collate` improved - it should both run faster and consume much less memory esp. when run with many files (memory consumption should not increase with number of files any more)
22
+ * Can now define the minimum_coverage_by_file, maximum_coverage_drop and refuse_coverage_drop by branch as well as line coverage. Thanks to [@jemmaissroff](https://github.com/jemmaissroff)
23
+ * Can set primary coverage to something other than line by setting `primary_coverage :branch` in SimpleCov Configuration. Thanks to [@jemmaissroff](https://github.com/jemmaissroff)
36
24
 
37
- * Ability to use regex filters for removing files from the output. See [#589](https://github.com/colszowka/simplecov/pull/589) (thanks @jsteel)
38
-
39
- ## Bugfixes
40
-
41
- * Fix merging race condition when running tests in parallel and merging them. See [#570](https://github.com/colszowka/simplecov/pull/570) (thanks @jenseng)
42
- * Fix relevant lines for unloaded files - comments, skipped code etc. are correctly classified as irrelevant. See [#605](https://github.com/colszowka/simplecov/pull/605) (thanks @odlp)
43
- * Allow using simplecov with frozen-string-literals enabled. See [#590](https://github.com/colszowka/simplecov/pull/590) (thanks @pat)
44
- * Make sure Array Filter can use all other filter types. See [#589](https://github.com/colszowka/simplecov/pull/589) (thanks @jsteel)
45
- * Make sure file names use `Simplecov.root` as base avoiding using full absolute project paths. See [#589](https://github.com/colszowka/simplecov/pull/589) (thanks @jsteel)
25
+ ## Misc
26
+ * reduce gem size by splitting Changelog into `Changelog.md` and a pre 0.18 `Changelog.old.md`, the latter of which is not included in the gem
27
+ * The interface of `ResultMeger.merge_and_store` is changed to support the `collate` performance improvements mentioned above. It's not considered an official API, hence this is not in the breaking section. For people using it to merge results from different machines, it's recommended to migrate to [collate](https://github.com/simplecov-ruby/simplecov#merging-test-runs-under-different-execution-environments).
46
28
 
47
- 0.14.1 2017-03-18 ([changes](https://github.com/colszowka/simplecov/compare/v0.14.0...v0.14.1))
48
- ========
49
-
50
- ## Bugfixes
51
-
52
- * Files that were skipped as a whole/had no relevant coverage could lead to Float errors. See [#564](https://github.com/colszowka/simplecov/pull/564) (thanks to @stevehanson for the report in [#563](https://github.com/colszowka/simplecov/issues/563))
53
-
54
- 0.14.0 2017-03-15 ([changes](https://github.com/colszowka/simplecov/compare/v0.13.0...v0.14.0))
29
+ 0.20.0 (2020-11-29)
55
30
  ==========
56
31
 
32
+ The "JSON formatter" release. Starting now a JSON formatter is included by default in the release. This is mostly done for Code Climate reasons, you can find more details [in this issue](https://github.com/codeclimate/test-reporter/issues/413).
33
+ Shipping with so much by default is sub-optimal, we know. It's the long term plan to also provide `simplecov-core` without the HTML or JSON formatters for those who don't need them/for other formatters to rely on.
34
+
57
35
  ## Enhancements
36
+ * `simplecov_json_formatter` included by default ([docs](https://github.com/simplecov-ruby/simplecov#json-formatter)), this should enable the Code Climate test reporter to work again once it's updated
37
+ * invalidate internal cache after switching `SimpleCov.root`, should help with some bugs
58
38
 
59
- * Officially support JRuby 9.1+ going forward (should also work with previous releases). See [#547](https://github.com/colszowka/simplecov/pull/547) (ping @PragTob when encountering issues)
60
- * Add Channel group to Rails profile, when `ActionCable` is loaded. See [#492](https://github.com/colszowka/simplecov/pull/492) (thanks @BenMorganIO)
61
- * Stop `extend`ing instances of `Array` and `Hash` during merging results avoiding problems frozen results while manually merging results. See [#558](https://github.com/colszowka/simplecov/pull/558) (thanks @aroben)
39
+ 0.19.1 (2020-10-25)
40
+ ==========
62
41
 
63
42
  ## Bugfixes
64
43
 
65
- * Fix parallel_tests when a thread ends up running no tests. See [#533](https://github.com/colszowka/simplecov/pull/533) (thanks @cshaffer)
66
- * Skip the `:nocov:` comments along with the code that they skip. See [#551](https://github.com/colszowka/simplecov/pull/551) (thanks @ebiven)
67
- * Fix crash when Home environment variable is unset. See [#482](https://github.com/colszowka/simplecov/pull/482) (thanks @waldyr)
68
- * Make track_files work again when explicitly setting it to nil. See [#463](https://github.com/colszowka/simplecov/pull/463) (thanks @craiglittle)
69
- * Do not overwrite .last_run.json file when refuse_coverage_drop option is enabled and the coverage has dropped (lead to you being able to just rerun tests and everything was _fine_). See [#553](https://github.com/colszowka/simplecov/pull/553) (thanks @Miloshes)
44
+ * No more warnings triggered by `enable_for_subprocesses`. Thanks to [@mame](https://github.com/mame)
45
+ * Avoid trying to patch `Process.fork` when it isn't available. Thanks to [@MSP-Greg](https://github.com/MSP-Greg)
70
46
 
71
- 0.13.0 2017-01-25 ([changes](https://github.com/colszowka/simplecov/compare/v0.12.0...v0.13.0))
47
+ 0.19.0 (2020-08-16)
72
48
  ==========
73
49
 
74
- ## Enhancements
75
-
76
- * Faster run times when a very large number of files is loaded into SimpleCov. See [#520](https://github.com/colszowka/simplecov/pull/520) (thanks @alyssais)
77
- * Only read in source code files that are actually used (faster when files are ignored etc.). See [#540](https://github.com/colszowka/simplecov/pull/540) (thanks @yui-knk)
78
-
79
- ## Bugfixes
80
-
81
- * Fix merging of resultsets if a file is missing on one side. See [#513](https://github.com/colszowka/simplecov/pull/513) (thanks @hanazuki)
82
- * Fix Ruby 2.4 deprecation warnings by using Integer instead of Fixnum. See [#523](https://github.com/colszowka/simplecov/pull/523) (thanks @nobu)
83
- * Force Ruby 2 to json 2. See [dc7417d50](https://github.com/colszowka/simplecov/commit/dc7417d5049b1809cea214314c15dd93a5dd964f) (thanks @amatsuda)
84
- * Various other gem dependency fixes for different gems on different ruby versions. (thanks @amatsuda)
85
-
86
- 0.12.0 2016-07-02 ([changes](https://github.com/colszowka/simplecov/compare/v0.11.2...v0.12.0))
87
- =================
50
+ ## Breaking Changes
51
+ * Dropped support for Ruby 2.4, it reached EOL
88
52
 
89
53
  ## Enhancements
90
-
91
- * Add support for JSON versions 2.x
54
+ * observe forked processes (enable with SimpleCov.enable_for_subprocesses). See [#881](https://github.com/simplecov-ruby/simplecov/pull/881), thanks to [@robotdana](https://github.com/robotdana)
55
+ * SimpleCov distinguishes better that it stopped processing because of a previous error vs. SimpleCov is the originator of said error due to coverage requirements.
92
56
 
93
57
  ## Bugfixes
58
+ * Changing the `SimpleCov.root` combined with the root filtering didn't work. Now they do! Thanks to [@deivid-rodriguez](https://github.com/deivid-rodriguez) and see [#894](https://github.com/simplecov-ruby/simplecov/pull/894)
59
+ * in parallel test execution it could happen that the last coverage result was written to disk when it didn't complete yet, changed to only write it once it's the final result
60
+ * if you run parallel tests only the final process will report violations of the configured test coverage, not all previous processes
61
+ * changed the parallel_tests merging mechanisms to do the waiting always in the last process, should reduce race conditions
94
62
 
95
- * Fix coverage rate of the parallel_tests. See [#441](https://github.com/colszowka/simplecov/pull/441) (thanks @sinsoku)
96
- * Fix a regression on old rubies that failed to work with the recently introduced frozen VERSION string. See [#461](https://github.com/colszowka/simplecov/pull/461) (thanks @leafle)
97
-
98
- 0.11.2 2016-02-03 ([changes](https://github.com/colszowka/simplecov/compare/v0.11.1...v0.11.2))
99
- =================
63
+ ## Noteworthy
64
+ * The repo has moved to https://github.com/simplecov-ruby/simplecov - everything stays the same, redirects should work but you might wanna update anyhow
65
+ * The primary development branch is now `main`, not `master` anymore. If you get simplecov directly from github change your reference. For a while `master` will still be occasionally updated but that's no long term solion.
100
66
 
101
- ## Enhancements
67
+ 0.18.5 (2020-02-25)
68
+ ===================
102
69
 
103
- * Do not globally pollute Array and Hash with `merge_resultset` utility methods. See [#449](https://github.com/colszowka/simplecov/pull/449) (thanks @amatsuda)
104
- * Do not `mkdir_p` the `coverage_path` on every access of the method (See [#453](https://github.com/colszowka/simplecov/pull/453) (thanks @paddor)
105
- * Fixes a Ruby warning related to the `track_files` configuration. See [#447](https://github.com/colszowka/simplecov/pull/447) (thanks @craiglittle)
106
- * Add a group for background jobs to default Rails profile. See [#442](https://github.com/colszowka/simplecov/pull/442) (thanks @stve)
70
+ Can you guess? Another bugfix release!
107
71
 
108
72
  ## Bugfixes
73
+ * minitest won't crash if SimpleCov isn't loaded - aka don't execute SimpleCov code in the minitest plugin if SimpleCov isn't loaded. Thanks to [@edariedl](https://github.com/edariedl) for the report of the peculiar problem in [#877](https://github.com/simplecov-ruby/simplecov/issues/877).
109
74
 
110
- * Fix root_filter evaluates SimpleCov.root before initialization. See [#437](https://github.com/colszowka/simplecov/pull/437) (thanks @tmtm)
111
-
112
- 0.11.1 2015-12-01 ([changes](https://github.com/colszowka/simplecov/compare/v0.11.0...v0.11.1))
113
- =================
75
+ 0.18.4 (2020-02-24)
76
+ ===================
114
77
 
115
- ## Enhancements
78
+ Another small bugfix release 🙈 Fixes SimpleCov running with rspec-rails, which was broken due to our fixed minitest integration.
116
79
 
117
80
  ## Bugfixes
81
+ * SimpleCov will run again correctly when used with rspec-rails. The excellent bug report [#873](https://github.com/simplecov-ruby/simplecov/issues/873) by [@odlp](https://github.com/odlp) perfectly details what went wrong. Thanks to [@adam12](https://github.com/adam12) for the fix [#874](https://github.com/simplecov-ruby/simplecov/pull/874).
118
82
 
119
- * Fixed regression in `MultiFormatter.[]` with multiple arguments. See [#431](https://github.com/colszowka/simplecov/pull/431) (thanks @dillondrobena)
120
83
 
121
- 0.11.0 2015-11-29 ([changes](https://github.com/colszowka/simplecov/compare/v0.10.0...v0.11.0))
122
- =================
84
+ 0.18.3 (2020-02-23)
85
+ ===========
123
86
 
124
- ## Enhancements
125
-
126
- * Added `SimpleCov.minimum_coverage_by_file` for per-file coverage thresholds. See [#392](https://github.com/colszowka/simplecov/pull/392) (thanks @ptashman)
127
- * Added `track_files` configuration option to specify a glob to always include in coverage results, whether or not those files are required. By default, this is enabled in the Rails profile for common Rails directories. See [#422](https://github.com/colszowka/simplecov/pull/422) (thanks @hugopeixoto)
128
- * Speed up `root_filter` by an order of magnitude. See [#396](https://github.com/colszowka/simplecov/pull/396) (thanks @raszi)
87
+ Small bugfix release. It's especially recommended to upgrade simplecov-html as well because of bugs in the 0.12.0 release.
129
88
 
130
89
  ## Bugfixes
90
+ * Fix a regression related to file encodings as special characters were missing. Furthermore we now respect the magic `# encoding: ...` comment and read files in the right encoding. Thanks ([@Tietew](https://github.com/Tietew)) - see [#866](https://github.com/simplecov-ruby/simplecov/pull/866)
91
+ * Use `Minitest.after_run` hook to trigger post-run hooks if `Minitest` is present. See [#756](https://github.com/simplecov-ruby/simplecov/pull/756) and [#855](https://github.com/simplecov-ruby/simplecov/pull/855) thanks ([@adam12](https://github.com/adam12))
131
92
 
132
- * Fix warning about global variable `$ERROR_INFO`. See [#400](https://github.com/colszowka/simplecov/pull/400) (thanks @amatsuda)
133
- * Actually recurse upward looking for `.simplecov`, as claimed by the documentation, rather than only the working directory. See [#423](https://github.com/colszowka/simplecov/pull/423) (thanks @alexdowad)
93
+ 0.18.2 (2020-02-12)
94
+ ===================
134
95
 
135
- 0.10.0 2015-04-18 ([changes](https://github.com/colszowka/simplecov/compare/v0.9.2...v0.10.0))
136
- =================
96
+ Small release just to allow you to use the new simplecov-html.
137
97
 
138
98
  ## Enhancements
99
+ * Relax simplecov-html requirement so that you're able to use [0.12.0](https://github.com/simplecov-ruby/simplecov-html/blob/main/CHANGELOG.md#0120-2020-02-12)
139
100
 
140
- * Add writeup about using with Spring to README. See [#341](https://github.com/colszowka/simplecov/issues/341) (thanks @swrobel and @onebree)
141
- * Add support to pass in an Array when creating filter groups (original PR #104)
142
- * Filter `/vendor/bundle` by default. See [#331](https://github.com/colszowka/simplecov/pull/331) (thanks @andyw8)
143
- * Add some helpful singleton methods to the version string.
144
- * Allow array to be passed in a filter. See [375](https://github.com/colszowka/simplecov/pull/375) (thanks @JanStevens)
145
- * Enforce consistent code formatting with RuboCop.
101
+ 0.18.1 (2020-01-31)
102
+ ===================
146
103
 
147
- ## Bugfixes
104
+ Small Bugfix release.
148
105
 
149
- * Fix order dependencies in unit tests. See [#376](https://github.com/colszowka/simplecov/pull/376) (thanks @hugopeixoto)
150
- * Only run the at_exit behaviors if the current PID matches the PID that called SimpleCov.start. See [#377](https://github.com/colszowka/simplecov/pull/377) (thanks @coderanger)
106
+ ## Bugfixes
107
+ * Just putting `# :nocov:` on top of a file or having an uneven number of them in general works again and acts as if ignoring until the end of the file. See [#846](https://github.com/simplecov-ruby/simplecov/issues/846) and thanks [@DannyBen](https://github.com/DannyBen) for the report.
151
108
 
152
- 0.9.2, 2015-02-18 ([changes](https://github.com/colszowka/simplecov/compare/v0.9.1...v0.9.2))
153
- =================
109
+ 0.18.0 (2020-01-28)
110
+ ===================
154
111
 
155
- This is a minor bugfix release for simplecov-html, released as `0.9.0`. Due to the tight version constraint in the gemspec
156
- a new release of simplecov had to be shipped to allow using simplecov-html `~> 0.9.0`.
112
+ Huge release! Highlights are support for branch coverage (Ruby 2.5+) and dropping support for EOL'ed Ruby versions (< 2.4).
113
+ Please also read the other beta patch notes.
157
114
 
158
- * The browser back / forward button should now work again. See [#36](https://github.com/colszowka/simplecov-html/pull/36) and
159
- [#35](https://github.com/colszowka/simplecov-html/pull/35). Thanks @whatasunnyday and @justinsteele for submitting PRs to fix this.
160
- * Fix "warning: possibly useless use of a variable in void context" See [#31](https://github.com/colszowka/simplecov-html/pull/31). Thanks @cbandy
161
- * Always use binary file format. See [#32](https://github.com/colszowka/simplecov-html/pull/32). Thanks @andy128k
162
- * Avoid slow file output with JRuby/Windows. See [#16](https://github.com/colszowka/simplecov-html/pull/16). Thanks @pschambacher
115
+ You can run with branch coverage by putting `enable_coverage :branch` into your SimpleCov configuration (like the `SimpleCov.start do .. end` block)
163
116
 
164
- Other than the release includes a bunch of mostly documentation improvements:
117
+ ## Enhancements
118
+ * You can now define the minimum expected coverage by criterion like `minimum_coverage line: 90, branch: 80`
119
+ * Memoized some internal data structures that didn't change to reduce SimpleCov overhead
120
+ * Both `FileList` and `SourceFile` now have a `coverage` method that returns a hash that points from a coverage criterion to a `CoverageStatistics` object for uniform access to overall coverage statistics for both line and branch coverage
165
121
 
166
- * Update Rails path for Rails 4+. See [#336](https://github.com/colszowka/simplecov/pull/336). Thanks @yazinsai
167
- * Encourage use of .simplecov to avoid lost files. See [#338](https://github.com/colszowka/simplecov/pull/338). thanks @dankohn
168
- * Specified in the gemspec that simplecov needs ruby 1.8.7. See [#343](https://github.com/colszowka/simplecov/pull/343). thanks @iainbeeston
169
- * Fix mispointed link in CHANGELOG.md. See [#353](https://github.com/colszowka/simplecov/pull/353). Thanks @dleve123
170
- * Improve command name docs. See [#356](https://github.com/colszowka/simplecov/pull/356). Thanks @gtd
122
+ ## Bugfixes
123
+ * we were losing precision by rounding the covered strength early, that has been removed. **For Formatters** this also means that you may need to round it yourself now.
124
+ * Removed an inconsistency in how we treat skipped vs. irrelevant lines (see [#565](https://github.com/simplecov-ruby/simplecov/issues/565)) - SimpleCov's definition of 100% is now "You covered everything that you could" so if coverage is 0/0 that's counted as a 100% no matter if the lines were irrelevant or ignored/skipped
171
125
 
126
+ ## Noteworthy
127
+ * `FileList` stopped inheriting from Array, it includes Enumerable so if you didn't use Array specific methods on it in formatters you should be fine
128
+ * We needed to change an internal file format, which we use for merging across processes, to accommodate branch coverage. Sadly CodeClimate chose to use this file to report test coverage. Until a resolution is found the code climate test reporter won't work with SimpleCov for 0.18+, see [this issue on the test reporter](https://github.com/codeclimate/test-reporter/issues/413).
172
129
 
130
+ 0.18.0.beta3 (2020-01-20)
131
+ ========================
173
132
 
174
- 0.9.1, 2014-09-21 ([changes](https://github.com/colszowka/simplecov/compare/v0.9.0...v0.9.1))
175
- =================
133
+ ## Enhancements
134
+ * Instead of ignoring old `.resultset.json`s that are inside the merge timeout, adapt and respect them
176
135
 
177
136
  ## Bugfixes
137
+ * Remove the constant warning printing if you still have a `.resultset.json` in pre 0.18 layout that is within your merge timeout
178
138
 
179
- * In 0.9.0, we introduced a regression that made SimpleCov no-op mode fail on Ruby 1.8, while
180
- dropping 1.8 support altogether is announced only for v1.0. This has been fixed.
181
- See [#333](https://github.com/colszowka/simplecov/issues/333) (thanks (@sferik)
182
-
183
-
184
- 0.9.0, 2014-07-17 ([changes](https://github.com/colszowka/simplecov/compare/v0.8.2...v0.9.0))
185
- =================
186
-
187
- **A warm welcome and big thank you to the new contributors [@xaviershay](https://github.com/xaviershay), [@sferik](https://github.com/sferik) and especially [@bf4](https://github.com/bf4) for tackling a whole lot of issues and pull requests for this release!**
139
+ 0.18.0.beta2 (2020-01-19)
140
+ ===================
188
141
 
189
142
  ## Enhancements
190
-
191
- * New interface to specify multiple formatters.
192
- See [#317](https://github.com/colszowka/simplecov/pull/317) (thanks @sferik)
193
- * Document in the README how to exclude code from coverage reports,
194
- and that the feature shouldn't be abused for skipping untested
195
- private code.
196
- See [#304](https://github.com/colszowka/simplecov/issues/304)
197
- * Clarify Ruby version support.
198
- See [#279](https://github.com/colszowka/simplecov/pull/279) (thanks @deivid-rodriguez)
143
+ * only turn on the requested coverage criteria (when activating branch coverage before SimpleCov would also instruct Ruby to take Method coverage)
144
+ * Change how branch coverage is displayed, now it's `branch_type: hit_count` which should be more self explanatory. See [#830](https://github.com/simplecov-ruby/simplecov/pull/830) for an example and feel free to give feedback!
145
+ * Allow early running exit tasks and avoid the `at_exit` hook through the `SimpleCov.run_exit_tasks!` method. (thanks [@macumber](https://github.com/macumber))
146
+ * Allow manual collation of result sets through the `SimpleCov.collate` entrypoint. See the README for more details (thanks [@ticky](https://github.com/ticky))
147
+ * Within `case`, even if there is no `else` branch declared show missing coverage for it (aka no branch of it). See [#825](https://github.com/simplecov-ruby/simplecov/pull/825)
148
+ * Stop symbolizing all keys when loading cache (should lead to be faster and consume less memory)
149
+ * Cache whether we can use/are using branch coverage (should be slightly faster)
199
150
 
200
151
  ## Bugfixes
152
+ * Fix a crash that happened when an old version of our internal cache file `.resultset.json` was still present
201
153
 
202
- * Ensure calculations return Floats, not Fixnum or Rational. Fixes segfaults with mathn.
203
- See [#245](https://github.com/colszowka/simplecov/pull/245) (thanks to @bf4)
204
- * Using `Kernel.exit` instead of exit to avoid uncaught throw :IRB_EXIT when
205
- exiting irb sessions.
206
- See [#287](https://github.com/colszowka/simplecov/pull/287) (thanks @wless1)
207
- See [#285](https://github.com/colszowka/simplecov/issues/285)
208
- * Does not look for .simplecov in ~/ when $HOME is not set.
209
- See [#311](https://github.com/colszowka/simplecov/pull/311) (thanks @lasseebert)
210
- * Exit with code only if it's Numeric > 0.
211
- See [#302](https://github.com/colszowka/simplecov/pull/302) (thanks @hajder)
212
- * Make default filter case insensitive.
213
- See [#280](https://github.com/colszowka/simplecov/pull/280) (thanks @ryanatball)
214
- * Improve regexp that matches functional tests.
215
- See [#276](https://github.com/colszowka/simplecov/pull/276) (thanks @sferik)
216
- * Fix TravisCI [#272](https://github.com/colszowka/simplecov/pull/272) [#278](https://github.com/colszowka/simplecov/pull/278), [#302](https://github.com/colszowka/simplecov/pull/302)
217
- * Fix global config load.
218
- See [#311](https://github.com/colszowka/simplecov/pull/311) (thanks @lasseebert)
219
-
220
- v0.8.2, 2013-11-20 ([changes](https://github.com/colszowka/simplecov/compare/v0.8.1...v0.8.2))
221
- ==================
154
+ 0.18.0.beta1 (2020-01-05)
155
+ ===================
222
156
 
223
- ## Bugfixes
157
+ This is a huge release highlighted by changing our support for ruby versions to 2.4+ (so things that aren't EOL'ed) and finally adding branch coverage support!
224
158
 
225
- * Replaced the locking behaviour [via lockfile gem](https://github.com/colszowka/simplecov/pull/185) with
226
- plain Ruby explicit file locking when merging results. This should make simplecov merging to behave well
227
- on Windows again.
228
- See [#258](https://github.com/colszowka/simplecov/issues/258) and
229
- [#223](https://github.com/colszowka/simplecov/pull/223) (thanks to @tomykaira)
159
+ This release is still beta because we'd love for you to test out branch coverage and get your feedback before doing a full release.
230
160
 
231
- v0.8.1, 2013-11-10 ([changes](https://github.com/colszowka/simplecov/compare/v0.8.0...v0.8.1))
232
- ==================
161
+ On a personal note from [@PragTob](https://github.com/PragTob/) thanks to [ruby together](https://rubytogether.org/) for sponsoring this work on SimpleCov making it possible to deliver this and subsequent releases.
233
162
 
234
- ## Bugfixes
235
-
236
- * Fixed a regression introduced in 0.8.0 - the Forwardable STDLIB module is now required explicitly.
237
- See [#256](https://github.com/colszowka/simplecov/pull/256) (thanks to @kylev)
238
-
239
- v0.8.0, 2013-11-10 ([changes](https://github.com/colszowka/simplecov/compare/v0.7.1...v0.8.0))
240
- ==================
241
-
242
- **Note: Yanked the same day because of the regression that 0.8.1 fixes, see above**
243
-
244
- ## TL;DR
245
-
246
- It's been way too long since the last official release 0.7.1, but this was partly due to it proving itself
247
- quite stable in most circumstances. This release brings various further stability improvements to result set merging
248
- (especially when working with parallel_tests), the configuration, source file encodings, and command name guessing.
249
-
250
- The 0.8 line is the last one to cooperate with Ruby < 1.9. Starting with 0.9, SimpleCov will assume to be running in
251
- Ruby 1.9+, and will not try to detect or bail silently on older Ruby versions. An appropriate deprecation warning
252
- has been added.
253
-
254
- ## Features
255
-
256
- * Configuration blocks now have access to variables and methods outside of the block's scope.
257
- See [#238](https://github.com/colszowka/simplecov/pull/238) (thanks to @ms-tg)
258
- * You can now have a global `~/.simplecov` configuration file.
259
- See [#195](https://github.com/colszowka/simplecov/pull/195) (thanks to @spagalloco)
260
- * simplecov-html now uses the MIT-licensed colorbox plugin. Some adjustments when viewing source files,
261
- including retaining the currently open file on refresh have been added.
262
- See [simplecov-html #15](https://github.com/colszowka/simplecov-html/pull/15) (thanks to @chetan)
263
- * Adds support for Rails 4 command guessing, removes default group `vendor/plugins`.
264
- See [#181](https://github.com/colszowka/simplecov/pull/181) and
265
- [#203](https://github.com/colszowka/simplecov/pull/203) (thanks to @semanticart and @phallstrom)
266
- * You can now load simplecov without the default settings by doing `require 'simplecov/no_defaults'`
267
- or setting `ENV['SIMPLECOV_NO_DEFAULTS']`. Check `simplecov/defaults` to see what preconfigurations are getting
268
- dropped by using this. See [#209](https://github.com/colszowka/simplecov/pull/209) (thanks to @ileitch)
269
- * The result set merging now uses the `lockfile` gem to avoid race conditions.
270
- See [#185](https://github.com/colszowka/simplecov/pull/185) (thanks to @jshraibman-mdsol).
271
- * Automatically detect the usage of parallel_tests and adjust the command name with the test env number accordingly,
272
- See [#64](https://github.com/colszowka/simplecov/issues/64) and
273
- [#185](https://github.com/colszowka/simplecov/pull/185) (thanks to @jshraibman-mdsol).
163
+ ## Breaking
164
+ * Dropped support for all EOL'ed rubies meaning we only support 2.4+. Simplecov can no longer be installed on older rubies, but older simplecov releases should still work. (thanks [@deivid-rodriguez](https://github.com/deivid-rodriguez))
165
+ * Dropped the `rake simplecov` task that "magically" integreated with rails. It was always undocumented, caused some issues and [had some issues](https://github.com/simplecov-ruby/simplecov/issues/689#issuecomment-561572327). Use the integration as described in the README please :)
274
166
 
275
167
  ## Enhancements
276
168
 
277
- * Rename adapters to "profiles" given that they are bundles of settings. The old adapter methods are
278
- deprecated, but remain available for now.
279
- See [#207](https://github.com/colszowka/simplecov/pull/207) (thanks to @mikerobe)
280
- * Tweaks to the automatic test suite naming. In particular, `rspec/features` should now
281
- be correctly attributed to RSpec, not Cucumber.
282
- See [#212](https://github.com/colszowka/simplecov/pull/212) (thanks to @ersatzryan and @betelgeuse)
283
- * MiniTest should now be identified correctly by the command name guesser.
284
- See [#244](https://github.com/colszowka/simplecov/pull/244) (thanks to @envygeeks)
285
- * Makes SimpleCov resilient to inclusion of mathn library.
286
- See [#175](https://github.com/colszowka/simplecov/pull/175) and
287
- [#140](https://github.com/colszowka/simplecov/issues/140) (thanks to @scotje)
288
- * Allow coverage_dir to be an absolute path.
289
- * See [#190](https://github.com/colszowka/simplecov/pull/190) (thanks to @jshraibman-mdsol)
290
- * The internal cucumber test suite now uses Capybara 2.
291
- See [#206](https://github.com/colszowka/simplecov/pull/206) (thanks to @infertux)
292
- * Work-arounds for the Coverage library shipped in JRuby 1.6 to behave in line with MRI.
293
- See [#174](https://github.com/colszowka/simplecov/pull/174) (thanks to @grddev)
294
- * Fix warning: instance variable @exit_status not initialized.
295
- See [#242](https://github.com/colszowka/simplecov/pull/242) and
296
- [#213](https://github.com/colszowka/simplecov/pull/213) (thanks to @sferik and @infertux)
169
+ * Branch coverage is here! Please try it out and test it! You can activate it with `enable_coverage :branch`. See the README for more details. This is thanks to a bunch of people most notably [@som4ik](https://github.com/som4ik), [@tycooon](https://github.com/tycooon), [@stepozer](https://github.com/stepozer), [@klyonrad](https://github.com/klyonrad) and your humble maintainers also contributed ;)
170
+ * If the minimum coverage is set to be greater than 100, a warning will be shown. See [#737](https://github.com/simplecov-ruby/simplecov/pull/737) (thanks [@belfazt](https://github.com/belfazt))
171
+ * Add a configuration option to disable the printing of non-successful exit statuses. See [#747](https://github.com/simplecov-ruby/simplecov/pull/746) (thanks [@JacobEvelyn](https://github.com/JacobEvelyn))
172
+ * Calculating 100% coverage is now stricter, so 100% means 100%. See [#680](https://github.com/simplecov-ruby/simplecov/pull/680) thanks [@gleseur](https://github.com/gleseur)
297
173
 
298
174
  ## Bugfixes
299
175
 
300
- * Correct result calculations for people using :nocov: tags.
301
- See [#215](https://github.com/colszowka/simplecov/pull/215) (thanks to @aokolish)
302
- * Average hits per line for groups of files is now computed correctly.
303
- See [#192](http://github.com/colszowka/simplecov/pull/192) and
304
- [#179](http://github.com/colszowka/simplecov/issues/179) (thanks to @graysonwright)
305
- * Compatibility with BINARY internal encoding.
306
- See [#194](https://github.com/colszowka/simplecov/pull/194) and
307
- [#127](https://github.com/colszowka/simplecov/issues/127) (thanks to @justfalter)
308
- * Special characters in `SimpleCov.root` are now correctly escaped before being used as a RegExp.
309
- See [#204](https://github.com/colszowka/simplecov/issues/204) and
310
- [#237](https://github.com/colszowka/simplecov/pull/237) (thanks to @rli9)
311
-
312
- v0.7.1, 2012-10-12 ([changes](https://github.com/colszowka/simplecov/compare/v0.7.0...v0.7.1))
313
- ==================
314
-
315
- * [BUGFIX] The gem packages of 0.7.0 (both simplecov and simplecov-html) pushed to Rubygems had some file
316
- permission issues, leading to problems when installing SimpleCov in a root/system Rubygems install and then
317
- trying to use it as a normal user (see https://github.com/colszowka/simplecov/issues/171, thanks @envygeeks
318
- for bringing it up). The gem build process has been changed to always enforce proper permissions before packaging
319
- to avoid this issue in the future.
320
-
321
-
322
- v0.7.0, 2012-10-10 ([changes](https://github.com/colszowka/simplecov/compare/v0.6.4...v0.7.0))
323
- ==================
324
-
325
- * [FEATURE] The new `maximum_coverage_drop` and `minimum_coverage` now allow you to fail your build when the
326
- coverage dropped by more than what you allowed or is below a minimum value required. Also, `refuse_coverage_drop` disallows
327
- any coverage drops between test runs.
328
- See https://github.com/colszowka/simplecov/pull/151, https://github.com/colszowka/simplecov/issues/11,
329
- https://github.com/colszowka/simplecov/issues/90, and https://github.com/colszowka/simplecov/issues/96 (thanks to @infertux)
330
- * [FEATURE] SimpleCov now ships with a built-in MultiFormatter which allows the easy usage of multiple result formatters at
331
- the same time without the need to write custom wrapper code.
332
- See https://github.com/colszowka/simplecov/pull/158 (thanks to @nikitug)
333
- * [BUGFIX] The usage of digits, hyphens and underscores in group names could lead to broken tab navigation
334
- in the default simplecov-html reports. See https://github.com/colszowka/simplecov-html/pull/14 (thanks to @ebelgarts)
335
- * [REFACTORING] A few more ruby warnings removed. See https://github.com/colszowka/simplecov/issues/106 and
336
- https://github.com/colszowka/simplecov/pull/139. (thanks to @lukejahnke)
337
- * A [Pledgie button](https://github.com/colszowka/simplecov/commit/63cfa99f8658fa5cc66a38c83b3195fdf71b9e93) for those that
338
- feel generous :)
339
- * The usual bunch of README fixes and documentation tweaks. Thanks to everyone who contributed those!
340
-
341
- v0.6.4, 2012-05-10 ([changes](https://github.com/colszowka/simplecov/compare/v0.6.3...v0.6.4))
342
- ==================
343
-
344
- * [BUGFIX] Encoding issues with ISO-8859-encoded source files fixed.
345
- See https://github.com/colszowka/simplecov/pull/117. (thanks to @Deradon)
346
- * [BUGFIX] Ensure ZeroDivisionErrors won't occur when calculating the coverage result, which previously
347
- could happen in certain cases. See https://github.com/colszowka/simplecov/pull/128. (thanks to @japgolly)
348
- * [REFACTORING] Changed a couple instance variable lookups so SimpleCov does not cause a lot of warnings when
349
- running ruby at a higher warning level. See https://github.com/colszowka/simplecov/issues/106 and
350
- https://github.com/colszowka/simplecov/pull/119. (thanks to @mvz and @gioele)
351
-
352
-
353
- v0.6.3, 2012-05-10 ([changes](https://github.com/colszowka/simplecov/compare/v0.6.2...v0.6.3))
354
- ==================
355
-
356
- * [BUGFIX] Modified the API-changes for newer multi_json versions introduced with #122 and v0.6.2 so
357
- they are backwards-compatible with older multi_json gems in order to avoid simplecov polluting
358
- the multi_json minimum version requirement for entire applications.
359
- See https://github.com/colszowka/simplecov/issues/132
360
- * Added appraisal gem to the test setup in order to run the test suite against both 1.0 and 1.3
361
- multi_json gems and ensure the above actually works :)
362
-
363
- v0.6.2, 2012-04-20 ([changes](https://github.com/colszowka/simplecov/compare/v0.6.1...v0.6.2))
364
- ==================
365
-
366
- * [Updated to latest version of MultiJSON and its new API (thanks to @sferik and @ronen).
367
- See https://github.com/colszowka/simplecov/pull/122
368
-
369
- v0.6.1, 2012-02-24 ([changes](https://github.com/colszowka/simplecov/compare/v0.6.0...v0.6.1))
370
- ==================
371
-
372
- * [BUGFIX] Don't force-load Railtie on Rails < 3. Fixes regression introduced with
373
- #83. See https://github.com/colszowka/simplecov/issues/113
374
-
375
- v0.6.0, 2012-02-22 ([changes](https://github.com/colszowka/simplecov/compare/v0.5.4...v0.6.0))
376
- ==================
377
-
378
- * [FEATURE] Auto-magic `rake simplecov` task for rails
379
- (see https://github.com/colszowka/simplecov/pull/83, thanks @sunaku)
380
- * [BUGFIX] Treat source files as UTF-8 to avoid encoding errors
381
- (see https://github.com/colszowka/simplecov/pull/103, thanks @joeyates)
382
- * [BUGFIX] Store the invoking terminal command right after loading so they are safe from
383
- other libraries tampering with ARGV. Among other makes automatic Rails test suite splitting
384
- (Unit/Functional/Integration) work with recent rake versions again
385
- (see https://github.com/colszowka/simplecov/issues/110)
386
- * [FEATURE] If guessing command name from the terminal command fails, try guessing from defined constants
387
- (see https://github.com/colszowka/simplecov/commit/37afca54ef503c33d888e910f950b3b943cb9a6c)
388
- * Some refactorings and cleanups as usual. Please refer to the github compare view for a full
389
- list of changes: https://github.com/colszowka/simplecov/compare/v0.5.4...v0.6.0
390
-
391
- v0.5.4, 2011-10-12 ([changes](https://github.com/colszowka/simplecov/compare/v0.5.3...v0.5.4))
392
- ==================
393
-
394
- * Do not give exit code 0 when there are exceptions prior to tests
395
- (see https://github.com/colszowka/simplecov/issues/41, thanks @nbogie)
396
- * The API for building custom filter classes is now more obvious, using #matches? instead of #passes? too.
397
- (see https://github.com/colszowka/simplecov/issues/85, thanks @robinroestenburg)
398
- * Mailers are now part of the Rails adapter as their own group (see
399
- https://github.com/colszowka/simplecov/issues/79, thanks @geetarista)
400
- * Removed fix for JRuby 1.6 RC1 float bug because it's been fixed
401
- (see https://github.com/colszowka/simplecov/issues/86)
402
- * Readme formatted in Markdown :)
403
-
404
- v0.5.3, 2011-09-13 ([changes](https://github.com/colszowka/simplecov/compare/v0.5.2...v0.5.3))
405
- ==================
406
-
407
- * Fix for encoding issues that came from the nocov processing mechanism
408
- (see https://github.com/colszowka/simplecov/issues/71)
409
- * :nocov: lines are now actually being reflected in the HTML report and are marked in yellow.
410
-
411
- * The Favicon in the HTML report is now determined by the overall coverage and will have the color
412
- that the coverage percentage gets as a css class to immediately indicate coverage status on first sight.
413
-
414
- * Introduced SimpleCov::SourceFile::Line#status method that returns the coverage status
415
- as a string for this line - made SimpleCov::HTML use that.
416
- * Refactored nocov processing and made it configurable using SimpleCov.ncov_token (or it's
417
- alias SimpleCov.skip_token)
418
-
419
- v0.5.2, 2011-09-12 ([changes](https://github.com/colszowka/simplecov/compare/v0.5.1...v0.5.2))
420
- ==================
421
-
422
- * Another fix for a bug in JSON processing introduced with MultiJSON in 0.5.1
423
- (see https://github.com/colszowka/simplecov/pull/75, thanks @sferik)
424
-
425
- v0.5.1, 2011-09-12 ([changes](https://github.com/colszowka/simplecov/compare/v0.5.0...v0.5.1))
426
- ==================
427
- **Note: Yanked 2011-09-12 because the MultiJSON-patch had a crucial bug**
428
-
429
- * Fix for invalid gemspec dependency string (see https://github.com/colszowka/simplecov/pull/70,
430
- http://blog.rubygems.org/2011/08/31/shaving-the-yaml-yacc.html, thanks @jspradlin)
431
-
432
- * Added JSON in the form of the multi_json gem as dependency for those cases when built-in JSON
433
- is unavailable (see https://github.com/colszowka/simplecov/issues/72
434
- and https://github.com/colszowka/simplecov/pull/74, thanks @sferik)
435
-
436
- v0.5.0, 2011-09-09 ([changes](https://github.com/colszowka/simplecov/compare/v0.4.2...v0.5.4))
437
- ==================
438
- **Note: Yanked 2011-09-09 because of trouble with the gemspec.**
439
-
440
- * JSON is now used instead of YAML for resultset caching (used for merging). Should resolve
441
- a lot of problems people used to have because of YAML parser errors.
442
-
443
- * There's a new adapter 'test_frameworks'. Use it outside of Rails to remove `test/`,
444
- `spec/`, `features/` and `autotest/` dirs from your coverage reports, either directly
445
- with `SimpleCov.start 'test_frameworks'` or with `SimpleCov.load_adapter 'test_frameworks'`
446
-
447
- * SimpleCov configuration can now be placed centrally in a text file `.simplecov`, which will
448
- be automatically read on `require 'simplecov'`. This makes using custom configuration like
449
- groups and filters across your test suites much easier as you only have to specify your config
450
- once. Just put the whole `SimpleCov.start (...)` code into `APP_ROOT/.simplecov`
451
-
452
- * Lines can now be skipped by using the :nocov: flag in comments that wrap the code that should be
453
- skipped, like in this example (thanks @phillipkoebbe)
454
-
455
- <pre>
456
- #:nocov:
457
- def skipped
458
- @foo * 2
459
- end
460
- #:nocov:
461
- </pre>
176
+ * Add new instance of `Minitest` constant. The `MiniTest` constant (with the capital T) will be removed in the next major release of Minitest. See [#757](https://github.com/simplecov-ruby/simplecov/pull/757) (thanks [@adam12](https://github.com/adam12))
462
177
 
463
- * Moved file set coverage analytics from simplecov-html to SimpleCov::FileList, a new subclass
464
- of Array that is always returned for SourceFile lists (i.e. in groups) and can now be used
465
- in all formatters without the need to roll your own.
466
-
467
- * The exceptions you used to get after removing some code and re-running your tests because SimpleCov
468
- couldn't find the cached source lines should be resolved (thanks @goneflyin)
469
-
470
- * Coverage strength metric: Average hits/line per source file and result group (thanks @trans)
178
+ Older Changelogs
179
+ ================
471
180
 
472
- * Finally, SimpleCov has an extensive Cucumber test suite
473
-
474
- * Full compatibility with Ruby 1.9.3.preview1
475
-
476
- ### HTML Formatter:
477
-
478
- * The display of source files has been improved a lot. Weird scrolling trouble, out-of-scope line hit counts
479
- and such should be a thing of the past. Also, it is prettier now.
480
- * Source files are now syntax highlighted
481
- * File paths no longer have that annoying './' in front of them
181
+ Looking for older changelogs? Please check the [old Changelog](https://github.com/simplecov-ruby/simplecov/blob/main/CHANGELOG.old.md)