Skip to content

Automated Dependency Updates for Nuget

Categories: dotnet

Renovate supports updating Nuget dependencies.

File Matching

By default, Renovate will check any files matching any of the following regular expressions:

\.(?:cs|fs|vb)proj$
\.(?:props|targets)$
(^|/)dotnet-tools\.json$
(^|/)global\.json$

For details on how to extend a manager's fileMatch value, please follow this link.

Supported datasources

This manager supports extracting the following datasources: docker, dotnet-version, nuget.

Default config

{
  "fileMatch": [
    "\\.(?:cs|fs|vb)proj$",
    "\\.(?:props|targets)$",
    "(^|/)dotnet-tools\\.json$",
    "(^|/)global\\.json$"
  ]
}

Additional Information

Use packageRules to control the behavior of the NuGet package manager.

The NuGet package manager supports these SDK-style files and formats:

  • .csproj
  • .fsproj
  • .vbproj
  • .props
  • .targets
  • global.json
  • dotnet-tools.json

.NET Core projects are supported by default.

For Renovate to work with .NET Framework projects, you need to update these files so they match the new SDK-style format:

  • .csproj
  • .fsproj
  • .vbproj
  • .props
  • .targets

Open items

The below list of features and bugs were current when this page was generated on April 20, 2024.

Feature requests

  • [manager/nuget] packages.lock file should be updated when dotnet-sdk is updated #28006
  • Support detectGlobalManagerConfig /detectGlobalConfig for nuget #24485
  • Ability to ignore pinned NuGet dependencies #21323
  • Extract RuntimeFrameworkVersion for dotnet #18434
  • NuGet Repository URLs and environment variables #8335

Bug reports

  • Nuget: Treat csproj files case-insensitively #28310
  • Nuget manager fails to update packages.lock.json artifact if nuget.config contains default registry #20888