* Update some packages

* Use ptyw.js (from a specific rev for now) vs pty.js for better Windows support
* Updated docs slightly
* Use iconv.encode() in dropfile generation
This commit is contained in:
Bryan Ashby 2015-11-20 11:48:32 -07:00
parent 58bde9784d
commit c81eb6f514
5 changed files with 15 additions and 8 deletions

View File

@ -5,7 +5,7 @@ var spawn = require('child_process').spawn;
var events = require('events'); var events = require('events');
var _ = require('lodash'); var _ = require('lodash');
var pty = require('pty.js'); var pty = require('ptyw.js');
exports.Door = Door; exports.Door = Door;
@ -47,6 +47,7 @@ Door.prototype.run = function() {
// :TODO: do this with pluggable pipe/filter classes // :TODO: do this with pluggable pipe/filter classes
// :TODO: This causes an error to be thrown when e.g. 'cp437' is used due to Node buffer changes
door.setEncoding(this.exeInfo.encoding); door.setEncoding(this.exeInfo.encoding);
door.on('data', function doorData(data) { door.on('data', function doorData(data) {

View File

@ -8,6 +8,7 @@ var paths = require('path');
var _ = require('lodash'); var _ = require('lodash');
var async = require('async'); var async = require('async');
var moment = require('moment'); var moment = require('moment');
var iconv = require('iconv-lite');
exports.DropFile = DropFile; exports.DropFile = DropFile;
@ -84,7 +85,7 @@ function DropFile(client, fileType) {
// :TODO: fix time remaining // :TODO: fix time remaining
// :TODO: fix default protocol -- user prop: transfer_protocol // :TODO: fix default protocol -- user prop: transfer_protocol
return new Buffer( [ return iconv.encode( [
'COM1:', // "Comm Port - COM0: = LOCAL MODE" 'COM1:', // "Comm Port - COM0: = LOCAL MODE"
'57600', // "Baud Rate - 300 to 38400" (Note: set as 57600 instead!) '57600', // "Baud Rate - 300 to 38400" (Note: set as 57600 instead!)
'8', // "Parity - 7 or 8" '8', // "Parity - 7 or 8"
@ -158,7 +159,7 @@ function DropFile(client, fileType) {
var un = /[^\s]*/.exec(self.client.user.username)[0]; var un = /[^\s]*/.exec(self.client.user.username)[0];
var secLevel = self.client.user.getLegacySecurityLevel().toString(); var secLevel = self.client.user.getLegacySecurityLevel().toString();
return new Buffer( [ return iconv.encode( [
Config.general.boardName, // "The name of the system." Config.general.boardName, // "The name of the system."
opUn, // "The sysop's name up to the first space." opUn, // "The sysop's name up to the first space."
opUn, // "The sysop's name following the first space." opUn, // "The sysop's name following the first space."

View File

@ -107,7 +107,7 @@ MenuStack.prototype.goto = function(name, options, cb) {
loadMenu(loadOpts, function menuLoaded(err, modInst) { loadMenu(loadOpts, function menuLoaded(err, modInst) {
if(err) { if(err) {
var errCb = cb || self.defaultHandlerMissingMod(); var errCb = cb || currentModuleInfo.instance.defaultHandlerMissingMod();
errCb(err); errCb(err);
} else { } else {
// :TODO: Move this log to caller // :TODO: Move this log to caller

View File

@ -14,7 +14,12 @@ git clone https://github.com/NuSkooler/enigma-bbs.git
npm install npm install
``` ```
3\. Generate a SSH Private Key **Note for Windows users**:<br>
Some dependencies require compilation. You will need at least the following installed for `npm install` to succeed:
* A recent copy of Visual Studio (Express editions OK)
* Python 2.7.x
3\. Generate a SSH Private Key<br>
Note that you can skip this step and disable the SSH server in your `config.hjson` if desired. Note that you can skip this step and disable the SSH server in your `config.hjson` if desired.
```bash ```bash

View File

@ -23,9 +23,9 @@
"lodash": "^3.10.1", "lodash": "^3.10.1",
"mkdirp": "0.5.x", "mkdirp": "0.5.x",
"moment": "^2.10.6", "moment": "^2.10.6",
"node-uuid": "1.4.x", "node-uuid": "^1.4.7",
"pty.js": "0.3.x", "ptyw.js": "^0.3.4",
"sqlite3": "3.1.x", "sqlite3": "^3.1.1",
"ssh2": "^0.4.12", "ssh2": "^0.4.12",
"string-format": "davidchambers/string-format#mini-language" "string-format": "davidchambers/string-format#mini-language"
}, },