Hello community, here is the log from the commit of package rubygem-simplecov for openSUSE:Factory checked in at 2019-08-06 15:10:39 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/rubygem-simplecov (Old) and /work/SRC/openSUSE:Factory/.rubygem-simplecov.new.4126 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "rubygem-simplecov" Tue Aug 6 15:10:39 2019 rev:20 rq:717322 version:0.17.0 Changes: -------- --- /work/SRC/openSUSE:Factory/rubygem-simplecov/rubygem-simplecov.changes 2018-07-18 22:52:27.963254146 +0200 +++ /work/SRC/openSUSE:Factory/.rubygem-simplecov.new.4126/rubygem-simplecov.changes 2019-08-06 15:10:41.931765629 +0200 @@ -1,0 +2,23 @@ +Fri Jul 19 09:37:36 UTC 2019 - Stephan Kulow <co...@suse.com> + +- updated to version 0.17.0 + see installed CHANGELOG.md + + 0.17.0 (2019-07-02) + =================== + + Maintenance release with nice convenience features and important bugfixes. + 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. + + ## Enhancements + + * Per default filter hidden files and folders. See [#721](https://github.com/colszowka/simplecov/pull/721) (thanks [Renuo AG](https://www.renuo.ch)) + * 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)) + + ## Bugfixes + + * 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)) + * 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)) + * 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)) + +------------------------------------------------------------------- Old: ---- simplecov-0.16.1.gem New: ---- simplecov-0.17.0.gem ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ rubygem-simplecov.spec ++++++ --- /var/tmp/diff_new_pack.2QE3FD/_old 2019-08-06 15:10:42.643765299 +0200 +++ /var/tmp/diff_new_pack.2QE3FD/_new 2019-08-06 15:10:42.647765297 +0200 @@ -1,7 +1,7 @@ # # spec file for package rubygem-simplecov # -# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -12,7 +12,7 @@ # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. -# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# Please submit bugfixes or comments via https://bugs.opensuse.org/ # @@ -24,7 +24,7 @@ # Name: rubygem-simplecov -Version: 0.16.1 +Version: 0.17.0 Release: 0 %define mod_name simplecov %define mod_full_name %{mod_name}-%{version} ++++++ simplecov-0.16.1.gem -> simplecov-0.17.0.gem ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/CHANGELOG.md new/CHANGELOG.md --- old/CHANGELOG.md 2018-03-16 09:36:18.000000000 +0100 +++ new/CHANGELOG.md 2019-07-02 10:27:09.000000000 +0200 @@ -1,3 +1,20 @@ +0.17.0 (2019-07-02) +=================== + +Maintenance release with nice convenience features and important bugfixes. +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. + +## Enhancements + +* Per default filter hidden files and folders. See [#721](https://github.com/colszowka/simplecov/pull/721) (thanks [Renuo AG](https://www.renuo.ch)) +* 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)) + +## Bugfixes + +* 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)) +* 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)) +* 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)) + 0.16.1 (2018-03-16) =================== diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/README.md new/README.md --- old/README.md 2018-03-16 09:36:18.000000000 +0100 +++ new/README.md 2019-07-02 10:27:09.000000000 +0200 @@ -1,4 +1,4 @@ -SimpleCov [![Build Status](https://travis-ci.org/colszowka/simplecov.svg)][Continuous Integration] [![Dependency Status](https://gemnasium.com/colszowka/simplecov.svg)][Dependencies] [![Code Climate](https://codeclimate.com/github/colszowka/simplecov.svg)](https://codeclimate.com/github/colszowka/simplecov) [![Inline docs](http://inch-ci.org/github/colszowka/simplecov.svg)](http://inch-ci.org/github/colszowka/simplecov) +SimpleCov [![Build Status](https://travis-ci.org/colszowka/simplecov.svg)][Continuous Integration] [![Code Climate](https://codeclimate.com/github/colszowka/simplecov.svg)](https://codeclimate.com/github/colszowka/simplecov) [![Inline docs](http://inch-ci.org/github/colszowka/simplecov.svg)](http://inch-ci.org/github/colszowka/simplecov) ========= **Code coverage for Ruby** @@ -87,7 +87,11 @@ are not tracked by Git (optional): ``` - coverage + echo "coverage" >> .gitignore + ``` + Or if you use Windows: + ``` + echo coverage >> .gitignore ``` If you're making a Rails application, SimpleCov comes with built-in configurations (see below for information on profiles) @@ -135,17 +139,6 @@ <tr><th>Framework</th><th>Notes</th><th>Issue</th></tr> <tr> <th> - bootsnap - </th> - <td> - <a href="#want-to-use-bootsnap-with-simplecov">See section below.</a> - </td> - <td> - <a href="https://github.com/Shopify/bootsnap/issues/35">Shopify/bootsnap#35</a> - </td> - </tr> - <tr> - <th> parallel_tests </th> <td> @@ -630,41 +623,18 @@ If you're using [Spring](https://github.com/rails/spring) to speed up test suite runs and want to run SimpleCov along with them, you'll find that it often misreports coverage with the default config due to some sort of eager loading issue. Don't despair! -1. Change the following settings in `test.rb`. - - ```ruby - # For Rails - # Do not eager load code on boot - config.eager_load = false - ``` -2. Add your SimpleCov config, as you normally would, to your `spec_helper.rb` - (or `rails_helper.rb` for RSpec 3). If you have a `config/spring.rb` file - (or anything similar), add it to the start of such file. Here's a simple - version of what the config should look like: - - ```ruby - if ENV['RAILS_ENV'] == 'test' - require 'simplecov' - SimpleCov.start - end - ``` -3. Run `spring rspec <path>` as normal. Remember to run `spring stop` after - making important changes to your app or its specs! - -## Want to use bootsnap with SimpleCov? - -As mentioned in [this issue](https://github.com/Shopify/bootsnap/issues/35) iseq -loading/dumping doesn't work with coverage. Hence you need to deactivate it when -you run coverage so for instance when you use the environment `COVERAGE=true` to -decide that you want to gather coverage you can do: +One solution is to [explicitly call eager +load](https://github.com/colszowka/simplecov/issues/381#issuecomment-347651728) +in your `test_helper.rb` / `spec_helper.rb` after calling `SimpleCov.start`. ```ruby -Bootsnap.setup( - compile_cache_iseq: !ENV["COVERAGE"], # Compile Ruby code into ISeq cache, breaks coverage reporting. - # all those other options -) +require 'simplecov' +SimpleCov.start 'rails' +Rails.application.eager_load! ``` +Or you could remove `gem 'spring'` from your `Gemfile`. + ## Troubleshooting The **most common problem is that simplecov isn't required and started before everything else**. In order to track coverage for your whole application **simplecov needs to be the first one** so that it (and the underlying coverage library) can subsequently track loaded files and their usage. Binary files old/checksums.yaml.gz and new/checksums.yaml.gz differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/doc/alternate-formatters.md new/doc/alternate-formatters.md --- old/doc/alternate-formatters.md 2018-03-16 09:36:18.000000000 +0100 +++ new/doc/alternate-formatters.md 2019-07-02 10:27:09.000000000 +0200 @@ -10,6 +10,11 @@ A formatter that generates a coverage badge for use in your project's readme using ImageMagick. +#### [simplecov-small-badge](https://github.com/marcgrimme/simplecov-small-badge) +*by Marc Grimme* + +A formatter that generates a small coverage badge for use in your project's readme using the SVG. + #### [simplecov-cobertura](https://github.com/dashingrocket/simplecov-cobertura) *by Jesse Bowes* diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/simplecov/defaults.rb new/lib/simplecov/defaults.rb --- old/lib/simplecov/defaults.rb 2018-03-16 09:36:18.000000000 +0100 +++ new/lib/simplecov/defaults.rb 2019-07-02 10:27:09.000000000 +0200 @@ -6,12 +6,14 @@ require "simplecov/profiles/root_filter" require "simplecov/profiles/test_frameworks" require "simplecov/profiles/bundler_filter" +require "simplecov/profiles/hidden_filter" require "simplecov/profiles/rails" # Default configuration SimpleCov.configure do formatter SimpleCov::Formatter::HTMLFormatter load_profile "bundler_filter" + load_profile "hidden_filter" # Exclude files outside of SimpleCov.root load_profile "root_filter" end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/simplecov/profiles/hidden_filter.rb new/lib/simplecov/profiles/hidden_filter.rb --- old/lib/simplecov/profiles/hidden_filter.rb 1970-01-01 01:00:00.000000000 +0100 +++ new/lib/simplecov/profiles/hidden_filter.rb 2019-07-02 10:27:09.000000000 +0200 @@ -0,0 +1,5 @@ +# frozen_string_literal: true + +SimpleCov.profiles.define "hidden_filter" do + add_filter %r{^/\..*} +end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/simplecov/profiles/rails.rb new/lib/simplecov/profiles/rails.rb --- old/lib/simplecov/profiles/rails.rb 2018-03-16 09:36:18.000000000 +0100 +++ new/lib/simplecov/profiles/rails.rb 2019-07-02 10:27:09.000000000 +0200 @@ -7,7 +7,7 @@ add_filter %r{^/db/} add_group "Controllers", "app/controllers" - add_group "Channels", "app/channels" if defined?(ActionCable) + add_group "Channels", "app/channels" add_group "Models", "app/models" add_group "Mailers", "app/mailers" add_group "Helpers", "app/helpers" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/simplecov/source_file.rb new/lib/simplecov/source_file.rb --- old/lib/simplecov/source_file.rb 2018-03-16 09:36:18.000000000 +0100 +++ new/lib/simplecov/source_file.rb 2019-07-02 10:27:09.000000000 +0200 @@ -84,7 +84,7 @@ # The path to this source file relative to the projects directory def project_filename - @filename.sub(/^#{SimpleCov.root}/, "") + @filename.sub(Regexp.new("^#{Regexp.escape(SimpleCov.root)}"), "") end # The source code for this file. Aliased as :source diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/simplecov/version.rb new/lib/simplecov/version.rb --- old/lib/simplecov/version.rb 2018-03-16 09:36:18.000000000 +0100 +++ new/lib/simplecov/version.rb 2019-07-02 10:27:09.000000000 +0200 @@ -1,5 +1,5 @@ # frozen_string_literal: true module SimpleCov - VERSION = "0.16.1".freeze + VERSION = "0.17.0".freeze end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/simplecov.rb new/lib/simplecov.rb --- old/lib/simplecov.rb 2018-03-16 09:36:18.000000000 +0100 +++ new/lib/simplecov.rb 2019-07-02 10:27:09.000000000 +0200 @@ -90,6 +90,7 @@ # If we're using merging of results, store the current result # first (if there is one), then merge the results and return those if use_merging + wait_for_other_processes SimpleCov::ResultMerger.store_result(@result) if result? @result = SimpleCov::ResultMerger.merged_result end @@ -199,11 +200,16 @@ SimpleCov.at_exit.call - exit_status = SimpleCov.process_result(SimpleCov.result, exit_status) + # Don't modify the exit status unless the result has already been + # computed + exit_status = SimpleCov.process_result(SimpleCov.result, exit_status) if SimpleCov.result? # Force exit with stored status (see github issue #5) # unless it's nil or 0 (see github issue #281) - Kernel.exit exit_status if exit_status && exit_status > 0 + if exit_status && exit_status > 0 + $stderr.printf("SimpleCov failed with exit %d", exit_status) + Kernel.exit exit_status + end end # @api private @@ -212,7 +218,6 @@ # exit_status = SimpleCov.process_result(SimpleCov.result, exit_status) # def process_result(result, exit_status) - return exit_status unless SimpleCov.result? # Result has been computed return exit_status if exit_status != SimpleCov::ExitCodes::SUCCESS # Existing errors covered_percent = result.covered_percent.round(2) @@ -220,7 +225,7 @@ if result_exit_status == SimpleCov::ExitCodes::SUCCESS # No result errors write_last_run(covered_percent) end - result_exit_status + final_result_process? ? result_exit_status : SimpleCov::ExitCodes::SUCCESS end # @api private @@ -250,6 +255,21 @@ # # @api private + # + def final_result_process? + !defined?(ParallelTests) || ParallelTests.last_process? + end + + # + # @api private + # + def wait_for_other_processes + return unless defined?(ParallelTests) && final_result_process? + ParallelTests.wait_for_other_processes_to_finish + end + + # + # @api private # def write_last_run(covered_percent) SimpleCov::LastRun.write(:result => {:covered_percent => covered_percent}) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/metadata new/metadata --- old/metadata 2018-03-16 09:36:18.000000000 +0100 +++ new/metadata 2019-07-02 10:27:09.000000000 +0200 @@ -1,14 +1,14 @@ --- !ruby/object:Gem::Specification name: simplecov version: !ruby/object:Gem::Version - version: 0.16.1 + version: 0.17.0 platform: ruby authors: - Christoph Olszowka autorequire: bindir: bin cert_chain: [] -date: 2018-03-16 00:00:00.000000000 Z +date: 2019-07-02 00:00:00.000000000 Z dependencies: - !ruby/object:Gem::Dependency name: json @@ -62,16 +62,128 @@ name: bundler requirement: !ruby/object:Gem::Requirement requirements: - - - "~>" + - - ">=" - !ruby/object:Gem::Version - version: '1.9' + version: '0' type: :development prerelease: false version_requirements: !ruby/object:Gem::Requirement requirements: - - - "~>" + - - ">=" + - !ruby/object:Gem::Version + version: '0' +- !ruby/object:Gem::Dependency + name: rake + requirement: !ruby/object:Gem::Requirement + requirements: + - - ">=" + - !ruby/object:Gem::Version + version: '0' + type: :development + prerelease: false + version_requirements: !ruby/object:Gem::Requirement + requirements: + - - ">=" + - !ruby/object:Gem::Version + version: '0' +- !ruby/object:Gem::Dependency + name: rspec + requirement: !ruby/object:Gem::Requirement + requirements: + - - ">=" + - !ruby/object:Gem::Version + version: '0' + type: :development + prerelease: false + version_requirements: !ruby/object:Gem::Requirement + requirements: + - - ">=" + - !ruby/object:Gem::Version + version: '0' +- !ruby/object:Gem::Dependency + name: test-unit + requirement: !ruby/object:Gem::Requirement + requirements: + - - ">=" + - !ruby/object:Gem::Version + version: '0' + type: :development + prerelease: false + version_requirements: !ruby/object:Gem::Requirement + requirements: + - - ">=" + - !ruby/object:Gem::Version + version: '0' +- !ruby/object:Gem::Dependency + name: cucumber + requirement: !ruby/object:Gem::Requirement + requirements: + - - "<" + - !ruby/object:Gem::Version + version: '3' + type: :development + prerelease: false + version_requirements: !ruby/object:Gem::Requirement + requirements: + - - "<" + - !ruby/object:Gem::Version + version: '3' +- !ruby/object:Gem::Dependency + name: aruba + requirement: !ruby/object:Gem::Requirement + requirements: + - - ">=" + - !ruby/object:Gem::Version + version: '0' + type: :development + prerelease: false + version_requirements: !ruby/object:Gem::Requirement + requirements: + - - ">=" + - !ruby/object:Gem::Version + version: '0' +- !ruby/object:Gem::Dependency + name: capybara + requirement: !ruby/object:Gem::Requirement + requirements: + - - "<" + - !ruby/object:Gem::Version + version: '3' + type: :development + prerelease: false + version_requirements: !ruby/object:Gem::Requirement + requirements: + - - "<" + - !ruby/object:Gem::Version + version: '3' +- !ruby/object:Gem::Dependency + name: phantomjs + requirement: !ruby/object:Gem::Requirement + requirements: + - - ">=" + - !ruby/object:Gem::Version + version: '0' + type: :development + prerelease: false + version_requirements: !ruby/object:Gem::Requirement + requirements: + - - ">=" + - !ruby/object:Gem::Version + version: '0' +- !ruby/object:Gem::Dependency + name: poltergeist + requirement: !ruby/object:Gem::Requirement + requirements: + - - ">=" + - !ruby/object:Gem::Version + version: '0' + type: :development + prerelease: false + version_requirements: !ruby/object:Gem::Requirement + requirements: + - - ">=" - !ruby/object:Gem::Version - version: '1.9' + version: '0' description: Code coverage for Ruby 1.9+ with a powerful configuration library and automatic merging of coverage across test suites email: @@ -105,6 +217,7 @@ - lib/simplecov/no_defaults.rb - lib/simplecov/profiles.rb - lib/simplecov/profiles/bundler_filter.rb +- lib/simplecov/profiles/hidden_filter.rb - lib/simplecov/profiles/rails.rb - lib/simplecov/profiles/root_filter.rb - lib/simplecov/profiles/test_frameworks.rb @@ -134,8 +247,7 @@ - !ruby/object:Gem::Version version: '0' requirements: [] -rubyforge_project: -rubygems_version: 2.6.13 +rubygems_version: 3.0.1 signing_key: specification_version: 4 summary: Code coverage for Ruby 1.9+ with a powerful configuration library and automatic