if (is_array($info)) {
if ($this->config->get('verbose') > 0) {
$label = "$info[package] $info[version]";
- $this->ui->outputData("$command ok: $label", $command);
+ $out = array('data' => "$command ok: $label");
+ if (isset($info['release_warnings'])) {
+ $out['release_warnings'] = $info['release_warnings'];
+ }
+ $this->ui->outputData($out, $command);
}
} else {
return $this->raiseError("$command failed");
}
-?>
\ No newline at end of file
+?>
$this->pkginfo['release_notes'] = $data;
}
break;
+ case 'warnings':
+ if ($this->in_changelog) {
+ $this->current_release['release_warnings'] = $data;
+ } else {
+ $this->pkginfo['release_warnings'] = $data;
+ }
+ break;
case 'state':
if ($this->in_changelog) {
$this->current_release['release_state'] = $data;
if (!empty($pkginfo['release_notes'])) {
$ret .= "$indent <notes>".htmlspecialchars($pkginfo['release_notes'])."</notes>\n";
}
+ if (!empty($pkginfo['release_warnings'])) {
+ $ret .= "$indent <warnings>".htmlspecialchars($pkginfo['release_warnings'])."</warnings>\n";
+ }
if (isset($pkginfo['release_deps']) && sizeof($pkginfo['release_deps']) > 0) {
$ret .= "$indent <deps>\n";
foreach ($pkginfo['release_deps'] as $dep) {
{
switch ($command)
{
+ case 'install':
+ case 'upgrade':
+ if (isset($data['release_warnings'])) {
+ $this->_displayLine('');
+ $this->_startTable(array(
+ 'border' => true,
+ 'caption' => 'Release Warnings'
+ ));
+ $this->_tableRow(array($data['release_warnings']), null, array(1 => array('wrap' => 55)));
+ $this->_endTable();
+ $this->_displayLine('');
+ };
+ $this->_displayLine($data['data']);
+ break;
case 'search':
$this->_startTable($data);
if (isset($data['headline']) && is_array($data['headline']))