simplecov 0.6.4 → 0.17.1

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.
Files changed (122) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +378 -12
  3. data/CONTRIBUTING.md +51 -0
  4. data/ISSUE_TEMPLATE.md +23 -0
  5. data/LICENSE +1 -1
  6. data/README.md +456 -252
  7. data/doc/alternate-formatters.md +56 -0
  8. data/doc/commercial-services.md +20 -0
  9. data/doc/editor-integration.md +18 -0
  10. data/lib/simplecov.rb +223 -44
  11. data/lib/simplecov/command_guesser.rb +47 -35
  12. data/lib/simplecov/configuration.rb +281 -191
  13. data/lib/simplecov/defaults.rb +38 -43
  14. data/lib/simplecov/exit_codes.rb +10 -0
  15. data/lib/simplecov/file_list.rb +51 -34
  16. data/lib/simplecov/filter.rb +50 -3
  17. data/lib/simplecov/formatter.rb +4 -1
  18. data/lib/simplecov/formatter/multi_formatter.rb +34 -0
  19. data/lib/simplecov/formatter/simple_formatter.rb +18 -12
  20. data/lib/simplecov/jruby_fix.rb +44 -0
  21. data/lib/simplecov/last_run.rb +26 -0
  22. data/lib/simplecov/lines_classifier.rb +48 -0
  23. data/lib/simplecov/load_global_config.rb +8 -0
  24. data/lib/simplecov/no_defaults.rb +4 -0
  25. data/lib/simplecov/profiles.rb +33 -0
  26. data/lib/simplecov/profiles/bundler_filter.rb +5 -0
  27. data/lib/simplecov/profiles/hidden_filter.rb +5 -0
  28. data/lib/simplecov/profiles/rails.rb +18 -0
  29. data/lib/simplecov/profiles/root_filter.rb +10 -0
  30. data/lib/simplecov/profiles/test_frameworks.rb +8 -0
  31. data/lib/simplecov/railtie.rb +3 -1
  32. data/lib/simplecov/railties/tasks.rake +9 -7
  33. data/lib/simplecov/raw_coverage.rb +41 -0
  34. data/lib/simplecov/result.rb +17 -55
  35. data/lib/simplecov/result_merger.rb +100 -67
  36. data/lib/simplecov/source_file.rb +82 -67
  37. data/lib/simplecov/version.rb +4 -2
  38. metadata +153 -222
  39. data/.gitignore +0 -31
  40. data/.travis.yml +0 -15
  41. data/Appraisals +0 -8
  42. data/Gemfile +0 -5
  43. data/Rakefile +0 -19
  44. data/cucumber.yml +0 -13
  45. data/features/config_adapters.feature +0 -44
  46. data/features/config_autoload.feature +0 -46
  47. data/features/config_command_name.feature +0 -33
  48. data/features/config_coverage_dir.feature +0 -20
  49. data/features/config_deactivate_merging.feature +0 -42
  50. data/features/config_merge_timeout.feature +0 -39
  51. data/features/config_nocov_token.feature +0 -79
  52. data/features/config_project_name.feature +0 -27
  53. data/features/config_styles.feature +0 -93
  54. data/features/cucumber_basic.feature +0 -29
  55. data/features/merging_test_unit_and_rspec.feature +0 -44
  56. data/features/rspec_basic.feature +0 -31
  57. data/features/rspec_fails_on_initialization.feature +0 -14
  58. data/features/rspec_groups_and_filters_basic.feature +0 -29
  59. data/features/rspec_groups_and_filters_complex.feature +0 -35
  60. data/features/rspec_groups_using_filter_class.feature +0 -40
  61. data/features/rspec_without_simplecov.feature +0 -20
  62. data/features/skipping_code_blocks_manually.feature +0 -70
  63. data/features/step_definitions/html_steps.rb +0 -45
  64. data/features/step_definitions/simplecov_steps.rb +0 -66
  65. data/features/step_definitions/transformers.rb +0 -13
  66. data/features/step_definitions/web_steps.rb +0 -64
  67. data/features/support/env.rb +0 -26
  68. data/features/test_unit_basic.feature +0 -34
  69. data/features/test_unit_groups_and_filters_basic.feature +0 -29
  70. data/features/test_unit_groups_and_filters_complex.feature +0 -35
  71. data/features/test_unit_groups_using_filter_class.feature +0 -40
  72. data/features/test_unit_without_simplecov.feature +0 -20
  73. data/features/unicode_compatiblity.feature +0 -67
  74. data/gemfiles/multi_json-legacy.gemfile +0 -7
  75. data/gemfiles/multi_json-legacy.gemfile.lock +0 -85
  76. data/gemfiles/multi_json-new.gemfile +0 -7
  77. data/gemfiles/multi_json-new.gemfile.lock +0 -85
  78. data/lib/simplecov/adapters.rb +0 -29
  79. data/lib/simplecov/merge_helpers.rb +0 -39
  80. data/simplecov.gemspec +0 -29
  81. data/test/faked_project/Gemfile +0 -6
  82. data/test/faked_project/Rakefile +0 -8
  83. data/test/faked_project/cucumber.yml +0 -13
  84. data/test/faked_project/features/step_definitions/my_steps.rb +0 -23
  85. data/test/faked_project/features/support/env.rb +0 -12
  86. data/test/faked_project/features/test_stuff.feature +0 -6
  87. data/test/faked_project/lib/faked_project.rb +0 -11
  88. data/test/faked_project/lib/faked_project/framework_specific.rb +0 -18
  89. data/test/faked_project/lib/faked_project/meta_magic.rb +0 -24
  90. data/test/faked_project/lib/faked_project/some_class.rb +0 -29
  91. data/test/faked_project/spec/faked_spec.rb +0 -11
  92. data/test/faked_project/spec/meta_magic_spec.rb +0 -10
  93. data/test/faked_project/spec/some_class_spec.rb +0 -10
  94. data/test/faked_project/spec/spec_helper.rb +0 -15
  95. data/test/faked_project/test/faked_test.rb +0 -11
  96. data/test/faked_project/test/meta_magic_test.rb +0 -13
  97. data/test/faked_project/test/some_class_test.rb +0 -15
  98. data/test/faked_project/test/test_helper.rb +0 -16
  99. data/test/fixtures/app/controllers/sample_controller.rb +0 -10
  100. data/test/fixtures/app/models/user.rb +0 -10
  101. data/test/fixtures/deleted_source_sample.rb +0 -15
  102. data/test/fixtures/frameworks/rspec_bad.rb +0 -9
  103. data/test/fixtures/frameworks/rspec_good.rb +0 -9
  104. data/test/fixtures/frameworks/testunit_bad.rb +0 -9
  105. data/test/fixtures/frameworks/testunit_good.rb +0 -9
  106. data/test/fixtures/iso-8859.rb +0 -3
  107. data/test/fixtures/resultset1.rb +0 -4
  108. data/test/fixtures/resultset2.rb +0 -5
  109. data/test/fixtures/sample.rb +0 -16
  110. data/test/fixtures/utf-8.rb +0 -3
  111. data/test/helper.rb +0 -35
  112. data/test/shoulda_macros.rb +0 -29
  113. data/test/test_1_8_fallbacks.rb +0 -33
  114. data/test/test_command_guesser.rb +0 -21
  115. data/test/test_deleted_source.rb +0 -16
  116. data/test/test_file_list.rb +0 -24
  117. data/test/test_filters.rb +0 -80
  118. data/test/test_merge_helpers.rb +0 -107
  119. data/test/test_result.rb +0 -147
  120. data/test/test_return_codes.rb +0 -39
  121. data/test/test_source_file.rb +0 -95
  122. data/test/test_source_file_line.rb +0 -110
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 6f3e7730302a3a31266a22a830aa6a098e17cc4042f664e4f9a079eef408897f
4
+ data.tar.gz: 423ed5a50493415c4c8bb17ff9c82ffd84e75dc98fc14cc0b4e82f17491d483e
5
+ SHA512:
6
+ metadata.gz: 5b46e9d714b0a675de3b2e42284069942479af4fb0df627b3806fb48e8d373ea7f555fc8cf482682e15e8a6e335ea82358e4b4db28b1257183ae22d018c17f21
7
+ data.tar.gz: 82eedda10bb5786656190ec0ca7dd1a3e18c38f6526db25f90c9b614849e05a14b85a34257343c5f48f62cffc7ddbdb74505b896a7c72236992aadd83c945a24
data/CHANGELOG.md CHANGED
@@ -1,5 +1,371 @@
1
+ 0.17.1 (2019-09-16)
2
+ ===================
3
+
4
+ Bugfix release for problems with ParallelTests.
5
+
6
+ ## Bugfixes
7
+
8
+ * Avoid hanging with parallel_tests. See [#746](https://github.com/colszowka/simplecov/pull/746) (thanks [@annaswims](https://github.com/annaswims))
9
+
10
+ 0.17.0 (2019-07-02)
11
+ ===================
12
+
13
+ Maintenance release with nice convenience features and important bugfixes.
14
+ Notably this **will be the last release to support ruby versions that have reached their end of life**. Moving forward official CRuby support will be 2.4+ and JRuby support will be 9.1+. Older versions might still work but no guarantees.
15
+
16
+ ## Enhancements
17
+
18
+ * Per default filter hidden files and folders. See [#721](https://github.com/colszowka/simplecov/pull/721) (thanks [Renuo AG](https://www.renuo.ch))
19
+ * Print the exit status explicitly when it's not a successful build so it's easier figure out SimpleCov failed the build in the output. See [#688](https://github.com/colszowka/simplecov/pull/688) (thanks [@daemonsy](https://github.com/daemonsy))
20
+
21
+ ## Bugfixes
22
+
23
+ * Avoid a premature failure exit code when setting `minimum_coverage` in combination with using [parallel_tests](https://github.com/grosser/parallel_tests). See [#706](https://github.com/colszowka/simplecov/pull/706) (thanks [@f1sherman](https://github.com/f1sherman))
24
+ * Project roots with special characters no longer cause crashes. See [#717](https://github.com/colszowka/simplecov/pull/717) (thanks [@deivid-rodriguez](https://github.com/deivid-rodriguez))
25
+ * Avoid continously overriding test results with manual `ResultMergere.store_results` usage. See [#674](https://github.com/colszowka/simplecov/pull/674) (thanks [@tomeon](https://github.com/tomeon))
26
+
27
+ 0.16.1 (2018-03-16)
28
+ ===================
29
+
30
+ ## Bugfixes
31
+
32
+ * Include the LICENSE in the distributed gem again (accidentally removed in 0.16.0). (thanks @tas50)
33
+
34
+ 0.16.0 (2018-03-15)
35
+ ===================
36
+
37
+ ## Enhancements
38
+
39
+ * Relax version constraint on `docile`, per SemVer
40
+ * exception that occurred on exit is available as `exit_exception`! See [#639](https://github.com/colszowka/simplecov/pull/639) (thanks @thomas07vt)
41
+ * Performance: processing results now runs from 2.5x to 3.75x faster. See [#662](https://github.com/colszowka/simplecov/pull/662) (thanks @BMorearty & @eregon)
42
+ * Decrease gem size by only shipping lib and docs
43
+
44
+ ## Bugfixes
45
+
46
+ * (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)
47
+ * Avoid overwriting the last coverage results on unsuccessful test runs. See [#625](https://github.com/colszowka/simplecov/pull/625) (thanks @thomas07vt)
48
+ * Don't crash on invalid UTF-8 byte sequences. (thanks @BMorearty)
49
+
50
+ 0.15.1 (2017-09-11) ([changes](https://github.com/colszowka/simplecov/compare/v0.15.0...v0.15.1))
51
+ =======
52
+
53
+ ## Bugfixes
54
+
55
+ * Filter directories outside SimpleCov.root that have it as a prefix. See [#617](https://github.com/colszowka/simplecov/pull/617) (thanks @jenseng)
56
+ * Fix standard rails profile rails filter (didn't work). See [#618](https://github.com/colszowka/simplecov/pull/618) (thanks @jenseng again!)
57
+
58
+ 0.15.0 (2017-08-14) ([changes](https://github.com/colszowka/simplecov/compare/v0.14.1...v0.15.0))
59
+ =======
60
+
61
+ ## Enhancements
62
+
63
+ * Ability to use regex filters for removing files from the output. See [#589](https://github.com/colszowka/simplecov/pull/589) (thanks @jsteel)
64
+
65
+ ## Bugfixes
66
+
67
+ * Fix merging race condition when running tests in parallel and merging them. See [#570](https://github.com/colszowka/simplecov/pull/570) (thanks @jenseng)
68
+ * 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)
69
+ * Allow using simplecov with frozen-string-literals enabled. See [#590](https://github.com/colszowka/simplecov/pull/590) (thanks @pat)
70
+ * Make sure Array Filter can use all other filter types. See [#589](https://github.com/colszowka/simplecov/pull/589) (thanks @jsteel)
71
+ * 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)
72
+
73
+ 0.14.1 2017-03-18 ([changes](https://github.com/colszowka/simplecov/compare/v0.14.0...v0.14.1))
74
+ ========
75
+
76
+ ## Bugfixes
77
+
78
+ * 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))
79
+
80
+ 0.14.0 2017-03-15 ([changes](https://github.com/colszowka/simplecov/compare/v0.13.0...v0.14.0))
81
+ ==========
82
+
83
+ ## Enhancements
84
+
85
+ * 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)
86
+ * Add Channel group to Rails profile, when `ActionCable` is loaded. See [#492](https://github.com/colszowka/simplecov/pull/492) (thanks @BenMorganIO)
87
+ * 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)
88
+
89
+ ## Bugfixes
90
+
91
+ * Fix parallel_tests when a thread ends up running no tests. See [#533](https://github.com/colszowka/simplecov/pull/533) (thanks @cshaffer)
92
+ * Skip the `:nocov:` comments along with the code that they skip. See [#551](https://github.com/colszowka/simplecov/pull/551) (thanks @ebiven)
93
+ * Fix crash when Home environment variable is unset. See [#482](https://github.com/colszowka/simplecov/pull/482) (thanks @waldyr)
94
+ * Make track_files work again when explicitly setting it to nil. See [#463](https://github.com/colszowka/simplecov/pull/463) (thanks @craiglittle)
95
+ * 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)
96
+
97
+ 0.13.0 2017-01-25 ([changes](https://github.com/colszowka/simplecov/compare/v0.12.0...v0.13.0))
98
+ ==========
99
+
100
+ ## Enhancements
101
+
102
+ * 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)
103
+ * 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)
104
+
105
+ ## Bugfixes
106
+
107
+ * Fix merging of resultsets if a file is missing on one side. See [#513](https://github.com/colszowka/simplecov/pull/513) (thanks @hanazuki)
108
+ * Fix Ruby 2.4 deprecation warnings by using Integer instead of Fixnum. See [#523](https://github.com/colszowka/simplecov/pull/523) (thanks @nobu)
109
+ * Force Ruby 2 to json 2. See [dc7417d50](https://github.com/colszowka/simplecov/commit/dc7417d5049b1809cea214314c15dd93a5dd964f) (thanks @amatsuda)
110
+ * Various other gem dependency fixes for different gems on different ruby versions. (thanks @amatsuda)
111
+
112
+ 0.12.0 2016-07-02 ([changes](https://github.com/colszowka/simplecov/compare/v0.11.2...v0.12.0))
113
+ =================
114
+
115
+ ## Enhancements
116
+
117
+ * Add support for JSON versions 2.x
118
+
119
+ ## Bugfixes
120
+
121
+ * Fix coverage rate of the parallel_tests. See [#441](https://github.com/colszowka/simplecov/pull/441) (thanks @sinsoku)
122
+ * 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)
123
+
124
+ 0.11.2 2016-02-03 ([changes](https://github.com/colszowka/simplecov/compare/v0.11.1...v0.11.2))
125
+ =================
126
+
127
+ ## Enhancements
128
+
129
+ * Do not globally pollute Array and Hash with `merge_resultset` utility methods. See [#449](https://github.com/colszowka/simplecov/pull/449) (thanks @amatsuda)
130
+ * Do not `mkdir_p` the `coverage_path` on every access of the method (See [#453](https://github.com/colszowka/simplecov/pull/453) (thanks @paddor)
131
+ * Fixes a Ruby warning related to the `track_files` configuration. See [#447](https://github.com/colszowka/simplecov/pull/447) (thanks @craiglittle)
132
+ * Add a group for background jobs to default Rails profile. See [#442](https://github.com/colszowka/simplecov/pull/442) (thanks @stve)
133
+
134
+ ## Bugfixes
135
+
136
+ * Fix root_filter evaluates SimpleCov.root before initialization. See [#437](https://github.com/colszowka/simplecov/pull/437) (thanks @tmtm)
137
+
138
+ 0.11.1 2015-12-01 ([changes](https://github.com/colszowka/simplecov/compare/v0.11.0...v0.11.1))
139
+ =================
140
+
141
+ ## Enhancements
142
+
143
+ ## Bugfixes
144
+
145
+ * Fixed regression in `MultiFormatter.[]` with multiple arguments. See [#431](https://github.com/colszowka/simplecov/pull/431) (thanks @dillondrobena)
146
+
147
+ 0.11.0 2015-11-29 ([changes](https://github.com/colszowka/simplecov/compare/v0.10.0...v0.11.0))
148
+ =================
149
+
150
+ ## Enhancements
151
+
152
+ * Added `SimpleCov.minimum_coverage_by_file` for per-file coverage thresholds. See [#392](https://github.com/colszowka/simplecov/pull/392) (thanks @ptashman)
153
+ * 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)
154
+ * Speed up `root_filter` by an order of magnitude. See [#396](https://github.com/colszowka/simplecov/pull/396) (thanks @raszi)
155
+
156
+ ## Bugfixes
157
+
158
+ * Fix warning about global variable `$ERROR_INFO`. See [#400](https://github.com/colszowka/simplecov/pull/400) (thanks @amatsuda)
159
+ * 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)
160
+
161
+ 0.10.0 2015-04-18 ([changes](https://github.com/colszowka/simplecov/compare/v0.9.2...v0.10.0))
162
+ =================
163
+
164
+ ## Enhancements
165
+
166
+ * Add writeup about using with Spring to README. See [#341](https://github.com/colszowka/simplecov/issues/341) (thanks @swrobel and @onebree)
167
+ * Add support to pass in an Array when creating filter groups (original PR #104)
168
+ * Filter `/vendor/bundle` by default. See [#331](https://github.com/colszowka/simplecov/pull/331) (thanks @andyw8)
169
+ * Add some helpful singleton methods to the version string.
170
+ * Allow array to be passed in a filter. See [375](https://github.com/colszowka/simplecov/pull/375) (thanks @JanStevens)
171
+ * Enforce consistent code formatting with RuboCop.
172
+
173
+ ## Bugfixes
174
+
175
+ * Fix order dependencies in unit tests. See [#376](https://github.com/colszowka/simplecov/pull/376) (thanks @hugopeixoto)
176
+ * 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)
177
+
178
+ 0.9.2, 2015-02-18 ([changes](https://github.com/colszowka/simplecov/compare/v0.9.1...v0.9.2))
179
+ =================
180
+
181
+ This is a minor bugfix release for simplecov-html, released as `0.9.0`. Due to the tight version constraint in the gemspec
182
+ a new release of simplecov had to be shipped to allow using simplecov-html `~> 0.9.0`.
183
+
184
+ * The browser back / forward button should now work again. See [#36](https://github.com/colszowka/simplecov-html/pull/36) and
185
+ [#35](https://github.com/colszowka/simplecov-html/pull/35). Thanks @whatasunnyday and @justinsteele for submitting PRs to fix this.
186
+ * Fix "warning: possibly useless use of a variable in void context" See [#31](https://github.com/colszowka/simplecov-html/pull/31). Thanks @cbandy
187
+ * Always use binary file format. See [#32](https://github.com/colszowka/simplecov-html/pull/32). Thanks @andy128k
188
+ * Avoid slow file output with JRuby/Windows. See [#16](https://github.com/colszowka/simplecov-html/pull/16). Thanks @pschambacher
189
+
190
+ Other than the release includes a bunch of mostly documentation improvements:
191
+
192
+ * Update Rails path for Rails 4+. See [#336](https://github.com/colszowka/simplecov/pull/336). Thanks @yazinsai
193
+ * Encourage use of .simplecov to avoid lost files. See [#338](https://github.com/colszowka/simplecov/pull/338). thanks @dankohn
194
+ * Specified in the gemspec that simplecov needs ruby 1.8.7. See [#343](https://github.com/colszowka/simplecov/pull/343). thanks @iainbeeston
195
+ * Fix mispointed link in CHANGELOG.md. See [#353](https://github.com/colszowka/simplecov/pull/353). Thanks @dleve123
196
+ * Improve command name docs. See [#356](https://github.com/colszowka/simplecov/pull/356). Thanks @gtd
197
+
198
+
199
+
200
+ 0.9.1, 2014-09-21 ([changes](https://github.com/colszowka/simplecov/compare/v0.9.0...v0.9.1))
201
+ =================
202
+
203
+ ## Bugfixes
204
+
205
+ * In 0.9.0, we introduced a regression that made SimpleCov no-op mode fail on Ruby 1.8, while
206
+ dropping 1.8 support altogether is announced only for v1.0. This has been fixed.
207
+ See [#333](https://github.com/colszowka/simplecov/issues/333) (thanks (@sferik)
208
+
209
+
210
+ 0.9.0, 2014-07-17 ([changes](https://github.com/colszowka/simplecov/compare/v0.8.2...v0.9.0))
211
+ =================
212
+
213
+ **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!**
214
+
215
+ ## Enhancements
216
+
217
+ * New interface to specify multiple formatters.
218
+ See [#317](https://github.com/colszowka/simplecov/pull/317) (thanks @sferik)
219
+ * Document in the README how to exclude code from coverage reports,
220
+ and that the feature shouldn't be abused for skipping untested
221
+ private code.
222
+ See [#304](https://github.com/colszowka/simplecov/issues/304)
223
+ * Clarify Ruby version support.
224
+ See [#279](https://github.com/colszowka/simplecov/pull/279) (thanks @deivid-rodriguez)
225
+
226
+ ## Bugfixes
227
+
228
+ * Ensure calculations return Floats, not Fixnum or Rational. Fixes segfaults with mathn.
229
+ See [#245](https://github.com/colszowka/simplecov/pull/245) (thanks to @bf4)
230
+ * Using `Kernel.exit` instead of exit to avoid uncaught throw :IRB_EXIT when
231
+ exiting irb sessions.
232
+ See [#287](https://github.com/colszowka/simplecov/pull/287) (thanks @wless1)
233
+ See [#285](https://github.com/colszowka/simplecov/issues/285)
234
+ * Does not look for .simplecov in ~/ when $HOME is not set.
235
+ See [#311](https://github.com/colszowka/simplecov/pull/311) (thanks @lasseebert)
236
+ * Exit with code only if it's Numeric > 0.
237
+ See [#302](https://github.com/colszowka/simplecov/pull/302) (thanks @hajder)
238
+ * Make default filter case insensitive.
239
+ See [#280](https://github.com/colszowka/simplecov/pull/280) (thanks @ryanatball)
240
+ * Improve regexp that matches functional tests.
241
+ See [#276](https://github.com/colszowka/simplecov/pull/276) (thanks @sferik)
242
+ * 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)
243
+ * Fix global config load.
244
+ See [#311](https://github.com/colszowka/simplecov/pull/311) (thanks @lasseebert)
245
+
246
+ v0.8.2, 2013-11-20 ([changes](https://github.com/colszowka/simplecov/compare/v0.8.1...v0.8.2))
247
+ ==================
248
+
249
+ ## Bugfixes
250
+
251
+ * Replaced the locking behaviour [via lockfile gem](https://github.com/colszowka/simplecov/pull/185) with
252
+ plain Ruby explicit file locking when merging results. This should make simplecov merging to behave well
253
+ on Windows again.
254
+ See [#258](https://github.com/colszowka/simplecov/issues/258) and
255
+ [#223](https://github.com/colszowka/simplecov/pull/223) (thanks to @tomykaira)
256
+
257
+ v0.8.1, 2013-11-10 ([changes](https://github.com/colszowka/simplecov/compare/v0.8.0...v0.8.1))
258
+ ==================
259
+
260
+ ## Bugfixes
261
+
262
+ * Fixed a regression introduced in 0.8.0 - the Forwardable STDLIB module is now required explicitly.
263
+ See [#256](https://github.com/colszowka/simplecov/pull/256) (thanks to @kylev)
264
+
265
+ v0.8.0, 2013-11-10 ([changes](https://github.com/colszowka/simplecov/compare/v0.7.1...v0.8.0))
266
+ ==================
267
+
268
+ **Note: Yanked the same day because of the regression that 0.8.1 fixes, see above**
269
+
270
+ ## TL;DR
271
+
272
+ It's been way too long since the last official release 0.7.1, but this was partly due to it proving itself
273
+ quite stable in most circumstances. This release brings various further stability improvements to result set merging
274
+ (especially when working with parallel_tests), the configuration, source file encodings, and command name guessing.
275
+
276
+ 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
277
+ Ruby 1.9+, and will not try to detect or bail silently on older Ruby versions. An appropriate deprecation warning
278
+ has been added.
279
+
280
+ ## Features
281
+
282
+ * Configuration blocks now have access to variables and methods outside of the block's scope.
283
+ See [#238](https://github.com/colszowka/simplecov/pull/238) (thanks to @ms-tg)
284
+ * You can now have a global `~/.simplecov` configuration file.
285
+ See [#195](https://github.com/colszowka/simplecov/pull/195) (thanks to @spagalloco)
286
+ * simplecov-html now uses the MIT-licensed colorbox plugin. Some adjustments when viewing source files,
287
+ including retaining the currently open file on refresh have been added.
288
+ See [simplecov-html #15](https://github.com/colszowka/simplecov-html/pull/15) (thanks to @chetan)
289
+ * Adds support for Rails 4 command guessing, removes default group `vendor/plugins`.
290
+ See [#181](https://github.com/colszowka/simplecov/pull/181) and
291
+ [#203](https://github.com/colszowka/simplecov/pull/203) (thanks to @semanticart and @phallstrom)
292
+ * You can now load simplecov without the default settings by doing `require 'simplecov/no_defaults'`
293
+ or setting `ENV['SIMPLECOV_NO_DEFAULTS']`. Check `simplecov/defaults` to see what preconfigurations are getting
294
+ dropped by using this. See [#209](https://github.com/colszowka/simplecov/pull/209) (thanks to @ileitch)
295
+ * The result set merging now uses the `lockfile` gem to avoid race conditions.
296
+ See [#185](https://github.com/colszowka/simplecov/pull/185) (thanks to @jshraibman-mdsol).
297
+ * Automatically detect the usage of parallel_tests and adjust the command name with the test env number accordingly,
298
+ See [#64](https://github.com/colszowka/simplecov/issues/64) and
299
+ [#185](https://github.com/colszowka/simplecov/pull/185) (thanks to @jshraibman-mdsol).
300
+
301
+ ## Enhancements
302
+
303
+ * Rename adapters to "profiles" given that they are bundles of settings. The old adapter methods are
304
+ deprecated, but remain available for now.
305
+ See [#207](https://github.com/colszowka/simplecov/pull/207) (thanks to @mikerobe)
306
+ * Tweaks to the automatic test suite naming. In particular, `rspec/features` should now
307
+ be correctly attributed to RSpec, not Cucumber.
308
+ See [#212](https://github.com/colszowka/simplecov/pull/212) (thanks to @ersatzryan and @betelgeuse)
309
+ * MiniTest should now be identified correctly by the command name guesser.
310
+ See [#244](https://github.com/colszowka/simplecov/pull/244) (thanks to @envygeeks)
311
+ * Makes SimpleCov resilient to inclusion of mathn library.
312
+ See [#175](https://github.com/colszowka/simplecov/pull/175) and
313
+ [#140](https://github.com/colszowka/simplecov/issues/140) (thanks to @scotje)
314
+ * Allow coverage_dir to be an absolute path.
315
+ * See [#190](https://github.com/colszowka/simplecov/pull/190) (thanks to @jshraibman-mdsol)
316
+ * The internal cucumber test suite now uses Capybara 2.
317
+ See [#206](https://github.com/colszowka/simplecov/pull/206) (thanks to @infertux)
318
+ * Work-arounds for the Coverage library shipped in JRuby 1.6 to behave in line with MRI.
319
+ See [#174](https://github.com/colszowka/simplecov/pull/174) (thanks to @grddev)
320
+ * Fix warning: instance variable @exit_status not initialized.
321
+ See [#242](https://github.com/colszowka/simplecov/pull/242) and
322
+ [#213](https://github.com/colszowka/simplecov/pull/213) (thanks to @sferik and @infertux)
323
+
324
+ ## Bugfixes
325
+
326
+ * Correct result calculations for people using :nocov: tags.
327
+ See [#215](https://github.com/colszowka/simplecov/pull/215) (thanks to @aokolish)
328
+ * Average hits per line for groups of files is now computed correctly.
329
+ See [#192](http://github.com/colszowka/simplecov/pull/192) and
330
+ [#179](http://github.com/colszowka/simplecov/issues/179) (thanks to @graysonwright)
331
+ * Compatibility with BINARY internal encoding.
332
+ See [#194](https://github.com/colszowka/simplecov/pull/194) and
333
+ [#127](https://github.com/colszowka/simplecov/issues/127) (thanks to @justfalter)
334
+ * Special characters in `SimpleCov.root` are now correctly escaped before being used as a RegExp.
335
+ See [#204](https://github.com/colszowka/simplecov/issues/204) and
336
+ [#237](https://github.com/colszowka/simplecov/pull/237) (thanks to @rli9)
337
+
338
+ v0.7.1, 2012-10-12 ([changes](https://github.com/colszowka/simplecov/compare/v0.7.0...v0.7.1))
339
+ ==================
340
+
341
+ * [BUGFIX] The gem packages of 0.7.0 (both simplecov and simplecov-html) pushed to Rubygems had some file
342
+ permission issues, leading to problems when installing SimpleCov in a root/system Rubygems install and then
343
+ trying to use it as a normal user (see https://github.com/colszowka/simplecov/issues/171, thanks @envygeeks
344
+ for bringing it up). The gem build process has been changed to always enforce proper permissions before packaging
345
+ to avoid this issue in the future.
346
+
347
+
348
+ v0.7.0, 2012-10-10 ([changes](https://github.com/colszowka/simplecov/compare/v0.6.4...v0.7.0))
349
+ ==================
350
+
351
+ * [FEATURE] The new `maximum_coverage_drop` and `minimum_coverage` now allow you to fail your build when the
352
+ coverage dropped by more than what you allowed or is below a minimum value required. Also, `refuse_coverage_drop` disallows
353
+ any coverage drops between test runs.
354
+ See https://github.com/colszowka/simplecov/pull/151, https://github.com/colszowka/simplecov/issues/11,
355
+ https://github.com/colszowka/simplecov/issues/90, and https://github.com/colszowka/simplecov/issues/96 (thanks to @infertux)
356
+ * [FEATURE] SimpleCov now ships with a built-in MultiFormatter which allows the easy usage of multiple result formatters at
357
+ the same time without the need to write custom wrapper code.
358
+ See https://github.com/colszowka/simplecov/pull/158 (thanks to @nikitug)
359
+ * [BUGFIX] The usage of digits, hyphens and underscores in group names could lead to broken tab navigation
360
+ in the default simplecov-html reports. See https://github.com/colszowka/simplecov-html/pull/14 (thanks to @ebelgarts)
361
+ * [REFACTORING] A few more ruby warnings removed. See https://github.com/colszowka/simplecov/issues/106 and
362
+ https://github.com/colszowka/simplecov/pull/139. (thanks to @lukejahnke)
363
+ * A [Pledgie button](https://github.com/colszowka/simplecov/commit/63cfa99f8658fa5cc66a38c83b3195fdf71b9e93) for those that
364
+ feel generous :)
365
+ * The usual bunch of README fixes and documentation tweaks. Thanks to everyone who contributed those!
366
+
1
367
  v0.6.4, 2012-05-10 ([changes](https://github.com/colszowka/simplecov/compare/v0.6.3...v0.6.4))
2
- -------------------
368
+ ==================
3
369
 
4
370
  * [BUGFIX] Encoding issues with ISO-8859-encoded source files fixed.
5
371
  See https://github.com/colszowka/simplecov/pull/117. (thanks to @Deradon)
@@ -11,7 +377,7 @@ v0.6.4, 2012-05-10 ([changes](https://github.com/colszowka/simplecov/compare/v0.
11
377
 
12
378
 
13
379
  v0.6.3, 2012-05-10 ([changes](https://github.com/colszowka/simplecov/compare/v0.6.2...v0.6.3))
14
- -------------------
380
+ ==================
15
381
 
16
382
  * [BUGFIX] Modified the API-changes for newer multi_json versions introduced with #122 and v0.6.2 so
17
383
  they are backwards-compatible with older multi_json gems in order to avoid simplecov polluting
@@ -21,19 +387,19 @@ v0.6.3, 2012-05-10 ([changes](https://github.com/colszowka/simplecov/compare/v0.
21
387
  multi_json gems and ensure the above actually works :)
22
388
 
23
389
  v0.6.2, 2012-04-20 ([changes](https://github.com/colszowka/simplecov/compare/v0.6.1...v0.6.2))
24
- -------------------
390
+ ==================
25
391
 
26
392
  * [Updated to latest version of MultiJSON and its new API (thanks to @sferik and @ronen).
27
393
  See https://github.com/colszowka/simplecov/pull/122
28
394
 
29
395
  v0.6.1, 2012-02-24 ([changes](https://github.com/colszowka/simplecov/compare/v0.6.0...v0.6.1))
30
- -------------------
396
+ ==================
31
397
 
32
398
  * [BUGFIX] Don't force-load Railtie on Rails < 3. Fixes regression introduced with
33
399
  #83. See https://github.com/colszowka/simplecov/issues/113
34
400
 
35
401
  v0.6.0, 2012-02-22 ([changes](https://github.com/colszowka/simplecov/compare/v0.5.4...v0.6.0))
36
- -------------------
402
+ ==================
37
403
 
38
404
  * [FEATURE] Auto-magic `rake simplecov` task for rails
39
405
  (see https://github.com/colszowka/simplecov/pull/83, thanks @sunaku)
@@ -49,7 +415,7 @@ v0.6.0, 2012-02-22 ([changes](https://github.com/colszowka/simplecov/compare/v0.
49
415
  list of changes: https://github.com/colszowka/simplecov/compare/v0.5.4...v0.6.0
50
416
 
51
417
  v0.5.4, 2011-10-12 ([changes](https://github.com/colszowka/simplecov/compare/v0.5.3...v0.5.4))
52
- -------------------
418
+ ==================
53
419
 
54
420
  * Do not give exit code 0 when there are exceptions prior to tests
55
421
  (see https://github.com/colszowka/simplecov/issues/41, thanks @nbogie)
@@ -62,7 +428,7 @@ v0.5.4, 2011-10-12 ([changes](https://github.com/colszowka/simplecov/compare/v0.
62
428
  * Readme formatted in Markdown :)
63
429
 
64
430
  v0.5.3, 2011-09-13 ([changes](https://github.com/colszowka/simplecov/compare/v0.5.2...v0.5.3))
65
- -------------------
431
+ ==================
66
432
 
67
433
  * Fix for encoding issues that came from the nocov processing mechanism
68
434
  (see https://github.com/colszowka/simplecov/issues/71)
@@ -77,13 +443,13 @@ v0.5.3, 2011-09-13 ([changes](https://github.com/colszowka/simplecov/compare/v0.
77
443
  alias SimpleCov.skip_token)
78
444
 
79
445
  v0.5.2, 2011-09-12 ([changes](https://github.com/colszowka/simplecov/compare/v0.5.1...v0.5.2))
80
- -------------------
446
+ ==================
81
447
 
82
448
  * Another fix for a bug in JSON processing introduced with MultiJSON in 0.5.1
83
449
  (see https://github.com/colszowka/simplecov/pull/75, thanks @sferik)
84
450
 
85
451
  v0.5.1, 2011-09-12 ([changes](https://github.com/colszowka/simplecov/compare/v0.5.0...v0.5.1))
86
- -------------------
452
+ ==================
87
453
  **Note: Yanked 2011-09-12 because the MultiJSON-patch had a crucial bug**
88
454
 
89
455
  * Fix for invalid gemspec dependency string (see https://github.com/colszowka/simplecov/pull/70,
@@ -94,7 +460,7 @@ v0.5.1, 2011-09-12 ([changes](https://github.com/colszowka/simplecov/compare/v0.
94
460
  and https://github.com/colszowka/simplecov/pull/74, thanks @sferik)
95
461
 
96
462
  v0.5.0, 2011-09-09 ([changes](https://github.com/colszowka/simplecov/compare/v0.4.2...v0.5.4))
97
- -------------------
463
+ ==================
98
464
  **Note: Yanked 2011-09-09 because of trouble with the gemspec.**
99
465
 
100
466
  * JSON is now used instead of YAML for resultset caching (used for merging). Should resolve
@@ -115,7 +481,7 @@ v0.5.0, 2011-09-09 ([changes](https://github.com/colszowka/simplecov/compare/v0.
115
481
  <pre>
116
482
  #:nocov:
117
483
  def skipped
118
- @foo * 2
484
+ @foo * 2
119
485
  end
120
486
  #:nocov:
121
487
  </pre>
@@ -138,4 +504,4 @@ v0.5.0, 2011-09-09 ([changes](https://github.com/colszowka/simplecov/compare/v0.
138
504
  * The display of source files has been improved a lot. Weird scrolling trouble, out-of-scope line hit counts
139
505
  and such should be a thing of the past. Also, it is prettier now.
140
506
  * Source files are now syntax highlighted
141
- * File paths no longer have that annoying './' in front of them
507
+ * File paths no longer have that annoying './' in front of them