HomePhabricator

Fix module imports in Aphlict server

Description

Fix module imports in Aphlict server

Summary:
This was broken in D11383. Basically, I had the ws module installed globally whilst testing, but the changes made do not work if the ws module is installed locally (i.e. in the ./support/aphlict/server/node_modules directory). After poking around, it seems that this is due to the sandboxing that is done by JX.require.

A quick fix is to just not use JX.require, although you may have a better idea?

The error that is occurring is as follows:

<<< UNCAUGHT EXCEPTION! >>>

Error: Cannot find module 'ws'
    at Function.Module._resolveFilename (module.js:338:15)
    at Function.Module._load (module.js:280:25)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at extra.require (/usr/src/phabricator/webroot/rsrc/externals/javelin/core/init_node.js:48:16)
    at /usr/src/phabricator/support/aphlict/server/lib/AphlictClientServer.js:10:17
    at Script.(anonymous function) [as runInNewContext] (vm.js:41:22)
    at Object.JX.require (/usr/src/phabricator/webroot/rsrc/externals/javelin/core/init_node.js:58:6)
    at Object.<anonymous> (/usr/src/phabricator/support/aphlict/server/aphlict_server.js:102:4)
    at Module._compile (module.js:456:26)
>>> Server exited!

Test Plan: Now able to start the Aphlict server.

Reviewers: joshuaspence

Reviewed By: joshuaspence

Subscribers: Korvin, epriestley

Maniphest Tasks: T6987

Differential Revision: https://secure.phabricator.com/D11425

Details

Provenance
epriestleyAuthored on
epriestleyPushed on Jan 19 2015, 7:46 PM
Reviewer
joshuaspence
Differential Revision
D11425: Fix module imports in Aphlict server
Parents
rP94730a1a4365: Minor tidying of some Aphlict code
Branches
Unknown
Tags
Unknown