You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As of SDK 3.1.401 the CopyToOutputDirectory task seems to be case sensitive when running in Linux. This makes sense, but I couldn't find any mention of it in the release notes, and it's a breaking change. Given this is a build version release increment, I'm assuming the breaking change isn't intentional - so thought I'd report it. Feel free to close if this isn't the case.
I've attached an example project in a zip, which shows this issue which can be run with Docker. Note at the top of the Dockerfile I have two lines specifying different versions of the SDK...
FROM mcr.microsoft.com/dotnet/core/sdk:3.1.401 AS build
#FROM mcr.microsoft.com/dotnet/core/sdk:3.1.302 AS build
The docker file just does an ls after the build...
RUN ls -l /src/bin/Release/netcoreapp3.1/
Doing a docker build . using 3.1.401 fails to copy testsettings.json (as you can see in the ls output). Doing it with 3.1.302 works.
This broke one of our builds because we were using mcr.microsoft.com/dotnet/core/sdk:3.1 as the base image, so as soon as 3.1.401 got released, our builds started breaking. Obviously an easy fix once we knew what it was - but it's wasn't immediately obvious why this had suddenly broken.
…5888)
First commit: update a test such that it passes only if matching is case insensitive.
Second commit: modify FileUtilities.ComparePathsNoThrow such that it can be made to be always case sensitive or case insensitive. Note that this was changed about seven months ago in #4997 where it had previously been a todo to make case sensitivity depend on OS but that implemented it.
Third commit: fix a test that theoretically ensured case insensitivity but in practice did not, changed to care about case in the same PR.
The second commit fixes#5749.
Issue Description
As of SDK 3.1.401 the CopyToOutputDirectory task seems to be case sensitive when running in Linux. This makes sense, but I couldn't find any mention of it in the release notes, and it's a breaking change. Given this is a build version release increment, I'm assuming the breaking change isn't intentional - so thought I'd report it. Feel free to close if this isn't the case.
I've attached an example project in a zip, which shows this issue which can be run with Docker. Note at the top of the
Dockerfile
I have two lines specifying different versions of the SDK...The docker file just does an
ls
after the build...RUN ls -l /src/bin/Release/netcoreapp3.1/
Doing a
docker build .
using 3.1.401 fails to copy testsettings.json (as you can see in thels
output). Doing it with 3.1.302 works.This broke one of our builds because we were using
mcr.microsoft.com/dotnet/core/sdk:3.1
as the base image, so as soon as 3.1.401 got released, our builds started breaking. Obviously an easy fix once we knew what it was - but it's wasn't immediately obvious why this had suddenly broken.dotnetbug.zip
The text was updated successfully, but these errors were encountered: