--- jonen/ruby/CVSspam/cvsspam.rb 2003/01/18 23:45:56 1.1 +++ jonen/ruby/CVSspam/cvsspam.rb 2003/01/19 03:57:36 1.14 @@ -3,6 +3,8 @@ # collect_diffs.rb expects to find this script in the same directory as it # + + # TODO: exemplify syntax for 'cvs admin -m' when log message is missing # TODO: make max-line limit on diff output configurable # TODO: put max size limit on whole email @@ -744,14 +746,20 @@ if $subjectPrefix == nil $subjectPrefix = "[CVS #{Repository.array.join(',')}]" end - $fileEntries.each do |file| - unless file.repository == last_repository - last_repository = file.repository - file = #{htmlEncode(last_repository.common_prefix)} - all_files = all_files + " " + file - end + +# HACK: put all file names at mail subject +all_files = "" +$fileEntries.each do |file| + name = htmlEncode(file.name_after_common_prefix) + if all_files != "" + all_files = all_files + ";" + name + else + all_files = name end -mailSubject = "#{$subjectPrefix} file #{$mailSubject}" +end +all_files = all_files + ":" + +mailSubject = "#{$subjectPrefix} #{all_files} #{$mailSubject}" if mailSubject.length > $maxSubjectLength mailSubject = mailSubject[0, $maxSubjectLength] end @@ -851,6 +859,11 @@ end lastPath = thisPath end + if all_files == nil + all_files = name + else + all_files = all_files + " " + name + end if file.addition? name = "#{name}" elsif file.removal? @@ -892,8 +905,9 @@ mail.print("#{viewcvsFile(file.path,file.fromVer)} #{viewcvsDiff(file)} #{viewcvsFile(file.path,file.toVer)}") end - mail.puts("") + mail.puts("") end + if $fileEntries.size>1 # give total number of lines added/removed accross all files mail.print(" ") @@ -961,3 +975,4 @@ mail.puts("") end +