This is a fork of Daniel Bradley's C# implementation of the Tarjan cycle detection algorithm.
IOW: You can use this library to sort dependencies and even handle cyclic references. e.g. to compile stuff in the right order.
I found it to be quite useful but I didn't like how one had to manually setup the dependency vertices. (It also supports custom comparers now.)
So I moved the original code into the Core sub namespace and wrote a class that allows to setup dependencies using a simple lambda expression.
See the version list below for details.
Install-Package CycleDetection -Version 22.214.171.124
dotnet add package CycleDetection --version 126.96.36.199
<PackageReference Include="CycleDetection" Version="188.8.131.52" />
paket add CycleDetection --version 184.108.40.206
#r "nuget: CycleDetection, 220.127.116.11"
// Install CycleDetection as a Cake Addin #addin nuget:?package=CycleDetection&version=18.104.22.168 // Install CycleDetection as a Cake Tool #tool nuget:?package=CycleDetection&version=22.214.171.124
The dependency on CreateSnkFile has developmentDependeny set to true now.
This package has no dependencies.
NuGet packages (1)
Showing the top 1 NuGet packages that depend on CycleDetection:
C# Version of ArchUnit (see: archunit.org)
GitHub repositories (1)
Showing the top 1 popular GitHub repositories that depend on CycleDetection:
A C# architecture test library to specify and assert architecture rules in C# for automated testing.