Skip to content

Paths to files are not normalised and fail to be found #332

@gep13

Description

@gep13

The following problem exists with version 2.0.0 of the Cake.CodeCov Addin.

When setting the Files property of the CodecovSettings class, it does not take into account the file path separator, or attempt to do any normalisation of them.

As a result, when collecting strings that look something like the following:

C:\projects\cake-issues\BuildArtifacts\TestCoverage\coverlet\Cake-Issues-DocFx-Tests.net8.0.opencover.xml
C:/projects/cake-issues/BuildArtifacts/TestCoverage/coverlet/Cake-Issues-DocFx-Tests.net8.0.opencover.xml

The second file can be found, but the first one can't.

The was verified at the command line by directly executing the codecov.exe

Image

Here you will see at the top of the screenshot, the first execution, which includes forward slashes in the path, the file is not found, but in the second execution, which contians backslashes, the file is found correctly.

A workaround is possible by doing something like the following:

Image

But I think that this is something that should be handled directly in the addin.

From a previous conversation with @AdmiringWorm about this, I have the following notes:

I had a quick conversation with Kim about the Cake.Codecov addin, and he is happy for us to make changes to the addin to fix these problems, as long as we don't make any breaking changes.
His suggestion is that we add a new alias to the addin to introduce one that uses a collection of FilePath, rather than a collection of strings, and then obsolete the old one. Doing this will hopefully address the issue with the slashes, and then we can also work on addressing the issues with the , as the separator between the paths.

Ideally, if there is a fix put out for this, it would be addressed in both the 2.x and 3.x releases of this addin.

Metadata

Metadata

Assignees

Labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions