diff --git a/ChangeLog b/ChangeLog
index ace6c60c0c0a3490ec96e8c3b4a885a42a453d11..9cd6f11d1b8b437bf529b75ac2027dc69b6757a0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -31,10 +31,17 @@ Following changes may create regression for some external modules, but were nece
 content by doing a print into function, sometimes by returning content into "resprint". This has been fixed to follow
 hook specifications so you must return output into "resprint".
 
+
 ***** ChangeLog for 5.0.4 compared to 5.0.3 *****
-FIX: #6880
-FIX: #6925
+FIX: #5640 Prices of a predefined product/service were incorrect under certain circumstances
+FIX: #6541 since 4.0.4 to 5.0.0 autofill zip/town not working
+FIX: #6880 #6925
+FIX: #6885
 FIX: #6926
+FIX: #7003
+FIX: #7012
+FIX: #7040
+FIX: #7048 #6075
 FIX: Can set supplier invoice to billed.
 FIX: Can't create invoice if PO disapproved
 FIX: contratligne update
@@ -46,6 +53,7 @@ FIX: Redirect to payment page from member subscription page failed if a unique s
 FIX: REST api to get project when user has permission to read all.
 FIX: situation_progress param default value must be 100 and not 0
 FIX: SQL injection on user/index.php parameter search_statut.
+FIX: vat code not saved during product creation.
 FIX: Warnings
 
 ***** ChangeLog for 5.0.3 compared to 5.0.2 *****
diff --git a/build/exe/doliwamp/install.forced.php.install b/build/exe/doliwamp/install.forced.php.install
index fd98dbf398401ae1d96b945107b8c6343f5f9a44..5b186c1726824857fd7ce2fc09fda4ba7cc41523 100644
--- a/build/exe/doliwamp/install.forced.php.install
+++ b/build/exe/doliwamp/install.forced.php.install
@@ -5,7 +5,7 @@
 // during install process to be used.
 //
 //
-$force_install_noedit=2;
+$force_install_noedit=2;		// 1=To block vars specific to distrib, 2 to block all technical parameters
 $force_install_message='KeepDefaultValuesWamp';
 $force_install_main_data_root='WAMPROOT/dolibarr_documents';
 $force_install_type='mysqli';
diff --git a/build/rpm/install.forced.php.fedora b/build/rpm/install.forced.php.fedora
index 108455a940396029214ec461446a3e25f5234875..a8db3e25c9e9364cb40ccc4fcddd628237b7c30b 100644
--- a/build/rpm/install.forced.php.fedora
+++ b/build/rpm/install.forced.php.fedora
@@ -1,7 +1,7 @@
 <?php
 
 $force_install_packager='rpmfedora';
-$force_install_noedit=1;	# 1 to block var specific to distrib, 2 to block every technical parameters
+$force_install_noedit=1;	// 1 to block var specific to distrib, 2 to block every technical parameters
 $force_install_message='KeepDefaultValuesDeb';
 $force_install_main_data_root='/var/lib/dolibarr/documents';
 $force_install_type='mysqli';
diff --git a/build/rpm/install.forced.php.generic b/build/rpm/install.forced.php.generic
index 161f69cdbb3a57099c5a95fc216d3e4e65db9257..107ef533310def5b523960dd9c59711d2395cd31 100644
--- a/build/rpm/install.forced.php.generic
+++ b/build/rpm/install.forced.php.generic
@@ -1,7 +1,7 @@
 <?php
 
 $force_install_packager='rpmgeneric';
-$force_install_noedit=1;	# 1 to block var specific to distrib, 2 to block every technical parameters
+$force_install_noedit=1;	// 1 to block var specific to distrib, 2 to block every technical parameters
 $force_install_message='KeepDefaultValuesDeb';
 $force_install_main_data_root='/var/lib/dolibarr/documents';
 $force_install_type='mysqli';
diff --git a/build/rpm/install.forced.php.mandriva b/build/rpm/install.forced.php.mandriva
index 266468c7f334c96f4249494279971d40cef05152..927877b59d09368447d131c9537ec097009c86e8 100644
--- a/build/rpm/install.forced.php.mandriva
+++ b/build/rpm/install.forced.php.mandriva
@@ -1,7 +1,7 @@
 <?php
 
 $force_install_packager='rpmmandriva';
-$force_install_noedit=1;	# 1 to block var specific to distrib, 2 to block every technical parameters
+$force_install_noedit=1;	// 1 to block var specific to distrib, 2 to block every technical parameters
 $force_install_message='KeepDefaultValuesDeb';
 $force_install_main_data_root='/var/lib/dolibarr/documents';
 $force_install_type='mysqli';
diff --git a/build/rpm/install.forced.php.opensuse b/build/rpm/install.forced.php.opensuse
index b644cea6e249fd2d58d8bffe8962f2fbe2eefa01..c91836918f4726cd695f477ab25209204d219715 100644
--- a/build/rpm/install.forced.php.opensuse
+++ b/build/rpm/install.forced.php.opensuse
@@ -1,7 +1,7 @@
 <?php
 
 $force_install_packager='rpmopensuse';
-$force_install_noedit=1;	# 1 to block var specific to distrib, 2 to block every technical parameters
+$force_install_noedit=1;	// 1 to block var specific to distrib, 2 to block every technical parameters
 $force_install_message='KeepDefaultValuesDeb';
 $force_install_main_data_root='/var/lib/dolibarr/documents';
 $force_install_type='mysqli';
diff --git a/htdocs/install/fileconf.php b/htdocs/install/fileconf.php
index c0a3aaf65fdba69184cd4c1111e86d63aac85f23..0186e42809d106cabd45f4dafcd9dfc702e69adc 100644
--- a/htdocs/install/fileconf.php
+++ b/htdocs/install/fileconf.php
@@ -66,6 +66,7 @@ if (@file_exists($forcedfile)) {
 }
 
 
+
 /*
  *	View
  */
@@ -426,8 +427,8 @@ if (! empty($force_install_message))
 			<input type="password" id="db_pass" autocomplete="off"
 			       name="db_pass"
 			       value="<?php
-			       // We don't want to set password. It will be extracted from the forced install file at step1.
-			       $autofill = ((!empty($_SESSION['dol_save_pass'])) ? $_SESSION['dol_save_pass'] : '');
+			       // If $force_install_databasepass is on, we don't want to set password, we just show '***'. Real value will be extracted from the forced install file at step1.
+			       $autofill = ((!empty($_SESSION['dol_save_pass'])) ? $_SESSION['dol_save_pass'] : str_pad('', strlen($force_install_databasepass), '*'));
 			       if (!empty($dolibarr_main_prod)) {
 				       $autofill = '';
 			       }
@@ -479,7 +480,7 @@ if (! empty($force_install_message))
 			       name="db_user_root"
 			       class="needroot"
 			       value="<?php print (!empty($force_install_databaserootlogin)) ? $force_install_databaserootlogin : @$db_user_root; ?>"
-				<?php if ($force_install_noedit == 2 && $force_install_databaserootlogin !== null) {
+				<?php if ($force_install_noedit > 0 && ! empty($force_install_databaserootlogin)) {
 					print ' disabled';
 				} ?>
 			>
@@ -505,20 +506,21 @@ if (! empty($force_install_message))
 			       name="db_pass_root"
 			       class="needroot"
 			       value="<?php
-			       // We don't want to set password. It will be extracted from the forced install file at step1.
-			       $autofill = ((!empty($force_install_database_rootpass)) ? '' : @$db_pass_root);
+			       // If $force_install_databaserootpass is on, we don't want to set password here, we just show '***'. Real value will be extracted from the forced install file at step1.
+			       $autofill = ((!empty($force_install_databaserootpass)) ? str_pad('', strlen($force_install_databaserootpass), '*') : @$db_pass_root);
 			       if (!empty($dolibarr_main_prod)) {
 				       $autofill = '';
-			       }    // Do not autofill password if instance is a production instance
+			       }
+				   // Do not autofill password if instance is a production instance
 			       if (!empty($_SERVER["SERVER_NAME"]) && !in_array($_SERVER["SERVER_NAME"],
-					       array('127.0.0.1', 'localhost'))
+					       array('127.0.0.1', 'localhost', 'localhostgit'))
 			       ) {
 				       $autofill = '';
 			       }    // Do not autofill password for remote access
 			       print dol_escape_htmltag($autofill);
 			       ?>"
-				<?php if ($force_install_noedit == 2 && $force_install_databaserootpass !== null) {
-					print ' disabled';
+				<?php if ($force_install_noedit > 0 && ! empty($force_install_databaserootpass)) {
+					print ' disabled';     // May be removed by javascript
 				} ?>
 			>
 		</td>
@@ -561,7 +563,10 @@ jQuery(document).ready(function() {
 		if (jQuery("#db_create_database").is(":checked") || jQuery("#db_create_user").is(":checked"))
 		{
 			jQuery(".hideroot").show();
-			jQuery(".needroot").removeAttr('disabled');
+			<?php
+			if ($force_install_noedit == 0) { ?>
+                jQuery(".needroot").removeAttr('disabled');
+			<?php } ?>
 		}
 		else
 		{
diff --git a/htdocs/install/step1.php b/htdocs/install/step1.php
index 631ac79752fcba272c094cd5061f04b7b6154643..9ad30fe5d7b229db81ac6e073f03f66b8d5e64ac 100644
--- a/htdocs/install/step1.php
+++ b/htdocs/install/step1.php
@@ -88,6 +88,7 @@ if (@file_exists($forcedfile)) {
 			$main_data_dir = detect_dolibarr_main_data_root($main_dir);
 		}
 		$main_url = detect_dolibarr_main_url_root();
+
 		if (!empty($force_install_databaserootlogin)) {
 			$userroot = parse_database_login($force_install_databaserootlogin);
 		}