Skip to content


Subversion checkout URL

You can clone with
Download ZIP


admin plugin fetch seems to crash on fresh install #2087

clst opened this Issue · 7 comments

3 participants


I just set up etherpad-lite on my new Debian 7 Server and went to install some plugins.

When opening the plugin page I get only the installed plugin list, then after a few seconds it seems to crash.

npm http 200
[2014-02-18 17:49:07.426] [ERROR] console - TypeError: Object.keys called on non-object
    at Function.keys (native)
    at stripData (/usr/local/share/etherpad-lite/src/node_modules/npm/lib/search.js:89:28)
    at (native)
    at filter (/usr/local/share/etherpad-lite/src/node_modules/npm/lib/search.js:73:6)
    at /usr/local/share/etherpad-lite/src/node_modules/npm/lib/search.js:63:21
    at /usr/local/share/etherpad-lite/src/node_modules/npm/node_modules/npm-registry-client/lib/get.js:89:14
    at /usr/local/share/etherpad-lite/src/node_modules/graceful-fs/graceful-fs.js:95:5
    at Object.oncomplete (fs.js:107:15)
[2014-02-18 17:49:07.426] [INFO] console - graceful shutdown...

I had the same issue under CentOS 6.4 / node 0.10.26 / npm 1.4.3

I commented out line 89 from etherpad-lite/src/node_modules/npm/lib/search.js
//, version: Object.keys(data.versions)[0] || []

seems to have temporarly resolved the issue letting me play with it more.


Maybe this is an npm bug... I did not have time to look further. But etherpad crashing was a bit weird.
Manual plugin installation works fine btw.


Npm is up-to-date now, pls test again


Works great. Now I seem to get this warning (I guess it's harmless)

[2014-02-27 11:37:13.320] [WARN] pluginfw - /usr/local/share/etherpad-lite/node_modules/ep_etherpad-lite/node_modules/npm/node_modules/npm-registry-client requires semver@'^2.2.1' but will load
which is version 2.2.1 'unmet dependency'

[2014-02-27 11:37:13.513] [INFO] console - Installed plugins: ep_adminpads, ep_etherpad-lite, ep_syntaxhighlighting
[2014-02-27 11:37:13.523] [INFO] console - Your Etherpad git version is 6940106

$ npm ls semver
├─┬ ep_adminpads@0.0.5
│ └─┬ log4js@0.6.10
│   └── semver@1.1.4
└─┬ ep_etherpad-lite@1.3.0 -> /usr/local/share/etherpad-lite/src
  ├─┬ log4js@0.6.6
  │ └── semver@1.1.4
  ├─┬ npm@1.4.4
  │ └── semver@2.2.1
  └── semver@1.0.13

$ npm -g ls semver
└─┬ npm@1.4.4
  └── semver@2.2.1


looks like I spoke too soon. It worked once. Now I get:

npm WARN Building the local index for the first time, please be patient
npm http GET
npm http 200
[2014-02-27 12:39:44.413] [ERROR] console - RangeError: Invalid array length
    at /usr/local/share/etherpad-lite/src/node_modules/npm/node_modules/npm-registry-client/lib/get.js:93:15
    at Array.forEach (native)
    at /usr/local/share/etherpad-lite/src/node_modules/npm/node_modules/npm-registry-client/lib/get.js:92:26
    at cb (/usr/local/share/etherpad-lite/src/node_modules/npm/node_modules/npm-registry-client/lib/request.js:26:9)
    at RegClient.<anonymous> (/usr/local/share/etherpad-lite/src/node_modules/npm/node_modules/npm-registry-client/lib/request.js:101:16)
    at cb (/usr/local/share/etherpad-lite/src/node_modules/npm/node_modules/npm-registry-client/lib/request.js:124:9)
    at RegClient.<anonymous> (/usr/local/share/etherpad-lite/src/node_modules/npm/node_modules/npm-registry-client/lib/request.js:268:12)
    at Request.self.callback (/usr/local/share/etherpad-lite/src/node_modules/npm/node_modules/request/request.js:123:22)
    at Request.EventEmitter.emit (events.js:98:17)
    at Request.<anonymous> (/usr/local/share/etherpad-lite/src/node_modules/npm/node_modules/request/request.js:893:14)
[2014-02-27 12:39:44.413] [INFO] console - graceful shutdown...
[2014-02-27 12:39:44.414] [INFO] console - db sucessfully closed.

please try this npm/npm#3318 (comment)


the content of ~/.npm/-/all/.cache.json was "[]" (2 bytes)
I deleted it and now it updated fine again. Now every access to the plugin page is really fast.

Thanks for the help.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.