Improve the readability of the check for should compile
This commit is contained in:
@@ -131,10 +131,10 @@ export class Compiler {
|
||||
shouldCompile = true;
|
||||
} else {
|
||||
const currentArtifact = currentArtifactIfExists as ContractArtifact;
|
||||
shouldCompile =
|
||||
currentArtifact.schemaVersion !== '2.0.0' ||
|
||||
!_.isEqual(currentArtifact.compiler.settings, this._compilerSettings) ||
|
||||
currentArtifact.sourceTreeHashHex !== sourceTreeHashHex;
|
||||
const isUserOnLatestVersion = currentArtifact.schemaVersion === constants.LATEST_ARTIFACT_VERSION;
|
||||
const didCompilerSettingsChange = !_.isEqual(currentArtifact.compiler.settings, this._compilerSettings);
|
||||
const didSourceChange = currentArtifact.sourceTreeHashHex !== sourceTreeHashHex;
|
||||
shouldCompile = isUserOnLatestVersion || didCompilerSettingsChange || didSourceChange;
|
||||
}
|
||||
if (!shouldCompile) {
|
||||
return;
|
||||
@@ -228,7 +228,7 @@ export class Compiler {
|
||||
};
|
||||
} else {
|
||||
newArtifact = {
|
||||
schemaVersion: '2.0.0',
|
||||
schemaVersion: constants.LATEST_ARTIFACT_VERSION,
|
||||
contractName,
|
||||
...contractVersion,
|
||||
networks: {},
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
export const constants = {
|
||||
SOLIDITY_FILE_EXTENSION: '.sol',
|
||||
BASE_COMPILER_URL: 'https://ethereum.github.io/solc-bin/bin/',
|
||||
LATEST_ARTIFACT_VERSION: '2.0.0',
|
||||
};
|
||||
|
||||
@@ -11,7 +11,7 @@ export enum AbiType {
|
||||
}
|
||||
|
||||
export interface ContractArtifact extends ContractVersionData {
|
||||
schemaVersion: '2.0.0';
|
||||
schemaVersion: string;
|
||||
contractName: string;
|
||||
networks: ContractNetworks;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user