Repository navigation
Dependency on Mono.Unix breaks .NET Framework 4.6.1 support #220
Copy link
Copy link
Closed
Description
I'm trying to upgrade from version 8 to 9 but I'm blocked by the new dependency on Mono.Unix.
https://www.nuget.org/packages/DogStatsD-CSharp-Client shows support for:
- NETCoreApp 3.1
- .NETFramework 4.6.1
- .NETStandard 2.0
- net6.0
Meanwhile https://www.nuget.org/packages/Mono.Unix/ supports
- .NETCoreApp 3.1
- .NETFramework 4.5
- .NETStandard 2.0
- .NETStandard 2.1
- net6.0
I'm on .NETFramework 4.6.1, and I can't install DogStatsD 9, since .NETFramework 4.6.1 is not in the intersection of those two sets.
12:41:27|NUGET|INFOR| Attempting to resolve dependencies for package 'DogStatsD-CSharp-Client.9.0.0' with DependencyBehavior 'Lowest'
12:41:27|RIDER|ERROR| Unable to resolve dependency 'Mono.Unix'. Source(s) used: 'Flipdish', 'Flipdish.Messaging.Contracts', 'Flipdish.SREToolbox', 'nuget.org', 'Microsoft Visual Studio Offline Packages'.
System.InvalidOperationException: Unable to resolve dependency 'Mono.Unix'. Source(s) used: 'Flipdish', 'Flipdish.Messaging.Contracts', 'Flipdish.SREToolbox', 'nuget.org', 'Microsoft Visual Studio Offline Packages'.
---> NuGet.Resolver.NuGetResolverConstraintException: Unable to resolve dependency 'Mono.Unix'. Source(s) used: 'Flipdish', 'Flipdish.Messaging.Contracts', 'Flipdish.SREToolbox', 'nuget.org', 'Microsoft Visual Studio Offline Packages'.
at NuGet.Resolver.PackageResolver.Resolve(PackageResolverContext context, CancellationToken token)
at NuGet.PackageManagement.NuGetPackageManager.PreviewInstallPackageAsync(NuGetProject nuGetProject, PackageIdentity packageIdentity, ResolutionContext resolutionContext, INuGetProjectContext nuGetProjectContext, IEnumerable`1 primarySources, IEnumerable`1 secondarySources, VersionRange versionRange, CancellationToken token)
--- End of inner exception stack trace ---
at NuGet.PackageManagement.NuGetPackageManager.PreviewInstallPackageAsync(NuGetProject nuGetProject, PackageIdentity packageIdentity, ResolutionContext resolutionContext, INuGetProjectContext nuGetProjectContext, IEnumerable`1 primarySources, IEnumerable`1 secondarySources, VersionRange versionRange, CancellationToken token)
at NuGet.PackageManagement.NuGetPackageManager.PreviewInstallPackageAsync(NuGetProject nuGetProject, PackageIdentity packageIdentity, ResolutionContext resolutionContext, INuGetProjectContext nuGetProjectContext, IEnumerable`1 primarySources, IEnumerable`1 secondarySources, CancellationToken token)
at NuGet.PackageManagement.NuGetPackageManager.InstallPackageAsync(NuGetProject nuGetProject, PackageIdentity packageIdentity, ResolutionContext resolutionContext, INuGetProjectContext nuGetProjectContext, PackageDownloadContext downloadContext, IEnumerable`1 primarySources, IEnumerable`1 secondarySources, CancellationToken token)
at NuGet.PackageManagement.NuGetPackageManager.InstallPackageAsync(NuGetProject nuGetProject, PackageIdentity packageIdentity, ResolutionContext resolutionContext, INuGetProjectContext nuGetProjectContext, IEnumerable`1 primarySources, IEnumerable`1 secondarySources, CancellationToken token)
at JetBrains.ProjectModel.NuGet.Operations.NuGetInstallOperation.<>c__DisplayClass7_0.<<InstallAsync>b__0>d.MoveNext()
--- End of stack trace from previous location ---
at JetBrains.ProjectModel.NuGet.Operations.NuGetInstallOperation.InstallInternal(IProject project, String packageId, String packgeUserStr, NuGetFeedContext feedContext, Int32 nestedLevel, NuGetNotificationMode mode, NuGetOperationReporter reporter, Func`3 nativeInstall, NuGetProject givenNuGetProject)
NuGet.Resolver.NuGetResolverConstraintException: Unable to resolve dependency 'Mono.Unix'. Source(s) used: 'Flipdish', 'Flipdish.Messaging.Contracts', 'Flipdish.SREToolbox', 'nuget.org', 'Microsoft Visual Studio Offline Packages'.
at NuGet.Resolver.PackageResolver.Resolve(PackageResolverContext context, CancellationToken token)
at NuGet.PackageManagement.NuGetPackageManager.PreviewInstallPackageAsync(NuGetProject nuGetProject, PackageIdentity packageIdentity, ResolutionContext resolutionContext, INuGetProjectContext nuGetProjectContext, IEnumerable`1 primarySources, IEnumerable`1 secondarySources, VersionRange versionRange, CancellationToken token)
12:41:27|RIDER|ERROR| [Notification][Install] Install failed (project: Flipdish.API, package: DogStatsD-CSharp-Client v9.0.0)
Unable to resolve dependency 'Mono.Unix'. Source(s) used: 'Flipdish', 'Flipdish.Messaging.Contracts', 'Flipdish.SREToolbox', 'nuget.org', 'Microsoft Visual Studio Offline Packages'.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels
Activity
lucaspimentel commentedon Nov 24, 2025
Hey, @fdmarc. That seems strange.
Mono.Unix's target for .NET Framework 4.5 which should cover all versions of .NET Framework 4.5 and above, including .NET Framework 4.6.1.Ah, I think I see the issue. All versions of
Mono.Unixare considered pre-releases by NuGet because they have a version suffix like7.1.0-final.1.21458.1: https://www.nuget.org/packages/Mono.Unix/#versions-body-tabYour build process may be excluding pre-release packages by default, which means there are no
Mono.Unixpackages available since all of them are pre-release versions.lucaspimentel commentedon Nov 24, 2025
If this is the case, the short-term workaround is to enable pre-release NuGet packages in your build, if possible.
For a better fix, I think we can remove the
Mono.Unixdependency on .NET Framework since we only use it on Linux.fdmarc commentedon Nov 24, 2025
Thanks @lucaspimentel
I'd like to avoid enabling pre-release Nugets from being installed by my team here, to prevent people from accidentally depending on something untested.
I've logged this issue to see if we can it fixed upstream mono/mono.posix#73
lucaspimentel commentedon Nov 25, 2025
@fdmarc the
Mono.Unixnuget package hasn't been updated since 2021, so I'm not hopeful. We're going to explore other options to remove our dependency onMono.Unix. It should be straight-forward on .NET Framework at least, since it's not used at all there 😅fdmarc commentedon Nov 26, 2025
True, but there is activity on the repo this week:
It might be all automated commits though.
Jeripy commentedon Jan 15, 2026
Are there any updates on this issue, we can't upgrade for the same reason?
fdmarc commentedon May 27, 2026
Hi @lucaspimentel any update on this issue please?
lucaspimentel commentedon Jun 3, 2026
Sorry, team. I had started draft PR #223 to fix this issue back in January and it dropped off my radar after I had to switch to a different task. I updated the PR yesterday with a much simpler fix that what I original had tried. I expect to merge it very soon and push out a new release to nuget.
Remove `Mono.Unix` dependency (#223)
lucaspimentel commentedon Jun 4, 2026
@fdmarc @Jeripy The PR linked above is merged. It removes the dependency on the
Mono.Unixnuget package. This change will rollout with the next release of theDogStatsD-CSharp-Clientnuget package.atanzu commentedon Jun 10, 2026
Hi all, we've released 9.2.0 where this dependency is removed.