5 s/.pl$// in plugins and chmod 644 plugins/* since they don't really
6 make sense separately from htag.
7 Created TROUBLESHOOTING file.
8 Move all the files around a bit to get the docs out from under the
9 rest and to show that there are some. Move other docs out of
10 subdirectories and into the docs/ dir. Move the sample config stuff
14 Change version number in HtagPlugin.pm to one that perl can check
15 automagically and add a version to my use HtagPlugin line.
18 Fixed up the cases where either the configfile has an error (always
19 set $override{'nicedie'}) or the plugins do htagdie.
20 htagdie has now disappeared in favour of nicedie so I've bumped the
21 versioning in HtagPlugin.pm and nicedie has moved to HtagPlugin.pm
24 Changed s/|$// to s/\|$// in sample.htrc Doh!
27 Yes, I should definitely have released 0.0.18 by now. Ho hum.
29 Added check of patterns used in changeheaders so if someone puts one
30 that would kill us in we tell them nicely.
32 Rolled tarball - probably won't be uploaded til 2nd May.
35 Oops, shouldn't I have released 0.0.18 by now?
37 Checked status of 0.0.18 and cleaned it up a little. Made multiple
38 config file docs reflect the changes.
40 Note that changes to the multiple config stuff mean that there is no
41 more default directory for these scripts and the full path must be
42 given. Also if you relied on the blank filename implied just $1
43 before you'll need to use $1 now although this probably means you
44 need to add the path beforehand too.
46 Setting $cfg{'tagline_comment_char'} to for instance '#' makes
47 simple.pl ignore lines that start with that character.
49 Improve error reporting from eval'd scripts some more.
51 Support for multiple tagfiles using the tagfiles variable means
52 (with the much saner multiple config support) that it's a lot easier
53 to pick tagline files per recipient. I might even have to start
54 using the multiconfig stuff now :)
56 Support for fortune(1) as wanted by "The Big Nose" and Lim Swee Tat.
57 It does have a probability value (adjust so that you get the right
58 mix of fortunes and taglines) and an arguments parameter so you can
59 point it at your own fortune files. It doesn't do anything clever
60 with reformatting them and they don't fit easily in small sigs. It
61 also doesn't parse the .dat files it just runs fortune(1) which is
62 fairly icky really but hey.
65 Feedback (oh my God other people use this? :)) led to a few changes:
66 Change the cfgfile interface stuff so we eval just one file (~/.htrc
67 or the file specified on the commandline with -c) then eval another
68 that changes this default file in the changeheader stuff.
70 Remove all the paranoia checks about symlinks for multiple config
71 cases because they didn't really help and just caused config
75 Check for UID/GID 0 before running.
78 Put 01changeconf.pl into htag.pl instead. Tried to think about the
79 idea of having dependencies instead of just a plugin dir or indeed a
80 plugin list instead but gave up simply because I can't be arsed. I
81 want to run all the plugins. This is the idea. Anyway,
82 patches/ideas accepted.
85 Fixed a strange bug due to a regexp in merge that meant that @B in a
86 tagline wasn't expanding correctly sometimes.
89 Fixed some of the eval code so it reports fatal errors.
91 Made merge.pl remove spaces if there were only spaces between it and
92 the end of the line. Retrigger the "-- " => "--" bug by using a
93 quick fix and gave in and used a negative look behind assertion in
94 my regexp. Requires perl 5.005 or higher I think.
97 Upgraded to perl 5.6.0 and um didn't realise and ran htag.pl
98 It seems to work with 5.6.0 :)
101 Moved substtag.pl so it was called *after* the tag had been chosen.
102 Oops. I should have more tags with substable bits in, yes.
105 Fixed merge so that it works if a sig doesn't have any tagline bits.
106 And so that multiple elements of the same plugin will work (e.g.
107 having two separate @Uxx@ lines works now).
109 Fixed Multiple Config stuff to work with more than one header
112 Wrote README.Multiple_Config (referenced below but not written til
115 Moved 05* to 14* so that in the case where the tag doesn't fit and
116 we have to go back we only go back one.
118 08/10/2000 - 0.0.16-pre-going-to-release-soon-honest (Eurostar :))
119 Implemented a "read and eval" parser for the plugins if they are in
120 perl. This may well break things. Let me know if it does.
122 Moved plugin_util to HtagPlugin. (tab completion works better now
123 so I'm less annoyed so I'll be more productive. Or summat :))
125 24/09/2000 - 0.0.16-pre
126 Changed htag.pl and all plugins not to call srand because since perl
127 5.004 this is done automatically and uses a better random seed than
130 Added documentation (in INSTALL) about how to create your local perl
131 module dir and get all the plugins to use it.
133 Created plugins/01changeconf (thus moved 01catsig to 02catsig).
134 It allows multiple configs based on headers finally!
135 See README.Multiple_Config
138 Changed HtagPlugin to only require three arguments (Message file,
139 Cfg file and VERSION) which all need to come from htag.pl
141 Created plugin_util/HISTORY.
143 Changed protocol of HtagPlugin to 0.0.2
145 Made new plugin system so that other plugins can substitute in
146 easily. See marknlard.pl for an example.
148 Added some new plugins (sesame, date, uptime) using this system.
151 Changed HtagPlugin to return 254 when htagdie is called.
152 Made htag.pl ask for keypress if exited with 254 but NOT if exited
153 with 255 (i.e. user requested exit).
155 Improved behaviour when command line options failed. Now we set
156 $cfg{'nicedie'} from the beginning and nicedie everywhere then read
157 in the config files which may turn it off.
159 Added the "Mark 'n Lard" plugin.
161 Added protocol version number and checking for same.
164 Changed HtagPlugin to cope with "Lastname, Firstname"
167 Fixed the subst* plugins to use the To: address not the From:
170 Put more common code into the HtagPlugin module.
173 Early in the morning.
174 Released the new one properly.
176 Converted to an init style plugins-invoked-in-order-of-number type
177 thing to allow more flexibility.
180 Allowed plugins to return the number to go back to...
182 Infinite loops are protected against.
184 exiting with 255 means quit htag.pl
187 Made it like init. (Runs plugins in numerical order randomly picks
188 ones with same order).
191 Backends for - choosing tags.
197 Fixed length "feature" of 0.0.3
198 Will now only use tags that fit the sigs' @[0-9]+@ bits.
201 Released to the unsuspecting world...
204 Realised that in 23 lines (of perl) you can actually do what
205 huggietag 0.0.1 did in 39 (of C) and that implementing this
206 shouldn't be *too* tricky.
208 3 hours to an almost working one. Scary.
211 Switched to linux didn't find a good tagline program so tried to
212 write one in C. Got quite far with it but decided C isn't a good
213 language for string handling.