From 8fadfcf9981ab6448dda960b79fb1abe987c09e6 Mon Sep 17 00:00:00 2001 From: Evan Tahler Date: Sun, 1 Mar 2015 11:08:02 +0100 Subject: [PATCH 1/8] v10.1.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index f6b29d1e5..b3b93452b 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "author": "Evan Tahler ", "name": "actionhero", "description": "actionhero.js is a multi-transport API Server with integrated cluster capabilities and delayed tasks", - "version": "10.0.5", + "version": "10.1.0", "homepage": "http://actionherojs.com", "repository": { "type": "git", From f2ce2a57a715e1577773f906ff090c35111a605e Mon Sep 17 00:00:00 2001 From: Michael Jensen Date: Wed, 4 Mar 2015 17:02:48 -0800 Subject: [PATCH 2/8] This actually needs to be `undefined` --- config/servers/websocket.js | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/config/servers/websocket.js b/config/servers/websocket.js index 249cc2953..a5cdd7233 100644 --- a/config/servers/websocket.js +++ b/config/servers/websocket.js @@ -1,23 +1,23 @@ // Note that to use the websocket server, you also need the web server enabled -exports.default = { +exports.default = { servers: { websocket: function(api){ return { enabled: true, // you can pass a FQDN (string) here or 'window.location.origin' - clientUrl: 'window.location.origin', - // Directory to render client-side JS. + clientUrl: 'window.location.origin', + // Directory to render client-side JS. // Path should start with "/" and will be built starting from api.config..general.paths.public clientJsPath: 'javascript/', // the name of the client-side JS file to render. Both `.js` and `.min.js` versions will be created // do not include the file exension - // set to `null` to not render the client-side JS on boot + // set to `undefined` to not render the client-side JS on boot clientJsName: 'actionheroClient', // should the server signal clients to not reconnect when the server is shutdown/reboot destroyClientsOnShutdown: false, - // Primus Server Options: + // Primus Server Options: server: { // authorization: null, // pathname: '/primus', @@ -32,7 +32,7 @@ exports.default = { // exposed: false, }, - // Priumus Client Options: + // Priumus Client Options: client: { apiPath: '/api', // the api base endpoint on your actionhero server // reconnect: {}, @@ -49,4 +49,4 @@ exports.default = { } } } -} \ No newline at end of file +} From 805eac4a4a1ce6ebf6ff602585c9a99291bdfe9c Mon Sep 17 00:00:00 2001 From: Evan Tahler Date: Fri, 6 Mar 2015 10:28:32 +0000 Subject: [PATCH 3/8] move mutilworker eventLoop polling to trace --- initializers/resque.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/initializers/resque.js b/initializers/resque.js index efd5221de..e2085a264 100644 --- a/initializers/resque.js +++ b/initializers/resque.js @@ -80,7 +80,7 @@ module.exports = { // multiWorker emitters self.multiWorker.on('internalError', function(error){ api.log(error, 'error'); }) - self.multiWorker.on('multiWorkerAction', function(verb, delay){ api.log('*** checked for worker status: ' + verb + ' (event loop delay: ' + delay + 'ms)', 'debug'); }) + self.multiWorker.on('multiWorkerAction', function(verb, delay){ api.log('*** checked for worker status: ' + verb + ' (event loop delay: ' + delay + 'ms)', 'trace'); }) if(api.config.tasks.minTaskProcessors > 0){ self.multiWorker.start(function(){ From 33225a6b35effd3da7c2e06a51596e15d57b86ed Mon Sep 17 00:00:00 2001 From: Evan Tahler Date: Thu, 12 Mar 2015 10:15:58 +0000 Subject: [PATCH 4/8] add "public" to cache-control headers --- servers/web.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/servers/web.js b/servers/web.js index d5acb7fa0..e20c3be8b 100644 --- a/servers/web.js +++ b/servers/web.js @@ -100,7 +100,7 @@ var initialize = function(api, options, next){ connection.rawConnection.responseHeaders.push(['Content-Type', mime]); connection.rawConnection.responseHeaders.push(['Content-Length', length]); if(foundExpires === false) { connection.rawConnection.responseHeaders.push(['Expires', new Date(new Date().getTime() + api.config.servers.web.flatFileCacheDuration * 1000).toUTCString()]); } - if(foundCacheControl === false) { connection.rawConnection.responseHeaders.push(['Cache-Control', 'max-age=' + api.config.servers.web.flatFileCacheDuration + ', must-revalidate']); } + if(foundCacheControl === false) { connection.rawConnection.responseHeaders.push(['Cache-Control', 'max-age=' + api.config.servers.web.flatFileCacheDuration + ', must-revalidate, public']); } cleanHeaders(connection); var headers = connection.rawConnection.responseHeaders; From 6054a933ed451ae2cdbf23c2e0b1119ea842daf8 Mon Sep 17 00:00:00 2001 From: Evan Tahler Date: Thu, 12 Mar 2015 14:46:04 +0000 Subject: [PATCH 5/8] NR++ --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index b3b93452b..b251d6124 100644 --- a/package.json +++ b/package.json @@ -35,7 +35,7 @@ "formidable": "~1.0.14", "grunt": "~0.4.2", "mime": "~1.3.4", - "node-resque": "0.11.6", + "node-resque": "0.11.8", "node-uuid": "~1.4.1", "optimist": "~0.6.1", "primus": "~2.4.0", From 1b1aaf179426754b82c725691a2bfeacf2dd72ad Mon Sep 17 00:00:00 2001 From: Evan Tahler Date: Thu, 12 Mar 2015 16:21:45 +0000 Subject: [PATCH 6/8] NR++ --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index b251d6124..5a92e0a22 100644 --- a/package.json +++ b/package.json @@ -35,7 +35,7 @@ "formidable": "~1.0.14", "grunt": "~0.4.2", "mime": "~1.3.4", - "node-resque": "0.11.8", + "node-resque": "0.11.9", "node-uuid": "~1.4.1", "optimist": "~0.6.1", "primus": "~2.4.0", From 814d491a6186f04806e4083a9858ae78b91c2e93 Mon Sep 17 00:00:00 2001 From: Michael Jensen Date: Fri, 13 Mar 2015 09:41:25 -0700 Subject: [PATCH 7/8] Don't generate client-side JS for falsey config values --- servers/websocket.js | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/servers/websocket.js b/servers/websocket.js index 16eb2a109..5caa39a7a 100644 --- a/servers/websocket.js +++ b/servers/websocket.js @@ -83,7 +83,7 @@ var initialize = function(api, options, next){ length : length }; - try{ + try{ if(!error){ fileStream.on('data', function(d){ content+= d; }); fileStream.on('end', function(){ @@ -144,7 +144,7 @@ var initialize = function(api, options, next){ if(!minimize){ minimize = false; } var libSource = api.servers.servers.websocket.server.library(); var ahClientSource = server.compileActionheroClientJS(); - ahClientSource = + ahClientSource = ';;;\r\n' + '(function(exports){ \r\n' + ahClientSource + @@ -156,19 +156,19 @@ var initialize = function(api, options, next){ return UglifyJS.minify(libSource + '\r\n\r\n\r\n' + ahClientSource, {fromString: true}).code; }else{ return (libSource + '\r\n\r\n\r\n' + ahClientSource); - } + } } server.writeClientJS = function(){ if(!api.config.general.paths.public || api.config.general.paths.public.length === 0){ return; } - if(api.config.servers.websocket.clientJsPath !== undefined && api.config.servers.websocket.clientJsName !== undefined){ + if(api.config.servers.websocket.clientJsPath && api.config.servers.websocket.clientJsName){ var base = path.normalize( - api.config.general.paths.public[0] + - path.sep + - api.config.servers.websocket.clientJsPath + - path.sep + + api.config.general.paths.public[0] + + path.sep + + api.config.servers.websocket.clientJsPath + + path.sep + api.config.servers.websocket.clientJsName ); try{ From 4b8629ec7860bc729f21d7d583e2088072404327 Mon Sep 17 00:00:00 2001 From: Evan Tahler Date: Fri, 13 Mar 2015 16:56:10 +0000 Subject: [PATCH 8/8] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index b435a6f7c..8da80c827 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# actionhero.js ![NPM Version](https://img.shields.io/npm/v/actionhero.svg?style=flat) ![Node Version](https://img.shields.io/node/v/actionhero.svg?style=flat) [![NPM](https://img.shields.io/npm/dm/actionhero.svg?style=flat)](https://npmjs.org/package/actionhero) +# actionhero.js [![NPM Version](https://img.shields.io/npm/v/actionhero.svg?style=flat)](https://www.npmjs.com/package/actionhero) ![Node Version](https://img.shields.io/node/v/actionhero.svg?style=flat) [![NPM](https://img.shields.io/npm/dm/actionhero.svg?style=flat)](https://npmjs.org/package/actionhero) ## The Reusable, Scalable, and Quick node.js API Server