/[ddp]/manuals/trunk/release-notes/changes-release.pl
ViewVC logotype

Diff of /manuals/trunk/release-notes/changes-release.pl

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 3064 by jfs, Tue May 10 06:21:25 2005 UTC revision 4170 by jfs, Sun Mar 18 21:18:36 2007 UTC
# Line 18  getopts('dp:r:m:a:'); Line 18  getopts('dp:r:m:a:');
18  # Debug  # Debug
19  my $debug       = $opt_d || 0;  my $debug       = $opt_d || 0;
20  # Releases and path location  # Releases and path location
21  my $prevrelease = $opt_p || "woody";  my $prevrelease = $opt_p || "sarge";
22  my $currelease  = $opt_r || "sarge";  my $currelease  = $opt_r || "etch";
23  my $mirrordir   = $opt_m || "/home/mirrors/debian/debian.org";  my $mirrordir   = $opt_m || "/home/mirrors/debian/debian.org";
24  my $arch        = $opt_a || "i386";  my $arch        = $opt_a || "i386";
25  my @releases = ( $currelease, $prevrelease ) ;  my @releases = ( $currelease, $prevrelease ) ;
# Line 35  foreach $releasei (0 .. $#releases ) { Line 35  foreach $releasei (0 .. $#releases ) {
35          foreach $componenti (0 .. $#components ) {          foreach $componenti (0 .. $#components ) {
36                  my $component = $components[$componenti];                  my $component = $components[$componenti];
37                  $release{$release}{$component}=$mirrordir."/dists/".$release."/".$component."/binary-".$arch."/Packages";                  $release{$release}{$component}=$mirrordir."/dists/".$release."/".$component."/binary-".$arch."/Packages";
38                    $release{$release}{$component}=$mirrordir."/dists/".$release."/".$component."/binary-".$arch."/Packages.gz" if ! -r $release{$release}{$component};
39                    $release{$release}{$component}=$mirrordir."/dists/".$release."/".$component."/binary-".$arch."/Packages.bz2" if ! -r $release{$release}{$component};
40                  die "Cannot read  $release{$release}{$component}" if  ! -r  $release{$release}{$component};                  die "Cannot read  $release{$release}{$component}" if  ! -r  $release{$release}{$component};
41                  print "Found component '$component' for release '$release' at $release{$release}{$component}\n" if $debug;                  print "Found component '$component' for release '$release' at $release{$release}{$component}\n" if $debug;
42          }          }
# Line 47  $totalnumbers{$prevrelease}=0; Line 49  $totalnumbers{$prevrelease}=0;
49    
50  # For each release read all the files and make a *Big* hash  # For each release read all the files and make a *Big* hash
51    
52  foreach $file ( keys(%{$release{$prevrelease}}) ) {  foreach $component ( keys(%{$release{$prevrelease}}) ) {
53          read_file($prevrelease,$release{$prevrelease}{$file});          read_file($prevrelease,$component,$release{$prevrelease}{$component});
54  }  }
55  foreach $file ( keys(%{$release{$currelease}}) ) {  foreach $component ( keys(%{$release{$currelease}}) ) {
56          read_file($currelease,$release{$currelease}{$file});          read_file($currelease,$component,$release{$currelease}{$component});
57  }  }
58    
59  # Once this is done compare all the packages found and their description  # Once this is done compare all the packages found and their description
# Line 90  print "\n"; Line 92  print "\n";
92  # Final numbers:  # Final numbers:
93  foreach $release ( keys(%totalnumbers) ) {  foreach $release ( keys(%totalnumbers) ) {
94          print "Total packages for ".$release.": ".$totalnumbers{$release}."\n";          print "Total packages for ".$release.": ".$totalnumbers{$release}."\n";
95            foreach $componenti (0 .. $#components ) {
96                    my $component = $components[$componenti];
97                    print "\tPackages in ".$component.": ".$totalcomponent{$release}{$component}."\n";
98            }
99  } # of the foreach  } # of the foreach
100  print "Added packages: $#added\n";  print "Added packages: $#added\n";
101  print "Removed packages: $#removed\n";  print "Removed packages: $#removed\n";
# Line 176  sub retrieve_text { Line 182  sub retrieve_text {
182    
183  sub read_file {  sub read_file {
184  # Read in a Package file and retrieves packages for a given release  # Read in a Package file and retrieves packages for a given release
185          my ($release,$file)=@_;          my ($release,$component,$file)=@_;
186    
187          open (FILE,"$file") || die ("Cannot open $file: $!");          print "Package file is $file\n";
188            if ( $file =~ /.gz$/ ) {
189                open (FILE,"gzip -d -c $file|") || die ("Cannot uncompress gzipped $file: $!");
190            } elsif ( $file =~ /.bz2$/ ) {
191                open (FILE,"bzip2 -d -c $file|") || die ("Cannot uncompress bzipped $file: $!");
192            } else {
193            # Standard, uncompressed file
194                open (FILE,"$file") || die ("Cannot open $file: $!");
195            }
196          print "Reading $file\n" if $debug;          print "Reading $file\n" if $debug;
197  # Finite-state machine  # Finite-state machine
198  # 0 - no package  # 0 - no package
# Line 194  sub read_file { Line 208  sub read_file {
208                          $packages{$release}{$packagename}=$description."{".$version."}";                          $packages{$release}{$packagename}=$description."{".$version."}";
209                          print "Found $packagename: $description ($version)\n" if $debug;                          print "Found $packagename: $description ($version)\n" if $debug;
210                          $totalnumbers{$release}++;                          $totalnumbers{$release}++;
211                            $totalcomponent{$release}{$component}++;
212                          $state=0;                          $state=0;
213                  }                  }
214                  if ( /^$/ && $state > 0  ){                  if ( /^$/ && $state > 0  ){

Legend:
Removed from v.3064  
changed lines
  Added in v.4170

  ViewVC Help
Powered by ViewVC 1.1.5