bigcommerce / stencil-cli

BigCommerce Stencil emulator for local theme development
https://developer.bigcommerce.com/stencil-docs
BSD 4-Clause "Original" or "Old" License
102 stars 141 forks source link

Cycles JS throws invalid circular dependency error #1132

Open mattcoy-arcticleaf opened 11 months ago

mattcoy-arcticleaf commented 11 months ago

Expected behavior

Because you can include a component inside itself, and Cornerstone does this in a number of places, you should also be able to have circular component dependencies. https://github.com/bigcommerce/stencil-cli/blob/master/lib/Cycles.js#L41

See usage in Cornerstone:

Actual behavior

If you include a component inside another component, and that component includes the first component, Cycles JS throws an error saying Error: Circular dependency in template detected.

Steps to reproduce behavior

Include component X inside component Y, then include component Y inside component X.

Environment

Stencil-cli version stencil --version: 7.0.1

Node version node -v: v18.15.0

NPM version npm -v: 9.6.4

OS: Mac 13.4.1