Index: applications/editors/josm/i18n/launchpad.pl
===================================================================
--- applications/editors/josm/i18n/launchpad.pl	(revision 30228)
+++ applications/editors/josm/i18n/launchpad.pl	(revision 30229)
@@ -373,5 +373,5 @@
     {
       my ($code, $inactive, $name) = ($1, $2, $3);
-      if(exists($results{$code}{$lang}))
+      if(exists($results{$code}{$lang}{count}) && exists($results{$code}{$lang}{time}) && time()-$results{$code}{$lang}{time} < 5*24*60*60)
       {
         printf "%-5s - %-30s - Found - %s\n", $lang,$code,$name;
@@ -385,7 +385,26 @@
       if($count && $mech->status == 200)
       {
+        my $t = time();
+        my $old = "";
+        if(exists($results{$code}{$lang}{count}))
+        {
+          if($results{$code}{$lang}{count} != $count)
+          {
+            $old .= sprintf " %d %s",abs($count-$results{$code}{$lang}{count}),$count-$results{$code}{$lang}{count} > 0 ? "more" : "less";
+          }
+          else
+          {
+            $old .= " unchanged";
+          }
+        }
+        if(exists($results{$code}{$lang}{time}))
+        {
+          $old .= sprintf " %.2f days later",($t-$results{$code}{$lang}{time})/86400.0;
+        }
         $results{$code}{NAME} = $name;
-        $results{$code}{$lang} = $count;
-        $results{$code}{TOTAL} += $count;
+        $results{$code}{TOTAL} += $count-($results{$code}{$lang}{count}||0);
+        $results{$code}{$lang}{count} = $count;
+        $results{$code}{$lang}{time} = $t;
+        $results{$code}{$lang}{$t} = $count;
         if(open DFILE,">:utf8","launchpadtrans.data")
         {
@@ -393,6 +412,12 @@
           close DFILE;
         }
-        printf "%-5s - %-30s - %5d - %s\n", $lang,$code,$count,$name;
-        
+        if($old)
+        {
+          printf "%-5s - %-30s - %5d - %-70s%s\n", $lang,$code,$count,$name,$old;
+        }
+        else
+        {
+          printf "%-5s - %-30s - %5d - %s\n", $lang,$code,$count,$name;
+        }
       }
       else
@@ -409,6 +434,7 @@
     {
       next if $lang eq "NAME" or $lang eq "TOTAL";
-      print FILE ";$lang=$results{$code}{$lang}";
-      printf " - %-5s=%5d",$lang, $results{$code}{$lang};
+      next if !exists($results{$code}{$lang}{time}) || time()-$results{$code}{$lang}{time} > 6*24*60*60;
+      print FILE ";$lang=$results{$code}{$lang}{count}";
+      printf " - %-5s=%5d",$lang, $results{$code}{$lang}{count};
     }
     print FILE "\n";
