🚀 Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more
Socket
DemoInstallSign in
Socket

three-way-merger

Package Overview
Dependencies
Maintainers
2
Versions
16
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

three-way-merger - npm Package Compare versions

Comparing version

to
0.6.0

0

index.js
var Merger = require('./lib/three-way-merger');
module.exports = Merger;

@@ -0,0 +0,0 @@ /**

32

lib/dependency-diff.js

@@ -0,1 +1,22 @@

var Range = require('semver').Range;
// matches "^1.0.0" but not "^1.0.0 || ^3.0.0" or "1.0"
function hasSimpleHint(rangeString) {
var range = new Range(rangeString);
var isSimpleRange = range.set.length === 1 && range.set[0].length === 2;
return isSimpleRange && !!getHint(rangeString);
}
// matches "1.0.0" and "1.0" but not "^1.0.0"
function hasNoHint(rangeString) {
var range = new Range(rangeString);
var isPinned = range.set.length === 1 && range.set[0].length === 1;
return isPinned || !getHint(rangeString);
}
function getHint(rangeString) {
var matches = rangeString.match(/^ *[\^~]/);
return matches && matches[0];
}
/**

@@ -14,2 +35,13 @@ * A dependency "diff".

this.fromVersion = options.fromVersion;
if (dependency.fromVersion && hasSimpleHint(options.fromVersion)) {
let ourHint = getHint(options.fromVersion);
if (hasNoHint(dependency.fromVersion) && hasNoHint(dependency.version)) {
this.version = `${ourHint}${dependency.version}`;
}
if (hasSimpleHint(dependency.fromVersion) && hasSimpleHint(dependency.version)
&& getHint(dependency.fromVersion) === getHint(dependency.version)) {
this.version = dependency.version.replace(/[\^~]/, ourHint);
}
}
}

@@ -16,0 +48,0 @@ };

@@ -0,0 +0,0 @@ module.exports = [

@@ -0,0 +0,0 @@ var DependencyDescriptor = require('./dependency-descriptor');

@@ -0,0 +0,0 @@ // Diff dependency sets

@@ -0,0 +0,0 @@ 'use strict';

@@ -0,0 +0,0 @@ 'use strict';

@@ -0,0 +0,0 @@ 'use strict';

@@ -0,0 +0,0 @@ var DependencySet = require('./dependency-set');

@@ -0,0 +0,0 @@ var Merge = require('./merge');

6

package.json
{
"name": "three-way-merger",
"version": "0.5.7",
"version": "0.6.0",
"description": "Merges package.json files",

@@ -24,4 +24,4 @@ "main": "index.js",

"chai": "^4.1.2",
"eslint-config-google": "^0.11.0",
"mocha": "^5.0.0"
"eslint-config-google": "^0.13.0",
"mocha": "^6.2.2"
},

@@ -28,0 +28,0 @@ "files": [

@@ -0,0 +0,0 @@ # three-way-merger