Until this morning, code coverage for my package GitHub - ufechner7/FLORIDyn.jl: Dynamic wind farm simulation software was displayed fine. Now it says “codecov unknown”. What could be the reason?
The tests look fine, for example this one: Improve coverage.jl · ufechner7/FLORIDyn.jl@9c61c98 · GitHub
It says:
==> Running upload-coverage
./codecov upload-coverage --git-service github --file lcov.info --gcov-executable gcov
info - 2025-07-26 23:00:59,151 -- ci service found: github-actions
warning - 2025-07-26 23:00:59,160 -- No config file could be found. Ignoring config.
warning - 2025-07-26 23:00:59,189 -- xcrun is not installed or can't be found.
warning - 2025-07-26 23:00:59,192 -- No gcov data found.
warning - 2025-07-26 23:00:59,192 -- coverage.py is not installed or can't be found.
info - 2025-07-26 23:00:59,220 -- Found 2 coverage files to report
info - 2025-07-26 23:00:59,220 -- > /home/runner/work/FLORIDyn.jl/FLORIDyn.jl/lcov.info
info - 2025-07-26 23:00:59,220 -- > /home/runner/work/FLORIDyn.jl/FLORIDyn.jl/scripts/coverage.jl
info - 2025-07-26 23:00:59,561 -- Your upload is now processing. When finished, results will be available at: https://app.codecov.io/github/ufechner7/FLORIDyn.jl/commit/9c61c9898472b195b09a03caf8709b79356b179c
info - 2025-07-26 23:00:59,731 -- Process Upload complete
I cannot see any error mesage, the coverage file was created and uploaded succesfully. Still the web page says: “No files covered by tests were changed”.
Which is wrong.
I now create my coverage reports locally, using the following script:
# Copyright (c) 2025 Uwe Fechner
# SPDX-License-Identifier: BSD-3-Clause
using Pkg
function globaldependencies()
projectpath = Pkg.project().path
basepath, _ = splitdir(projectpath)
Pkg.activate()
globaldependencies = keys(Pkg.project().dependencies)
Pkg.activate(basepath)
globaldependencies
end
if !("LiveServer" in globaldependencies())
println("Installing LiveServer globally!")
run(`julia -e 'using Pkg; Pkg.add("LiveServer")'`)
end
if !("LocalCoverage" in globaldependencies())
println("Installing LocalCoverage globally!")
run(`julia -e 'using Pkg; Pkg.add("LocalCoverage")'`)
end
using LocalCoverage
import LiveServer as LS
git_dir = pwd()
html_dir = tempdir()
coverage = generate_coverage("FLORIDyn"; run_test = true)
html_coverage(coverage; open = false, dir = html_dir)
LS.serve(launch_browser=true, dir=html_dir)
But it would be nice if it would work on the website, too.
Any idea?