View Issue Details

IDProjectCategoryView StatusLast Update
0008651mantisbtchange logpublic2008-04-19 04:10
Reporterfoo Assigned Tojreese  
PrioritynormalSeverityfeatureReproducibilityN/A
Status closedResolutionfixed 
Product Version1.1.0rc3 
Fixed in Version1.2.0a1 
Summary0008651: Display release date in changelog for released version
Description

A nice option would be to append the release date after the version number in the change log entry. Currently we use the notes to describe this, but that's redundant, as the releases have a date field; why not make it automatic and just use that?

Tagspatch
Attached Files
8651_raster.PNG (55,278 bytes)   
8651_raster.PNG (55,278 bytes)   
changelog.patch (2,486 bytes)   
Index: lang/strings_english.txt
===================================================================
--- lang/strings_english.txt	(revision 5155)
+++ lang/strings_english.txt	(working copy)
@@ -921,6 +921,7 @@
 $s_edit_project_version_title = 'Edit Project Version';
 $s_update_version_button = 'Update Version';
 $s_released = 'Released';
+$s_not_released = 'Not Yet Released';
 $s_obsolete = 'Obsolete';
 
 # manage_proj_version_update.php
@@ -1310,6 +1311,7 @@
 $s_http_auth_realm = "Mantis Login";
 
 $s_bug = "issue";
+$s_bugs = "issues";
 $s_add_new_relationship = "New relationship";
 $s_add_new_relationship_button = "Add";
 $s_this_bug = "Current issue";
@@ -1511,4 +1513,4 @@
 # mind mapping
 $s_mindmap = 'Mindmap';
 $s_freemind_export = 'Freemind Export';
-?>
\ No newline at end of file
+?>
Index: changelog_page.php
===================================================================
--- changelog_page.php	(revision 5155)
+++ changelog_page.php	(working copy)
@@ -31,11 +31,22 @@
 	function print_version_header( $p_version_id ) {
 		$t_project_id   = version_get_field( $p_version_id, 'project_id' );
 		$t_version_name = version_get_field( $p_version_id, 'version' );
+		$t_version_released = version_get_field( $p_version_id, 'released' );
+		$t_release_timestamp = version_get_field( $p_version_id, 'date_order' );
 		$t_project_name = project_get_field( $t_project_id, 'name' );
 
 		$t_release_title = string_display( $t_project_name ) . ' - ' . string_display( $t_version_name );
+		
+		if ( (bool) $t_version_released ) {
+			$t_release_date = ' (' . strtolower( lang_get('released') ) . ' ' . date( config_get( 'short_date_format' ), $t_release_timestamp ) . ')';
+		} else {
+			$t_release_date = ' (' . strtolower( lang_get( 'not_released' ) ) . ')';
+		}
+
 		echo '<tt>';
-		echo '<br />', $t_release_title, '<br />';
+		echo '<br />', $t_release_title, $t_release_date, '<br />';
+		
+		$t_release_title = $t_project_name . ' - ' . $t_version_name . $t_release_date;
 		echo str_pad( '', strlen( $t_release_title ), '=' ), '<br />';
 	}
 	
@@ -217,6 +228,14 @@
 				helper_call_custom_function( 'changelog_print_issue', array( $t_issue_set_id, $t_issue_set_level ) );
 			}
 
+			if ( $t_issues_resolved == 1 ) {
+				echo "[{$t_issues_resolved} " . lang_get( 'bug' ) . ']';
+				echo "<br />";
+			} else if ( $t_issues_resolved > 1 ) {
+				echo "[{$t_issues_resolved} " . lang_get( 'bugs' ) . ']';
+				echo "<br />";
+			}
+
 			echo '</tt>';
  		}			
 
changelog.patch (2,486 bytes)   
changelog+roadmap.patch (3,562 bytes)   
Index: lang/strings_english.txt
===================================================================
--- lang/strings_english.txt	(revision 5156)
+++ lang/strings_english.txt	(working copy)
@@ -921,6 +921,8 @@
 $s_edit_project_version_title = 'Edit Project Version';
 $s_update_version_button = 'Update Version';
 $s_released = 'Released';
+$s_not_released = 'Not Yet Released';
+$s_scheduled_release = 'Scheduled For Release';
 $s_obsolete = 'Obsolete';
 
 # manage_proj_version_update.php
@@ -1310,6 +1312,7 @@
 $s_http_auth_realm = "Mantis Login";
 
 $s_bug = "issue";
+$s_bugs = "issues";
 $s_add_new_relationship = "New relationship";
 $s_add_new_relationship_button = "Add";
 $s_this_bug = "Current issue";
@@ -1511,4 +1514,4 @@
 # mind mapping
 $s_mindmap = 'Mindmap';
 $s_freemind_export = 'Freemind Export';
-?>
\ No newline at end of file
+?>
Index: changelog_page.php
===================================================================
--- changelog_page.php	(revision 5156)
+++ changelog_page.php	(working copy)
@@ -31,11 +31,22 @@
 	function print_version_header( $p_version_id ) {
 		$t_project_id   = version_get_field( $p_version_id, 'project_id' );
 		$t_version_name = version_get_field( $p_version_id, 'version' );
+		$t_version_released = version_get_field( $p_version_id, 'released' );
+		$t_release_timestamp = version_get_field( $p_version_id, 'date_order' );
 		$t_project_name = project_get_field( $t_project_id, 'name' );
 
 		$t_release_title = string_display( $t_project_name ) . ' - ' . string_display( $t_version_name );
+		
+		if ( (bool) $t_version_released ) {
+			$t_release_date = ' (' . strtolower( lang_get('released') ) . ' ' . date( config_get( 'short_date_format' ), $t_release_timestamp ) . ')';
+		} else {
+			$t_release_date = ' (' . strtolower( lang_get( 'not_released' ) ) . ')';
+		}
+
 		echo '<tt>';
-		echo '<br />', $t_release_title, '<br />';
+		echo '<br />', $t_release_title, $t_release_date, '<br />';
+		
+		$t_release_title = $t_project_name . ' - ' . $t_version_name . $t_release_date;
 		echo str_pad( '', strlen( $t_release_title ), '=' ), '<br />';
 	}
 	
@@ -217,6 +228,14 @@
 				helper_call_custom_function( 'changelog_print_issue', array( $t_issue_set_id, $t_issue_set_level ) );
 			}
 
+			if ( $t_issues_resolved == 1 ) {
+				echo "[{$t_issues_resolved} " . lang_get( 'bug' ) . ']';
+				echo "<br />";
+			} else if ( $t_issues_resolved > 1 ) {
+				echo "[{$t_issues_resolved} " . lang_get( 'bugs' ) . ']';
+				echo "<br />";
+			}
+
 			echo '</tt>';
  		}			
 
Index: roadmap_page.php
===================================================================
--- roadmap_page.php	(revision 5156)
+++ roadmap_page.php	(working copy)
@@ -31,11 +31,16 @@
 	function print_version_header( $p_version_row ) {
 		$t_project_id   = $p_version_row['project_id'];
 		$t_version_name = $p_version_row['version'];
+		$t_version_timestamp = $p_version_row['date_order'];
 		$t_project_name = project_get_field( $t_project_id, 'name' );
 
 		$t_release_title = string_display( $t_project_name ) . ' - ' . string_display( $t_version_name );
+		$t_scheduled_release_date = ' (' . strtolower( lang_get( 'scheduled_release' ) ) . ' ' . date( config_get( 'short_date_format' ), $t_version_timestamp ) . ')';
+
 		echo '<tt>';
-		echo '<br />', $t_release_title, '<br />';
+		echo '<br />', $t_release_title, $t_scheduled_release_date, '<br />';
+
+		$t_release_title = $t_project_name . ' - ' . $t_version_name . $t_scheduled_release_date;
 		echo str_pad( '', strlen( $t_release_title ), '=' ), '<br />';
 	}
 
changelog+roadmap.patch (3,562 bytes)   

Relationships

has duplicate 0007834 closedgiallu Release dates in changelog and roadmap 
related to 0006215 closedgiallu Add fixed bug count to change log 
related to 0005158 closedgiallu Changelog count 

Activities

herringm

herringm

2008-03-07 08:05

reporter   ~0017283

Last edited: 2008-03-07 08:07

I attached a mockup showing one potential way to show release dates for versions on the Change Log page. This raster also includes a total issue count to quickly give an idea of how many fixes/enhancements were addressed in a particular version (0005158).

Thoughts?

Oops! Just realized I forgot to extend the "=" under the version title to the end of the release date.

vboctor

vboctor

2008-03-08 02:06

manager   ~0017289

Sounds good to me. Let's see others feedback.

plegall

plegall

2008-03-31 16:21

reporter   ~0017512

I'm very interested in such a feature.

The problem is that currently (Mantis 1.1.0 is installed on talendforge.org/bugs) mantis_project_version_table.date_order is used to order released. And the date I set is absolutely not the release date (I want a sort order different because I don't want to mix branches).

so I suggest a new mantis_project_version_table.order (int) + mantis_project_version_table.released_date

herringm

herringm

2008-04-04 09:46

reporter   ~0017551

Patch attached. Does not address new release_date column for versions.

stefang

stefang

2008-04-07 04:56

reporter   ~0017560

Hi Herringm,

I've implemented your patch in to Mantis 1.1.1 and it works fine so far.

The only thing I had to change was to remove the "strtolower" functions in the changelog_page.php, because german umlauts would not be converted correctly and are shown as carets in the page.

Thanks for the patch,
Stefan

herringm

herringm

2008-04-07 09:04

reporter   ~0017562

Stefang,

If you have the mbstring extension installed give multi-byte function overloading a try. Instead of calling the single-byte function the multi-byte equivalent will be called which should be able to handle the umlauts.

http://us2.php.net/manual/en/ref.mbstring.php
http://us2.php.net/manual/en/ref.mbstring.php#mbstring.overload

herringm

herringm

2008-04-07 17:44

reporter   ~0017567

Last edited: 2008-04-07 17:45

Second patch attached which includes similar fixes/enhancements to Roadmap.
Patch created against trunk r5156.

jreese

jreese

2008-04-08 11:54

reporter   ~0017574

Fix committed to SVN trunk, 1.2.x r5157:

  • Added config options 'show_roadmap_dates' and 'show_changelog_dates' defaulting to ON
  • Cleaned up and optimized some code.