Fix xdebug and pcov on PHP7.4 and restructre code

This commit is contained in:
Shivam Mathur
2019-10-03 11:44:17 +05:30
parent eaf140ca8b
commit 2a30f9d208
18 changed files with 329 additions and 268 deletions
+52 -16
View File
@@ -47,6 +47,19 @@ function asyncForEach(array, callback) {
});
}
exports.asyncForEach = asyncForEach;
/**
* Copy config
*
* @param files
*/
function readFiles74(files) {
return __awaiter(this, void 0, void 0, function* () {
yield asyncForEach(files, function (filename) {
fs.createReadStream(path.join(__dirname, '../src/' + filename)).pipe(fs.createWriteStream(filename.split('/')[1], { mode: 0o755 }));
});
});
}
exports.readFiles74 = readFiles74;
/**
* Read the scripts
*
@@ -60,15 +73,27 @@ function readScript(filename, version, os_version) {
case 'darwin':
switch (version) {
case '7.4':
fs.createReadStream(path.join(__dirname, '../src/config.yaml')).pipe(fs.createWriteStream('config.yaml'));
return fs.readFileSync(path.join(__dirname, '../src/7.4.sh'), 'utf8');
yield readFiles74([
'configs/config.yaml',
'scripts/xdebug_darwin.sh',
'scripts/pcov.sh'
]);
return fs.readFileSync(path.join(__dirname, '../src/scripts/7.4.sh'), 'utf8');
case '7.3':
default:
return fs.readFileSync(path.join(__dirname, '../src/' + filename), 'utf8');
return fs.readFileSync(path.join(__dirname, '../src/scripts/' + filename), 'utf8');
}
case 'linux':
switch (version) {
case '7.4':
yield readFiles74(['scripts/xdebug.sh', 'scripts/pcov.sh']);
return fs.readFileSync(path.join(__dirname, '../src/scripts/' + filename), 'utf8');
case '7.3':
default:
return fs.readFileSync(path.join(__dirname, '../src/scripts/' + filename), 'utf8');
}
case 'win32':
case 'linux':
return fs.readFileSync(path.join(__dirname, '../src/' + filename), 'utf8');
return fs.readFileSync(path.join(__dirname, '../src/scripts/' + filename), 'utf8');
default:
return yield log('Platform ' + os_version + ' is not supported', os_version, 'error');
}
@@ -94,12 +119,18 @@ exports.writeScript = writeScript;
*/
function extensionArray(extension_csv) {
return __awaiter(this, void 0, void 0, function* () {
return extension_csv.split(',').map(function (extension) {
return extension
.trim()
.replace('php-', '')
.replace('php_', '');
});
switch (extension_csv) {
case '':
case ' ':
return [];
default:
return extension_csv.split(',').map(function (extension) {
return extension
.trim()
.replace('php-', '')
.replace('php_', '');
});
}
});
}
exports.extensionArray = extensionArray;
@@ -111,9 +142,15 @@ exports.extensionArray = extensionArray;
*/
function INIArray(ini_values_csv) {
return __awaiter(this, void 0, void 0, function* () {
return ini_values_csv.split(',').map(function (ini_value) {
return ini_value.trim();
});
switch (ini_values_csv) {
case '':
case ' ':
return [];
default:
return ini_values_csv.split(',').map(function (ini_value) {
return ini_value.trim();
});
}
});
}
exports.INIArray = INIArray;
@@ -133,10 +170,9 @@ function log(message, os_version, log_type) {
};
return "Write-Host '" + message + "' -ForegroundColor " + color[log_type];
case 'linux':
return ('echo "\\033[' + unix_color[log_type] + ';1m' + message + '\\033[0m"');
case 'darwin':
default:
return ('echo -e "\\033[' + unix_color[log_type] + ';1m' + message + '\\033[0m"');
return ('echo "\\033[' + unix_color[log_type] + ';1m' + message + '\\033[0m"');
}
});
}