nixpkgs icon indicating copy to clipboard operation
nixpkgs copied to clipboard

.NET 6/7 are EOL

Open JamieMagee opened this issue 1 year ago • 46 comments

.NET 7 went EOL on 14th May 2024^1. Similar to #202572, which dealt with the deprecation of .NET Core 3.1, we should make an effort to update or patch packages whick rely on .NET 7.

Packages

  • [ ] pkgs/applications/audio/famistudio/default.nix
  • [x] pkgs/applications/audio/openutau/default.nix
    • #340611
  • [ ] pkgs/applications/blockchains/wasabibackend/default.nix
  • [ ] pkgs/applications/editors/jetbrains/default.nix
  • [x] pkgs/applications/graphics/pinta/default.nix
    • #327375
  • [ ] pkgs/by-name/be/beatsabermodmanager/package.nix
    • #339370
  • [x] pkgs/by-name/do/dotnet-outdated/package.nix
    • #361048
  • [ ] pkgs/by-name/lu/lumafly/package.nix
  • [ ] pkgs/by-name/pa/pablodraw/package.nix
  • [ ] pkgs/by-name/pu/pupdate/package.nix
  • [x] pkgs/by-name/re/retrospy/package.nix
    • #326461
  • [x] pkgs/by-name/ro/roslyn-ls/package.nix
    • #318497
  • [x] pkgs/development/tools/fsautocomplete/default.nix
    • #326130
  • [x] pkgs/development/tools/misc/netcoredbg/default.nix
    • #329845
  • [x] pkgs/development/tools/omnisharp-roslyn/default.nix
    • #343690
  • [ ] pkgs/games/vintagestory/default.nix
  • [x] pkgs/tools/security/certdump/default.nix
    • #352540

JamieMagee avatar Jul 11 '24 15:07 JamieMagee

netcoredbg will stop relying on dotnet 7 with this PR: https://github.com/NixOS/nixpkgs/pull/329845 roslyn-ls was upgraded with https://github.com/NixOS/nixpkgs/pull/318497

konradmalik avatar Jul 30 '24 06:07 konradmalik

pinta now uses dotnet 8, see #327375 fsautocomplete relies only on the 8.0 sdk at runtime but still needs 6 and 7 for building, changed in #326130

pyrox0 avatar Jul 31 '24 18:07 pyrox0

Related: https://github.com/NixOS/nixpkgs/pull/358533

gepbird avatar Nov 23 '24 18:11 gepbird

IMO we can use this issue for also tracking .NET 6 packages:

  • [x] doc/languages-frameworks/dotnet.section.md https://github.com/NixOS/nixpkgs/pull/361243
  • [x] alttpr-opentracker #366067
  • [x] am2rlauncher #366067
  • [x] avalonia-ilspy #366067
  • [x] azure-functions-core-tools https://github.com/NixOS/nixpkgs/pull/361077
  • [x] blendfarm https://github.com/NixOS/nixpkgs/pull/359357
  • [x] boogie https://github.com/NixOS/nixpkgs/pull/395211
  • [x] clr-loader #366067
  • [x] cyclonedx-cli https://github.com/NixOS/nixpkgs/pull/359842
  • [x] dafny #366067
  • [ ] eddie (depends on msbuild) https://github.com/NixOS/nixpkgs/issues/391996
  • [ ] eventstore (needs package update in nixpkgs, upstream made the switch to .NET 8) https://github.com/EventStore/EventStore/pull/4046
  • [x] formula #366067
  • [x] fsautocomplete https://github.com/NixOS/nixpkgs/pull/360986
  • [x] garnet https://github.com/NixOS/nixpkgs/pull/361658
  • [x] gh-gei #366482
  • [x] godot_4-mono https://github.com/NixOS/nixpkgs/pull/387031
  • [x] ilspycmd #366067
  • [x] inklecate #366067
  • [x] knossosnet #366067
  • [x] kryptor https://github.com/NixOS/nixpkgs/pull/363629
  • [ ] msbuild (drop the package or switch to Microsoft's version)
  • [x] naps2 https://github.com/NixOS/nixpkgs/pull/378332 https://github.com/cyanfish/naps2/issues/505
  • [x] networkminer
  • [x] omnisharp-roslyn https://github.com/NixOS/nixpkgs/pull/360598
  • [ ] openra https://github.com/NixOS/nixpkgs/issues/360335
  • [x] opentabletdriver https://github.com/NixOS/nixpkgs/pull/360389
  • [x] ps3-disc-dumper https://github.com/NixOS/nixpkgs/pull/361506
  • [ ] roslyn
  • [x] roslyn-ls https://github.com/NixOS/nixpkgs/pull/373293
  • [x] scarab https://github.com/NixOS/nixpkgs/pull/361251
  • [x] sonarr https://github.com/NixOS/nixpkgs/pull/380045
  • [x] space-station-14-launcher https://github.com/NixOS/nixpkgs/pull/362431
  • [x] tone https://github.com/NixOS/nixpkgs/pull/364325
  • [x] vrcadvert https://github.com/NixOS/nixpkgs/pull/365007

Other .NET 7 packages:

  • [x] beatsabermodmanager ~https://github.com/NixOS/nixpkgs/pull/339370~ https://github.com/NixOS/nixpkgs/pull/390890
  • [x] dotnet-outdated https://github.com/NixOS/nixpkgs/pull/361048
  • [x] famistudio https://github.com/NixOS/nixpkgs/pull/361867
  • [x] jetbrains.clion https://github.com/NixOS/nixpkgs/pull/357916
  • [x] jetbrains.rider https://github.com/NixOS/nixpkgs/pull/360383
  • [x] lumafly https://github.com/NixOS/nixpkgs/pull/360640
  • [x] pablodraw https://github.com/NixOS/nixpkgs/pull/390735
  • [x] pupdate https://github.com/NixOS/nixpkgs/pull/360343
  • [x] vintagestory https://github.com/NixOS/nixpkgs/issues/360384
  • [x] wasabibackend https://github.com/NixOS/nixpkgs/pull/361232

gepbird avatar Dec 01 '24 00:12 gepbird

beatsabermodmanager: #361128

corngood avatar Dec 02 '24 15:12 corngood

removing both 6 and 7 from roslyn-ls: https://github.com/NixOS/nixpkgs/pull/357963 - looking for reviewers/mergers.

konradmalik avatar Dec 04 '24 11:12 konradmalik

  • [ ] space-station-14-launcher https://github.com/NixOS/nixpkgs/pull/361563

~~Hi, just wanted to note that https://github.com/NixOS/nixpkgs/pull/361563 isn't actually removing neither .NET 6 nor 7 from any packages, it just changes how they depend on it so that temporarily (and mistakenly) they don't get marked as insecure. However we should still actually remove any references from .NET 6 and 7 from any packages modified on it.~~

You can now ignore this, @corngood has updated the commit to actually remove the 6.0 reference as it wasn't actually needed.

GGG-KILLER avatar Dec 05 '24 19:12 GGG-KILLER

godot_4-mono seems to be missing from this list. specific issue here: https://github.com/NixOS/nixpkgs/issues/365975

corngood avatar Dec 18 '24 00:12 corngood

eventstore has a newer version upstream with .NET 8 support, however the license has been changed to an unfree one.

cc: @puffnfresh @mdarocha

GGG-KILLER avatar Dec 18 '24 02:12 GGG-KILLER

msbuild repository has been archived. We should probably remove it.

I'll do it in a separate PR from the ones I'm doing currently. I'll have to figure out how removals work in pkgs/by-name.

cc: @jirkadanek

GGG-KILLER avatar Dec 18 '24 03:12 GGG-KILLER

Unable to upgrade naps2 as it uses some APIs that are marked as preview when building with a patch that changes TargetFrameworks to net8 instead of net6:

...
/build/source/NAPS2.Escl.Server/EsclApiController.cs(310,62): error CA2252: Using 'Aborted' requires opting into preview features. See https://aka.ms/dotnet-warnings/preview-features for more information. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca2252) [/build/source/NAPS2.Escl.Server/NAPS2.Escl.Server.csproj::TargetFramework=net8]
/build/source/NAPS2.Escl.Server/EsclApiController.cs(322,40): error CA2252: Using 'ContentType' requires opting into preview features. See https://aka.ms/dotnet-warnings/preview-features for more information. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca2252) [/build/source/NAPS2.Escl.Server/NAPS2.Escl.Server.csproj::TargetFramework=net8]
/build/source/NAPS2.Escl.Server/EsclApiController.cs(325,23): error CA2252: Using 'WriteDocumentTo' requires opting into preview features. See https://aka.ms/dotnet-warnings/preview-features for more information. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca2252) [/build/source/NAPS2.Escl.Server/NAPS2.Escl.Server.csproj::TargetFramework=net8]
/build/source/NAPS2.Escl.Server/EsclApiController.cs(339,37): error CA2252: Using 'Processing' requires opting into preview features. See https://aka.ms/dotnet-warnings/preview-features for more information. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca2252) [/build/source/NAPS2.Escl.Server/NAPS2.Escl.Server.csproj::TargetFramework=net8]
/build/source/NAPS2.Escl.Server/EsclApiController.cs(339,62): error CA2252: Using 'Completed' requires opting into preview features. See https://aka.ms/dotnet-warnings/preview-features for more information. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca2252) [/build/source/NAPS2.Escl.Server/NAPS2.Escl.Server.csproj::TargetFramework=net8]
    1 Warning(s)
    163 Error(s)

Time Elapsed 00:00:04.39

cc: @eliandoran

GGG-KILLER avatar Dec 18 '24 04:12 GGG-KILLER

space-station-14-launcher has an upgrade upstream (https://github.com/space-wizards/SS14.Launcher/commit/ed386b8a40a6a635cce7e1cbe221d697cb8f6d2a) but hasn't turned into a release yet, should an unstable version of it be made?

There are no maintainers so I'm unsure if this package should be kept at all unless if someone else picks it up.

GGG-KILLER avatar Dec 18 '24 04:12 GGG-KILLER

Taking care of alttpr-opentracker, am2rlauncher, avalonia-ilspy, clr-loader, dafny, formula, gh-gei, ilspycmd, inklecate and knossosnet over at https://github.com/NixOS/nixpkgs/pull/366067

GGG-KILLER avatar Dec 18 '24 04:12 GGG-KILLER

Unable to upgrade naps2 as it uses some APIs that are marked as preview when building with a patch that changes TargetFrameworks to net8 instead of net6:

OK, I'll have a look. Maybe in the newer version of NAPS2 they updated to a newer version of .NET.

eliandoran avatar Dec 18 '24 07:12 eliandoran

msbuild repository has been archived. We should probably remove it.

There is the newer https://github.com/dotnet/msbuild/ we can use instead.

FliegendeWurst avatar Dec 18 '24 08:12 FliegendeWurst

space-station-14-launcher has an upgrade upstream (space-wizards/SS14.Launcher@ed386b8) but hasn't turned into a release yet, should an unstable version of it be made?

There are no maintainers so I'm unsure if this package should be kept at all unless if someone else picks it up.

space-station-14-launcher no longer depends on dotnet 6 since https://github.com/NixOS/nixpkgs/pull/362431 was merged.

On another note, ever since https://github.com/NixOS/nixpkgs/pull/359409, the launcher has been broken for me (the launcher itself starts fine, but it can't launch the game). Since apparently only myself and one other unfortunate soul on the ss14 discord have ran into this, I'd guess the overall usage of this package is low.

oynqr avatar Dec 18 '24 11:12 oynqr

msbuild repository has been archived. We should probably remove it.

I'll do it in a separate PR from the ones I'm doing currently. I'll have to figure out how removals work in pkgs/by-name.

cc: @jirkadanek

Hi, I was wondering why I got the notification. I get it now, same name different person. Could still be a half-brother :D

Merry Christmas wishes jDanek :D

image

jDanek avatar Dec 18 '24 15:12 jDanek

msbuild repository has been archived. We should probably remove it.

There is the newer https://github.com/dotnet/msbuild/ we can use instead.

That's already part of the .NET SDK, I think the only use it had was compiling .NET Framework projects on Linux, but I don't know how to move on with those as I don't think there are .NET Framework targeting packs for Linux

GGG-KILLER avatar Dec 19 '24 07:12 GGG-KILLER

Hi, I was wondering why I got the notification. I get it now, same name different person. Could still be a half-brother :D

Merry Christmas wishes jDanek :D

Yeah, my bad 😅 I got used to most people using their GitHub usernames in the maintainers list that I didn't double check, I'm sorry.

GGG-KILLER avatar Dec 19 '24 07:12 GGG-KILLER

hmm, any idea what could've happened to roslyn-ls In the past week? In my flake that uses it I've removed insecurePackages (dotnet 6 and 7 because my PR got merged) on Dec 10th and it worked fine, but today it started generating errors about insecure dotnet 6 again, and the trace points to roslyn-ls. I see there was only this https://github.com/NixOS/nixpkgs/commit/1cd9516969553291792021f1b327f0e2e2775b3c but it does not look like it could change that behavior...

I have automatic dep updates on that flake every Friday, so it worked on Dec 10th (manual update), worked on Dec 13th, and stopped working somewhere between Dec 13th and Dec 20th (today).

In particular, this works: https://github.com/konradmalik/neovim-flake/actions/runs/12253416030, and today this failed: https://github.com/konradmalik/neovim-flake/actions/runs/12424292928

konradmalik avatar Dec 20 '24 13:12 konradmalik

hmm, any idea what could've happened to roslyn-ls In the past week? In my flake that uses it I've removed insecurePackages (dotnet 6 and 7 because my PR got merged)

Your PR did not remove the dependency on .NET 6, it's still in there, even though only packages and targetingPackages are being used, those are also insecure. That's why it's still (or should be) as pending on the list.

GGG-KILLER avatar Dec 20 '24 13:12 GGG-KILLER

@GGG-KILLER thanks, this makes sense. @corngood suggested that this could help with the insecurePackages warning. Seems like it does not, which is fine, but I still do not understand why it did not generate warnings for me for more than a week and started to do so again today.

konradmalik avatar Dec 20 '24 13:12 konradmalik

Seems like it does not,which is fine, but I still do not understand why it did not generate warnings for me for more than a week and started to do so again today.

It used to, before we merged a change that made usage of packages from .NET 6 and 7 generate insecure warnings. So for a short while that "solved" the warnings (but shouldn't have, which is why we made that change).

This was done in https://github.com/NixOS/nixpkgs/pull/363439

GGG-KILLER avatar Dec 20 '24 13:12 GGG-KILLER

gh-gei was done in https://github.com/NixOS/nixpkgs/pull/366482 already. Will remove it from my PR.

GGG-KILLER avatar Dec 23 '24 02:12 GGG-KILLER

Looks like the remaining packages are:

  • .NET 7.0
    • avalonia
    • wasabibackend
  • .NET 6.0
    • eventstore
    • msbuild
    • networkminer
    • openraPackages.engines.release
    • roslyn

JamieMagee avatar Jul 06 '25 00:07 JamieMagee

Thanks for the reminder!

Here's what I know of these packages (I'll be updating this comment):

  • .NET 7.0
    • [x] avalonia: cc @corngood
    • [x] vintagestory: Waiting for upstream for new version that already uses a supported .NET, cc @Artturin @GiggleSquid @niraethm @dtomvan, was tracking at https://github.com/NixOS/nixpkgs/issues/360384, PR for RC version: https://github.com/NixOS/nixpkgs/pull/436539
    • [ ] wasabibackend: waiting for review, was tested by one person: https://github.com/NixOS/nixpkgs/pull/361232, cc @mmahut ,
  • .NET 6.0
    • [x] eventstore: upstream updated to .NET 8 and it got rebranded to KurrentDB, https://github.com/NixOS/nixpkgs/pull/436377
    • [x] msbuild: has many reverse dependencies and archived upstream; either switch to Microsoft's version or find another solution, cc @jDanek ; https://github.com/NixOS/nixpkgs/pull/436941
    • [x] networkminer: waiting for review https://github.com/NixOS/nixpkgs/pull/422877, cc @emilytrau
    • [ ] openraPackages.engines.release: next upstream version which is currently packaged as openraPackages.engines.bleed will replace it using .NET 8 ? cc @mdarocha, tracking at https://github.com/NixOS/nixpkgs/issues/360335
    • [x] roslyn: cc @corngood, https://github.com/NixOS/nixpkgs/pull/436407

gepbird avatar Jul 06 '25 07:07 gepbird

Vintagestory will move to dotnet 8 by the next stable release, and it's already in prerelease.

dtomvan avatar Jul 06 '25 11:07 dtomvan

avalonia at #423073

corngood avatar Jul 07 '25 01:07 corngood

eventstore: https://github.com/NixOS/nixpkgs/pull/436377

JamieMagee avatar Aug 24 '25 06:08 JamieMagee

roslyn: https://github.com/NixOS/nixpkgs/pull/436407

This package needs some more work. But I'd like to get it off .NET 6 first.

JamieMagee avatar Aug 24 '25 08:08 JamieMagee