occam-verify-cli 0.0.705 → 0.0.707

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,9 +2,12 @@
2
2
 
3
3
  import Term from "../term";
4
4
  import termNodesVerifier from "../verifier/nodes/term";
5
- import verifyTermAsGivenVariable from "../verify/termAsGivenVariable";
5
+ import verifyGivenVariable from "../verify/givenVariable";
6
6
 
7
7
  import { first } from "../utilities/array";
8
+ import { nodeQuery } from "../utilities/query";
9
+
10
+ const variableNodeQuery = nodeQuery("/term/variable!");
8
11
 
9
12
  function verifyTerm(termNode, terms, context, verifyAhead) {
10
13
  let termVerified;
@@ -60,53 +63,61 @@ Object.assign(termNodesVerifier, {
60
63
  export default verifyTerm;
61
64
 
62
65
  function verifyTermAsVariable(termNode, terms, context, verifyAhead) {
63
- let termVerifiedAsVariable;
66
+ let termVerifiedAsVariable = false;
64
67
 
65
- const termString = context.nodeAsString(termNode);
68
+ const variableNode = variableNodeQuery(termNode);
66
69
 
67
- context.trace(`Verifying the '${termString}' term as a variable...`, termNode);
70
+ if (variableNode !== null) {
71
+ const termString = context.nodeAsString(termNode);
68
72
 
69
- const variables = [],
70
- termVerifiedAsGivenVariable = verifyTermAsGivenVariable(termNode, variables, context, () => {
71
- let verifiedAhead;
73
+ context.trace(`Verifying the '${termString}' term as a variable...`, termNode);
72
74
 
73
- const firstVariable = first(variables),
74
- variable = firstVariable, ///
75
- type = variable.getType(),
76
- term = Term.fromTermNodeAndType(termNode, type);
75
+ const variables = [],
76
+ givenVariableVerified = verifyGivenVariable(variableNode, variables, context, () => {
77
+ let verifiedAhead;
77
78
 
78
- terms.push(term);
79
+ const firstVariable = first(variables),
80
+ variable = firstVariable, ///
81
+ type = variable.getType(),
82
+ term = Term.fromTermNodeAndType(termNode, type);
79
83
 
80
- verifiedAhead = verifyAhead();
84
+ terms.push(term);
81
85
 
82
- if (!verifiedAhead) {
83
- terms.pop();
84
- }
86
+ verifiedAhead = verifyAhead();
85
87
 
86
- return verifiedAhead;
87
- });
88
+ if (!verifiedAhead) {
89
+ terms.pop();
90
+ }
91
+
92
+ return verifiedAhead;
93
+ });
88
94
 
89
- termVerifiedAsVariable = termVerifiedAsGivenVariable; ///
95
+ termVerifiedAsVariable = givenVariableVerified; ///
90
96
 
91
- if (termVerifiedAsVariable) {
92
- context.debug(`...verified the '${termString}' term as a variable.`, termNode);
97
+ if (termVerifiedAsVariable) {
98
+ context.debug(`...verified the '${termString}' term as a variable.`, termNode);
99
+ }
93
100
  }
94
101
 
95
102
  return termVerifiedAsVariable;
96
103
  }
97
104
 
98
105
  function verifyTermAgainstConstructors(termNode, terms, context, verifyAhead) {
99
- let termVerifiedAgainstConstructors;
106
+ let termVerifiedAgainstConstructors = false;
100
107
 
101
- const constructors = context.getConstructors();
108
+ const variableNode = variableNodeQuery(termNode);
102
109
 
103
- termVerifiedAgainstConstructors = constructors.some((constructor) => {
104
- const termVerifiedAgainstConstructor = verifyTermAgainstConstructor(termNode, terms, constructor, context, verifyAhead);
110
+ if (variableNode === null) {
111
+ const constructors = context.getConstructors();
105
112
 
106
- if (termVerifiedAgainstConstructor) {
107
- return true;
108
- }
109
- });
113
+ termVerifiedAgainstConstructors = constructors.some((constructor) => {
114
+ const termVerifiedAgainstConstructor = verifyTermAgainstConstructor(termNode, terms, constructor, context, verifyAhead);
115
+
116
+ if (termVerifiedAgainstConstructor) {
117
+ return true;
118
+ }
119
+ });
120
+ }
110
121
 
111
122
  return termVerifiedAgainstConstructors;
112
123
  }
@@ -1,181 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- function _export(target, all) {
6
- for(var name in all)Object.defineProperty(target, name, {
7
- enumerable: true,
8
- get: all[name]
9
- });
10
- }
11
- _export(exports, {
12
- createReleaseContext: function() {
13
- return createReleaseContext;
14
- },
15
- default: function() {
16
- return _default;
17
- },
18
- initialiseReleaseContext: function() {
19
- return initialiseReleaseContext;
20
- }
21
- });
22
- var _array = require("../utilities/array");
23
- function _array_like_to_array(arr, len) {
24
- if (len == null || len > arr.length) len = arr.length;
25
- for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
26
- return arr2;
27
- }
28
- function _array_without_holes(arr) {
29
- if (Array.isArray(arr)) return _array_like_to_array(arr);
30
- }
31
- function _iterable_to_array(iter) {
32
- if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
33
- }
34
- function _non_iterable_spread() {
35
- throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
36
- }
37
- function _to_consumable_array(arr) {
38
- return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
39
- }
40
- function _unsupported_iterable_to_array(o, minLen) {
41
- if (!o) return;
42
- if (typeof o === "string") return _array_like_to_array(o, minLen);
43
- var n = Object.prototype.toString.call(o).slice(8, -1);
44
- if (n === "Object" && o.constructor) n = o.constructor.name;
45
- if (n === "Map" || n === "Set") return Array.from(n);
46
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
47
- }
48
- function createReleaseContext(dependency, dependentNames, context, callback) {
49
- var releaseContextMap = context.releaseContextMap, dependencyName = dependency.getName(), releaseName = dependencyName, releaseContext = releaseContextMap[releaseName] || null;
50
- if (releaseContext !== null) {
51
- var error = checkReleaseMatchesDependency(dependency, dependentNames, releaseContext);
52
- callback(error);
53
- return;
54
- }
55
- var releaseContextFromDependency = context.releaseContextFromDependency;
56
- releaseContextFromDependency(dependency, context, function(error, releaseContext) {
57
- if (error) {
58
- callback(error);
59
- return;
60
- }
61
- if (releaseContext === null) {
62
- var _$error = "The '".concat(releaseName, "' package could not be created.");
63
- callback(_$error);
64
- return;
65
- }
66
- error = checkReleaseMatchesDependency(dependency, dependentNames, releaseContext);
67
- if (error) {
68
- callback(error);
69
- return;
70
- }
71
- releaseContextMap[releaseName] = releaseContext;
72
- createDependencyReleaseContexts(dependency, dependentNames, context, callback);
73
- }, context);
74
- }
75
- function initialiseReleaseContext(dependency, dependentName, dependentReleased, context, callback) {
76
- var error = null;
77
- var releaseContextMap = context.releaseContextMap, name = dependency.getName(), releaseName = name, releaseContext = releaseContextMap[releaseName] || null;
78
- if (releaseContext === null) {
79
- callback(error);
80
- return;
81
- }
82
- var released = releaseContext.isReleased(), initialised = releaseContext.isInitialised();
83
- if (initialised) {
84
- callback(error);
85
- return;
86
- }
87
- if (!released) {
88
- if (dependentReleased) {
89
- error = "Unable to initialise the '".concat(name, "' dependency's context because its '").concat(dependentName, "' dependent is a package.");
90
- callback(error);
91
- return;
92
- }
93
- }
94
- dependentName = name; ///
95
- dependentReleased = released; ///
96
- var dependencies = releaseContext.getDependencies();
97
- dependencies.asynchronousForEachDependency(function(dependency, next, done) {
98
- initialiseReleaseContext(dependency, dependentName, dependentReleased, context, function(error) {
99
- if (error) {
100
- callback(error);
101
- return;
102
- }
103
- next();
104
- });
105
- }, done);
106
- function done() {
107
- var dependencyReleaseContexts = retrieveDependencyReleaseContexts(dependency, context);
108
- releaseContext.initialise(dependencyReleaseContexts);
109
- callback(error);
110
- }
111
- }
112
- var _default = {
113
- createReleaseContext: createReleaseContext,
114
- initialiseReleaseContext: initialiseReleaseContext
115
- };
116
- function checkCyclicDependencyExists(dependency, dependentNames) {
117
- var error = null;
118
- var dependencyName = dependency.getName(), dependentNamesIncludesDependencyName = dependentNames.includes(dependencyName), cyclicDependencyExists = dependentNamesIncludesDependencyName; ///
119
- if (cyclicDependencyExists) {
120
- var firstDependentName = first(dependentNames), dependencyNames = _to_consumable_array(dependentNames).concat([
121
- firstDependentName
122
- ]), dependencyNamesString = dependencyNames.join("' -> '");
123
- error = "There is a cyclic dependency: '".concat(dependencyNamesString, "'.");
124
- }
125
- return error;
126
- }
127
- function checkReleaseMatchesDependency(dependency, dependentNames, releaseContext) {
128
- var error = null;
129
- var entries = releaseContext.getEntries(), shortenedVersion = dependency.getShortedVersion();
130
- if (shortenedVersion !== null) {
131
- var entriesMatchShortenedVersion = entries.matchShortenedVersion(shortenedVersion);
132
- if (!entriesMatchShortenedVersion) {
133
- var version = releaseContext.getVersion(), versionString = version.toString(), lastDependentName = (0, _array.last)(dependentNames), dependentName = lastDependentName, dependencyName = dependency.getName(), shortenedVersion1 = dependency.getShortedVersion(), shortenedVersionString = shortenedVersion1.toString();
134
- error = "Version mismatch: '".concat(dependentName, "' requires '").concat(dependencyName, "' to be version ").concat(shortenedVersionString, ".0 or higher but version ").concat(versionString, " has been supplied.");
135
- }
136
- }
137
- return error;
138
- }
139
- function createDependencyReleaseContexts(dependency, dependentNames, context, callback) {
140
- var releaseContextMap = context.releaseContextMap, dependencyName = dependency.getName(), releaseName = dependencyName, releaseContext = releaseContextMap[releaseName], dependencies = releaseContext.getDependencies();
141
- dependentNames = _to_consumable_array(dependentNames).concat([
142
- dependencyName
143
- ]); ///
144
- dependencies.asynchronousForEachDependency(function(dependency, next, done) {
145
- var error = checkCyclicDependencyExists(dependency, dependentNames);
146
- if (error) {
147
- callback(error);
148
- return;
149
- }
150
- createReleaseContext(dependency, dependentNames, context, function(error) {
151
- if (error) {
152
- callback(error);
153
- return;
154
- }
155
- next();
156
- });
157
- }, done);
158
- function done() {
159
- var error = null;
160
- callback(error);
161
- }
162
- }
163
- function retrieveDependencyReleaseContexts(dependency, context) {
164
- var dependencyReleaseContexts = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : [];
165
- var releaseContextMap = context.releaseContextMap, dependencyName = dependency.getName(), releaseName = dependencyName, releaseContext = releaseContextMap[releaseName], dependencies = releaseContext.getDependencies();
166
- dependencies.forEachDependency(function(dependency) {
167
- var dependencyName = dependency.getName(), releaseName = dependencyName, releaseContext = releaseContextMap[releaseName] || null;
168
- if (releaseContext === null) {
169
- return;
170
- }
171
- var dependencyReleaseContextsIncludesReleaseContext = dependencyReleaseContexts.includes(releaseContext);
172
- if (dependencyReleaseContextsIncludesReleaseContext) {
173
- return;
174
- }
175
- retrieveDependencyReleaseContexts(dependency, context, dependencyReleaseContexts);
176
- dependencyReleaseContexts.push(releaseContext);
177
- });
178
- return dependencyReleaseContexts;
179
- }
180
-
181
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsaXRpZXMvcmVsZWFzZUNvbnRleHQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmltcG9ydCB7IGxhc3QgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2FycmF5XCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVSZWxlYXNlQ29udGV4dChkZXBlbmRlbmN5LCBkZXBlbmRlbnROYW1lcywgY29udGV4dCwgY2FsbGJhY2spIHtcbiAgY29uc3QgeyByZWxlYXNlQ29udGV4dE1hcCB9ID0gY29udGV4dCxcbiAgICAgICAgZGVwZW5kZW5jeU5hbWUgPSBkZXBlbmRlbmN5LmdldE5hbWUoKSxcbiAgICAgICAgcmVsZWFzZU5hbWUgPSBkZXBlbmRlbmN5TmFtZSwgLy8vXG4gICAgICAgIHJlbGVhc2VDb250ZXh0ID0gcmVsZWFzZUNvbnRleHRNYXBbcmVsZWFzZU5hbWVdIHx8IG51bGw7XG5cbiAgaWYgKHJlbGVhc2VDb250ZXh0ICE9PSBudWxsKSB7XG4gICAgY29uc3QgZXJyb3IgPSBjaGVja1JlbGVhc2VNYXRjaGVzRGVwZW5kZW5jeShkZXBlbmRlbmN5LCBkZXBlbmRlbnROYW1lcywgcmVsZWFzZUNvbnRleHQpO1xuXG4gICAgY2FsbGJhY2soZXJyb3IpO1xuXG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY29uc3QgeyByZWxlYXNlQ29udGV4dEZyb21EZXBlbmRlbmN5IH0gPSBjb250ZXh0O1xuXG4gIHJlbGVhc2VDb250ZXh0RnJvbURlcGVuZGVuY3koZGVwZW5kZW5jeSwgY29udGV4dCwgKGVycm9yLCByZWxlYXNlQ29udGV4dCkgPT4ge1xuICAgIGlmIChlcnJvcikge1xuICAgICAgY2FsbGJhY2soZXJyb3IpO1xuXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHJlbGVhc2VDb250ZXh0ID09PSBudWxsKSB7XG4gICAgICBjb25zdCBlcnJvciA9IGBUaGUgJyR7cmVsZWFzZU5hbWV9JyBwYWNrYWdlIGNvdWxkIG5vdCBiZSBjcmVhdGVkLmA7XG5cbiAgICAgIGNhbGxiYWNrKGVycm9yKTtcblxuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGVycm9yID0gY2hlY2tSZWxlYXNlTWF0Y2hlc0RlcGVuZGVuY3koZGVwZW5kZW5jeSwgZGVwZW5kZW50TmFtZXMsIHJlbGVhc2VDb250ZXh0KTtcblxuICAgIGlmIChlcnJvcikge1xuICAgICAgY2FsbGJhY2soZXJyb3IpO1xuXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgcmVsZWFzZUNvbnRleHRNYXBbcmVsZWFzZU5hbWVdID0gcmVsZWFzZUNvbnRleHQ7XG5cbiAgICBjcmVhdGVEZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzKGRlcGVuZGVuY3ksIGRlcGVuZGVudE5hbWVzLCBjb250ZXh0LCBjYWxsYmFjayk7XG4gIH0sIGNvbnRleHQpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaW5pdGlhbGlzZVJlbGVhc2VDb250ZXh0KGRlcGVuZGVuY3ksIGRlcGVuZGVudE5hbWUsIGRlcGVuZGVudFJlbGVhc2VkLCBjb250ZXh0LCBjYWxsYmFjaykge1xuICBsZXQgZXJyb3IgPSBudWxsO1xuXG4gIGNvbnN0IHsgcmVsZWFzZUNvbnRleHRNYXAgfSA9IGNvbnRleHQsXG4gICAgICAgIG5hbWUgPSBkZXBlbmRlbmN5LmdldE5hbWUoKSxcbiAgICAgICAgcmVsZWFzZU5hbWUgPSBuYW1lLCAvLy9cbiAgICAgICAgcmVsZWFzZUNvbnRleHQgPSByZWxlYXNlQ29udGV4dE1hcFtyZWxlYXNlTmFtZV0gfHwgbnVsbDtcblxuICBpZiAocmVsZWFzZUNvbnRleHQgPT09IG51bGwpIHtcbiAgICBjYWxsYmFjayhlcnJvcik7XG5cbiAgICByZXR1cm47XG4gIH1cblxuICBjb25zdCByZWxlYXNlZCA9IHJlbGVhc2VDb250ZXh0LmlzUmVsZWFzZWQoKSxcbiAgICAgICAgaW5pdGlhbGlzZWQgPSByZWxlYXNlQ29udGV4dC5pc0luaXRpYWxpc2VkKCk7XG5cbiAgaWYgKGluaXRpYWxpc2VkKSB7XG4gICAgY2FsbGJhY2soZXJyb3IpO1xuXG4gICAgcmV0dXJuO1xuICB9XG5cbiAgaWYgKCFyZWxlYXNlZCkge1xuICAgIGlmIChkZXBlbmRlbnRSZWxlYXNlZCkge1xuICAgICAgZXJyb3IgPSBgVW5hYmxlIHRvIGluaXRpYWxpc2UgdGhlICcke25hbWV9JyBkZXBlbmRlbmN5J3MgY29udGV4dCBiZWNhdXNlIGl0cyAnJHtkZXBlbmRlbnROYW1lfScgZGVwZW5kZW50IGlzIGEgcGFja2FnZS5gO1xuXG4gICAgICBjYWxsYmFjayhlcnJvcik7XG5cbiAgICAgIHJldHVybjtcbiAgICB9XG4gIH1cblxuICBkZXBlbmRlbnROYW1lID0gbmFtZTsgIC8vL1xuXG4gIGRlcGVuZGVudFJlbGVhc2VkID0gcmVsZWFzZWQ7ICAvLy9cblxuICBjb25zdCBkZXBlbmRlbmNpZXMgPSByZWxlYXNlQ29udGV4dC5nZXREZXBlbmRlbmNpZXMoKTtcblxuICBkZXBlbmRlbmNpZXMuYXN5bmNocm9ub3VzRm9yRWFjaERlcGVuZGVuY3koKGRlcGVuZGVuY3ksIG5leHQsIGRvbmUpID0+IHtcbiAgICBpbml0aWFsaXNlUmVsZWFzZUNvbnRleHQoZGVwZW5kZW5jeSwgZGVwZW5kZW50TmFtZSwgZGVwZW5kZW50UmVsZWFzZWQsIGNvbnRleHQsIChlcnJvcikgPT4ge1xuICAgICAgaWYgKGVycm9yKSB7XG4gICAgICAgIGNhbGxiYWNrKGVycm9yKTtcblxuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIG5leHQoKTtcbiAgICB9KTtcbiAgfSwgZG9uZSk7XG5cbiAgZnVuY3Rpb24gZG9uZSgpIHtcbiAgICBjb25zdCBkZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzID0gcmV0cmlldmVEZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzKGRlcGVuZGVuY3ksIGNvbnRleHQpO1xuXG4gICAgcmVsZWFzZUNvbnRleHQuaW5pdGlhbGlzZShkZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzKTtcblxuICAgIGNhbGxiYWNrKGVycm9yKTtcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCB7XG4gIGNyZWF0ZVJlbGVhc2VDb250ZXh0LFxuICBpbml0aWFsaXNlUmVsZWFzZUNvbnRleHRcbn07XG5cbmZ1bmN0aW9uIGNoZWNrQ3ljbGljRGVwZW5kZW5jeUV4aXN0cyhkZXBlbmRlbmN5LCBkZXBlbmRlbnROYW1lcykge1xuICBsZXQgZXJyb3IgPSBudWxsO1xuXG4gIGNvbnN0IGRlcGVuZGVuY3lOYW1lID0gZGVwZW5kZW5jeS5nZXROYW1lKCksXG4gICAgICAgIGRlcGVuZGVudE5hbWVzSW5jbHVkZXNEZXBlbmRlbmN5TmFtZSA9IGRlcGVuZGVudE5hbWVzLmluY2x1ZGVzKGRlcGVuZGVuY3lOYW1lKSxcbiAgICAgICAgY3ljbGljRGVwZW5kZW5jeUV4aXN0cyA9IGRlcGVuZGVudE5hbWVzSW5jbHVkZXNEZXBlbmRlbmN5TmFtZTsgIC8vL1xuXG4gIGlmIChjeWNsaWNEZXBlbmRlbmN5RXhpc3RzKSB7XG4gICAgY29uc3QgZmlyc3REZXBlbmRlbnROYW1lID0gZmlyc3QoZGVwZW5kZW50TmFtZXMpLFxuICAgICAgICAgIGRlcGVuZGVuY3lOYW1lcyA9IFsgIC8vL1xuICAgICAgICAgICAgLi4uZGVwZW5kZW50TmFtZXMsXG4gICAgICAgICAgICBmaXJzdERlcGVuZGVudE5hbWVcbiAgICAgICAgICBdLFxuICAgICAgICAgIGRlcGVuZGVuY3lOYW1lc1N0cmluZyA9IGRlcGVuZGVuY3lOYW1lcy5qb2luKGAnIC0+ICdgKTtcblxuICAgIGVycm9yID1gVGhlcmUgaXMgYSBjeWNsaWMgZGVwZW5kZW5jeTogJyR7ZGVwZW5kZW5jeU5hbWVzU3RyaW5nfScuYDtcbiAgfVxuXG4gIHJldHVybiBlcnJvcjtcbn1cblxuZnVuY3Rpb24gY2hlY2tSZWxlYXNlTWF0Y2hlc0RlcGVuZGVuY3koZGVwZW5kZW5jeSwgZGVwZW5kZW50TmFtZXMsIHJlbGVhc2VDb250ZXh0KSB7XG4gIGxldCBlcnJvciA9IG51bGw7XG5cbiAgY29uc3QgZW50cmllcyA9IHJlbGVhc2VDb250ZXh0LmdldEVudHJpZXMoKSxcbiAgICAgICAgc2hvcnRlbmVkVmVyc2lvbiA9IGRlcGVuZGVuY3kuZ2V0U2hvcnRlZFZlcnNpb24oKTtcblxuICBpZiAoc2hvcnRlbmVkVmVyc2lvbiAhPT0gbnVsbCkge1xuICAgIGNvbnN0IGVudHJpZXNNYXRjaFNob3J0ZW5lZFZlcnNpb24gPSBlbnRyaWVzLm1hdGNoU2hvcnRlbmVkVmVyc2lvbihzaG9ydGVuZWRWZXJzaW9uKTtcblxuICAgIGlmICghZW50cmllc01hdGNoU2hvcnRlbmVkVmVyc2lvbikge1xuICAgICAgY29uc3QgdmVyc2lvbiA9IHJlbGVhc2VDb250ZXh0LmdldFZlcnNpb24oKSxcbiAgICAgICAgICAgIHZlcnNpb25TdHJpbmcgPSB2ZXJzaW9uLnRvU3RyaW5nKCksXG4gICAgICAgICAgICBsYXN0RGVwZW5kZW50TmFtZSA9IGxhc3QoZGVwZW5kZW50TmFtZXMpLFxuICAgICAgICAgICAgZGVwZW5kZW50TmFtZSA9IGxhc3REZXBlbmRlbnROYW1lLCAgLy8vXG4gICAgICAgICAgICBkZXBlbmRlbmN5TmFtZSA9IGRlcGVuZGVuY3kuZ2V0TmFtZSgpLFxuICAgICAgICAgICAgc2hvcnRlbmVkVmVyc2lvbiA9IGRlcGVuZGVuY3kuZ2V0U2hvcnRlZFZlcnNpb24oKSxcbiAgICAgICAgICAgIHNob3J0ZW5lZFZlcnNpb25TdHJpbmcgPSBzaG9ydGVuZWRWZXJzaW9uLnRvU3RyaW5nKCk7XG5cbiAgICAgIGVycm9yID0gYFZlcnNpb24gbWlzbWF0Y2g6ICcke2RlcGVuZGVudE5hbWV9JyByZXF1aXJlcyAnJHtkZXBlbmRlbmN5TmFtZX0nIHRvIGJlIHZlcnNpb24gJHtzaG9ydGVuZWRWZXJzaW9uU3RyaW5nfS4wIG9yIGhpZ2hlciBidXQgdmVyc2lvbiAke3ZlcnNpb25TdHJpbmd9IGhhcyBiZWVuIHN1cHBsaWVkLmA7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGVycm9yO1xufVxuXG5mdW5jdGlvbiBjcmVhdGVEZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzKGRlcGVuZGVuY3ksIGRlcGVuZGVudE5hbWVzLCBjb250ZXh0LCBjYWxsYmFjaykge1xuICBjb25zdCB7IHJlbGVhc2VDb250ZXh0TWFwIH0gPSBjb250ZXh0LFxuICAgICAgICBkZXBlbmRlbmN5TmFtZSA9IGRlcGVuZGVuY3kuZ2V0TmFtZSgpLFxuICAgICAgICByZWxlYXNlTmFtZSA9IGRlcGVuZGVuY3lOYW1lLCAvLy9cbiAgICAgICAgcmVsZWFzZUNvbnRleHQgPSByZWxlYXNlQ29udGV4dE1hcFtyZWxlYXNlTmFtZV0sXG4gICAgICAgIGRlcGVuZGVuY2llcyA9IHJlbGVhc2VDb250ZXh0LmdldERlcGVuZGVuY2llcygpO1xuXG4gIGRlcGVuZGVudE5hbWVzID0gWyAuLi5kZXBlbmRlbnROYW1lcywgZGVwZW5kZW5jeU5hbWUgXTsgIC8vL1xuXG4gIGRlcGVuZGVuY2llcy5hc3luY2hyb25vdXNGb3JFYWNoRGVwZW5kZW5jeSgoZGVwZW5kZW5jeSwgbmV4dCwgZG9uZSkgPT4ge1xuICAgIGNvbnN0IGVycm9yID0gY2hlY2tDeWNsaWNEZXBlbmRlbmN5RXhpc3RzKGRlcGVuZGVuY3ksIGRlcGVuZGVudE5hbWVzKTtcblxuICAgIGlmIChlcnJvcikge1xuICAgICAgY2FsbGJhY2soZXJyb3IpO1xuXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY3JlYXRlUmVsZWFzZUNvbnRleHQoZGVwZW5kZW5jeSwgZGVwZW5kZW50TmFtZXMsIGNvbnRleHQsIChlcnJvcikgPT4ge1xuICAgICAgaWYgKGVycm9yKSB7XG4gICAgICAgIGNhbGxiYWNrKGVycm9yKTtcblxuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIG5leHQoKTtcbiAgICB9KTtcbiAgfSwgZG9uZSk7XG5cbiAgZnVuY3Rpb24gZG9uZSgpIHtcbiAgICBjb25zdCBlcnJvciA9IG51bGw7XG5cbiAgICBjYWxsYmFjayhlcnJvcik7XG4gIH1cbn1cblxuZnVuY3Rpb24gcmV0cmlldmVEZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzKGRlcGVuZGVuY3ksIGNvbnRleHQsIGRlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHMgPSBbXSkge1xuICBjb25zdCB7IHJlbGVhc2VDb250ZXh0TWFwIH0gPSBjb250ZXh0LFxuICAgICAgICBkZXBlbmRlbmN5TmFtZSA9IGRlcGVuZGVuY3kuZ2V0TmFtZSgpLFxuICAgICAgICByZWxlYXNlTmFtZSA9IGRlcGVuZGVuY3lOYW1lLCAvLy9cbiAgICAgICAgcmVsZWFzZUNvbnRleHQgPSByZWxlYXNlQ29udGV4dE1hcFtyZWxlYXNlTmFtZV0sXG4gICAgICAgIGRlcGVuZGVuY2llcyA9IHJlbGVhc2VDb250ZXh0LmdldERlcGVuZGVuY2llcygpO1xuXG4gIGRlcGVuZGVuY2llcy5mb3JFYWNoRGVwZW5kZW5jeSgoZGVwZW5kZW5jeSkgPT4ge1xuICAgIGNvbnN0IGRlcGVuZGVuY3lOYW1lID0gZGVwZW5kZW5jeS5nZXROYW1lKCksXG4gICAgICAgICAgcmVsZWFzZU5hbWUgPSBkZXBlbmRlbmN5TmFtZSwgLy8vXG4gICAgICAgICAgcmVsZWFzZUNvbnRleHQgPSByZWxlYXNlQ29udGV4dE1hcFtyZWxlYXNlTmFtZV0gfHwgbnVsbDtcblxuICAgIGlmIChyZWxlYXNlQ29udGV4dCA9PT0gbnVsbCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGRlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHNJbmNsdWRlc1JlbGVhc2VDb250ZXh0ID0gZGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0cy5pbmNsdWRlcyhyZWxlYXNlQ29udGV4dCk7XG5cbiAgICBpZiAoZGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0c0luY2x1ZGVzUmVsZWFzZUNvbnRleHQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICByZXRyaWV2ZURlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHMoZGVwZW5kZW5jeSwgY29udGV4dCwgZGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0cyk7XG5cbiAgICBkZXBlbmRlbmN5UmVsZWFzZUNvbnRleHRzLnB1c2gocmVsZWFzZUNvbnRleHQpO1xuICB9KTtcblxuICByZXR1cm4gZGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0cztcbn1cbiJdLCJuYW1lcyI6WyJjcmVhdGVSZWxlYXNlQ29udGV4dCIsImluaXRpYWxpc2VSZWxlYXNlQ29udGV4dCIsImRlcGVuZGVuY3kiLCJkZXBlbmRlbnROYW1lcyIsImNvbnRleHQiLCJjYWxsYmFjayIsInJlbGVhc2VDb250ZXh0TWFwIiwiZGVwZW5kZW5jeU5hbWUiLCJnZXROYW1lIiwicmVsZWFzZU5hbWUiLCJyZWxlYXNlQ29udGV4dCIsImVycm9yIiwiY2hlY2tSZWxlYXNlTWF0Y2hlc0RlcGVuZGVuY3kiLCJyZWxlYXNlQ29udGV4dEZyb21EZXBlbmRlbmN5IiwiY3JlYXRlRGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0cyIsImRlcGVuZGVudE5hbWUiLCJkZXBlbmRlbnRSZWxlYXNlZCIsIm5hbWUiLCJyZWxlYXNlZCIsImlzUmVsZWFzZWQiLCJpbml0aWFsaXNlZCIsImlzSW5pdGlhbGlzZWQiLCJkZXBlbmRlbmNpZXMiLCJnZXREZXBlbmRlbmNpZXMiLCJhc3luY2hyb25vdXNGb3JFYWNoRGVwZW5kZW5jeSIsIm5leHQiLCJkb25lIiwiZGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0cyIsInJldHJpZXZlRGVwZW5kZW5jeVJlbGVhc2VDb250ZXh0cyIsImluaXRpYWxpc2UiLCJjaGVja0N5Y2xpY0RlcGVuZGVuY3lFeGlzdHMiLCJkZXBlbmRlbnROYW1lc0luY2x1ZGVzRGVwZW5kZW5jeU5hbWUiLCJpbmNsdWRlcyIsImN5Y2xpY0RlcGVuZGVuY3lFeGlzdHMiLCJmaXJzdERlcGVuZGVudE5hbWUiLCJmaXJzdCIsImRlcGVuZGVuY3lOYW1lcyIsImRlcGVuZGVuY3lOYW1lc1N0cmluZyIsImpvaW4iLCJlbnRyaWVzIiwiZ2V0RW50cmllcyIsInNob3J0ZW5lZFZlcnNpb24iLCJnZXRTaG9ydGVkVmVyc2lvbiIsImVudHJpZXNNYXRjaFNob3J0ZW5lZFZlcnNpb24iLCJtYXRjaFNob3J0ZW5lZFZlcnNpb24iLCJ2ZXJzaW9uIiwiZ2V0VmVyc2lvbiIsInZlcnNpb25TdHJpbmciLCJ0b1N0cmluZyIsImxhc3REZXBlbmRlbnROYW1lIiwibGFzdCIsInNob3J0ZW5lZFZlcnNpb25TdHJpbmciLCJmb3JFYWNoRGVwZW5kZW5jeSIsImRlcGVuZGVuY3lSZWxlYXNlQ29udGV4dHNJbmNsdWRlc1JlbGVhc2VDb250ZXh0IiwicHVzaCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O0lBSWdCQSxvQkFBb0I7ZUFBcEJBOztJQXlHaEIsT0FHRTtlQUhGOztJQTVEZ0JDLHdCQUF3QjtlQUF4QkE7OztxQkEvQ0s7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRWQsU0FBU0QscUJBQXFCRSxVQUFVLEVBQUVDLGNBQWMsRUFBRUMsT0FBTyxFQUFFQyxRQUFRO0lBQ2hGLElBQU0sQUFBRUMsb0JBQXNCRixRQUF0QkUsbUJBQ0ZDLGlCQUFpQkwsV0FBV00sT0FBTyxJQUNuQ0MsY0FBY0YsZ0JBQ2RHLGlCQUFpQkosaUJBQWlCLENBQUNHLFlBQVksSUFBSTtJQUV6RCxJQUFJQyxtQkFBbUIsTUFBTTtRQUMzQixJQUFNQyxRQUFRQyw4QkFBOEJWLFlBQVlDLGdCQUFnQk87UUFFeEVMLFNBQVNNO1FBRVQ7SUFDRjtJQUVBLElBQU0sQUFBRUUsK0JBQWlDVCxRQUFqQ1M7SUFFUkEsNkJBQTZCWCxZQUFZRSxTQUFTLFNBQUNPLE9BQU9EO1FBQ3hELElBQUlDLE9BQU87WUFDVE4sU0FBU007WUFFVDtRQUNGO1FBRUEsSUFBSUQsbUJBQW1CLE1BQU07WUFDM0IsSUFBTUMsVUFBUSxBQUFDLFFBQW1CLE9BQVpGLGFBQVk7WUFFbENKLFNBQVNNO1lBRVQ7UUFDRjtRQUVBQSxRQUFRQyw4QkFBOEJWLFlBQVlDLGdCQUFnQk87UUFFbEUsSUFBSUMsT0FBTztZQUNUTixTQUFTTTtZQUVUO1FBQ0Y7UUFFQUwsaUJBQWlCLENBQUNH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
@@ -1,36 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", {
3
- value: true
4
- });
5
- Object.defineProperty(exports, "default", {
6
- enumerable: true,
7
- get: function() {
8
- return verifyTermAsGivenVariable;
9
- }
10
- });
11
- var _query = require("../utilities/query");
12
- var variableNodeQuery = (0, _query.nodeQuery)("/term/variable!");
13
- function verifyTermAsGivenVariable(termNode, variables, context, verifyAhead) {
14
- var termVerifiedAsVariable = false;
15
- var variableNode = variableNodeQuery(termNode);
16
- if (variableNode !== null) {
17
- var termString = context.nodeAsString(termNode);
18
- context.trace("Verifying the '".concat(termString, "' term as a given variable..."), termNode);
19
- var variable = context.findVariableByVariableNode(variableNode);
20
- if (variable !== null) {
21
- var verifiedAhead;
22
- variables.push(variable);
23
- verifiedAhead = verifyAhead();
24
- if (!verifiedAhead) {
25
- variables.pop();
26
- }
27
- termVerifiedAsVariable = verifiedAhead; ///
28
- }
29
- if (termVerifiedAsVariable) {
30
- context.debug("...verified the '".concat(termString, "' term as a given variable."), termNode);
31
- }
32
- }
33
- return termVerifiedAsVariable;
34
- }
35
-
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92ZXJpZnkvdGVybUFzR2l2ZW5WYXJpYWJsZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgbm9kZVF1ZXJ5IH0gZnJvbSBcIi4uL3V0aWxpdGllcy9xdWVyeVwiO1xuXG5jb25zdCB2YXJpYWJsZU5vZGVRdWVyeSA9IG5vZGVRdWVyeShcIi90ZXJtL3ZhcmlhYmxlIVwiKTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdmVyaWZ5VGVybUFzR2l2ZW5WYXJpYWJsZSh0ZXJtTm9kZSwgdmFyaWFibGVzLCBjb250ZXh0LCB2ZXJpZnlBaGVhZCkge1xuICBsZXQgdGVybVZlcmlmaWVkQXNWYXJpYWJsZSA9IGZhbHNlO1xuXG4gIGNvbnN0IHZhcmlhYmxlTm9kZSA9IHZhcmlhYmxlTm9kZVF1ZXJ5KHRlcm1Ob2RlKTtcblxuICBpZiAodmFyaWFibGVOb2RlICE9PSBudWxsKSB7XG4gICAgY29uc3QgdGVybVN0cmluZyA9IGNvbnRleHQubm9kZUFzU3RyaW5nKHRlcm1Ob2RlKTtcblxuICAgIGNvbnRleHQudHJhY2UoYFZlcmlmeWluZyB0aGUgJyR7dGVybVN0cmluZ30nIHRlcm0gYXMgYSBnaXZlbiB2YXJpYWJsZS4uLmAsIHRlcm1Ob2RlKTtcblxuICAgIGNvbnN0IHZhcmlhYmxlID0gY29udGV4dC5maW5kVmFyaWFibGVCeVZhcmlhYmxlTm9kZSh2YXJpYWJsZU5vZGUpO1xuXG4gICAgaWYgKHZhcmlhYmxlICE9PSBudWxsKSB7XG4gICAgICBsZXQgdmVyaWZpZWRBaGVhZDtcblxuICAgICAgdmFyaWFibGVzLnB1c2godmFyaWFibGUpO1xuXG4gICAgICB2ZXJpZmllZEFoZWFkID0gdmVyaWZ5QWhlYWQoKTtcblxuICAgICAgaWYgKCF2ZXJpZmllZEFoZWFkKSB7XG4gICAgICAgIHZhcmlhYmxlcy5wb3AoKTtcbiAgICAgIH1cblxuICAgICAgdGVybVZlcmlmaWVkQXNWYXJpYWJsZSA9IHZlcmlmaWVkQWhlYWQ7IC8vL1xuICAgIH1cblxuICAgIGlmICh0ZXJtVmVyaWZpZWRBc1ZhcmlhYmxlKSB7XG4gICAgICBjb250ZXh0LmRlYnVnKGAuLi52ZXJpZmllZCB0aGUgJyR7dGVybVN0cmluZ30nIHRlcm0gYXMgYSBnaXZlbiB2YXJpYWJsZS5gLCB0ZXJtTm9kZSk7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHRlcm1WZXJpZmllZEFzVmFyaWFibGU7XG59XG4iXSwibmFtZXMiOlsidmVyaWZ5VGVybUFzR2l2ZW5WYXJpYWJsZSIsInZhcmlhYmxlTm9kZVF1ZXJ5Iiwibm9kZVF1ZXJ5IiwidGVybU5vZGUiLCJ2YXJpYWJsZXMiLCJjb250ZXh0IiwidmVyaWZ5QWhlYWQiLCJ0ZXJtVmVyaWZpZWRBc1ZhcmlhYmxlIiwidmFyaWFibGVOb2RlIiwidGVybVN0cmluZyIsIm5vZGVBc1N0cmluZyIsInRyYWNlIiwidmFyaWFibGUiLCJmaW5kVmFyaWFibGVCeVZhcmlhYmxlTm9kZSIsInZlcmlmaWVkQWhlYWQiLCJwdXNoIiwicG9wIiwiZGVidWciXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQU1BOzs7ZUFBd0JBOzs7cUJBSkU7QUFFMUIsSUFBTUMsb0JBQW9CQyxJQUFBQSxnQkFBUyxFQUFDO0FBRXJCLFNBQVNGLDBCQUEwQkcsUUFBUSxFQUFFQyxTQUFTLEVBQUVDLE9BQU8sRUFBRUMsV0FBVztJQUN6RixJQUFJQyx5QkFBeUI7SUFFN0IsSUFBTUMsZUFBZVAsa0JBQWtCRTtJQUV2QyxJQUFJSyxpQkFBaUIsTUFBTTtRQUN6QixJQUFNQyxhQUFhSixRQUFRSyxZQUFZLENBQUNQO1FBRXhDRSxRQUFRTSxLQUFLLENBQUMsQUFBQyxrQkFBNEIsT0FBWEYsWUFBVyxrQ0FBZ0NOO1FBRTNFLElBQU1TLFdBQVdQLFFBQVFRLDBCQUEwQixDQUFDTDtRQUVwRCxJQUFJSSxhQUFhLE1BQU07WUFDckIsSUFBSUU7WUFFSlYsVUFBVVcsSUFBSSxDQUFDSDtZQUVmRSxnQkFBZ0JSO1lBRWhCLElBQUksQ0FBQ1EsZUFBZTtnQkFDbEJWLFVBQVVZLEdBQUc7WUFDZjtZQUVBVCx5QkFBeUJPLGVBQWUsR0FBRztRQUM3QztRQUVBLElBQUlQLHdCQUF3QjtZQUMxQkYsUUFBUVksS0FBSyxDQUFDLEFBQUMsb0JBQThCLE9BQVhSLFlBQVcsZ0NBQThCTjtRQUM3RTtJQUNGO0lBRUEsT0FBT0k7QUFDVCJ9
@@ -1,225 +0,0 @@
1
- "use strict";
2
-
3
- import { last } from "../utilities/array";
4
-
5
- export function createReleaseContext(dependency, dependentNames, context, callback) {
6
- const { releaseContextMap } = context,
7
- dependencyName = dependency.getName(),
8
- releaseName = dependencyName, ///
9
- releaseContext = releaseContextMap[releaseName] || null;
10
-
11
- if (releaseContext !== null) {
12
- const error = checkReleaseMatchesDependency(dependency, dependentNames, releaseContext);
13
-
14
- callback(error);
15
-
16
- return;
17
- }
18
-
19
- const { releaseContextFromDependency } = context;
20
-
21
- releaseContextFromDependency(dependency, context, (error, releaseContext) => {
22
- if (error) {
23
- callback(error);
24
-
25
- return;
26
- }
27
-
28
- if (releaseContext === null) {
29
- const error = `The '${releaseName}' package could not be created.`;
30
-
31
- callback(error);
32
-
33
- return;
34
- }
35
-
36
- error = checkReleaseMatchesDependency(dependency, dependentNames, releaseContext);
37
-
38
- if (error) {
39
- callback(error);
40
-
41
- return;
42
- }
43
-
44
- releaseContextMap[releaseName] = releaseContext;
45
-
46
- createDependencyReleaseContexts(dependency, dependentNames, context, callback);
47
- }, context);
48
- }
49
-
50
- export function initialiseReleaseContext(dependency, dependentName, dependentReleased, context, callback) {
51
- let error = null;
52
-
53
- const { releaseContextMap } = context,
54
- name = dependency.getName(),
55
- releaseName = name, ///
56
- releaseContext = releaseContextMap[releaseName] || null;
57
-
58
- if (releaseContext === null) {
59
- callback(error);
60
-
61
- return;
62
- }
63
-
64
- const released = releaseContext.isReleased(),
65
- initialised = releaseContext.isInitialised();
66
-
67
- if (initialised) {
68
- callback(error);
69
-
70
- return;
71
- }
72
-
73
- if (!released) {
74
- if (dependentReleased) {
75
- error = `Unable to initialise the '${name}' dependency's context because its '${dependentName}' dependent is a package.`;
76
-
77
- callback(error);
78
-
79
- return;
80
- }
81
- }
82
-
83
- dependentName = name; ///
84
-
85
- dependentReleased = released; ///
86
-
87
- const dependencies = releaseContext.getDependencies();
88
-
89
- dependencies.asynchronousForEachDependency((dependency, next, done) => {
90
- initialiseReleaseContext(dependency, dependentName, dependentReleased, context, (error) => {
91
- if (error) {
92
- callback(error);
93
-
94
- return;
95
- }
96
-
97
- next();
98
- });
99
- }, done);
100
-
101
- function done() {
102
- const dependencyReleaseContexts = retrieveDependencyReleaseContexts(dependency, context);
103
-
104
- releaseContext.initialise(dependencyReleaseContexts);
105
-
106
- callback(error);
107
- }
108
- }
109
-
110
- export default {
111
- createReleaseContext,
112
- initialiseReleaseContext
113
- };
114
-
115
- function checkCyclicDependencyExists(dependency, dependentNames) {
116
- let error = null;
117
-
118
- const dependencyName = dependency.getName(),
119
- dependentNamesIncludesDependencyName = dependentNames.includes(dependencyName),
120
- cyclicDependencyExists = dependentNamesIncludesDependencyName; ///
121
-
122
- if (cyclicDependencyExists) {
123
- const firstDependentName = first(dependentNames),
124
- dependencyNames = [ ///
125
- ...dependentNames,
126
- firstDependentName
127
- ],
128
- dependencyNamesString = dependencyNames.join(`' -> '`);
129
-
130
- error =`There is a cyclic dependency: '${dependencyNamesString}'.`;
131
- }
132
-
133
- return error;
134
- }
135
-
136
- function checkReleaseMatchesDependency(dependency, dependentNames, releaseContext) {
137
- let error = null;
138
-
139
- const entries = releaseContext.getEntries(),
140
- shortenedVersion = dependency.getShortedVersion();
141
-
142
- if (shortenedVersion !== null) {
143
- const entriesMatchShortenedVersion = entries.matchShortenedVersion(shortenedVersion);
144
-
145
- if (!entriesMatchShortenedVersion) {
146
- const version = releaseContext.getVersion(),
147
- versionString = version.toString(),
148
- lastDependentName = last(dependentNames),
149
- dependentName = lastDependentName, ///
150
- dependencyName = dependency.getName(),
151
- shortenedVersion = dependency.getShortedVersion(),
152
- shortenedVersionString = shortenedVersion.toString();
153
-
154
- error = `Version mismatch: '${dependentName}' requires '${dependencyName}' to be version ${shortenedVersionString}.0 or higher but version ${versionString} has been supplied.`;
155
- }
156
- }
157
-
158
- return error;
159
- }
160
-
161
- function createDependencyReleaseContexts(dependency, dependentNames, context, callback) {
162
- const { releaseContextMap } = context,
163
- dependencyName = dependency.getName(),
164
- releaseName = dependencyName, ///
165
- releaseContext = releaseContextMap[releaseName],
166
- dependencies = releaseContext.getDependencies();
167
-
168
- dependentNames = [ ...dependentNames, dependencyName ]; ///
169
-
170
- dependencies.asynchronousForEachDependency((dependency, next, done) => {
171
- const error = checkCyclicDependencyExists(dependency, dependentNames);
172
-
173
- if (error) {
174
- callback(error);
175
-
176
- return;
177
- }
178
-
179
- createReleaseContext(dependency, dependentNames, context, (error) => {
180
- if (error) {
181
- callback(error);
182
-
183
- return;
184
- }
185
-
186
- next();
187
- });
188
- }, done);
189
-
190
- function done() {
191
- const error = null;
192
-
193
- callback(error);
194
- }
195
- }
196
-
197
- function retrieveDependencyReleaseContexts(dependency, context, dependencyReleaseContexts = []) {
198
- const { releaseContextMap } = context,
199
- dependencyName = dependency.getName(),
200
- releaseName = dependencyName, ///
201
- releaseContext = releaseContextMap[releaseName],
202
- dependencies = releaseContext.getDependencies();
203
-
204
- dependencies.forEachDependency((dependency) => {
205
- const dependencyName = dependency.getName(),
206
- releaseName = dependencyName, ///
207
- releaseContext = releaseContextMap[releaseName] || null;
208
-
209
- if (releaseContext === null) {
210
- return;
211
- }
212
-
213
- const dependencyReleaseContextsIncludesReleaseContext = dependencyReleaseContexts.includes(releaseContext);
214
-
215
- if (dependencyReleaseContextsIncludesReleaseContext) {
216
- return;
217
- }
218
-
219
- retrieveDependencyReleaseContexts(dependency, context, dependencyReleaseContexts);
220
-
221
- dependencyReleaseContexts.push(releaseContext);
222
- });
223
-
224
- return dependencyReleaseContexts;
225
- }
@@ -1,39 +0,0 @@
1
- "use strict";
2
-
3
- import { nodeQuery } from "../utilities/query";
4
-
5
- const variableNodeQuery = nodeQuery("/term/variable!");
6
-
7
- export default function verifyTermAsGivenVariable(termNode, variables, context, verifyAhead) {
8
- let termVerifiedAsVariable = false;
9
-
10
- const variableNode = variableNodeQuery(termNode);
11
-
12
- if (variableNode !== null) {
13
- const termString = context.nodeAsString(termNode);
14
-
15
- context.trace(`Verifying the '${termString}' term as a given variable...`, termNode);
16
-
17
- const variable = context.findVariableByVariableNode(variableNode);
18
-
19
- if (variable !== null) {
20
- let verifiedAhead;
21
-
22
- variables.push(variable);
23
-
24
- verifiedAhead = verifyAhead();
25
-
26
- if (!verifiedAhead) {
27
- variables.pop();
28
- }
29
-
30
- termVerifiedAsVariable = verifiedAhead; ///
31
- }
32
-
33
- if (termVerifiedAsVariable) {
34
- context.debug(`...verified the '${termString}' term as a given variable.`, termNode);
35
- }
36
- }
37
-
38
- return termVerifiedAsVariable;
39
- }