mirror of
https://github.com/phpbb/phpbb.git
synced 2025-06-19 09:48:53 +00:00
Merge branch 'develop-ascraeus' into develop
* develop-ascraeus: [ticket/12325] Use \RecursiveDirectoryIterator [ticket/12325] Doc blocks [ticket/12325] Change private function to protected [ticket/12325] Add visibilities [ticket/12325] Add files located in deleted dirs [ticket/12325] Generate the list of the deleted files and folders
This commit is contained in:
commit
fadc23344f
3 changed files with 73 additions and 0 deletions
|
@ -141,6 +141,7 @@
|
||||||
|
|
||||||
<exec dir="build/old_versions" command="LC_ALL=C diff -crNEBwd release-${version} release-${newversion} >
|
<exec dir="build/old_versions" command="LC_ALL=C diff -crNEBwd release-${version} release-${newversion} >
|
||||||
../new_version/patches/phpBB-${version}_to_${newversion}.patch" escape="false" />
|
../new_version/patches/phpBB-${version}_to_${newversion}.patch" escape="false" />
|
||||||
|
<exec dir="build/old_versions" command="LC_ALL=C diff -qr release-${version} release-${newversion} | grep 'Only in release-${version}' > ../new_version/patches/phpBB-${version}_to_${newversion}.deleted" escape="false" />
|
||||||
</target>
|
</target>
|
||||||
|
|
||||||
<target name="prepare-new-version">
|
<target name="prepare-new-version">
|
||||||
|
|
|
@ -312,4 +312,63 @@ class build_package
|
||||||
|
|
||||||
return $result;
|
return $result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Collect the list of the deleted files from a list of deleted files and folders.
|
||||||
|
*
|
||||||
|
* @param string $deleted_filename The full path to a file containing the list of deleted files and directories
|
||||||
|
* @param string $package_name The name of the package
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
public function collect_deleted_files($deleted_filename, $package_name)
|
||||||
|
{
|
||||||
|
$result = array();
|
||||||
|
$file_contents = file($deleted_filename);
|
||||||
|
|
||||||
|
foreach ($file_contents as $filename)
|
||||||
|
{
|
||||||
|
$filename = trim($filename);
|
||||||
|
|
||||||
|
if (!$filename)
|
||||||
|
{
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
$filename = str_replace('Only in ' . $package_name, '', $filename);
|
||||||
|
$filename = ltrim($filename, '/');
|
||||||
|
|
||||||
|
if (substr($filename, 0, 1) == ':')
|
||||||
|
{
|
||||||
|
$replace = '';
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$replace = '/';
|
||||||
|
}
|
||||||
|
|
||||||
|
$filename = str_replace(': ', $replace, $filename);
|
||||||
|
|
||||||
|
if (is_dir("{$this->locations['old_versions']}{$package_name}/{$filename}"))
|
||||||
|
{
|
||||||
|
$iterator = new \RecursiveIteratorIterator(
|
||||||
|
new \RecursiveDirectoryIterator(
|
||||||
|
"{$this->locations['old_versions']}{$package_name}/{$filename}",
|
||||||
|
\FilesystemIterator::UNIX_PATHS | \FilesystemIterator::SKIP_DOTS
|
||||||
|
),
|
||||||
|
\RecursiveIteratorIterator::LEAVES_ONLY
|
||||||
|
);
|
||||||
|
|
||||||
|
foreach ($iterator as $file_info)
|
||||||
|
{
|
||||||
|
$result[] = "{$filename}/{$iterator->getSubPathname()}";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$result[] = $filename;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return $result;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -45,6 +45,10 @@ if (sizeof($package->old_packages))
|
||||||
$package->get('patch_directory') . '/phpBB-' . $dest_package_filename . $package->get('new_version_number') . '.patch',
|
$package->get('patch_directory') . '/phpBB-' . $dest_package_filename . $package->get('new_version_number') . '.patch',
|
||||||
$_package_name
|
$_package_name
|
||||||
);
|
);
|
||||||
|
$diff_file_changes[$_package_name]['deleted'] = $package->collect_deleted_files(
|
||||||
|
$package->get('patch_directory') . '/phpBB-' . $dest_package_filename . $package->get('new_version_number') . '.deleted',
|
||||||
|
$_package_name
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Now put those files determined within the correct directories
|
// Now put those files determined within the correct directories
|
||||||
|
@ -292,6 +296,15 @@ $update_info = array(
|
||||||
$index_contents .= "\t'binary' => array(),\n";
|
$index_contents .= "\t'binary' => array(),\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (sizeof($file_contents['deleted']))
|
||||||
|
{
|
||||||
|
$index_contents .= "\t'deleted' => array(\n\t\t'" . implode("',\n\t\t'", $file_contents['deleted']) . "',\n\t),\n";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$index_contents .= "\t'deleted' => array(),\n";
|
||||||
|
}
|
||||||
|
|
||||||
$index_contents .= ");\n";
|
$index_contents .= ");\n";
|
||||||
|
|
||||||
$fp = fopen($dest_filename_dir . '/install/update/index.php', 'wt');
|
$fp = fopen($dest_filename_dir . '/install/update/index.php', 'wt');
|
||||||
|
|
Loading…
Add table
Reference in a new issue