Exemplo n.º 1
0
/**
 * @param object $base Decoded composer.json
 * @param object $modConf Decoded haydn.json
 */
function override($base, $modConf)
{
    $currBranch = getCurrentBranch();
    /**
     * Add/replace packages with alternate versions, unless the version is blank in
     * which case the package is removed.
     */
    if (isset($modConf->{'override-require'}) && isset($base->{'require'})) {
        foreach ($modConf->{'override-require'} as $packageName => $version) {
            if ($version == SAME_BRANCH) {
                $version = "dev-{$currBranch}";
            }
            if ($version != "") {
                $base->{'require'}->{$packageName} = $version;
            } else {
                unset($base->{'require'}->{$packageName});
            }
        }
    }
    if (isset($modConf->{'override-require-dev'}) && isset($base->{'require-dev'})) {
        foreach ($modConf->{'override-require-dev'} as $packageName => $version) {
            if ($version != "") {
                $base->{'require-dev'}->{$packageName} = $version;
            } else {
                unset($base->{'require-dev'}->{$packageName});
            }
        }
    }
    /**
     * Replace repositories with the same URL, otherwise add new ones
     */
    if (isset($modConf->{'override-repositories'}) && isset($base->{'repositories'})) {
        foreach ($modConf->{'override-repositories'} as $url => $newRepo) {
            $replaced = false;
            foreach ($base->{'repositories'} as $index => $repo) {
                if (!isset($repo->url)) {
                    continue;
                }
                if ($repo->url == $url) {
                    $base->{'repositories'}[$index] = $newRepo;
                    $replaced = true;
                    break;
                }
            }
            if (!$replaced) {
                // Add instead
                $base->{'repositories'}[] = $newRepo;
            }
        }
    }
}
Exemplo n.º 2
0
if (isset($options['i']) && $options['i'] !== false && is_numeric($options['i'])) {
    $iteration = $options['i'];
}
if (isset($options['c']) && $options['c'] !== false && is_numeric($options['c'])) {
    $nbCommits = $options['c'];
}
if (isset($options['no-merged-branch'])) {
    $displayNoMergedBranches = false;
}
if (isset($options['no-stat'])) {
    $displayStats = false;
}
//--------
// Compute
//--------
$currentBranch = getCurrentBranch($gitDir);
$commits = getCommits($iteration, $gitDir);
$lastDaysInfos = getBackwardInfos($commits, 'd/m', 'Y-m-d', 'days', $iteration);
$lastHoursInfos = getBackwardInfos($commits, 'H\\h', 'Y-m-d H:', 'hours', $iteration);
$lastMinutesInfos = getBackwardInfos($commits, 'H\\hi', 'Y-m-d H:i:', 'minutes', $iteration);
$noMergedBranchesInfos = $displayNoMergedBranches ? getNoMergedBranchesInfos($gitDir) : array();
$stats = $displayStats ? getStats($commits) : array();
//--------
// Display
//--------
passthru("tput clear");
// Display project infos
printf("Project: %s\n", $gitDir);
printf("Current branch: %s\n", $currentBranch);
printf("Current date: %s\n", date('d/m/Y H:i:s'));
printf("\n");