cvs diff: Diffing modules/project/release Index: modules/project/release/package-release-nodes.php =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/project/release/package-release-nodes.php,v retrieving revision 1.22 diff -u -p -u -p -r1.22 package-release-nodes.php --- modules/project/release/package-release-nodes.php 22 Aug 2007 16:30:52 -0000 1.22 +++ modules/project/release/package-release-nodes.php 6 Oct 2007 19:36:28 -0000 @@ -167,6 +167,7 @@ elseif ($task == 'repair') { // ------------------------------------------------------------ function package_releases($type, $project_id) { + global $wd_err_msg; if ($type == 'tag') { $where = " AND (prn.rebuild = 0) AND (prn.file_path = '')"; $plural = t('tags'); @@ -198,6 +199,7 @@ function package_releases($type, $projec $num_considered = 0; $project_nids = array(); while ($release = db_fetch_object($query)) { + $wd_err_msg = array(); $version = $release->version; $uri = $release->uri; $tag = $release->tag; @@ -207,6 +209,7 @@ function package_releases($type, $projec $uri = escapeshellcmd($uri); $version = escapeshellcmd($version); $rev = escapeshellcmd($rev); + db_query("DELETE FROM {project_release_package_errors} WHERE nid = %d", $nid); if ($release->rid == 1) { $built = package_release_core($nid, $uri, $version, $rev); } @@ -219,6 +222,9 @@ function package_releases($type, $projec $project_nids[$pid] = TRUE; } $num_considered++; + if (count($wd_err_msg)) { + db_query("INSERT INTO {project_release_package_errors} (nid, messages) values (%d, '%s')", $nid, serialize($wd_err_msg)); + } } if ($num_built || $type == 'branch') { if (!empty($project_id)) { @@ -589,8 +595,13 @@ function wd_msg($msg, $link = NULL) { * Wrapper function for watchdog() to log error messages. */ function wd_err($msg, $link = NULL) { + global $wd_err_msg; + if (!isset($wd_err_msg)) { + $wd_err_msg = array(); + } watchdog('package_error', $msg, WATCHDOG_ERROR, $link); echo $msg ."\n"; + $wd_err_msg[] = $msg; } /** Index: modules/project/release/project_release.install =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/project/release/project_release.install,v retrieving revision 1.13 diff -u -p -u -p -r1.13 project_release.install --- modules/project/release/project_release.install 20 Sep 2007 00:12:32 -0000 1.13 +++ modules/project/release/project_release.install 6 Oct 2007 19:36:29 -0000 @@ -36,6 +36,11 @@ function project_release_install() { major int unsigned NOT NULL default '0', PRIMARY KEY (nid, tid) ) /*!40100 DEFAULT CHARACTER SET utf8 */;"); + db_query("CREATE TABLE IF NOT EXISTS {project_release_package_errors} ( + nid int unsigned NOT NULL default '0', + messages text, + PRIMARY KEY (nid) + ) /*!40100 DEFAULT CHARACTER SET utf8 */;"); db_query("CREATE TABLE IF NOT EXISTS {cache_project_release} ( cid varchar(255) BINARY NOT NULL default '', data longblob, @@ -84,6 +89,13 @@ function project_release_install() { PRIMARY KEY (nid, tid) );"); } + if (!db_table_exists('project_release_package_errors')) { + db_query("CREATE TABLE {project_release_package_errors} ( + nid int NOT NULL default '0', + messages text, + PRIMARY KEY (nid) + )"); + } if (!db_table_exists('cache_project_release')) { db_query("CREATE TABLE {cache_project_release} ( cid varchar(255) NOT NULL default '', @@ -257,3 +269,30 @@ function project_release_update_5002() { $ret[] = array('success' => TRUE, 'query' => "variable_del('project_release_unmoderate')"); return $ret; } + +/** + * Add {project_release_package_errors} table to track packaging errors. + */ +function project_release_update_5003() { + $ret = array(); + switch ($GLOBALS['db_type']) { + case 'mysql': + case 'mysqli': + $ret[] = update_sql("CREATE TABLE IF NOT EXISTS {project_release_package_errors} ( + nid int unsigned NOT NULL default '0', + messages text NOT NULL, + PRIMARY KEY (nid) + ) /*!40100 DEFAULT CHARACTER SET utf8 */;"); + break; + case 'pgsql': + if (!db_table_exists('project_release_package_errors')) { + $ret[] = update_sql("CREATE TABLE {project_release_package_errors} ( + nid int NOT NULL default '0', + messages text, + PRIMARY KEY (nid) + )"); + } + break; + } + return $ret; +} Index: modules/project/release/project_release.module =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/project/release/project_release.module,v retrieving revision 1.50 diff -u -p -u -p -r1.50 project_release.module --- modules/project/release/project_release.module 28 Sep 2007 20:16:45 -0000 1.50 +++ modules/project/release/project_release.module 6 Oct 2007 19:36:30 -0000 @@ -770,8 +770,25 @@ function project_release_view($node, $te } $node->content['release_info'] = array( '#value' => '