ember-cli-addon-docs icon indicating copy to clipboard operation
ember-cli-addon-docs copied to clipboard

Ember Data is a secret dependency breaking consumers of ec-addon-docs

Open elwayman02 opened this issue 4 years ago • 6 comments
trafficstars

It's marked as a peerDependency, but it is required for ec-addon-docs to run properly. If the consuming project does not have ember-data in its package.json, ec-addon-docs breaks and throws an error, and the docs will not render. However, we can't specify it as a dependency within ec-addon-docs, either.

Addons do not ship with ember-data by default, as it is not part of the addon blueprint. Most addons don't have a need to install it either, as most addons won't be doing any data fetching. So, we cannot count on ember-data to be present in order to ship a working experience to users of this project.

There are three possible solutions which could be used in conjunction with one another:

  1. Update the documentation for ec-addon-docs to explicitly ask users to install ember-data as part of the setup guide.
  2. Add ember-data to the blueprint so that installing ec-addon-docs ensures ember-data is also installed, when using ember install
  3. Use version checker to have addon-docs throw an error if a valid version of ember-data (currently 3.0+) is not present in the consuming addon.

elwayman02 avatar Apr 29 '21 01:04 elwayman02

I just ran into this issue when trying to upgrade my addon to Ember 4.x. I didn't realize that ember-data was added as a devDependency years ago for ember-cli-addon-docs. I removed it since it was pointing to 3.x, then I spent a while trying to figure out why I was getting this error in my dev console:

Screen Shot 2022-11-16 at 7 21 29 PM

barryofguilder avatar Nov 17 '22 00:11 barryofguilder