Skip to content

CsvDotNetPackageList is a .NET utility that scans a solution for NuGet package dependencies including transitive and exports them to a CSV file.

Notifications You must be signed in to change notification settings

SergerGood/CsvDotNetPackageList

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

47 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

About

CsvDotNetPackageList is a .NET utility designed to generate a CSV file containing a list of all NuGet packages referenced in a .NET solution including transitive dependencies. This tool is particularly useful who need to audit or document the dependencies used across their projects.

Features

  • Scans a .NET solution to identify all referenced NuGet packages.
  • Generates a CSV file listing each package's ID and version.
  • Configurable execution via appsettings.json.
  • Simple and straightforward command-line interface.

Configuration

Configuration Options

  • Framework (optional): If not specified, the analysis will search for packages across all target frameworks.
  • WorkingDirectory (optional): The base directory used for resolving relative paths and generating the final CSV output file.
  • Sources (required): A list of project or solution files to analyze. If absolute file paths are provided, WorkingDirectory will only be used when generating the final CSV report.

Example Configuration

To customize the behavior of the tool, you can modify the appsettings.json file as follows:

{
  "DotNetListSettings": {
    "Framework": "net8.0",
    "Sources": [
      "C:\\Projects\\MySolution.sln"
    ]
  }
}
{
  "DotNetListSettings": {
    "Framework": "net8.0",
    "WorkingDirectory": "C:\\Projects\\MySolution",
    "Sources": [
      "Project1.csproj",
      "Project2.csproj"
    ],
  }
}

Usage

Follow these steps to use the application:

  1. Clone the repository:
git clone https://github.com/SergerGood/CsvDotNetPackageList.git
  1. Publish the application. The result will be in subfolder out.
./publish.sh
  1. Configure the application by modifying appsettings.json according to your needs.
  2. Run the tool using the generated csv-package-list executable and analyze the dependencies.
  3. The tool will generate a packages.csv file in the specified working directory with the following structure:
Newtonsoft.Json;13.0.1
Serilog;2.10.0

About

CsvDotNetPackageList is a .NET utility that scans a solution for NuGet package dependencies including transitive and exports them to a CSV file.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published