From 7131c32125ae4634ea8590ffc5152b2be0386beb Mon Sep 17 00:00:00 2001 From: Sajith Sasidharan Date: Tue, 18 Aug 2020 16:16:22 -0400 Subject: [PATCH 1/7] Unpin coverage --- .gitignore | 6 ++++++ newsfragments/3384.minor | 0 setup.py | 2 +- 3 files changed, 7 insertions(+), 1 deletion(-) create mode 100644 newsfragments/3384.minor diff --git a/.gitignore b/.gitignore index 8191c173b1..c57aa2ee83 100644 --- a/.gitignore +++ b/.gitignore @@ -51,3 +51,9 @@ zope.interface-*.egg # This is the plaintext of the private environment needed for some CircleCI # operations. It's never supposed to be checked in. secret-env-plain + +# coverage 5.x writes a series of sqlite files. +/.coverage.* + +# ignore results of running integration tests. +/integration.eliot.json diff --git a/newsfragments/3384.minor b/newsfragments/3384.minor new file mode 100644 index 0000000000..e69de29bb2 diff --git a/setup.py b/setup.py index a35023b8b1..ed3456ccc5 100644 --- a/setup.py +++ b/setup.py @@ -377,7 +377,7 @@ def run(self): # coverage 5.0 breaks the integration tests in some opaque way. # This probably needs to be addressed in a more permanent way # eventually... - "coverage ~= 4.5", + "coverage", "mock", "tox", "pytest", From bdd07a7eccac431b11de086bd4e6f6e2585474e0 Mon Sep 17 00:00:00 2001 From: Sajith Sasidharan Date: Tue, 18 Aug 2020 16:23:20 -0400 Subject: [PATCH 2/7] Kick CircleCI into action --- newsfragments/3384.minor | 1 + 1 file changed, 1 insertion(+) diff --git a/newsfragments/3384.minor b/newsfragments/3384.minor index e69de29bb2..8592abb6bb 100644 --- a/newsfragments/3384.minor +++ b/newsfragments/3384.minor @@ -0,0 +1 @@ +Coverage is not pinned at ~= 4.5 anymore. From f558f80c518720a7a88d8f6fb7d9323586bdfe3c Mon Sep 17 00:00:00 2001 From: Sajith Sasidharan Date: Thu, 20 Aug 2020 13:52:43 -0400 Subject: [PATCH 3/7] Try coverage ~= 4.5 again for comparison Doing this so that we can compare results with the previous codecov.io report, which used coverage 5.2.1. --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index ed3456ccc5..a35023b8b1 100644 --- a/setup.py +++ b/setup.py @@ -377,7 +377,7 @@ def run(self): # coverage 5.0 breaks the integration tests in some opaque way. # This probably needs to be addressed in a more permanent way # eventually... - "coverage", + "coverage ~= 4.5", "mock", "tox", "pytest", From fa5904028d6d18a12eea455d7bd3cd895a72b7b3 Mon Sep 17 00:00:00 2001 From: Sajith Sasidharan Date: Thu, 20 Aug 2020 18:14:57 -0400 Subject: [PATCH 4/7] Turn some codecov knobs --- .codecov.yml | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 .codecov.yml diff --git a/.codecov.yml b/.codecov.yml new file mode 100644 index 0000000000..a94808db59 --- /dev/null +++ b/.codecov.yml @@ -0,0 +1,13 @@ +# Settings for codecov.io checks. +# +# Documentation is at https://docs.codecov.io/docs/codecov-yaml; for +# reference, see https://docs.codecov.io/docs/codecovyml-reference. +# +# To validate this file, use: +# +# curl --data-binary @.codecov.yml https://codecov.io/validate + +coverage: + round: nearest + range: 80..90 + precision: 2 From 9d88bc26d6703168e825b9f8a8c534b6bd77433d Mon Sep 17 00:00:00 2001 From: Sajith Sasidharan Date: Fri, 21 Aug 2020 10:00:14 -0400 Subject: [PATCH 5/7] Comment about what's what on codecov knobs --- .codecov.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.codecov.yml b/.codecov.yml index a94808db59..a5ad1a8f25 100644 --- a/.codecov.yml +++ b/.codecov.yml @@ -7,6 +7,9 @@ # # curl --data-binary @.codecov.yml https://codecov.io/validate +# Allow coverage % a precision of two decimals, and round to the +# nearest (for example, 89.9573456 to to 89.96). Coverage above 90% +# is good, below 80% is bad. coverage: round: nearest range: 80..90 From 93e45a336e619dcf1e69c68350bee791db8a142e Mon Sep 17 00:00:00 2001 From: Sajith Sasidharan Date: Fri, 21 Aug 2020 10:01:04 -0400 Subject: [PATCH 6/7] Turn codecov/project and codecov/patch knobs --- .codecov.yml | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/.codecov.yml b/.codecov.yml index a5ad1a8f25..6e6ed5533e 100644 --- a/.codecov.yml +++ b/.codecov.yml @@ -14,3 +14,19 @@ coverage: round: nearest range: 80..90 precision: 2 + + # Allow codecov/project a threshold of 90% (always aim for that much + # coverage), and allow codecov/patch a threshold of 1% (allow + # coverage to drop that much, but not less). That should be good + # enough for us. The defaults seem to leave red marks in GitHub CI + # checks in a rather arbitrary manner, probably because (1) by + # default comparison is with the parent commit; (2) computers are + # bad with floating point numbers. + status: + project: + default: + target: 90% + threshold: 1% + patch: + default: + threshold: 1% From 75e49681af85b0446e36b176bbf4e0ae19264104 Mon Sep 17 00:00:00 2001 From: Sajith Sasidharan Date: Fri, 21 Aug 2020 10:18:41 -0400 Subject: [PATCH 7/7] Drop decimals from codecov coverage percentages --- .codecov.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.codecov.yml b/.codecov.yml index 6e6ed5533e..c7f53f1a5b 100644 --- a/.codecov.yml +++ b/.codecov.yml @@ -7,13 +7,13 @@ # # curl --data-binary @.codecov.yml https://codecov.io/validate -# Allow coverage % a precision of two decimals, and round to the -# nearest (for example, 89.9573456 to to 89.96). Coverage above 90% -# is good, below 80% is bad. +# Allow coverage percentage a precision of zero decimals, and round to +# the nearest (for example, 89.957 to to 90; 89.497 to 89%). Coverage +# above 90% is good, below 80% is bad. coverage: round: nearest range: 80..90 - precision: 2 + precision: 0 # Allow codecov/project a threshold of 90% (always aim for that much # coverage), and allow codecov/patch a threshold of 1% (allow