samvera / maintenance

Organizing repository for the Core Components Maintenance Interest Group.
Apache License 2.0
0 stars 3 forks source link

Remove the `simplecov` requirement for promoting Core Components #126

Open jrgriffiniii opened 2 years ago

jrgriffiniii commented 2 years ago

As the requirements for Core Components have been shifting from the time at which the original guidelines have shifted, this issue is a request to deprecate two related requirements for promotion:

  1. Good unit test coverage measured by community (e.g. 100% or 75% of what’s important)
  2. uses Coverage tool (coveralls or simplecov)

coveralls has been unreliable with regards to the analysis of code coverage analysis in past maintenance contributions, which simplecov has also presented issues regarding the threshold coverage at which each Gem should be maintained.

Further, there exist cases in which, due to the shift in available labor needed to increase or maintain the recommended 75%-100% threshold, this will render promoting components where required will become impossible. One such example is https://github.com/samvera/active_fedora, where the coverage is currently reported as 65%: https://coveralls.io/github/samvera/active_fedora?branch=main.

Removing these requirements would also ensure that all newer contributors need not feel obligated to configure code coverage analysis tools such as simplecov, and can instead focus upon crucial elements of functionality within the code base.

jrochkind commented 2 years ago

+1

I'm curious if anyone can even figure out what simplecov currently reports for hyrax, where it is theoretically configured.

I think few if anyone have been using these reports for some time; as we try to maintain some legacy gems we are running into trouble where simplecov isn't working, easier to remove it than to spend time trying to fix it if it's not providing much value. See https://github.com/samvera/questioning_authority/pull/362 and https://github.com/samvera/browse-everything/pull/401

jrgriffiniii commented 2 years ago

After reviewing https://github.com/simplecov-ruby/simplecov, I can perhaps also augment this with a proposed set of recommendations for analyzing test coverage and persisting test coverage reports for CircleCI.