UNPKG

@oaklean/profiler-core

Version:

Part of the @oaklean suite. It provides all basic functions to work with the `.oak` file format. It allows parsing the `.oak` file format as well as tools for analyzing the measurement values. It also provides all necessary capabilities required for prec

69 lines 4.57 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.GitHelper = void 0; const child_process_1 = __importDefault(require("child_process")); const config_1 = require("../constants/config"); class GitHelper { static currentCommitHash() { const command = 'git rev-parse HEAD'; const options = { stdio: 'pipe' }; if (process.platform === 'win32') { options.shell = 'powershell.exe'; } try { return child_process_1.default.execSync(command, options).toString().trim(); } catch (error) { return undefined; } } static currentCommitTimestamp() { const command = 'git show -s --format=%ct HEAD'; try { const options = { stdio: 'pipe' }; if (process.platform === 'win32') { options.shell = 'powershell.exe'; } const result = child_process_1.default.execSync(command, options).toString().trim(); return parseInt(result); } catch (error) { return undefined; } } static uncommittedFiles() { const command = 'git diff HEAD --name-only -z'; try { const options = { stdio: 'pipe' }; if (process.platform === 'win32') { options.shell = 'powershell.exe'; } const result = child_process_1.default.execSync(command, options).toString().trim(); return result.split('\0'); } catch (error) { return undefined; } } static uncommittedChanges() { const uncommittedFiles = GitHelper.uncommittedFiles(); if (uncommittedFiles === undefined) { return uncommittedFiles; } if (uncommittedFiles.length === 1 && uncommittedFiles[0] === config_1.STATIC_CONFIG_FILENAME) { return false; } return true; } } exports.GitHelper = GitHelper; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR2l0SGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2hlbHBlci9HaXRIZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsa0VBQTZEO0FBRTdELGdEQUE0RDtBQU01RCxNQUFhLFNBQVM7SUFDckIsTUFBTSxDQUFDLGlCQUFpQjtRQUN2QixNQUFNLE9BQU8sR0FBRyxvQkFBb0IsQ0FBQTtRQUNwQyxNQUFNLE9BQU8sR0FBb0I7WUFDaEMsS0FBSyxFQUFFLE1BQU07U0FDYixDQUFBO1FBQ0QsSUFBSSxPQUFPLENBQUMsUUFBUSxLQUFLLE9BQU8sRUFBRSxDQUFDO1lBQ2xDLE9BQU8sQ0FBQyxLQUFLLEdBQUcsZ0JBQWdCLENBQUE7UUFDakMsQ0FBQztRQUNELElBQUksQ0FBQztZQUNKLE9BQU8sdUJBQVksQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLElBQUksRUFBb0IsQ0FBQTtRQUNuRixDQUFDO1FBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNoQixPQUFPLFNBQVMsQ0FBQTtRQUNqQixDQUFDO0lBQ0YsQ0FBQztJQUVELE1BQU0sQ0FBQyxzQkFBc0I7UUFDNUIsTUFBTSxPQUFPLEdBQUcsK0JBQStCLENBQUE7UUFDL0MsSUFBSSxDQUFDO1lBQ0osTUFBTSxPQUFPLEdBQW9CO2dCQUNoQyxLQUFLLEVBQUUsTUFBTTthQUNiLENBQUE7WUFDRCxJQUFJLE9BQU8sQ0FBQyxRQUFRLEtBQUssT0FBTyxFQUFFLENBQUM7Z0JBQ2xDLE9BQU8sQ0FBQyxLQUFLLEdBQUcsZ0JBQWdCLENBQUE7WUFDakMsQ0FBQztZQUVELE1BQU0sTUFBTSxHQUFHLHVCQUFZLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQTtZQUN4RSxPQUFPLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQTtRQUN4QixDQUFDO1FBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNoQixPQUFPLFNBQVMsQ0FBQTtRQUNqQixDQUFDO0lBQ0YsQ0FBQztJQUVELE1BQU0sQ0FBQyxnQkFBZ0I7UUFDdEIsTUFBTSxPQUFPLEdBQUcsOEJBQThCLENBQUE7UUFDOUMsSUFBSSxDQUFDO1lBQ0osTUFBTSxPQUFPLEdBQW9CO2dCQUNoQyxLQUFLLEVBQUUsTUFBTTthQUNiLENBQUE7WUFDRCxJQUFJLE9BQU8sQ0FBQyxRQUFRLEtBQUssT0FBTyxFQUFFLENBQUM7Z0JBQ2xDLE9BQU8sQ0FBQyxLQUFLLEdBQUcsZ0JBQWdCLENBQUE7WUFDakMsQ0FBQztZQUVELE1BQU0sTUFBTSxHQUFHLHVCQUFZLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQTtZQUN4RSxPQUFPLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUE7UUFDMUIsQ0FBQztRQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDaEIsT0FBTyxTQUFTLENBQUE7UUFDakIsQ0FBQztJQUNGLENBQUM7SUFFRCxNQUFNLENBQUMsa0JBQWtCO1FBQ3hCLE1BQU0sZ0JBQWdCLEdBQUcsU0FBUyxDQUFDLGdCQUFnQixFQUFFLENBQUE7UUFFckQsSUFBSSxnQkFBZ0IsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUNwQyxPQUFPLGdCQUFnQixDQUFBO1FBQ3hCLENBQUM7UUFDRCxJQUFJLGdCQUFnQixDQUFDLE1BQU0sS0FBSyxDQUFDLElBQUksZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLEtBQUssK0JBQXNCLEVBQUUsQ0FBQztZQUNyRixPQUFPLEtBQUssQ0FBQTtRQUNiLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQTtJQUNaLENBQUM7Q0FDRDtBQTdERCw4QkE2REMifQ==