Release Name: 1.8.1
Notes:
- Whoops! Fixed a bug (thanks tchan!) in argument parsing that was causing
to parsing to break.
Changes:
1.8.1:
- Whoops! Fixed a bug (thanks tchan!) in argument parsing that was causing
to parsing to break.
1.8.0:
- Let you (only TEN FREAKIN\' YEARS LATE) explicitly specify sender and
receivers on the command line.
- Added methods (sub and sub!) to HeaderBag to allow you to alter the contents
of headers
1.7.2:
- Added gem support
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
|