zambezi / ez-doc

Zambezi style documentation site generator
MIT License
0 stars 0 forks source link

ez-doc complains about missing `gitbook-plugin-zambezi-docs` #2

Open gabrielmontagne opened 8 years ago

gabrielmontagne commented 8 years ago

If I add @zambezi/ez-doc as a dev dependency on a project and create a script that will run ez-doc build, the following error is produced:

[Error: Error loading plugins: gitbook-plugin-zambezi-docs. Run 'gitbook install' to install plugins from NPM.]

I tired to adding @zambezi/gitbook-plugin-zambezi-docs as another dev dependency, but the same problem persists.

The versions that came down from npm were

artefact version
@zambezi/ez-doc ^1.0.0-prepare-for-open-source.1
@zambezi/gitbook-plugin-zambezi-docs ^1.0.0-prepare-for-open-source.0
mstade commented 8 years ago

Thanks for the report @gabrielmontagne! I've seen this happen, and I believe it is due to changes in how modern npm lays out dependencies in order to automatically dedupe modules, in the interest of performance and avoiding too long paths on Windows. It may be that a newer version of gitbook will resolve this issue, however I've yet to try this. I'll try to find the time to fix this for you chief, or if you'd like to try and find the solution yourself, I'd say start with looking at upgrading the gitbook dependency.

gabrielmontagne commented 8 years ago

I npm-linked a local version of ez-docs in which I got gitbook updated to the latest as of today (3.2.0) and got a strange immutablejs error. It'll have to wait, from my end, to next week, then.

Strangely, skimming the error, I don't see where it touches the ez-doc code,

$ npm run docs

> @zambezi/d3-utils@3.0.0-7 docs C:\dev\g_montagne\d3-utils
> ez-doc build

C:\dev\g_montagne\ez-doc\node_modules\immutable\dist\immutable.js:3577
      throw new TypeError('Expected [K, V] tuple: ' + entry);
      ^

TypeError: Expected [K, V] tuple: C
    at validateEntry (C:\dev\g_montagne\ez-doc\node_modules\immutable\dist\immutable.js:3577:13)
    at C:\dev\g_montagne\ez-doc\node_modules\immutable\dist\immutable.js:2924:11
    at IterableSeq.__iterateUncached (C:\dev\g_montagne\ez-doc\node_modules\immutable\dist\immutable.js:459:15)
    at seqIterate (C:\dev\g_montagne\ez-doc\node_modules\immutable\dist\immutable.js:606:16)
    at IterableSeq.IndexedSeq.__iterate (C:\dev\g_montagne\ez-doc\node_modules\immutable\dist\immutable.js:322:14)
    at FromEntriesSequence.__iterate (C:\dev\g_montagne\ez-doc\node_modules\immutable\dist\immutable.js:2920:25)
    at FromEntriesSequence.mixin.forEach (C:\dev\g_montagne\ez-doc\node_modules\immutable\dist\immutable.js:4383:19)
    at C:\dev\g_montagne\ez-doc\node_modules\immutable\dist\immutable.js:1224:16
    at Map.withMutations (C:\dev\g_montagne\ez-doc\node_modules\immutable\dist\immutable.js:1355:7)
    at Map (C:\dev\g_montagne\ez-doc\node_modules\immutable\dist\immutable.js:1221:20)

:pineapple:

mstade commented 8 years ago

Huh, odd indeed! I'll give it a go as well, see if I can figure it out.

mstade commented 8 years ago

Btw, as a workaround, you can use nvm to swap to an earlier version of Node (and thus npm) – this worked for me. Obviously just a stop gap, but still.

gabrielmontagne commented 8 years ago

@mstade, wondering if you had any time to see what might have been the problem here? I'm starting to build the docs on the the grid and was wondering which structure should i follow. NP if not. I might go with the usual "long readme" format if this is tricky to chase.

mstade commented 8 years ago

Just haven't gotten 'round to it chief. I'll try and sort it out today. Next step though would be to just turn ez-doc into a set of resources to implement a dynamic resourceful doc renderer.