Add logic to disallow import cycles
fabulous-gopher opened this issue · 0 comments
fabulous-gopher commented
From @sdboyer on July 19, 2016 19:21
There's a spot just waiting to do it in the checkProject()
and checkPackage()
methods.
For now, it's probably fine to use an offline algorithm (e.g., Tarjan SCC) to find cycles. That gives us linear time in the number of packages and dependencies. Brief searches suggest that there's probably a sublinear incremental cycle discovery algorithm out there that we can swap in later.
Copied from original issue: sdboyer/gps#66