socket.io-parser
Advanced tools
+3
-4
@@ -7,3 +7,2 @@ /*global Blob,File*/ | ||
| var isArray = require('isarray'); | ||
| var isBuf = require('./is-buffer'); | ||
@@ -32,3 +31,3 @@ | ||
| return placeholder; | ||
| } else if (isArray(data)) { | ||
| } else if (Array.isArray(data)) { | ||
| var newData = new Array(data.length); | ||
@@ -71,3 +70,3 @@ for (var i = 0; i < data.length; i++) { | ||
| return buf; | ||
| } else if (isArray(data)) { | ||
| } else if (Array.isArray(data)) { | ||
| for (var i = 0; i < data.length; i++) { | ||
@@ -127,3 +126,3 @@ data[i] = _reconstructPacket(data[i]); | ||
| fileReader.readAsArrayBuffer(obj); // blob -> arraybuffer | ||
| } else if (isArray(obj)) { // handle array | ||
| } else if (Array.isArray(obj)) { // handle array | ||
| for (var i = 0; i < obj.length; i++) { | ||
@@ -130,0 +129,0 @@ _removeBlobs(obj[i], i, obj); |
+14
-0
| 2.3.0 / 2016-10-21 | ||
| ================== | ||
| * [perf] Split try catch into separate function (#40) | ||
| * [chore] remove browsers setting from .zuul.yml (#34) | ||
| * [chore] bump zuul (#37) | ||
| * [chore] Bump zuul to 3.11.0 & zuul-ngrok to 4.0.0 (#41) | ||
| * [chore] Update zuul browser settings following EOL notices (#42) | ||
| * [chore] Restrict files included in npm package (#45) | ||
| * [chore] Update zuul browser settings (#44) | ||
| * [chore] Remove deprecated isarray dependency (#46) | ||
| * [chore] Make the build status badge point towards master (#47) | ||
| * [chore] Move benchmark to dev dependencies (#48) | ||
| 2.2.6 / 2015-11-25 | ||
@@ -3,0 +17,0 @@ ================== |
+10
-6
@@ -8,3 +8,2 @@ | ||
| var json = require('json3'); | ||
| var isArray = require('isarray'); | ||
| var Emitter = require('component-emitter'); | ||
@@ -327,7 +326,3 @@ var binary = require('./binary'); | ||
| if (str.charAt(++i)) { | ||
| try { | ||
| p.data = json.parse(str.substr(i)); | ||
| } catch(e){ | ||
| return error(); | ||
| } | ||
| p = tryParse(p, str.substr(i)); | ||
| } | ||
@@ -339,2 +334,11 @@ | ||
| function tryParse(p, str) { | ||
| try { | ||
| p.data = json.parse(str); | ||
| } catch(e){ | ||
| return error(); | ||
| } | ||
| return p; | ||
| }; | ||
| /** | ||
@@ -341,0 +345,0 @@ * Deallocates a parser's resources |
+11
-7
| { | ||
| "name": "socket.io-parser", | ||
| "version": "2.2.6", | ||
| "version": "2.3.0", | ||
| "description": "socket.io protocol parser", | ||
@@ -9,14 +9,18 @@ "repository": { | ||
| }, | ||
| "files": [ | ||
| "binary.js", | ||
| "index.js", | ||
| "is-buffer.js" | ||
| ], | ||
| "dependencies": { | ||
| "debug": "2.2.0", | ||
| "json3": "3.3.2", | ||
| "component-emitter": "1.1.2", | ||
| "isarray": "0.0.1", | ||
| "benchmark": "1.0.0" | ||
| "component-emitter": "1.1.2" | ||
| }, | ||
| "devDependencies": { | ||
| "benchmark": "1.0.0", | ||
| "expect.js": "0.2.0", | ||
| "mocha": "1.16.2", | ||
| "expect.js": "0.2.0", | ||
| "zuul": "3.7.3", | ||
| "zuul-ngrok": "3.2.0" | ||
| "zuul": "3.11.0", | ||
| "zuul-ngrok": "4.0.0" | ||
| }, | ||
@@ -23,0 +27,0 @@ "scripts": { |
+1
-1
| # socket.io-parser | ||
| [](http://travis-ci.org/socketio/socket.io-parser) | ||
| [](http://travis-ci.org/socketio/socket.io-parser) | ||
| [](http://badge.fury.io/js/socket.io-parser) | ||
@@ -6,0 +6,0 @@ |
Sorry, the diff of this file is not supported yet
-46
| language: node_js | ||
| sudo: false | ||
| node_js: | ||
| - 0.10 | ||
| notifications: | ||
| irc: irc.freenode.org##socket.io | ||
| git: | ||
| depth: 1 | ||
| env: | ||
| global: | ||
| - secure: 28HHk1J0H64KNjzmmlxG/Ro0EPuLnhO0rU+kZjjthDHj/FaugIsqjAVQ1Dl6heWV2/MlVzw6nDCyMNiGwiVk0ruZPQ0SYdAKLplrdMtzAihbU3xx+ULFQPLM3SoW0ZFCEpe8dWPGy4WdgW7aLByeel9TJb3vlhAu7p7AvrcO7Fs= | ||
| - secure: rKEG0Cfw0vkw8thk63RHYG7h8XWYcBlvZ0w1IWpr2dAfnnLMi1palSTrBrFQc77flk7rN00zGIe76FhKydV9r4WWYAUYKPqo4k+9/FkpzjZlNtL49QRoNwC9jmJ8OeUwGowA13gZPyl/5P13wVaKCB0YrKnzz5LHo3Sp7So6J8U= | ||
| matrix: | ||
| include: | ||
| - node_js: '0.12' | ||
| env: BROWSER_NAME=chrome BROWSER_VERSION=latest | ||
| - node_js: '0.12' | ||
| env: BROWSER_NAME=safari BROWSER_VERSION=latest | ||
| - node_js: '0.12' | ||
| env: BROWSER_NAME=ie BROWSER_VERSION=6 | ||
| - node_js: '0.12' | ||
| env: BROWSER_NAME=ie BROWSER_VERSION=7 | ||
| - node_js: '0.12' | ||
| env: BROWSER_NAME=ie BROWSER_VERSION=8 | ||
| - node_js: '0.12' | ||
| env: BROWSER_NAME=ie BROWSER_VERSION=9 | ||
| - node_js: '0.12' | ||
| env: BROWSER_NAME=ie BROWSER_VERSION=10 BROWSER_PLATFORM="Windows 2012" | ||
| - node_js: '0.12' | ||
| env: BROWSER_NAME=ie BROWSER_VERSION=latest BROWSER_PLATFORM="Windows 2012" | ||
| - node_js: '0.12' | ||
| env: BROWSER_NAME=iphone BROWSER_VERSION=5.1 | ||
| - node_js: '0.12' | ||
| env: BROWSER_NAME=iphone BROWSER_VERSION=6.1 | ||
| - node_js: '0.12' | ||
| env: BROWSER_NAME=iphone BROWSER_VERSION=7.1 | ||
| - node_js: '0.12' | ||
| env: BROWSER_NAME=android BROWSER_VERSION=4.0 | ||
| - node_js: '0.12' | ||
| env: BROWSER_NAME=android BROWSER_VERSION=4.1 | ||
| - node_js: '0.12' | ||
| env: BROWSER_NAME=android BROWSER_VERSION=4.2 | ||
| - node_js: '0.12' | ||
| env: BROWSER_NAME=android BROWSER_VERSION=4.3 | ||
| - node_js: '0.12' | ||
| env: BROWSER_NAME=android BROWSER_VERSION=4.4 |
-20
| ui: mocha-bdd | ||
| tunnel: | ||
| type: ngrok | ||
| authtoken: 6Aw8vTgcG5EvXdQywVvbh_3fMxvd4Q7dcL2caAHAFjV | ||
| proto: tcp | ||
| browsers: | ||
| - name: chrome | ||
| version: 29..latest | ||
| - name: firefox | ||
| version: latest | ||
| - name: safari | ||
| version: latest | ||
| - name: ie | ||
| version: 10 | ||
| platform: Windows 2012 | ||
| - name: ie | ||
| version: 9 | ||
| version: [6..9, latest] | ||
| - name: iphone | ||
| version: oldest..latest |
| var bencher = require('./index'); | ||
| bencher(function(benchmark) { | ||
| function logMean(test) { | ||
| console.log(test.name + ' mean run time: ' + test.stats.mean); | ||
| } | ||
| for (var i = 0; i < benchmark.length; i++) { | ||
| logMean(benchmark[i]); | ||
| } | ||
| }); |
| var Benchmark = require('benchmark'); | ||
| var parser = require('../index'); | ||
| function test(packet, deferred) { | ||
| var encoder = new parser.Encoder(); | ||
| var decoder = new parser.Decoder(); | ||
| encoder.encode(packet, function(encodedPackets) { | ||
| var decoder = new parser.Decoder(); | ||
| decoder.on('decoded', function(packet) { | ||
| deferred.resolve(); | ||
| }); | ||
| decoder.add(encodedPackets[0]); | ||
| }); | ||
| } | ||
| var dataObject = { | ||
| 'a': [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17], | ||
| 'b': 'xxxyyyzzzalsdfalskdjfalksdjfalksdjfalksdjfjjfjfjfjjfjfjfj', | ||
| 'data': { | ||
| 'is': 'cool', | ||
| 'or': { | ||
| 'is': { | ||
| 'it': true | ||
| } | ||
| } | ||
| } | ||
| }; | ||
| var bigArray = []; | ||
| for (var i = 0; i < 250; i++) { | ||
| bigArray.push(dataObject); | ||
| } | ||
| module.exports = function(callback) { | ||
| var suite = new Benchmark.Suite(); | ||
| suite.add('small json parse', {defer: true, fn: function(deferred) { | ||
| var packet = { | ||
| type: parser.EVENT, | ||
| nsp: '/bench', | ||
| data: dataObject | ||
| }; | ||
| test(packet, deferred); | ||
| }}) | ||
| .add('big json parse', {defer: true, fn: function(deferred) { | ||
| var packet = { | ||
| type: parser.EVENT, | ||
| nsp: '/bench', | ||
| data: bigArray | ||
| }; | ||
| test(packet, deferred); | ||
| }}) | ||
| .add('json with small binary parse', {defer: true, fn: function(deferred) { | ||
| var packet = { | ||
| type: parser.EVENT, | ||
| nsp: '/bench', | ||
| data: {'a': [1, 2, 3], 'b': 'xxxyyyzzz', 'data': new Buffer(1000)} | ||
| }; | ||
| test(packet, deferred); | ||
| }}) | ||
| .add('json with big binary parse', {defer: true, fn: function(deferred) { | ||
| var bigBinaryData = { | ||
| bin1: new Buffer(10000), | ||
| arr: bigArray, | ||
| bin2: new Buffer(10000), | ||
| bin3: new Buffer(10000) | ||
| }; | ||
| var packet = { | ||
| type: parser.EVENT, | ||
| nsp: '/bench', | ||
| data: bigBinaryData | ||
| }; | ||
| test(packet, deferred); | ||
| }}) | ||
| .on('complete', function() { | ||
| callback(this); | ||
| }) | ||
| .run({'async': true}); | ||
| }; |
-27
| REPORTER = dot | ||
| test: | ||
| @if [ "x$(BROWSER_NAME)" = "x" ]; then make test-node; else make test-zuul; fi | ||
| test-node: | ||
| @./node_modules/.bin/mocha \ | ||
| --reporter $(REPORTER) \ | ||
| --bail \ | ||
| test/index.js | ||
| test-zuul: | ||
| @if [ "x$(BROWSER_PLATFORM)" = "x" ]; then \ | ||
| ./node_modules/zuul/bin/zuul \ | ||
| --browser-name $(BROWSER_NAME) \ | ||
| --browser-version $(BROWSER_VERSION) \ | ||
| test/index.js; \ | ||
| else \ | ||
| ./node_modules/zuul/bin/zuul \ | ||
| --browser-name $(BROWSER_NAME) \ | ||
| --browser-version $(BROWSER_VERSION) \ | ||
| --browser-platform "$(BROWSER_PLATFORM)" \ | ||
| test/index.js; \ | ||
| fi | ||
| .PHONY: test |
New author
Supply chain riskA new npm collaborator published a version of the package for the first time. New collaborators are usually benign additions to a project, but do indicate a change to the security surface area of a package.
Found 1 instance in 1 package
Long strings
Supply chain riskContains long string literals, which may be a sign of obfuscated or packed code.
Found 1 instance in 1 package
Long strings
Supply chain riskContains long string literals, which may be a sign of obfuscated or packed code.
Found 1 instance in 1 package
3
-40%18073
-18.73%5
25%7
-46.15%469
-14.73%1
Infinity%- Removed
- Removed
- Removed
- Removed