@segment/analytics.js-core
Advanced tools
Comparing version 3.7.2 to 3.8.0
@@ -13,2 +13,5 @@ 'use strict'; | ||
var type = require('component-type'); | ||
var uuid = require('uuid').v4; | ||
var json = require('json3'); | ||
var md5 = require('spark-md5').hash; | ||
@@ -79,2 +82,5 @@ /** | ||
// generate and attach a messageId to msg | ||
msg.messageId = 'ajs-' + md5(json.stringify(msg) + uuid()); | ||
// cleanup | ||
@@ -81,0 +87,0 @@ delete msg.options; |
{ | ||
"name": "@segment/analytics.js-core", | ||
"author": "Segment <friends@segment.com>", | ||
"version": "3.7.2", | ||
"version": "3.8.0", | ||
"description": "The hassle-free way to integrate analytics into any web application.", | ||
@@ -69,2 +69,3 @@ "keywords": [ | ||
"json3": "^3.3.2", | ||
"spark-md5": "^2.0.2", | ||
"new-date": "^1.0.0", | ||
@@ -71,0 +72,0 @@ "next-tick": "^0.2.2", |
@@ -20,3 +20,8 @@ 'use strict'; | ||
opts.integrations = { Segment: true }; | ||
assert.deepEqual(normalize(msg, list), { | ||
var normalized = normalize(msg, list); | ||
assert.lengthEquals(normalized.messageId, 36); | ||
delete normalized.messageId; | ||
assert.deepEqual(normalized, { | ||
integrations: { Segment: true }, | ||
@@ -48,3 +53,8 @@ userId: 'user-id', | ||
opts.traits = { trait: true }; | ||
assert.deepEqual(normalize(msg, list), { | ||
var normalized = normalize(msg, list); | ||
assert.lengthEquals(normalized.messageId, 36); | ||
delete normalized.messageId; | ||
assert.deepEqual(normalized, { | ||
integrations: {}, | ||
@@ -66,3 +76,8 @@ context: { | ||
opts.KISSmetrics = false; | ||
assert.deepEqual(normalize(msg, list), { | ||
var normalized = normalize(msg, list); | ||
assert.lengthEquals(normalized.messageId, 36); | ||
delete normalized.messageId; | ||
assert.deepEqual(normalized, { | ||
context: {}, | ||
@@ -79,3 +94,8 @@ integrations: { | ||
opts.KissMetrics = false; | ||
assert.deepEqual(normalize(msg, list), { | ||
var normalized = normalize(msg, list); | ||
assert.lengthEquals(normalized.messageId, 36); | ||
delete normalized.messageId; | ||
assert.deepEqual(normalized, { | ||
context: {}, | ||
@@ -91,3 +111,8 @@ integrations: { | ||
opts.All = true; | ||
assert.deepEqual(normalize(msg, list), { | ||
var normalized = normalize(msg, list); | ||
assert.lengthEquals(normalized.messageId, 36); | ||
delete normalized.messageId; | ||
assert.deepEqual(normalized, { | ||
context: {}, | ||
@@ -102,3 +127,8 @@ integrations: { | ||
opts.all = true; | ||
assert.deepEqual(normalize(msg, list), { | ||
var normalized = normalize(msg, list); | ||
assert.lengthEquals(normalized.messageId, 36); | ||
delete normalized.messageId; | ||
assert.deepEqual(normalized, { | ||
context: {}, | ||
@@ -117,3 +147,8 @@ integrations: { | ||
opts.integrations.Segment = true; | ||
assert.deepEqual(normalize(msg, list), { | ||
var normalized = normalize(msg, list); | ||
assert.lengthEquals(normalized.messageId, 36); | ||
delete normalized.messageId; | ||
assert.deepEqual(normalized, { | ||
context: {}, | ||
@@ -138,3 +173,8 @@ integrations: { | ||
providers.KISSmetrics = false; | ||
assert.deepEqual(normalize(msg, list), { | ||
var normalized = normalize(msg, list); | ||
assert.lengthEquals(normalized.messageId, 36); | ||
delete normalized.messageId; | ||
assert.deepEqual(normalized, { | ||
context: {}, | ||
@@ -151,3 +191,8 @@ integrations: { | ||
providers.KissMetrics = false; | ||
assert.deepEqual(normalize(msg, list), { | ||
var normalized = normalize(msg, list); | ||
assert.lengthEquals(normalized.messageId, 36); | ||
delete normalized.messageId; | ||
assert.deepEqual(normalized, { | ||
context: {}, | ||
@@ -163,3 +208,8 @@ integrations: { | ||
providers.All = true; | ||
assert.deepEqual(normalize(msg, list), { | ||
var normalized = normalize(msg, list); | ||
assert.lengthEquals(normalized.messageId, 36); | ||
delete normalized.messageId; | ||
assert.deepEqual(normalized, { | ||
context: {}, | ||
@@ -174,3 +224,8 @@ integrations: { | ||
providers.all = true; | ||
assert.deepEqual(normalize(msg, list), { | ||
var normalized = normalize(msg, list); | ||
assert.lengthEquals(normalized.messageId, 36); | ||
delete normalized.messageId; | ||
assert.deepEqual(normalized, { | ||
context: {}, | ||
@@ -189,3 +244,8 @@ integrations: { | ||
opts.integrations.Segment = true; | ||
assert.deepEqual(normalize(msg, list), { | ||
var normalized = normalize(msg, list); | ||
assert.lengthEquals(normalized.messageId, 36); | ||
delete normalized.messageId; | ||
assert.deepEqual(normalized, { | ||
context: {}, | ||
@@ -202,3 +262,8 @@ integrations: { | ||
opts.integrations = { Segment: true }; | ||
assert.deepEqual(normalize(msg, list), { | ||
var normalized = normalize(msg, list); | ||
assert.lengthEquals(normalized.messageId, 36); | ||
delete normalized.messageId; | ||
assert.deepEqual(normalized, { | ||
context: {}, | ||
@@ -222,3 +287,8 @@ integrations: { | ||
opts.KISSmetrics = false; | ||
assert.deepEqual(normalize(msg, list), { | ||
var normalized = normalize(msg, list); | ||
assert.lengthEquals(normalized.messageId, 36); | ||
delete normalized.messageId; | ||
assert.deepEqual(normalized, { | ||
context: {}, | ||
@@ -235,3 +305,8 @@ integrations: { | ||
opts.Segment = true; | ||
assert.deepEqual(normalize(msg, list), { | ||
var normalized = normalize(msg, list); | ||
assert.lengthEquals(normalized.messageId, 36); | ||
delete normalized.messageId; | ||
assert.deepEqual(normalized, { | ||
context: {}, | ||
@@ -245,2 +320,11 @@ integrations: { | ||
}); | ||
it('should properly randomize .messageId', function() { | ||
var set = {}; | ||
var count = 1000; | ||
for (var i = 0; i < count; i++) { | ||
var id = normalize(msg).messageId; | ||
set[id] = true; | ||
} | ||
assert.lengthEquals(Object.keys(set), count); | ||
}); | ||
}); |
Sorry, the diff of this file is not supported yet
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
SPDX disjunction
LicenseSPDX disjunction for an artifact's license information
Found 1 instance in 1 package
SPDX disjunction
LicenseSPDX disjunction for an artifact's license information
Found 1 instance in 1 package
424325
4794
36
1
+ Addedspark-md5@^2.0.2
+ Addedspark-md5@2.0.2(transitive)