diff options
author | Bjørn Lindeijer <bjorn@lindeijer.nl> | 2007-12-19 10:32:28 +0000 |
---|---|---|
committer | Bjørn Lindeijer <bjorn@lindeijer.nl> | 2007-12-19 10:32:28 +0000 |
commit | 2a5e4b7c74d116fa743da9f6482c16711b2d2dd6 (patch) | |
tree | aeb13683d3bea4ae763b35fa40a183229e158105 | |
parent | 51be336ded6996c02050d2d5142ca818c07119ff (diff) | |
download | mana-2a5e4b7c74d116fa743da9f6482c16711b2d2dd6.tar.gz mana-2a5e4b7c74d116fa743da9f6482c16711b2d2dd6.tar.bz2 mana-2a5e4b7c74d116fa743da9f6482c16711b2d2dd6.tar.xz mana-2a5e4b7c74d116fa743da9f6482c16711b2d2dd6.zip |
Added list of files in each update with indication on whether they are still
used.
-rw-r--r-- | ChangeLog | 2 | ||||
-rw-r--r-- | tools/upalyzer/analyze.php | 45 |
2 files changed, 42 insertions, 5 deletions
@@ -4,6 +4,8 @@ added no-cache headers, added a bit of error reporting in case of invalid zip files, kept original ordering of the update list and sorted the list of entries on their filename. + * tools/upalyzer/analyse.php: Added list of files in each update with + indication on whether they are still used. 2007-12-18 Bjørn Lindeijer <bjorn@lindeijer.nl> diff --git a/tools/upalyzer/analyze.php b/tools/upalyzer/analyze.php index 7a3c3e30..ff2b365c 100644 --- a/tools/upalyzer/analyze.php +++ b/tools/upalyzer/analyze.php @@ -64,16 +64,16 @@ foreach ($update_file as $update_line) $entry_name = zip_entry_name($zip_entry); $entry_size = zip_entry_compressedsize($zip_entry); $entry_used = !array_key_exists($entry_name, $update_entries); - $entries[zip_entry_name($zip_entry)] = array( + $entries[$entry_name] = array( 'name' => $entry_name, 'size' => $entry_size, 'used' => $entry_used); $update['size'] += $entry_size; if ($entry_used) { - $update_entries[$entry_name] = $update['file']; $update['used_entry_count']++; $update['used_size'] += $entry_size; + $update_entries[$entry_name] = $update; } $update_entry_maxlen = max($update_entry_maxlen, strlen($entry_name)); @@ -84,6 +84,7 @@ foreach ($update_file as $update_line) $update['zip_error'] = true; } + ksort($entries); $update['entries'] = $entries; $update['used_percentage'] = $update['used_size'] / $update['size']; $updates[] = $update; @@ -94,10 +95,20 @@ foreach ($update_file as $update_line) $data_overhead_size += $update['filesize'] - $update['size']; } +function print_update_name($update, $pad = true) +{ + global $update_file_maxlen; + printf("<a href=\"#%s\">%s</a>", $update['file'], $update['file']); + if ($pad) + echo str_repeat(' ', $update_file_maxlen - strlen($update['file'])); +} + +// Print overall statistics + foreach (array_reverse($updates) as $update) { - printf("%-{$update_file_maxlen}s ", $update['file']); - echo $update['adler32']; + print_update_name($update); + echo ' '. $update['adler32']; printf(" %4d kb", $update['filesize'] / 1024); if (!$update['zip_error']) { printf(" %4d kb", $update['uncompressed_size'] / 1024); @@ -121,11 +132,35 @@ printf("Obsoleted data: %4d kb (%d%%)\n", printf("\n"); + +// Print list of update entries and the update they are loaded from + ksort($update_entries); foreach ($update_entries as $entry => $update) { - printf("%-{$update_entry_maxlen}s %s\n", $entry, $update); + printf("%-{$update_entry_maxlen}s ", $entry); + print_update_name($update, false); + echo "\n"; +} + + +// For each update, print its list of files and indicate whether they are used + +foreach (array_reverse($updates) as $update) +{ + print "\n<a name=\"".$update['file']."\"/><b>".$update['file']."</b>\n"; + + foreach ($update['entries'] as $entry_name => $entry) { + printf("%-{$update_entry_maxlen}s", $entry_name); + if ($entry['used']) { + echo ' *'; + } else { + echo ' '; + print_update_name($update_entries[$entry_name], false); + } + echo "\n"; + } } /* |