diff --git a/.eslintrc.json b/.eslintrc.json index 5f28a0992..c8b8e4efe 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -132,7 +132,7 @@ "no-labels": "error", "no-lone-blocks": "error", "no-lonely-if": "off", - "no-loop-func": "error", + "no-loop-func": "off", "no-magic-numbers": "off", "no-mixed-operators": "error", "no-mixed-requires": "error", diff --git a/lib/contracts/contracts.js b/lib/contracts/contracts.js index 09cafcc3d..9940e8098 100644 --- a/lib/contracts/contracts.js +++ b/lib/contracts/contracts.js @@ -168,6 +168,16 @@ class ContractsManager { self.contractDependencies[className].push(arg.substr(1)); } } + + // look in onDeploy for dependencies + if (contract.onDeploy === [] || contract.onDeploy === undefined) continue; + let regex = /\$\w+/g; + contract.onDeploy.map((cmd) => { + cmd.replace(regex, (match) => { + self.contractDependencies[className] = self.contractDependencies[className] || []; + self.contractDependencies[className].push(match.substr(1)); + }); + }); } callback(); }