redoc: redoc-cli: ReferenceError: URL is not defined

Hi there!

There seems to be an issue with redoc-cli ATM.

Noticed it with one of our docs, but can be reproduced using the demo/swagger.yaml file from this repository:

$> yarn add redoc-cli
$> ./node_modules/.bin/redoc-cli bundle -o './redoc-test' demo/swagger.yaml
[ReDoc Compatibility mode]: Converting OpenAPI 2.0 to OpenAPI 3.0
Prerendering docs
ReferenceError: URL is not defined
    at removeQueryString (/tmp/node_modules/redoc/bundles/redoc.lib.js:6940:15)
    at /tmp/node_modules/redoc/bundles/redoc.lib.js:11055:137
    at Array.map (<anonymous>)
    at Object.children (/tmp/node_modules/redoc/bundles/redoc.lib.js:11051:104)
    at ReactDOMServerRenderer.render (/tmp/node_modules/react-dom/cjs/react-dom-server.node.development.js:3412:55)
    at ReactDOMServerRenderer.read (/tmp/node_modules/react-dom/cjs/react-dom-server.node.development.js:3161:29)
    at Object.renderToString (/tmp/node_modules/react-dom/cjs/react-dom-server.node.development.js:3646:27)
    at /tmp/node_modules/redoc-cli/index.js:189:29
    at Generator.next (<anonymous>)
    at fulfilled (/tmp/node_modules/redoc-cli/index.js:5:58)
$> nodejs --version
v8.10.0
$> yarn --version
1.13.0

About this issue

  • Original URL
  • State: closed
  • Created 5 years ago
  • Reactions: 1
  • Comments: 30 (13 by maintainers)

Most upvoted comments

Does it work now?

got the same error… node version v10.15.3 redoc-cli version 0.8.3

[ReDoc Compatibility mode]: Converting OpenAPI 2.0 to OpenAPI 3.0 Prerendering docs TypeError [ERR_INVALID_URL]: Invalid URL: /v1 at onParseError (internal/url.js:241:17) at new URL (internal/url.js:319:5) at parseURL (C:\Users\A11180221040052\AppData\Roaming\npm\node_modules\redoc-cli\node_modules\redoc\bundles\redoc.lib.js:6950:16) at removeQueryString (C:\Users\A11180221040052\AppData\Roaming\npm\node_modules\redoc-cli\node_modules\redoc\bundles\redoc.lib.js:6940:15) at C:\Users\A11180221040052\AppData\Roaming\npm\node_modules\redoc-cli\node_modules\redoc\bundles\redoc.lib.js:11064:137 at Array.map (<anonymous>) at Object.children (C:\Users\A11180221040052\AppData\Roaming\npm\node_modules\redoc-cli\node_modules\redoc\bundles\redoc.lib.js:11060:104) at ReactDOMServerRenderer.render (C:\Users\A11180221040052\AppData\Roaming\npm\node_modules\redoc-cli\node_modules\react-dom\cjs\react-dom-server.node.development.js:3412:55) at ReactDOMServerRenderer.read (C:\Users\A11180221040052\AppData\Roaming\npm\node_modules\redoc-cli\node_modules\react-dom\cjs\react-dom-server.node.development.js:3161:29) at Object.renderToString (C:\Users\A11180221040052\AppData\Roaming\npm\node_modules\redoc-cli\node_modules\react-dom\cjs\react-dom-server.node.development.js:3646:27)

Thanks. Working on a fix!

@RomanGotsiy I have same issue and have no servers field in spec (openapi v3)

@RomanGotsiy Just ran

redoc-cli bundle swagger.yaml

node version 10.8.0 redoc version 2.0.0-rc.8 redoc-cli version 0.8.3

[ReDoc Compatibility mode]: Converting OpenAPI 2.0 to OpenAPI 3.0 TypeError [ERR_INVALID_URL]: Invalid URL: at onParseError (internal/url.js:237:17) at parse (internal/url.js:246:3) at new URL (internal/url.js:321:5) at parseURL (/usr/local/lib/node_modules/redoc-cli/node_modules/redoc/bundles/redoc.lib.js:6950:16) at removeQueryString (/usr/local/lib/node_modules/redoc-cli/node_modules/redoc/bundles/redoc.lib.js:6940:15) at /usr/local/lib/node_modules/redoc-cli/node_modules/redoc/bundles/redoc.lib.js:11064:137 at Array.map (<anonymous>) at Object.children (/usr/local/lib/node_modules/redoc-cli/node_modules/redoc/bundles/redoc.lib.js:11060:104) at ReactDOMServerRenderer.render (/usr/local/lib/node_modules/redoc-cli/node_modules/react-dom/cjs/react-dom-server.node.development.js:3412:55) at ReactDOMServerRenderer.read (/usr/local/lib/node_modules/redoc-cli/node_modules/react-dom/cjs/react-dom-server.node.development.js:3161:29)

@RomanGotsiy Works fine now, thank you!

  version "2.0.0-rc.8"
  resolved "https://registry.yarnpkg.com/redoc/-/redoc-2.0.0-rc.8.tgz#46fb40900a04f2438cabd973181860323e1ee7de"
  integrity sha512-DpPa/rAUoSDYWGk5k/i0KUoRPrj62WKmbffHmS+c7zZGmFjtzVMpUzwrxrs3Dmf+u1t4YGw5wuhyq2p7qSlhsQ==

Works fine with nodejs 8, thanks 😃

It works with nodejs 10 now, BTW.