JuliaCI / Coverage.jl

Take Julia code coverage and memory allocation results, do useful things with them
MIT License
174 stars 68 forks source link

Bug: Function declaration shown as missed although function body is hit #277

Closed briochemc closed 3 years ago

briochemc commented 4 years ago

So I have codecov setup on AIBECS.jl and it oddly shows the lines declaring functions as missed. Here is a screenshot of such a case:

Screen Shot 2020-08-12 at 12 08 29 am

and here is a link to a similar codecov report with the same bug.

@vtjnash mentioned on slack that it may be due to a recent change in how line coverage was stored, and suggested I file a bug report, so here it is!

DilumAluthge commented 4 years ago

@vtjnash ^

briochemc commented 4 years ago

Bump in case this got forgotten with GitHub's notification system?

Also saw that this bug is produced for the coverage of... Coverage.jl! See, e.g., https://codecov.io/gh/JuliaCI/Coverage.jl/src/master/src/codecovio.jl#L36

fingolfin commented 3 years ago

@vtjnash ping?

vtjnash commented 3 years ago

Those linked reports all look correct to me

briochemc commented 3 years ago

The line declaring the function looks green now, but still shows less hits than the function body, which cannot be correct, right?

fingolfin commented 3 years ago

https://codecov.io/gh/JuliaCI/Coverage.jl/src/master/src/codecovio.jl looks fine right now: those function FOO(...) lines should not be marked as code at all.

@briochemc do you have a current example that can be viewed in public?

briochemc commented 3 years ago

This changed again since my last message, the "declaring" lines function FOO(...) were marked as code 4 days ago... For the record, this is what I see today when I click on https://codecov.io/gh/JuliaCI/Coverage.jl/src/master/src/codecovio.jl#L36:

Screen Shot 2020-11-17 at 12 38 54 pm

So yes, this looks fine now! 😃 If the Coverage.jl example is fine then I guess the issue has been resolved?

@briochemc do you have a current example that can be viewed in public?

I'm not sure I understand what you mean? Both Coverage.jl and AIBECS.jl are public repositories and their coverages can be viewed "publicly", no?

vtjnash commented 3 years ago

The line declaring the function looks green now, but still shows less hits than the function body, which cannot be correct, right?

It's merging reports from multiple Julia versions, so that is correct.

It's public, but Github might be blocking codecovio from displaying the source code for unauthenticated users, which may be resulting in confusion when not logged in to codecovio also (https://community.codecov.io/t/github-api-forbidden/1295/5)