-
Notifications
You must be signed in to change notification settings - Fork 386
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Could not write lines to file CoverletSourceRootsMapping - in use by another process #1155
Comments
Unfortunately at the moment |
I have the same issue. Looks like as a workaround we can build tests into a subdirectory of that centralized directory. |
@LevYas can you expand on your workaround? I'm using If this is a race condition (I expect it is as I run into about 75% of the time), can it be solved with some retry logic? I grabbed the following from the same
|
@MrOwen Sure. I have output setup per project for all my projects, and I use CI/CD. Here's how it looks like for test project:
|
Ah, that's what I was afraid of. I'm working on a project with 60 test projects... I actually ended up upgrading |
We had the same problem now. Our "workaround" for now was to only build with a single process instead of multiple. Not ideal though as the build will take longer once the solution grows. |
Same problem here. |
For now a possible solutions could be update coverlet to write the mapping in a folder like $(OutputPath)\CoverletSourceMappings\CoverletSourceRootsMapping_{Guid}` and merge/use when needed. |
Hello! Any development on this subject? It seems since we migrated to .net6, the bug occurs almost always. We did not have the problem before that. |
Yes, we observe the same - 85% chance of error, prior to net6 we haven't seen this error. |
Any word on the progress, or if the community should aim to assist on this fix? However, we continuously get the error, "The process cannot access the file '...\CoverletSourceRootsMapping' because it is being used by another process. This is problematic for our build machines. Thank you. |
It's on high priority, but didn't have time to work on it yet, bit busy times. Can someone provide a repro to speedups a bit the analysis? Coverlet is open source if someone wants to take this one I'm glad to review and help. |
We have the same issue, basically the scenario is:
Since this is a "build timing" bug related to writing to the same file, it is not 100% reproducable. However, I think a good fix would probably be to append or prefix the _sourceRootMappingFilePath: "$([MSBuild]::EnsureTrailingSlash('$(OutputPath)'))CoverletSourceRootsMapping -$(MSBuildProjectName)" This will ensure that the CoverletSourceRootsMapping file is unique per MSBuildProject (i.e. per Assembly) |
I'm all for @japj's suggestion, it's cleaner than a GUID suffix. If we created a branch for this, are there sufficient existing unit tests against this to support such a change? |
I don't think that is enough only update with the guid some code needs review https://github.com/coverlet-coverage/coverlet/blob/master/src/coverlet.core/Helpers/SourceRootTranslator.cs Tests are here https://github.com/coverlet-coverage/coverlet/blob/master/test/coverlet.integration.tests/DeterministicBuild.cs |
Thank you, Marco, for providing your insight & experience to help keep this moving 👍 |
I've started to work on this one the idea is to create the file mapping using some sort of hash for the "current" test container to avoid collision in case of solutions with more containers in the same output folder.
cc: @daveMueller |
Hi all, I've published a test package here https://f.feedz.io/marcorossignoli/coverletunofficial/nuget/index.json the versions are coverlet.collector 3.1.3-preview.7.gb1603b798b I need help, can someone give it a try and let me know if it's working? |
@MarcoRossignoli: I can confirm that |
thanks @bretthysuik can you confirm that in you output folder you see a list of Can someone else give a try to coverlet.msbuild |
Yes, a |
Works for me as well. |
Can someone cover the |
|
Thanks for the testing. |
Is there a target release date for the 3.1.3 version? |
Not yet, I'm having issue with this fix in CI...I need to investigate a bit more. |
Any update on the official 3.1.3 version? |
This fix is not yet merged...I'm having some hassle on tests and I'm a bit busy, I'll try to work on it asap. |
Any update on the 3.1.3 version? |
Any updates on the issue? |
unfortunately not at the moment I didn't have much time to work on it in last months the PR started here #1320 but there're some issue with testing in CI that doesn't repro on my local so more investigation is needed, if someone wants to take over it could be a huge help cc: @daveMueller |
@daveMueller did the fix..pls someone tomorrow can try the dogfood? https://github.com/coverlet-coverage/coverlet/blob/master/Documentation/ConsumeNightlyBuild.md |
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [coverlet.collector](https://togithub.com/coverlet-coverage/coverlet) | nuget | major | `3.2.0` -> `6.0.0` | --- ### Release Notes <details> <summary>coverlet-coverage/coverlet</summary> ### [`v6.0.0`](https://togithub.com/coverlet-coverage/coverlet/releases/tag/v6.0.0) Fixed \-Could not write lines to file CoverletSourceRootsMapping - in use by another process[https://github.com/coverlet-coverage/coverlet/issues/1155](https://togithub.com/coverlet-coverage/coverlet/issues/1155)5 -Incorrect coverage for methods returning IAsyncEnumerable in generic classes[https://github.com/coverlet-coverage/coverlet/issues/1383](https://togithub.com/coverlet-coverage/coverlet/issues/1383)3 -Wrong branch coverage for async methods .NET Standard 1.x[https://github.com/coverlet-coverage/coverlet/issues/1376](https://togithub.com/coverlet-coverage/coverlet/issues/1376)6 -Empty path exception in visual basic projects[https://github.com/coverlet-coverage/coverlet/issues/775](https://togithub.com/coverlet-coverage/coverlet/issues/775)5 -Allign published nuget package version to github release version[https://github.com/coverlet-coverage/coverlet/issues/1413](https://togithub.com/coverlet-coverage/coverlet/issues/1413)3 \-Sync nuget and github release version[https://github.com/coverlet-coverage/coverlet/issues/1122](https://togithub.com/coverlet-coverage/coverlet/issues/1122)22 Improvements \-Migration of the project to .NET 6.0[https://github.com/coverlet-coverage/coverlet/pull/1473](https://togithub.com/coverlet-coverage/coverlet/pull/1473)3 Breaking changes New parameter ExcludeAssembliesWithoutSources to control automatic assembly exclusion [https://github.com/coverlet-coverage/coverlet/issues/1164](https://togithub.com/coverlet-coverage/coverlet/issues/1164). The parameter InstrumentModulesWithoutLocalSources has been removed. since it can be handled by setting ExcludeAssembliesWithoutSources to None. The default heuristics for determining whether to instrument an assembly has been changed. In previous versions any missing source file was taken as a signal that it was a third-party project that shouldn't be instrumented, with exceptions for some common file name patterns for source generators. Now only assemblies where no source files at all can be found are excluded from instrumentation, and the code for detecting source generator files have been removed. To get back to the behaviour that at least one missing file is sufficient to exclude an assembly, set ExcludeAssembliesWithoutSources to MissingAny, or use assembly exclusion filters for more fine-grained control. [Diff between 3.2.0 and 6.0.0](https://togithub.com/coverlet-coverage/coverlet/compare/v5.7.2...v6.0.0) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://app.renovatebot.com/dashboard#github/cythral/brighid-commands). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS45Ny4wIiwidXBkYXRlZEluVmVyIjoiMzUuOTcuMCIsInRhcmdldEJyYW5jaCI6Im1hc3RlciJ9--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [coverlet.collector](https://togithub.com/coverlet-coverage/coverlet) | nuget | major | `3.2.0` -> `6.0.0` | --- ### Release Notes <details> <summary>coverlet-coverage/coverlet</summary> ### [`v6.0.0`](https://togithub.com/coverlet-coverage/coverlet/releases/tag/v6.0.0) Fixed \-Could not write lines to file CoverletSourceRootsMapping - in use by another process[https://github.com/coverlet-coverage/coverlet/issues/1155](https://togithub.com/coverlet-coverage/coverlet/issues/1155)5\ \-Incorrect coverage for methods returning IAsyncEnumerable in generic classes[https://github.com/coverlet-coverage/coverlet/issues/1383](https://togithub.com/coverlet-coverage/coverlet/issues/1383)3\ \-Wrong branch coverage for async methods .NET Standard 1.x[https://github.com/coverlet-coverage/coverlet/issues/1376](https://togithub.com/coverlet-coverage/coverlet/issues/1376)6\ \-Empty path exception in visual basic projects[https://github.com/coverlet-coverage/coverlet/issues/775](https://togithub.com/coverlet-coverage/coverlet/issues/775)5\ \-Align published nuget package version to github release version[https://github.com/coverlet-coverage/coverlet/issues/1413](https://togithub.com/coverlet-coverage/coverlet/issues/1413)3\ \-Sync nuget and github release versions[https://github.com/coverlet-coverage/coverlet/issues/1122](https://togithub.com/coverlet-coverage/coverlet/issues/1122)2 Improvements \-Migration of the project to .NET 6.0[https://github.com/coverlet-coverage/coverlet/pull/1473](https://togithub.com/coverlet-coverage/coverlet/pull/1473)3 Breaking changes New parameter ExcludeAssembliesWithoutSources to control automatic assembly exclusion [https://github.com/coverlet-coverage/coverlet/issues/1164](https://togithub.com/coverlet-coverage/coverlet/issues/1164). The parameter InstrumentModulesWithoutLocalSources has been removed. since it can be handled by setting ExcludeAssembliesWithoutSources to None. The default heuristics for determining whether to instrument an assembly has been changed. In previous versions any missing source file was taken as a signal that it was a third-party project that shouldn't be instrumented, with exceptions for some common file name patterns for source generators. Now only assemblies where no source files at all can be found are excluded from instrumentation, and the code for detecting source generator files have been removed. To get back to the behaviour that at least one missing file is sufficient to exclude an assembly, set ExcludeAssembliesWithoutSources to MissingAny, or use assembly exclusion filters for more fine-grained control. [Diff between 3.2.0 and 6.0.0](https://togithub.com/coverlet-coverage/coverlet/compare/v5.7.2...v6.0.0) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://app.renovatebot.com/dashboard#github/Testably/Testably.Abstractions). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS45Ny4wIiwidXBkYXRlZEluVmVyIjoiMzUuOTcuMCIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [coverlet.collector](https://togithub.com/coverlet-coverage/coverlet) | nuget | major | `3.2.0` -> `6.0.0` | --- ### Release Notes <details> <summary>coverlet-coverage/coverlet</summary> ### [`v6.0.0`](https://togithub.com/coverlet-coverage/coverlet/releases/tag/v6.0.0) Fixed \-Could not write lines to file CoverletSourceRootsMapping - in use by another process[https://github.com/coverlet-coverage/coverlet/issues/1155](https://togithub.com/coverlet-coverage/coverlet/issues/1155)5\ \-Incorrect coverage for methods returning IAsyncEnumerable in generic classes[https://github.com/coverlet-coverage/coverlet/issues/1383](https://togithub.com/coverlet-coverage/coverlet/issues/1383)3\ \-Wrong branch coverage for async methods .NET Standard 1.x[https://github.com/coverlet-coverage/coverlet/issues/1376](https://togithub.com/coverlet-coverage/coverlet/issues/1376)6\ \-Empty path exception in visual basic projects[https://github.com/coverlet-coverage/coverlet/issues/775](https://togithub.com/coverlet-coverage/coverlet/issues/775)5\ \-Align published nuget package version to github release version[https://github.com/coverlet-coverage/coverlet/issues/1413](https://togithub.com/coverlet-coverage/coverlet/issues/1413)3\ \-Sync nuget and github release versions[https://github.com/coverlet-coverage/coverlet/issues/1122](https://togithub.com/coverlet-coverage/coverlet/issues/1122)2 Improvements \-Migration of the project to .NET 6.0[https://github.com/coverlet-coverage/coverlet/pull/1473](https://togithub.com/coverlet-coverage/coverlet/pull/1473)3 Breaking changes New parameter ExcludeAssembliesWithoutSources to control automatic assembly exclusion [https://github.com/coverlet-coverage/coverlet/issues/1164](https://togithub.com/coverlet-coverage/coverlet/issues/1164). The parameter InstrumentModulesWithoutLocalSources has been removed. since it can be handled by setting ExcludeAssembliesWithoutSources to None. The default heuristics for determining whether to instrument an assembly has been changed. In previous versions any missing source file was taken as a signal that it was a third-party project that shouldn't be instrumented, with exceptions for some common file name patterns for source generators. Now only assemblies where no source files at all can be found are excluded from instrumentation, and the code for detecting source generator files have been removed. To get back to the behaviour that at least one missing file is sufficient to exclude an assembly, set ExcludeAssembliesWithoutSources to MissingAny, or use assembly exclusion filters for more fine-grained control. [Diff between 3.2.0 and 6.0.0](https://togithub.com/coverlet-coverage/coverlet/compare/v5.7.2...v6.0.0) </details> --- ### Configuration 📅 **Schedule**: Branch creation - "before 2am" (UTC), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://app.renovatebot.com/dashboard#github/ThorstenSauter/NoPlan). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS45Ny4wIiwidXBkYXRlZEluVmVyIjoiMzUuOTcuMCIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [coverlet.collector](https://togithub.com/coverlet-coverage/coverlet) | nuget | major | `3.2.0` -> `6.0.0` | --- ### Release Notes <details> <summary>coverlet-coverage/coverlet</summary> ### [`v6.0.0`](https://togithub.com/coverlet-coverage/coverlet/releases/tag/v6.0.0) Fixed \-Could not write lines to file CoverletSourceRootsMapping - in use by another process[https://github.com/coverlet-coverage/coverlet/issues/1155](https://togithub.com/coverlet-coverage/coverlet/issues/1155)5\ \-Incorrect coverage for methods returning IAsyncEnumerable in generic classes[https://github.com/coverlet-coverage/coverlet/issues/1383](https://togithub.com/coverlet-coverage/coverlet/issues/1383)3\ \-Wrong branch coverage for async methods .NET Standard 1.x[https://github.com/coverlet-coverage/coverlet/issues/1376](https://togithub.com/coverlet-coverage/coverlet/issues/1376)6\ \-Empty path exception in visual basic projects[https://github.com/coverlet-coverage/coverlet/issues/775](https://togithub.com/coverlet-coverage/coverlet/issues/775)5\ \-Align published nuget package version to github release version[https://github.com/coverlet-coverage/coverlet/issues/1413](https://togithub.com/coverlet-coverage/coverlet/issues/1413)3\ \-Sync nuget and github release versions[https://github.com/coverlet-coverage/coverlet/issues/1122](https://togithub.com/coverlet-coverage/coverlet/issues/1122)2 Improvements \-Migration of the project to .NET 6.0[https://github.com/coverlet-coverage/coverlet/pull/1473](https://togithub.com/coverlet-coverage/coverlet/pull/1473)3 Breaking changes New parameter ExcludeAssembliesWithoutSources to control automatic assembly exclusion [https://github.com/coverlet-coverage/coverlet/issues/1164](https://togithub.com/coverlet-coverage/coverlet/issues/1164). The parameter InstrumentModulesWithoutLocalSources has been removed. since it can be handled by setting ExcludeAssembliesWithoutSources to None. The default heuristics for determining whether to instrument an assembly has been changed. In previous versions any missing source file was taken as a signal that it was a third-party project that shouldn't be instrumented, with exceptions for some common file name patterns for source generators. Now only assemblies where no source files at all can be found are excluded from instrumentation, and the code for detecting source generator files have been removed. To get back to the behaviour that at least one missing file is sufficient to exclude an assembly, set ExcludeAssembliesWithoutSources to MissingAny, or use assembly exclusion filters for more fine-grained control. [Diff between 3.2.0 and 6.0.0](https://togithub.com/coverlet-coverage/coverlet/compare/v5.7.2...v6.0.0) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://app.renovatebot.com/dashboard#github/Testably/Testably.Architecture.Rules). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS45OC4wIiwidXBkYXRlZEluVmVyIjoiMzUuOTguMCIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Valentin Breuß <[email protected]>
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [coverlet.collector](https://togithub.com/coverlet-coverage/coverlet) | nuget | major | `3.2.0` -> `6.0.0` | | [coverlet.msbuild](https://togithub.com/coverlet-coverage/coverlet) | nuget | major | `3.2.0` -> `6.0.0` | --- ### Release Notes <details> <summary>coverlet-coverage/coverlet</summary> ### [`v6.0.0`](https://togithub.com/coverlet-coverage/coverlet/releases/tag/v6.0.0) Fixed \-Could not write lines to file CoverletSourceRootsMapping - in use by another process[https://github.com/coverlet-coverage/coverlet/issues/1155](https://togithub.com/coverlet-coverage/coverlet/issues/1155)5\ \-Incorrect coverage for methods returning IAsyncEnumerable in generic classes[https://github.com/coverlet-coverage/coverlet/issues/1383](https://togithub.com/coverlet-coverage/coverlet/issues/1383)3\ \-Wrong branch coverage for async methods .NET Standard 1.x[https://github.com/coverlet-coverage/coverlet/issues/1376](https://togithub.com/coverlet-coverage/coverlet/issues/1376)6\ \-Empty path exception in visual basic projects[https://github.com/coverlet-coverage/coverlet/issues/775](https://togithub.com/coverlet-coverage/coverlet/issues/775)5\ \-Align published nuget package version to github release version[https://github.com/coverlet-coverage/coverlet/issues/1413](https://togithub.com/coverlet-coverage/coverlet/issues/1413)3\ \-Sync nuget and github release versions[https://github.com/coverlet-coverage/coverlet/issues/1122](https://togithub.com/coverlet-coverage/coverlet/issues/1122)2 Improvements \-Migration of the project to .NET 6.0[https://github.com/coverlet-coverage/coverlet/pull/1473](https://togithub.com/coverlet-coverage/coverlet/pull/1473)3 Breaking changes New parameter ExcludeAssembliesWithoutSources to control automatic assembly exclusion [https://github.com/coverlet-coverage/coverlet/issues/1164](https://togithub.com/coverlet-coverage/coverlet/issues/1164). The parameter InstrumentModulesWithoutLocalSources has been removed. since it can be handled by setting ExcludeAssembliesWithoutSources to None. The default heuristics for determining whether to instrument an assembly has been changed. In previous versions any missing source file was taken as a signal that it was a third-party project that shouldn't be instrumented, with exceptions for some common file name patterns for source generators. Now only assemblies where no source files at all can be found are excluded from instrumentation, and the code for detecting source generator files have been removed. To get back to the behaviour that at least one missing file is sufficient to exclude an assembly, set ExcludeAssembliesWithoutSources to MissingAny, or use assembly exclusion filters for more fine-grained control. [Diff between 3.2.0 and 6.0.0](https://togithub.com/coverlet-coverage/coverlet/compare/v5.7.2...v6.0.0) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about these updates again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://app.renovatebot.com/dashboard#github/bruxisma/atmosphere). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNS45Ny4wIiwidXBkYXRlZEluVmVyIjoiMzUuOTcuMCIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==--> Signed-off-by: Renovate Bot <[email protected]> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [coverlet.msbuild](https://togithub.com/coverlet-coverage/coverlet) | `3.2.0` -> `6.0.0` | [![age](https://developer.mend.io/api/mc/badges/age/nuget/coverlet.msbuild/6.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/nuget/coverlet.msbuild/6.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/nuget/coverlet.msbuild/3.2.0/6.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/nuget/coverlet.msbuild/3.2.0/6.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>coverlet-coverage/coverlet (coverlet.msbuild)</summary> ### [`v6.0.0`](https://togithub.com/coverlet-coverage/coverlet/releases/tag/v6.0.0) Fixed \-Could not write lines to file CoverletSourceRootsMapping - in use by another process[https://github.com/coverlet-coverage/coverlet/issues/1155](https://togithub.com/coverlet-coverage/coverlet/issues/1155)5\ \-Incorrect coverage for methods returning IAsyncEnumerable in generic classes[https://github.com/coverlet-coverage/coverlet/issues/1383](https://togithub.com/coverlet-coverage/coverlet/issues/1383)3\ \-Wrong branch coverage for async methods .NET Standard 1.x[https://github.com/coverlet-coverage/coverlet/issues/1376](https://togithub.com/coverlet-coverage/coverlet/issues/1376)6\ \-Empty path exception in visual basic projects[https://github.com/coverlet-coverage/coverlet/issues/775](https://togithub.com/coverlet-coverage/coverlet/issues/775)5\ \-Align published nuget package version to github release version[https://github.com/coverlet-coverage/coverlet/issues/1413](https://togithub.com/coverlet-coverage/coverlet/issues/1413)3\ \-Sync nuget and github release versions[https://github.com/coverlet-coverage/coverlet/issues/1122](https://togithub.com/coverlet-coverage/coverlet/issues/1122)2 Improvements \-Migration of the project to .NET 6.0[https://github.com/coverlet-coverage/coverlet/pull/1473](https://togithub.com/coverlet-coverage/coverlet/pull/1473)3 Breaking changes New parameter ExcludeAssembliesWithoutSources to control automatic assembly exclusion [https://github.com/coverlet-coverage/coverlet/issues/1164](https://togithub.com/coverlet-coverage/coverlet/issues/1164). The parameter InstrumentModulesWithoutLocalSources has been removed. since it can be handled by setting ExcludeAssembliesWithoutSources to None. The default heuristics for determining whether to instrument an assembly has been changed. In previous versions any missing source file was taken as a signal that it was a third-party project that shouldn't be instrumented, with exceptions for some common file name patterns for source generators. Now only assemblies where no source files at all can be found are excluded from instrumentation, and the code for detecting source generator files have been removed. To get back to the behaviour that at least one missing file is sufficient to exclude an assembly, set ExcludeAssembliesWithoutSources to MissingAny, or use assembly exclusion filters for more fine-grained control. [Diff between 3.2.0 and 6.0.0](https://togithub.com/coverlet-coverage/coverlet/compare/v5.7.2...v6.0.0) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/apollographql/federation-hotchocolate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4xOS4yIiwidXBkYXRlZEluVmVyIjoiMzcuMTkuMiIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Our build process with coverlet > 3.0 tends to fail with an error like this:
I suspect this is because we have a centralized output directory (not one per project).
Can this be worked around at all?
The text was updated successfully, but these errors were encountered: