NYCPlanning / labs-regional-viz

An interactive mapping experience that highlights regional planning data and trends.
Other
6 stars 1 forks source link

Ember upgrades limited by broccoli-yaml dependency #309

Open TangoYankee opened 1 year ago

TangoYankee commented 1 year ago

Description

As part of the upgrade to node 16 and ember 3.28, we experienced compatibility issues with broccoli dependencies. Broccoli introduced a plugin API that other packages, such as broccoli-persistent-filter, would need to adopt in order to remain compatible. Unfortunately, labs-regional-viz depends on packages that have not been maintained and have not transitioned to the new API.

Ember-yaml-cms is the direct dependency causing compatibility issues. However, it is not the underlying cause of compatibility issues. It has its own dependency which has not been updated in 8 years- broccoli-yaml. broccoli-yaml depends on broccoli-persistent-filter. Specifically, it depends on broccoli-persistent-filter v1. However, broccoli-persistent-filter v3 is required for compatibility. Unfortunately, v3 introduced a breaking change to the way its Filter class is used. Making broccoli-yaml compliant would require forking the project and rewriting its use of the broccoli-persistent-filter Filter class.

Ember-yaml-cms is a core component of labs-regional-vis, with much of the site content written in yaml. There appear to be no alternatives to this package within the current structure of the application. In turn, broccoli-yaml is a core component of ember-yaml-cms