C
C#12mo ago
AndyB

How to compile using a new build of .NET

I had reported a bug that supposedly got recently squashed. Is there a way to test a recent build (not an official release of .NET) of .NET without building all of .NET from source (I wouldn't know how to do that anyway...) Other open source software often have nightly builds that you can download and test. How does one "test" .NET when a bug has been fixed?
25 Replies
Angius
Angius12mo ago
GitHub
core/daily-builds.md at main · dotnet/core
Home repository for .NET Core. Contribute to dotnet/core development by creating an account on GitHub.
Angius
Angius12mo ago
Daily builds are only released as Docker images, for some reason
AndyB
AndyBOP12mo ago
I think they're also available as regular downloads, no? https://github.com/dotnet/installer/blob/main/README.md#installers-and-binaries There doesn't seem to be any date info, can you tell how to relate the build number to the date the build? I feel like the numbers are the same as the last time I looked. (version 8.0.200-preview.24064.2) Also, how does one switch between versions?
GitHub
installer/README.md at main · dotnet/installer
.NET SDK Installer. Contribute to dotnet/installer development by creating an account on GitHub.
Petris
Petris12mo ago
clicking on the blue buttons gives you exact commits
No description
Petris
Petris12mo ago
and it's generally recommended to only use daily builds as zips, not installers
AndyB
AndyBOP12mo ago
TY. How do I use this download? i.e. how do I choose which .NET sdk to compile with?
Petris
Petris12mo ago
you just use the dotnet.exe that's inside of the downloaded files and I'd recommend using self contained deployment for your builds then
AndyB
AndyBOP12mo ago
"just use"?
Angius
Angius12mo ago
dotnet.exe new console dotnet.exe run etc
AndyB
AndyBOP12mo ago
Sorry, I'm pretty green. I use VS code and CLI, I go to the folder that has my csproj and typically type "dotnet run". How do I choose which version? It's on MacOS
Angius
Angius12mo ago
You download the .exe anywhere Then you... call that exe Instead of the dotnet command
AndyB
AndyBOP12mo ago
Here's the bug I'm trying to see if it's been fixed. https://github.com/dotnet/maui/issues/19613
GitHub
Blazor Hybrid is not supported on Macs running MacOS 11. · Issue #1...
Description Same exact issue as here: #18419 However, I cannot update the machine that's looking to run the app. It's on MacOS 11.7.10 and cannot be updated further. Is there any way to bui...
Angius
Angius12mo ago
dotnet is just an alias to the location of your main .NET installation
AndyB
AndyBOP12mo ago
Ok, any idea how to do that on MacOS?
Angius
Angius12mo ago
If you want to use a version that's not available otherwise, just use the location straight /path/to/the/downloaded/dotnet.exe command command command
AndyB
AndyBOP12mo ago
Isn't it going to choke on whatever settings I have in csproj?
Angius
Angius12mo ago
Why would it?
AndyB
AndyBOP12mo ago
dunno, it has stuff like "<TargetFrameworks> and <PackageReference>, etc. If it's not an issue, then np. Still don't know how to do this on MacOS. You're saying "exe" and that's a Windows thing.
Angius
Angius12mo ago
Download the Mac binary then Target framework usually just references the Major.Minor version of the framework The nightly builds are, most likely, either different on the .Patch or even the +Build version So there will be no issues using 8.0.1+634762 to run a net8.0 project
AndyB
AndyBOP12mo ago
I appreciate the advice, but maybe you have a link to how specifically to do this on MacOS - dotnet may be an alias, but not sure how to call it directly. I expect the download will be an installer with an .app file inside it. If you have a link on how to point dotnet to a different version on MacOS, I'd greatly appreciate it. Sorry to be such a newb
Angius
Angius12mo ago
Again, just download the binary and use a path to it If you download it to, idk, /usr/documents/downloads then call it with /usr/documents/downloads/the-dotnet-executable /usr/documents/downloads/the-dotnet-executable build to build the project with the-dotnet-executable /usr/documents/downloads/the-dotnet-executable run to run the project with the-dotnet-executable And so on
AndyB
AndyBOP12mo ago
TY, but I realize now that it's probably still too soon. I don't see an update to dotnet-maui that includes this fix. https://github.com/dotnet/maui/releases/tag/8.0.6
GitHub
Release 8.0.6 SR1 · dotnet/maui
How to Use 8.0.6 ships as a NuGet package and may be acquired via your IDE's NuGet Package Manager, or by editing your csproj and restoring your solution. <PackageReference Include="Mic...
AndyB
AndyBOP12mo ago
Just found this, and it says that I can use <PackageReference> to specify a specific build. That might be easier?
Angius
Angius12mo ago
If it's about getting a package, then yes I thought you want a nightly version of the framework, though But sure, if you just want to use a nightly version of a package then yes, just update the reference
AndyB
AndyBOP12mo ago
I don't know what the hell I want, lol. Execpt that I want this show-stopper bug to be fixed and to be able to build for older Macs. The whole thing is hella confusing to me - frameworks, packages, etc.

Did you find this page helpful?