codecov-action icon indicating copy to clipboard operation
codecov-action copied to clipboard

[v4] exclude_lines from pyproject.toml not respected

Open jakkdl opened this issue 1 year ago • 5 comments

In https://github.com/python-trio/trio/pull/2951 we're trying to update to codecov-action@v4, and among other things we noticed a drop in coverage that seems to be due to our exclude_lines setting in pyproject.toml not being respected.

https://github.com/CoolCat467/trio/blob/c806b2056d6c39ee3399eadccb757874ca593f9f/pyproject.toml#L261-L282 ignores, among other things, if TYPE_CHECKING.*: and raise NotImplementedError, but looking at a file such as https://app.codecov.io/gh/python-trio/trio/pull/2951/blob/src/trio/_socket.py we can see lines matching those are marked as misses.

jakkdl avatar Mar 13 '24 14:03 jakkdl

@jakkdl thanks for writing in. Was this a problem before updating to v4? IOW, was the exclude_lines in pyproject.toml being honored on v3 (and still being honored)?

rohan-at-sentry avatar May 08 '24 16:05 rohan-at-sentry

Yeah it's working perfectly fine on v3, hence the drop in coverage when upgrading to v4 (because those lines are no longer excluded and are now seen as "missed").

jakkdl avatar May 09 '24 11:05 jakkdl

hi @jakkdl, just need some more details here to get my head clear. Do you have

  1. a CI link running codecov@v3 where a line is ignored
  2. a CI link running codecov@v4 where the line is NOT ignored
  3. a link to where in pyproject.toml this line is being marked as excluded
  4. the path and line number in question?

That would make tracking this done a bit easier.

thomasrockhu-codecov avatar May 09 '24 13:05 thomasrockhu-codecov

  1. https://app.codecov.io/gh/python-trio/trio/blob/master/src%2Ftrio%2F_socket.py#L28
  2. https://app.codecov.io/gh/python-trio/trio/blob/codecov_v4_repro_cov_fail/src%2Ftrio%2F_socket.py#L28
  3. https://github.com/python-trio/trio/blob/c806b2056d6c39ee3399eadccb757874ca593f9f/pyproject.toml#L261
  4. 1 and 2 point directly to the path/lines in question

The original PR I linked in the OP has had changes since, such that it doesn't display the problem (but I think that's because something else broke, rather than us finding a workaround).

jakkdl avatar May 10 '24 12:05 jakkdl