bootprint / bootprint-openapi

Bootprint-module to render OpenAPI specifications, this repository has moved to https://github.com/bootprint/bootprint-monorepo/tree/master/packages/bootprint-openapi
MIT License
357 stars 48 forks source link

npm dependency error installing latest bootprint-openapi: TypeError: Cannot read property 'minimum' of undefined #75

Closed mattnworb closed 8 years ago

mattnworb commented 8 years ago

I have a script that builds the API documentation for a project in a docker image, which looks roughly like:

FROM node:5.10.1
...
RUN npm install -g -q bootprint bootprint-openapi

Starting in the past few days, when this container runs `bootprint openapi I get:

Loading bootprint-openapi 0.17.0
Loading bootprint-json-schema 0.8.6
Loading bootprint-base 0.7.2
/usr/local/lib/node_modules/bootprint/node_modules/q/q.js:155
                throw e;
                ^

TypeError: Cannot read property 'minimum' of undefined

I see that this same error was covered in #69 but the fix mentioned there does not work for me (customize-engine-less@0.2.4 does not exist anymore, and explicitly installing less@2.6.1 gives the same error message above).

I mention that this is done inside a Docker image to point out that whatever global npm packages exist are probably not causing the issue.

pascal-lam commented 8 years ago

Hi, I have the same issue...

nknapp commented 8 years ago

I don't think this has to do with less. Its hard to say without a full stack-trace. Could you run bootprint -l to get a long stack-trace? It would help to see where exactly this error occurs.

I have made a change to customize-engine-handlebars a couple of days ago. It shouldn't trigger this behaviour though, but I will look into it.

nknapp commented 8 years ago

Wait, the tests fail as well. I'll have to check the dependencies. I will also let nightli.es run the travis-build every nigth now.

pascal-lam commented 8 years ago

Thanks !

nknapp commented 8 years ago

I have published a bugfix and a refactoring in promised-handlebars@1.0.4 a couple of days ago. The bootprint-openapi-tests fail with this version and pass with version 1.0.3.

I will try to find the bug and fix it or revert to an old version (npm does not allow me to unpublish the version)

nknapp commented 8 years ago

I have published 1.0.3 as 1.0.5. This is a quick-hack done without any git commits, just to have working version available until I find the actual problem. The tests are green again. Could you verify that your build is working again.

pascal-lam commented 8 years ago

Hello, it is working for me, thanks a lot !

mattnworb commented 8 years ago

@nknapp thanks for taking a look and pushing updates. I am afraid though I am still getting the same error. Here is the long stacktrace:

Loading bootprint-openapi 0.17.0
Loading bootprint-json-schema 0.8.6
Loading bootprint-base 0.7.2
/usr/local/lib/node_modules/bootprint/node_modules/q/q.js:155
                throw e;
                ^

TypeError: Cannot read property 'minimum' of undefined
    at module.exports.json-schema--range (/usr/local/lib/node_modules/bootprint-openapi/node_modules/bootprint-json-schema/handlebars/helpers.js:51:27)
    at wrapper (/usr/local/lib/node_modules/bootprint/node_modules/lodash/index.js:3533:19)
    at helperWrapper (/usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:113:23)
    at /usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:139:28
    at ret (/usr/local/lib/node_modules/bootprint/node_modules/handlebars/dist/cjs/handlebars/runtime.js:159:30)
    at ret (/usr/local/lib/node_modules/bootprint/node_modules/handlebars/dist/cjs/handlebars/compiler/compiler.js:488:21)
    at prepareAndResolveMarkers (/usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:75:17)
    at Object.json-schema/datatype (/usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:59:14)
    at Object.invokePartialWrapper [as invokePartial] (/usr/local/lib/node_modules/bootprint/node_modules/handlebars/dist/cjs/handlebars/runtime.js:65:46)
    at ret (/usr/local/lib/node_modules/bootprint/node_modules/handlebars/dist/cjs/handlebars/runtime.js:159:30)
    at ret (/usr/local/lib/node_modules/bootprint/node_modules/handlebars/dist/cjs/handlebars/compiler/compiler.js:488:21)
    at prepareAndResolveMarkers (/usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:75:17)
    at Object.swagger/parameterRow (/usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:59:14)
    at Object.invokePartialWrapper [as invokePartial] (/usr/local/lib/node_modules/bootprint/node_modules/handlebars/dist/cjs/handlebars/runtime.js:65:46)
    at Object.prog (/usr/local/lib/node_modules/bootprint/node_modules/handlebars/dist/cjs/handlebars/runtime.js:193:15)
    at Object.prepareAndResolveMarkers (/usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:75:17)
    at Object.fn (/usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:139:28)
    at Object.<anonymous> (/usr/local/lib/node_modules/bootprint/node_modules/handlebars/dist/cjs/handlebars/base.js:205:22)
    at Object.helperWrapper (/usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:113:23)
    at Object.<anonymous> (/usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:139:28)
    at prog (/usr/local/lib/node_modules/bootprint/node_modules/handlebars/dist/cjs/handlebars/runtime.js:193:15)
    at prepareAndResolveMarkers (/usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:75:17)
    at /usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:139:28
    at execIteration (/usr/local/lib/node_modules/bootprint/node_modules/handlebars/dist/cjs/handlebars/base.js:155:19)
    at Object.<anonymous> (/usr/local/lib/node_modules/bootprint/node_modules/handlebars/dist/cjs/handlebars/base.js:164:11)
    at Object.helperWrapper (/usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:113:23)
    at Object.<anonymous> (/usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:139:28)
    at Object.prog (/usr/local/lib/node_modules/bootprint/node_modules/handlebars/dist/cjs/handlebars/runtime.js:193:15)
    at Object.prepareAndResolveMarkers (/usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:75:17)
    at Object.fn (/usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:139:28)
    at Object.<anonymous> (/usr/local/lib/node_modules/bootprint/node_modules/handlebars/dist/cjs/handlebars/base.js:205:22)
    at Object.helperWrapper (/usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:113:23)
    at Object.<anonymous> (/usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:139:28)
    at ret (/usr/local/lib/node_modules/bootprint/node_modules/handlebars/dist/cjs/handlebars/runtime.js:159:30)
    at ret (/usr/local/lib/node_modules/bootprint/node_modules/handlebars/dist/cjs/handlebars/compiler/compiler.js:488:21)
    at prepareAndResolveMarkers (/usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:75:17)
    at Object.swagger/parameters (/usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:59:14)
    at Object.invokePartialWrapper [as invokePartial] (/usr/local/lib/node_modules/bootprint/node_modules/handlebars/dist/cjs/handlebars/runtime.js:65:46)
    at ret (/usr/local/lib/node_modules/bootprint/node_modules/handlebars/dist/cjs/handlebars/runtime.js:159:30)
    at ret (/usr/local/lib/node_modules/bootprint/node_modules/handlebars/dist/cjs/handlebars/compiler/compiler.js:488:21)
    at prepareAndResolveMarkers (/usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:75:17)
    at Object.swagger/operation (/usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:59:14)
    at Object.invokePartialWrapper [as invokePartial] (/usr/local/lib/node_modules/bootprint/node_modules/handlebars/dist/cjs/handlebars/runtime.js:65:46)
    at Object.prog (/usr/local/lib/node_modules/bootprint/node_modules/handlebars/dist/cjs/handlebars/runtime.js:193:15)
    at Object.prepareAndResolveMarkers (/usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:75:17)
    at Object.fn (/usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:139:28)
    at /usr/local/lib/node_modules/bootprint-openapi/node_modules/bootprint-base/handlebars/helpers.js:97:27
    at Object.module.exports.eachSorted (/usr/local/lib/node_modules/bootprint-openapi/node_modules/bootprint-base/handlebars/helpers.js:88:8)
    at Object.wrapper (/usr/local/lib/node_modules/bootprint/node_modules/lodash/index.js:3533:19)
    at Object.helperWrapper (/usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:113:23)
    at Object.<anonymous> (/usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:139:28)
    at ret (/usr/local/lib/node_modules/bootprint/node_modules/handlebars/dist/cjs/handlebars/runtime.js:159:30)
    at ret (/usr/local/lib/node_modules/bootprint/node_modules/handlebars/dist/cjs/handlebars/compiler/compiler.js:488:21)
    at prepareAndResolveMarkers (/usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:75:17)
    at Object.swagger/path (/usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:59:14)
    at Object.invokePartialWrapper [as invokePartial] (/usr/local/lib/node_modules/bootprint/node_modules/handlebars/dist/cjs/handlebars/runtime.js:65:46)
    at Object.prog (/usr/local/lib/node_modules/bootprint/node_modules/handlebars/dist/cjs/handlebars/runtime.js:193:15)
    at Object.prepareAndResolveMarkers (/usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:75:17)
    at Object.fn (/usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:139:28)
    at /usr/local/lib/node_modules/bootprint-openapi/node_modules/bootprint-base/handlebars/helpers.js:97:27
    at Object.module.exports.eachSorted (/usr/local/lib/node_modules/bootprint-openapi/node_modules/bootprint-base/handlebars/helpers.js:88:8)
    at Object.wrapper (/usr/local/lib/node_modules/bootprint/node_modules/lodash/index.js:3533:19)
    at Object.helperWrapper (/usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:113:23)
    at Object.<anonymous> (/usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:139:28)
    at ret (/usr/local/lib/node_modules/bootprint/node_modules/handlebars/dist/cjs/handlebars/runtime.js:159:30)
    at ret (/usr/local/lib/node_modules/bootprint/node_modules/handlebars/dist/cjs/handlebars/compiler/compiler.js:488:21)
    at prepareAndResolveMarkers (/usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:75:17)
    at Object.swagger/paths (/usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:59:14)
    at Object.invokePartialWrapper [as invokePartial] (/usr/local/lib/node_modules/bootprint/node_modules/handlebars/dist/cjs/handlebars/runtime.js:65:46)
    at ret (/usr/local/lib/node_modules/bootprint/node_modules/handlebars/dist/cjs/handlebars/runtime.js:159:30)
    at ret (/usr/local/lib/node_modules/bootprint/node_modules/handlebars/dist/cjs/handlebars/compiler/compiler.js:488:21)
    at prepareAndResolveMarkers (/usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:75:17)
    at Object.base/body (/usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:59:14)
    at Object.invokePartialWrapper [as invokePartial] (/usr/local/lib/node_modules/bootprint/node_modules/handlebars/dist/cjs/handlebars/runtime.js:65:46)
    at ret (/usr/local/lib/node_modules/bootprint/node_modules/handlebars/dist/cjs/handlebars/runtime.js:159:30)
    at ret (/usr/local/lib/node_modules/bootprint/node_modules/handlebars/dist/cjs/handlebars/compiler/compiler.js:488:21)
    at prepareAndResolveMarkers (/usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:82:39)
    at /usr/local/lib/node_modules/bootprint/node_modules/promised-handlebars/index.js:59:14
    at /usr/local/lib/node_modules/bootprint/node_modules/customize-engine-handlebars/index.js:159:24
    at /usr/local/lib/node_modules/bootprint/node_modules/lodash/index.js:3395:24
    at /usr/local/lib/node_modules/bootprint/node_modules/lodash/index.js:3073:15
    at baseForOwn (/usr/local/lib/node_modules/bootprint/node_modules/lodash/index.js:2046:14)
    at Function.mapValues (/usr/local/lib/node_modules/bootprint/node_modules/lodash/index.js:3394:9)
    at /usr/local/lib/node_modules/bootprint/node_modules/customize-engine-handlebars/index.js:156:18
    at _fulfilled (/usr/local/lib/node_modules/bootprint/node_modules/q/q.js:834:54)
    at requestTick (/usr/local/lib/node_modules/bootprint/node_modules/q/q.js:197:21)
    at Function.nextTick (/usr/local/lib/node_modules/bootprint/node_modules/q/q.js:180:13)
    at /usr/local/lib/node_modules/bootprint/node_modules/q/q.js:603:15
    at /usr/local/lib/node_modules/bootprint/node_modules/q/q.js:263:21
    at become (/usr/local/lib/node_modules/bootprint/node_modules/q/q.js:602:9)
    at deferred.resolve (/usr/local/lib/node_modules/bootprint/node_modules/q/q.js:618:9)
    at ReadStream.<anonymous> (/usr/local/lib/node_modules/bootprint/node_modules/q-io/reader.js:32:13)
    at _combinedTickCallback (internal/process/next_tick.js:74:11)
    at process._tickCallback (internal/process/next_tick.js:98:9)
    at /usr/local/lib/node_modules/bootprint/node_modules/q-io/fs.js:86:25
    at /usr/local/lib/node_modules/bootprint/node_modules/q-io/fs.js:31:35
    at _fulfilled (/usr/local/lib/node_modules/bootprint/node_modules/q/q.js:834:54)
    at self.promiseDispatch.done (/usr/local/lib/node_modules/bootprint/node_modules/q/q.js:863:30)
    at Promise.promise.promiseDispatch (/usr/local/lib/node_modules/bootprint/node_modules/q/q.js:796:13)
    at /usr/local/lib/node_modules/bootprint/node_modules/q/q.js:857:14
nknapp commented 8 years ago

could you check the version of the promised-handlebars-dependency? It should be 1.0.5

mattnworb commented 8 years ago

here is the full npm -g ls output (in the docker container, the packages are installed globally):

/usr/local/lib
+-- bootprint@0.8.5
| +-- clarify@1.0.5
| | `-- stack-chain@1.3.7
| +-- commander@2.9.0
| | `-- graceful-readlink@1.0.1
| +-- customize-engine-handlebars@0.7.0
| | +-- handlebars@3.0.3
| | | +-- optimist@0.6.1
| | | | +-- minimist@0.0.10
| | | | `-- wordwrap@0.0.3
| | | +-- source-map@0.1.43
| | | | `-- amdefine@1.0.0
| | | `-- uglify-js@2.3.6
| | |   +-- async@0.2.10
| | |   `-- optimist@0.3.7
| | +-- promised-handlebars@1.0.5
| | `-- q-deep@1.0.3
| |   `-- deep-aplus@1.0.2
| +-- customize-engine-less@0.2.5
| | `-- less@2.7.1
| |   +-- errno@0.1.4
| |   | `-- prr@0.0.0
| |   +-- graceful-fs@4.1.4
| |   +-- image-size@0.5.0
| |   +-- mime@1.3.4
| |   +-- mkdirp@0.5.1
| |   | `-- minimist@0.0.8
| |   +-- promise@7.1.1
| |   | `-- asap@2.0.4
| |   `-- source-map@0.5.6
| +-- customize-watch@0.5.4
| | +-- chokidar@1.6.0
| | | +-- anymatch@1.3.0
| | | | +-- arrify@1.0.1
| | | | `-- micromatch@2.3.11
| | | |   +-- arr-diff@2.0.0
| | | |   | `-- arr-flatten@1.0.1
| | | |   +-- array-unique@0.2.1
| | | |   +-- braces@1.8.5
| | | |   | +-- expand-range@1.8.2
| | | |   | | `-- fill-range@2.2.3
| | | |   | |   +-- is-number@2.1.0
| | | |   | |   +-- isobject@2.1.0
| | | |   | |   +-- randomatic@1.1.5
| | | |   | |   `-- repeat-string@1.5.4
| | | |   | +-- preserve@0.2.0
| | | |   | `-- repeat-element@1.1.2
| | | |   +-- expand-brackets@0.1.5
| | | |   | `-- is-posix-bracket@0.1.1
| | | |   +-- extglob@0.3.2
| | | |   +-- filename-regex@2.0.0
| | | |   +-- kind-of@3.0.3
| | | |   | `-- is-buffer@1.1.3
| | | |   +-- normalize-path@2.0.1
| | | |   +-- object.omit@2.0.0
| | | |   | +-- for-own@0.1.4
| | | |   | | `-- for-in@0.1.5
| | | |   | `-- is-extendable@0.1.1
| | | |   +-- parse-glob@3.0.4
| | | |   | +-- glob-base@0.3.0
| | | |   | `-- is-dotfile@1.0.2
| | | |   `-- regex-cache@0.4.3
| | | |     +-- is-equal-shallow@0.1.3
| | | |     `-- is-primitive@2.0.0
| | | +-- async-each@1.0.0
| | | +-- UNMET OPTIONAL DEPENDENCY fsevents@^1.0.0
| | | +-- glob-parent@2.0.0
| | | +-- inherits@2.0.1
| | | +-- is-binary-path@1.0.1
| | | | `-- binary-extensions@1.5.0
| | | +-- is-glob@2.0.1
| | | | `-- is-extglob@1.0.0
| | | +-- path-is-absolute@1.0.0
| | | `-- readdirp@2.1.0
| | |   +-- readable-stream@2.1.4
| | |   | +-- buffer-shims@1.0.0
| | |   | +-- core-util-is@1.0.2
| | |   | +-- isarray@1.0.0
| | |   | +-- process-nextick-args@1.0.7
| | |   | +-- string_decoder@0.10.31
| | |   | `-- util-deprecate@1.0.2
| | |   `-- set-immediate-shim@1.0.1
| | +-- customize@0.8.4
| | | +-- jsonschema@1.1.0
| | | +-- jsonschema-extra@1.2.0
| | | | +-- js-quantities@1.6.1
| | | | `-- lodash.isplainobject@2.4.1
| | | |   +-- lodash._isnative@2.4.1
| | | |   `-- lodash._shimisplainobject@2.4.1
| | | |     +-- lodash.forin@2.4.1
| | | |     | +-- lodash._basecreatecallback@2.4.1
| | | |     | | +-- lodash._setbinddata@2.4.1
| | | |     | | | `-- lodash.noop@2.4.1
| | | |     | | +-- lodash.bind@2.4.1
| | | |     | | | +-- lodash._createwrapper@2.4.1
| | | |     | | | | +-- lodash._basebind@2.4.1
| | | |     | | | | | +-- lodash._basecreate@2.4.1
| | | |     | | | | | `-- lodash.isobject@2.4.1
| | | |     | | | | `-- lodash._basecreatewrapper@2.4.1
| | | |     | | | `-- lodash._slice@2.4.1
| | | |     | | +-- lodash.identity@2.4.1
| | | |     | | `-- lodash.support@2.4.1
| | | |     | `-- lodash._objecttypes@2.4.1
| | | |     `-- lodash.isfunction@2.4.1
| | | `-- minimatch@3.0.2
| | |   `-- brace-expansion@1.1.5
| | |     +-- balanced-match@0.4.2
| | |     `-- concat-map@0.0.1
| | `-- q-io@1.13.2
| |   +-- collections@0.2.2
| |   | `-- weak-map@1.0.0
| |   +-- mimeparse@0.1.4
| |   +-- qs@1.2.2
| |   `-- url2@0.0.0
| +-- customize-write-files@0.1.5
| +-- debug@2.2.0
| | `-- ms@0.7.1
| +-- get-promise@1.4.0
| +-- js-yaml@3.6.1
| | +-- argparse@1.0.7
| | | `-- sprintf-js@1.0.3
| | `-- esprima@2.7.2
| +-- live-server@0.8.2
| | +-- colors@1.1.2
| | +-- connect@2.30.2
| | | +-- basic-auth-connect@1.0.0
| | | +-- body-parser@1.13.3
| | | | +-- iconv-lite@0.4.11
| | | | +-- qs@4.0.0
| | | | `-- raw-body@2.1.7
| | | |   +-- bytes@2.4.0
| | | |   `-- iconv-lite@0.4.13
| | | +-- bytes@2.1.0
| | | +-- compression@1.5.2
| | | | +-- accepts@1.2.13
| | | | | `-- negotiator@0.5.3
| | | | +-- compressible@2.0.8
| | | | | `-- mime-db@1.23.0
| | | | `-- vary@1.0.1
| | | +-- connect-timeout@1.6.2
| | | +-- content-type@1.0.2
| | | +-- cookie@0.1.3
| | | +-- cookie-parser@1.3.5
| | | +-- cookie-signature@1.0.6
| | | +-- csurf@1.8.3
| | | | `-- csrf@3.0.3
| | | |   +-- base64-url@1.2.2
| | | |   +-- rndm@1.2.0
| | | |   +-- tsscmp@1.0.5
| | | |   `-- uid-safe@2.1.1
| | | |     `-- random-bytes@1.0.0
| | | +-- depd@1.0.1
| | | +-- errorhandler@1.4.3
| | | | `-- accepts@1.3.3
| | | |   `-- negotiator@0.6.1
| | | +-- express-session@1.11.3
| | | | +-- crc@3.3.0
| | | | `-- uid-safe@2.0.0
| | | |   `-- base64-url@1.2.1
| | | +-- finalhandler@0.4.0
| | | | +-- escape-html@1.0.2
| | | | `-- unpipe@1.0.0
| | | +-- fresh@0.3.0
| | | +-- http-errors@1.3.1
| | | +-- method-override@2.3.6
| | | | +-- methods@1.1.2
| | | | `-- vary@1.1.0
| | | +-- morgan@1.6.1
| | | | `-- basic-auth@1.0.4
| | | +-- multiparty@3.3.2
| | | | +-- readable-stream@1.1.14
| | | | | `-- isarray@0.0.1
| | | | `-- stream-counter@0.2.0
| | | |   `-- readable-stream@1.1.14
| | | |     `-- isarray@0.0.1
| | | +-- on-headers@1.0.1
| | | +-- parseurl@1.3.1
| | | +-- pause@0.1.0
| | | +-- qs@4.0.0
| | | +-- response-time@2.3.1
| | | +-- serve-favicon@2.3.0
| | | +-- serve-index@1.7.3
| | | | +-- batch@0.5.3
| | | | `-- mime-types@2.1.11
| | | +-- serve-static@1.10.3
| | | | `-- send@0.13.2
| | | |   +-- depd@1.1.0
| | | |   +-- range-parser@1.0.3
| | | |   `-- statuses@1.2.1
| | | +-- type-is@1.6.13
| | | | `-- media-typer@0.3.0
| | | +-- utils-merge@1.0.0
| | | `-- vhost@3.0.2
| | +-- event-stream@3.3.4
| | | +-- duplexer@0.1.1
| | | +-- from@0.1.3
| | | +-- map-stream@0.1.0
| | | +-- pause-stream@0.0.11
| | | +-- split@0.3.3
| | | +-- stream-combiner@0.0.4
| | | `-- through@2.3.8
| | +-- faye-websocket@0.9.4
| | | `-- websocket-driver@0.6.5
| | |   `-- websocket-extensions@0.1.1
| | +-- object-assign@2.1.1
| | +-- opn@4.0.2
| | | +-- object-assign@4.1.0
| | | `-- pinkie-promise@2.0.1
| | |   `-- pinkie@2.0.4
| | +-- send@0.14.1
| | | +-- depd@1.1.0
| | | +-- destroy@1.0.4
| | | +-- encodeurl@1.0.1
| | | +-- escape-html@1.0.3
| | | +-- etag@1.7.0
| | | +-- http-errors@1.5.0
| | | | `-- setprototypeof@1.0.1
| | | +-- on-finished@2.3.0
| | | | `-- ee-first@1.1.1
| | | +-- range-parser@1.2.0
| | | `-- statuses@1.3.0
| | `-- watchr@2.3.10
| |   `-- bal-util@1.18.0
| |     +-- ambi@2.0.0
| |     +-- eachr@2.0.4
| |     +-- extendr@2.0.1
| |     +-- getsetdeep@2.0.0
| |     +-- safecallback@1.0.1
| |     +-- safefs@2.0.3
| |     +-- taskgroup@2.0.0
| |     `-- typechecker@2.0.8
| +-- lodash@3.10.1
| +-- q@1.4.1
| `-- trace@2.3.2
|   `-- async-hook@1.5.1
+-- bootprint-openapi@0.17.0
| +-- bootprint-json-schema@0.8.6
| | `-- bootprint-base@0.7.2
| |   +-- bootstrap@3.3.6
| |   +-- cheerio@0.19.0
| |   | +-- css-select@1.0.0
| |   | | +-- boolbase@1.0.0
| |   | | +-- css-what@1.0.0
| |   | | +-- domutils@1.4.3
| |   | | `-- nth-check@1.0.1
| |   | +-- dom-serializer@0.1.0
| |   | | `-- domelementtype@1.1.3
| |   | +-- entities@1.1.1
| |   | `-- htmlparser2@3.8.3
| |   |   +-- domelementtype@1.3.0
| |   |   +-- domhandler@2.3.0
| |   |   +-- domutils@1.5.1
| |   |   +-- entities@1.0.0
| |   |   `-- readable-stream@1.1.14
| |   |     +-- core-util-is@1.0.2
| |   |     +-- inherits@2.0.1
| |   |     +-- isarray@0.0.1
| |   |     `-- string_decoder@0.10.31
| |   +-- handlebars@3.0.3
| |   | +-- optimist@0.6.1
| |   | | +-- minimist@0.0.10
| |   | | `-- wordwrap@0.0.3
| |   | +-- source-map@0.1.43
| |   | | `-- amdefine@1.0.0
| |   | `-- uglify-js@2.3.6
| |   |   +-- async@0.2.10
| |   |   `-- optimist@0.3.7
| |   +-- highlight.js@8.9.1
| |   +-- json-stable-stringify@1.0.1
| |   | `-- jsonify@0.0.0
| |   `-- marked@0.3.5
| `-- lodash@3.10.1
`-- npm@3.8.3
  +-- abbrev@1.0.7
  +-- ansi-regex@2.0.0
  +-- ansicolors@0.3.2
  +-- ansistyles@0.1.3
  +-- aproba@1.0.1
  +-- archy@1.0.0
  +-- async-some@1.0.2
  +-- chownr@1.0.1
  +-- cmd-shim@2.0.2
  +-- columnify@1.5.4
  | `-- wcwidth@1.0.0
  |   `-- defaults@1.0.3
  |     `-- clone@1.0.2
  +-- config-chain@1.1.10
  | `-- proto-list@1.2.4
  +-- debuglog@1.0.1
  +-- dezalgo@1.0.3
  | `-- asap@2.0.3
  +-- editor@1.0.0
  +-- fs-vacuum@1.2.7
  +-- fs-write-stream-atomic@1.0.8
  +-- fstream@1.0.8
  +-- fstream-npm@1.0.7
  | `-- fstream-ignore@1.0.3
  |   `-- minimatch@3.0.0
  |     `-- brace-expansion@1.1.2
  |       +-- balanced-match@0.3.0
  |       `-- concat-map@0.0.1
  +-- glob@7.0.3
  | +-- minimatch@3.0.0
  | | `-- brace-expansion@1.1.3
  | |   +-- balanced-match@0.3.0
  | |   `-- concat-map@0.0.1
  | `-- path-is-absolute@1.0.0
  +-- graceful-fs@4.1.3
  +-- has-unicode@2.0.0
  +-- hosted-git-info@2.1.4
  +-- iferr@0.1.5
  +-- imurmurhash@0.1.4
  +-- inflight@1.0.4
  +-- inherits@2.0.1
  +-- ini@1.3.4
  +-- init-package-json@1.9.3
  | +-- glob@6.0.4
  | | +-- minimatch@3.0.0
  | | | `-- brace-expansion@1.1.3
  | | |   +-- balanced-match@0.3.0
  | | |   `-- concat-map@0.0.1
  | | `-- path-is-absolute@1.0.0
  | `-- promzard@0.3.0
  +-- lockfile@1.0.1
  +-- lodash._baseindexof@3.1.0
  +-- lodash._baseuniq@4.5.0
  | +-- lodash._createset@4.0.0
  | `-- lodash._setcache@4.1.0
  +-- lodash._bindcallback@3.0.1
  +-- lodash._cacheindexof@3.0.2
  +-- lodash._createcache@3.1.2
  +-- lodash._getnative@3.9.1
  +-- lodash.clonedeep@4.3.1
  | `-- lodash._baseclone@4.5.3
  +-- lodash.isarray@4.0.0
  +-- lodash.keys@4.0.5
  +-- lodash.restparam@3.6.1
  +-- lodash.union@4.2.0
  | +-- lodash._baseflatten@4.1.0
  | `-- lodash.rest@4.0.1
  +-- lodash.uniq@4.2.0
  +-- lodash.without@4.1.1
  | +-- lodash._basedifference@4.4.0
  | | `-- lodash._setcache@4.1.1
  | `-- lodash.rest@4.0.1
  +-- mkdirp@0.5.1
  | `-- minimist@0.0.8
  +-- node-gyp@3.3.1
  | +-- glob@4.5.3
  | | `-- minimatch@2.0.10
  | |   `-- brace-expansion@1.1.3
  | |     +-- balanced-match@0.3.0
  | |     `-- concat-map@0.0.1
  | +-- minimatch@1.0.0
  | | +-- lru-cache@2.7.3
  | | `-- sigmund@1.0.1
  | `-- path-array@1.0.1
  |   `-- array-index@1.0.0
  |     +-- debug@2.2.0
  |     | `-- ms@0.7.1
  |     `-- es6-symbol@3.0.2
  |       +-- d@0.1.1
  |       `-- es5-ext@0.10.11
  |         `-- es6-iterator@2.0.0
  +-- nopt@3.0.6
  +-- normalize-git-url@3.0.1
  +-- normalize-package-data@2.3.5
  | `-- is-builtin-module@1.0.0
  |   `-- builtin-modules@1.1.1
  +-- npm-cache-filename@1.0.2
  +-- npm-install-checks@3.0.0
  +-- npm-package-arg@4.1.0
  +-- npm-registry-client@7.1.0
  | +-- concat-stream@1.5.1
  | | `-- typedarray@0.0.6
  | `-- retry@0.8.0
  +-- npm-user-validate@0.1.2
  +-- npmlog@2.0.3
  | +-- ansi@0.3.1
  | +-- are-we-there-yet@1.1.2
  | | `-- delegates@1.0.0
  | `-- gauge@1.2.7
  |   +-- lodash.pad@4.1.0
  |   | +-- lodash.repeat@4.0.0
  |   | `-- lodash.tostring@4.1.2
  |   +-- lodash.padend@4.2.0
  |   | +-- lodash.repeat@4.0.0
  |   | `-- lodash.tostring@4.1.2
  |   `-- lodash.padstart@4.2.0
  |     +-- lodash.repeat@4.0.0
  |     `-- lodash.tostring@4.1.2
  +-- once@1.3.3
  +-- opener@1.4.1
  +-- osenv@0.1.3
  | +-- os-homedir@1.0.1
  | `-- os-tmpdir@1.0.1
  +-- path-is-inside@1.0.1
  +-- read@1.0.7
  | `-- mute-stream@0.0.5
  +-- read-cmd-shim@1.0.1
  +-- read-installed@4.0.3
  | `-- util-extend@1.0.3
  +-- read-package-json@2.0.3
  | +-- glob@6.0.4
  | | +-- minimatch@3.0.0
  | | | `-- brace-expansion@1.1.3
  | | |   +-- balanced-match@0.3.0
  | | |   `-- concat-map@0.0.1
  | | `-- path-is-absolute@1.0.0
  | `-- json-parse-helpfulerror@1.0.3
  |   `-- jju@1.2.1
  +-- read-package-tree@5.1.2
  +-- readable-stream@2.0.6
  | +-- core-util-is@1.0.2
  | +-- isarray@1.0.0
  | +-- process-nextick-args@1.0.6
  | +-- string_decoder@0.10.31
  | `-- util-deprecate@1.0.2
  +-- readdir-scoped-modules@1.0.2
  +-- realize-package-specifier@3.0.1
  +-- request@2.69.0
  | +-- aws-sign2@0.6.0
  | +-- aws4@1.2.1
  | | `-- lru-cache@2.7.3
  | +-- bl@1.0.1
  | +-- caseless@0.11.0
  | +-- combined-stream@1.0.5
  | | `-- delayed-stream@1.0.0
  | +-- extend@3.0.0
  | +-- forever-agent@0.6.1
  | +-- form-data@1.0.0-rc3
  | | `-- async@1.5.2
  | +-- har-validator@2.0.6
  | | +-- chalk@1.1.1
  | | | +-- ansi-styles@2.1.0
  | | | +-- escape-string-regexp@1.0.4
  | | | +-- has-ansi@2.0.0
  | | | `-- supports-color@2.0.0
  | | +-- commander@2.9.0
  | | | `-- graceful-readlink@1.0.1
  | | +-- is-my-json-valid@2.12.4
  | | | +-- generate-function@2.0.0
  | | | +-- generate-object-property@1.2.0
  | | | | `-- is-property@1.0.2
  | | | +-- jsonpointer@2.0.0
  | | | `-- xtend@4.0.1
  | | `-- pinkie-promise@2.0.0
  | |   `-- pinkie@2.0.1
  | +-- hawk@3.1.3
  | | +-- boom@2.10.1
  | | +-- cryptiles@2.0.5
  | | +-- hoek@2.16.3
  | | `-- sntp@1.0.9
  | +-- http-signature@1.1.1
  | | +-- assert-plus@0.2.0
  | | +-- jsprim@1.2.2
  | | | +-- extsprintf@1.0.2
  | | | +-- json-schema@0.2.2
  | | | `-- verror@1.3.6
  | | `-- sshpk@1.7.3
  | |   +-- asn1@0.2.3
  | |   +-- dashdash@1.12.2
  | |   +-- ecc-jsbn@0.1.1
  | |   +-- jodid25519@1.0.2
  | |   +-- jsbn@0.1.0
  | |   `-- tweetnacl@0.13.3
  | +-- is-typedarray@1.0.0
  | +-- isstream@0.1.2
  | +-- json-stringify-safe@5.0.1
  | +-- mime-types@2.1.9
  | | `-- mime-db@1.21.0
  | +-- node-uuid@1.4.7
  | +-- oauth-sign@0.8.0
  | +-- qs@6.0.2
  | +-- stringstream@0.0.5
  | +-- tough-cookie@2.2.1
  | `-- tunnel-agent@0.4.2
  +-- retry@0.9.0
  +-- rimraf@2.5.2
  +-- semver@5.1.0
  +-- sha@2.0.1
  +-- slide@1.1.6
  +-- sorted-object@2.0.0
  +-- strip-ansi@3.0.1
  +-- tar@2.2.1
  | `-- block-stream@0.0.8
  +-- text-table@0.2.0
  +-- uid-number@0.0.6
  +-- umask@1.1.0
  +-- unique-filename@1.1.0
  | `-- unique-slug@2.0.0
  +-- unpipe@1.0.0
  +-- validate-npm-package-license@3.0.1
  | +-- spdx-correct@1.0.2
  | | `-- spdx-license-ids@1.2.0
  | `-- spdx-expression-parse@1.0.2
  |   +-- spdx-exceptions@1.0.4
  |   `-- spdx-license-ids@1.2.0
  +-- validate-npm-package-name@2.2.2
  | `-- builtins@0.0.7
  +-- which@1.2.4
  | +-- is-absolute@0.1.7
  | | `-- is-relative@0.1.3
  | `-- isexe@1.1.1
  +-- wrappy@1.0.1
  `-- write-file-atomic@1.1.4
nknapp commented 8 years ago

It would probably help, if you could provide an example spec that produces this error and give permission to use it in a test-case. Since the tests are all green, I would like to add one that fails. Ideally, you could make a PR with such a failing test (have a look at the test-directory for examples).

Could you do that?

mattnworb commented 8 years ago

@nknapp it seems like I must have had some of the docker images I used cached and they weren't fetching all of the latest packages from npm - I am able to build a site successfully from the same spec that was failing earlier. Thanks for the help!

nknapp commented 8 years ago

Glad to hear that. I hope it didn't cause too much inconvenience. I've added this as nknapp/promised-handlebars#14 The bug is already fixed and a test is added. I'm hoping to release the real fixed version tonight. Just to let you know.