Hello community,
here is the log from the commit of package nodejs-forever-agent for openSUSE:Factory checked in at 2015-06-30 10:17:19
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/nodejs-forever-agent (Old)
and /work/SRC/openSUSE:Factory/.nodejs-forever-agent.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "nodejs-forever-agent"
Changes:
--------
--- /work/SRC/openSUSE:Factory/nodejs-forever-agent/nodejs-forever-agent.changes 2015-04-27 13:00:57.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.nodejs-forever-agent.new/nodejs-forever-agent.changes 2015-06-30 10:17:20.000000000 +0200
@@ -1,0 +2,5 @@
+Sat Jun 27 03:23:34 UTC 2015 - i@marguerite.su
+
+- update version 0.6.1
+
+-------------------------------------------------------------------
Old:
----
forever-agent-0.5.2.tgz
New:
----
forever-agent-0.6.1.tgz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ nodejs-forever-agent.spec ++++++
--- /var/tmp/diff_new_pack.A5mTsb/_old 2015-06-30 10:17:20.000000000 +0200
+++ /var/tmp/diff_new_pack.A5mTsb/_new 2015-06-30 10:17:20.000000000 +0200
@@ -19,7 +19,7 @@
%define base_name forever-agent
Name: nodejs-forever-agent
-Version: 0.5.2
+Version: 0.6.1
Release: 0
Summary: HTTP Agent that keeps socket connections alive
License: Apache-2.0
++++++ forever-agent-0.5.2.tgz -> forever-agent-0.6.1.tgz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/package/index.js new/package/index.js
--- old/package/index.js 2014-02-04 23:54:09.000000000 +0100
+++ new/package/index.js 2015-04-07 19:02:26.000000000 +0200
@@ -6,6 +6,17 @@
, net = require('net')
, tls = require('tls')
, AgentSSL = require('https').Agent
+
+function getConnectionName(host, port) {
+ var name = ''
+ if (typeof host === 'string') {
+ name = host + ':' + port
+ } else {
+ // For node.js v012.0 and iojs-v1.5.1, host is an object. And any existing localAddress is part of the connection name.
+ name = host.host + ':' + host.port + ':' + (host.localAddress ? (host.localAddress + ':') : ':')
+ }
+ return name
+}
function ForeverAgent(options) {
var self = this
@@ -16,7 +27,8 @@
self.maxSockets = self.options.maxSockets || Agent.defaultMaxSockets
self.minSockets = self.options.minSockets || ForeverAgent.defaultMinSockets
self.on('free', function(socket, host, port) {
- var name = host + ':' + port
+ var name = getConnectionName(host, port)
+
if (self.requests[name] && self.requests[name].length) {
self.requests[name].shift().onSocket(socket)
} else if (self.sockets[name].length < self.minSockets) {
@@ -47,7 +59,14 @@
ForeverAgent.prototype.createConnection = net.createConnection
ForeverAgent.prototype.addRequestNoreuse = Agent.prototype.addRequest
ForeverAgent.prototype.addRequest = function(req, host, port) {
- var name = host + ':' + port
+ var name = getConnectionName(host, port)
+
+ if (typeof host !== 'string') {
+ var options = host
+ port = options.port
+ host = options.host
+ }
+
if (this.freeSockets[name] && this.freeSockets[name].length > 0 && !req.useChunkedEncodingByDefault) {
var idleSocket = this.freeSockets[name].pop()
idleSocket.removeListener('error', idleSocket._onIdleError)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/package/package.json new/package/package.json
--- old/package/package.json 2014-02-04 23:54:58.000000000 +0100
+++ new/package/package.json 2015-04-07 19:03:23.000000000 +0200
@@ -2,7 +2,8 @@
"author": "Mikeal Rogers