Files | Admin

Notes:

Release Name: 1.7.2

Notes:
This release just adds a gem.


Changes: 1.7.2: - Added gem 1.7.1: - Fixed Yet Another Header Parsing Bug[tm] 1.7.0: - Changed it so that when you say "folderstyle Maildir", it changes the default mail spool dir and mail spool file to $HOME and $HOME/Maildir respectively. - Changed the way that config params work. Now instead of having to say: self.sendmail = "/usr/sbin/sendmail" you can say: sendmail "/usr/sbin/sendmail" Sort of in the style of attr_reader and attr_writer, or in the style of some other programs' config files. - Added -f option to select rules files from the command-line 1.6.3: - Restored Gurgitate::Gurgitate#process() with a block, which seemed to have disappeared with the config file commotion. - Added mention of the systemwide configuration files to the manual. Which, by the way, could still use something of an overhaul. Way too much stuff is still SEKRIT. 1.6.2: - Fixed a bug introduced in the last code reorg, whereby it would forget to default to saving mail to the spool 1.6.1: - Fixed a bug introduced in the last code reorg, whereby it would forget to default to saving mail to the spool - Fixed file permissions in the tarball - Fixed a really stupid bug with Maildir folder creation where it made invalid mail directories. 1.6.0: - Added site-wide gurgitate-rules-file capability. - Made it so that headers that start with a number pass through without breaking stuff, which is a shame, because those are quite illegal as far as I know. - Also, headers with a . in the *header* name should pass though. - ALSO, headers with a leading - in the header name, likewise. - Fixed a (very minor) maildir-writing bug involving a misnamed variable, which might trigger were gurgitate to be used as an LMTP process or a Sendmail milter. 1.5.3: - Fixed a problem caused by me not touching filter in way too long: there were namespace and parameter problems. 1.5.2: - Made it not blow up when it encounters a header of the form "To:\n emailaddress@example.com" (as seen in email messages from the obscure Japanese email client Becky) 1.5.1: - Made it use Postfix's heuristic for determining whether a nonexistent mailbox is a mail spool or a Maildir by looking for a slash on the end of the mailbox's name. - Added code from Bertram Scharpf to make error-in-rules handling a little more graceful 1.5: - Made it not throw an exception on (illegal, mind) headers with underscores in their names. - Added a thing to the "filter" method so that you can say something like filter("spamc") do if headers["X-Spam"] =~ "Yes" then delete end end if you want to. - Also added the ability to put folderstyle = Maildir into your .gurgitate-rules.rb to tell it that if it doesn't find a mailbox, it should create a Maildir mailbox rather than its usual default (mbox). 1.4.1: I said I'd given up on minor changes? I lied. - Had it assume that if a file isn't present, that it's a MBox mailbox, and create it. - Changed the constructor for Gurgitate to take all login information from the effective UID instead of trusting the real UID and the EUID to be the same. 1.4: I seem to have given up on minor changes. More big stuff. - Changed the API! (WARNING WARNING WARNING) Now Message#to_s returns the email message without the "From " line. You get that with Message#to_mbox - Broke the code into lots of little pieces instead of the one great big file. I hope this makes it slightly easier for people to understand--it certainly made it easier for me - Added maildir delivery! Plus a sort of mechanism for delivering to various kinds of mailboxes. 1.3: Some pretty big things here (in my opinion), so I figured it was worth making it a 1.3 release instead of 1.2.2. - Added the ability to say headers["From", "Subject", "Cc"] =~ /hi there/ in your .gurgitate-rules, and have it do the right thing. - Added "to" so you can now say if to =~ /mailing-list/ then ...;end instead of the cumbersome if headers.matches(["To","Cc"],/mailing-list/) then ...; end syntax which I just plain ol' hated. - Made it possible to change the contents of headers. - Made the man page not claim to be user-contributed Perl documentation :-) - Made it deal correctly with headers that have tabs between the colon and the data, instead of spaces (bug #154). 1.2.1: - Made it NOT BLOW UP when you give it an email with a header that has no contents. (Aren't those supposed to be illegal? Regardless, I have to deal with whatever turns up, be it kosher or no) - Made its installer also politely install a man page 1.2: - Fixed some header handling which was kind of, er, broken. Specifically, I'd get an exception on a header which looked like: Subject: Hi there The only kind of email that I've ever seen this kind of header on has been spam, but nonetheless, it's hardly fair for a mail filter to blow up just because it's given crappy input. - Made the comments more rdoc-friendly. Fixed the handling of multi-line headers--it was getting it RONG RONG RONG (but I've probably implemented this RONG RONG RONG too). - Made it so that as well as saying g=Gurgitate::Gurgitate.new(filehandle) if g.head =~ /evil@bad.com/ then delete end you can also say Gurgitate::Gurgitate.new(filehandle) do if head =~ /evil@bad.com/ then delete end end Which gives you another place to put your .gurgitate-rules. - Made install.rb work as both a script as a library, because I switched to using rake to build things, rather than make. - Made it canonicalize headers to a standard capitalization, because some SMTP client (*cough*virus*cough*) is incorrectly sending out all-uppercase headers. 1.1.3: - Put the whole thing into a big module, and added some extra comments to make it more rdoc-friendly. You shouldn't need to change your .gurgitate-rules.rb if you use it like that, but if you use it as a module, you'll need to prefix 'Gurgitate::' to your Gurgitate object construction. 1.1.2: maintenance release - Changed gurgitate-mail so that it compiles cleanly under Ruby 1.8, and made it work with no warnings. 1.1.1: maintenance release - Fixed the regexes for my own email addresses--they had backslashes in strange place, causing people to ask odd questions. Fixed a typo (thanks to Tom Wadlow)--I was using an undefined local variable "sendmail" instead of a class variable "@sendmail". 1.1: - Implemented Pavel Kolar's suggestion that if you filter email through an external program, you might want the results of that, instead of just a return code. - Added a default value to the Gurgitate initializer parameter. - Added an "install.rb" script to install the script and library files into their proper locations. - Pulled the "Gurgitate" class and friends out into a separate file, and made "gurgitate-mail" into a tiny script which does a "require" to pull the gurgitate-mail stuff in. This should make it easier to extend in the future. - Added this file to the distribution. :-) 1.0.1: maintenance release - Small code cleanup--changed some accessors to use attr_*. 1.0: - Initial release of gurgitate-mail