source: ChangeLog @ 38a5cc1

barnowl_perlaimdebianrelease-1.4release-1.5release-1.6release-1.7release-1.8release-1.9
Last change on this file since 38a5cc1 was 6af4068, checked in by Alejandro R. Sedeño <asedeno@mit.edu>, 13 years ago
Oh, and update the ChangeLog.
  • Property mode set to 100644
File size: 63.6 KB
Line 
1$Id$
2
31.0.0
4 * Don't fail silently when sourcing a file; actually let the user know. - asedeno
5 * Only hang for 1s, rather than 10s, if there is no zhm - nelhage
6 * Merge the unicode branch to trunk. BarnOwl is now unicode aware
7   and can send, receive, input and display UTF-8 encoded
8   messages. Unicode changelog:
9   * Put glib's CFLAGS and LDFLAGS at the beginning of the corresponding
10     variables. - nelhage
11   * Unicode branch: Fix building without zephyr. - asedeno
12   * Fix a unicode branch wordwrap problem. - asedeno
13   * Fixing an obscure wrapping bug that nelhage and I tracked down. - asedeno
14   * Rename configure.in to configure.ac so Debian autoconf DTRT. - nelhage
15   *  Fix a bug in owl_editwin_move_to_previousword() which would skip over
16       single letter words. - asedeno
17   * I think I like this better. - asedeno
18   * Fix nelhage's key_left bug. Don't spin at the locktext boundary. - asedeno
19   * fix a typo in OWL_FMTEXT_UTF8_BGDEFAULT
20   * fix a parsing issue for attributes - asedeno
21   * Better compliance with UTF-8 processing. Stop trying
22     to pull in a UTF-8 character as soon as we know something has gone
23     wrong. - asedeno
24   * Removing more hackery I left behind after doing things
25     the right way. - asedeno
26   * editwin.c - fix a wrapping bug I introduced in the
27     last revision. It could leave us with a buffer that was not valid UTF-
28     8 - asedeno
29   * editwin.c - lots of utf-8 cleanup that I had been
30     putting off. util.c - a can we break here'' function based on perl's
31     Text::WrapI18N - asedeno
32   * Remove more bad hacks. - asedeno
33   * Remove a debug message I accidentally left in. Remove
34     the hours old check_utf8 hackery in favor of actually marking strings as
35     UTF-8 from the C side. - asedeno
36   * editwin.c: make locktext deal with UTF-8
37   * Jabber - More utf-8 sanitizing.
38   * Pet peeve - tabs. That should be the end of it for
39     now. - asedeno
40   * Shuffling a line of code to where it actually should
41     be. - asedeno
42   * Patches to jabber libraries for better UTF-8
43     handling. - asedeno
44   * fix a typo that was causing background problems
45   * pass defaults attributes through in the truncate functions - asedeno
46   * Eliminating a warning by un-internalizing a new fmtext
47     function. - asedeno
48   * Do not use bit 0x80 to indicate meta. We have other uses for that bit.
49   * shift it above ncurses's KEY_MAX instead. - asedeno
50   * drop unused struct member
51   * fixing post-processing in the editwin. - asedeno
52   * Preserve colors when highlighting search terms. - asedeno
53   * ignore KEY_RESIZE if we know what that is. We don't need an
54     unhandled keypress every time we resize the terminal. - asedeno
55   * more strict utf-8 byte fetching.
56     This probably still needs more work. - asedeno
57   * Strip formmating characters when dumping to
58     file. - asedeno
59   * fixing bugs in editwin bufflen calculations. - asedeno
60   * Fix search code so higlighting actually works. - asedeno
61   * Remove options for libcurses and libncurses. This really only works with
62     libncursesw. - asedeno
63   * text entry:
64    first pass at utf-8 text entry.
65   * Change wcwidth() calls to mk_wcwidth() - asedeno
66   * First pass at outbound zephyr -> iso-8859-1 sanitizing.
67     Not that we can input anything other than ascii yet...
68   * Fixing bug encountered when last field was not null-
69     terminated. - asedeno
70   * First pass at incoming zephyr -> UTF-8 sanitizing.
71     This only operates on incoming data so far. We still need to clean outgoing
72     data -- the plan is to attempt conversion to ISO-8859-1, and use that if it
73     works. - asedeno
74   * Reworked the fmtext format to use in-line formatting.  Characters used
75     for formatting are part of Unicode Supplemental Private Area-B, or
76     Plane 16.
77   * include wchar.h
78   * replace hand-rolled width detection with wcswidth.
79   * pad with space if we end up halfway into a character at the start of a line.
80   * UTF-8 - first pass
81   * make owl_text_truncate_cols() and owl_fmtext_truncate_cols() understand character width.
82     This may need more work. Some code duplication - see if we can refactor.
83   * stristr() rewritten to yse g_utf_casefold() instead of downstr(), and restructured to have a single return.
84   * only_whitespace() rewritten for unicode.
85 * Fix sending jabbers to JIDs beginning with `+' - nelhage
86 * Compile zcrypt.c with -w so I don't get all these warnings in my compile
87   output whenever I change any headers - nelhage
88 * Implement /me for outgoing IRC messages - geofft
89 * Add a makefile rule to support emacs flymake-mode - nelhage
90 * Bind the combinations the iPhone sends for arrow keys [probably other
91   terminals, too] - nelhage
92 * avoid null pointer dereference if msg is NULL (or a 0 length is
93   claimed) - shadow
94 * Move styles from the current mishmash of different options to a unified
95   perl object interface. - nelhage
96 * Refactor default style code somewhat to be more easily extensible - nelhage
97 * Put glib's CFLAGS and LDFLAGS at the beginning of the corresponding
98   variables. - nelhage
99 * IRC: /list, /who, and /stats commands - geofft
100 * IRC: Make M-N mostly, rather than completely, useless. - geofft
101 * Fix two small bugs in styling pointed out by broder - nelhage
102 * Document create_style - nelhage
103 * Move time_hhmm into a format_time method - nelhage
104 * Remove prototypes from perlwrap.pm - nelhage
105 * Quote regexp filter elements with spaces in them. - asedeno
106 * Deal with smart-narrowing when the user's screenname has spaces in it. - asedeno
107 * Add a new struct member to the global to hold an escaped aim screenname.
108    populate the aforementioned new struct member. - asedeno
109 * Removed our debian subdirectory, per Debian guidelines, at broder's
110   request. - geofft
111 * Make `all' the first target so we build the modules by default - nelhage
112 * Commit inc/ under IRC so we build on systems with too old a M::I - nelhage
113 * updating contributors - nelhage
114 * Clean up licensing information and add a COPYING file - nelhage
115 * Update bugs email to a more professional looking address, and remove the
116   Development build warning. - nelhage
117
118BarnOwl r989 (2008-03-21)
119 * Stick modules on the beginning of @INC, not the end - nelhage
120 * Merge in the select branch. BarnOwl's main loop now uses a select()
121   based event loop rather than continually polling, and uses much less
122   CPU. - asedeno
123 * Fix a bug where an explicit (local) realm foiled
124   owl_message_get_cc_without_recipient(). (per quentin) - geofft
125 * HTML Filtering fix for BODY tag - austein
126 * Add parenthesis to fix a perl error in IRC - nelhage
127 * Make IRC admin messages actually display their content - nelhage
128 * Fix a file descriptor leak. - asedeno
129 * Fix loading PAR modules that weren't present at startup - nelhage
130 * Update perlwrap.pm documentation for the select() BarnOwl - nelhage
131 * Render IRC notices as normal messages - nelhage
132 * ensure that even if ioctl(,TIOCGWINSZ,) returns 0s we never set g->lines
133   (and g->cols) to 0 - shadow
134 * Generate less ugly error spew if a module fails to load - nelhage
135 * Added :webzephyr command with keybinding W. - geofft
136 * Fix a race condition in which zephyrs received during init are not noticed
137   until the next zephyr after entering the mainloop. - asedeno
138
139BarnOwl r941 (2008-02-18)
140 * unicode/glib branch Remove a debug message I accidentally left in. Remove
141   the hours old check_utf8 hackery in favor of actually marking strings as
142   UTF-8 from the C side. - asedeno
143 * unicode/glib branch Remove more bad hacks. - asedeno
144 * Rewrite ::Connection to not subclass Net::IRC::Connection to avoid stupid
145   namespace conflicts - nelhage
146 * svn:ignore for great justice - nelhage
147 * Attempt to load BarnOwl::MessageList::SQL and error if it fails. Note that
148   the aforementioned class n'existe pas - nelhage
149 * unicode/glib branch editwin.c - lots of utf-8 cleanup that I had been
150   putting off. util.c - a can we break here'' function based on perl's
151   Text::WrapI18N - asedeno
152 * unicode/glib branch editwin.c - fix a wrapping bug I introduced in the
153   last revision. It could leave us with a buffer that was not valid UTF-
154   8 - asedeno
155 * dropping one unnecessary time(NULL) call. - asedeno
156 * unicode/glib branch removing more hackery I left behind after doing things
157   the right way. - asedeno
158 * unicode/glib branch better compliance with UTF-8 processing. Stop trying
159   to pull in a UTF-8 character as soon as we know something has gone
160   wrong. - asedeno
161*        First prototype of a SQL-backed message list. This is probably
162        horribly broken, and is painfully slow at the moment. - nelhage
163 * minor changes to IRC
164 * Resizing should not leave the current message off screen. - asedeno
165 * Added initial IRC support. Not built or installed by default. - geofft
166 * Preserve colors when highlighting search terms. - asedeno
167 * Handle zephyrs to users on non -c message better [trac #39] - nelhage
168 * Make :reload-modules work correctly with PARs - nelhage
169 * Document (nearly) every public function in the BarnOwl:: namespace -
170   nelhage
171 * strip IRC coloring from IRC messages - nelhage
172 * Document ::Hook and ::Hooks - nelhage
173 * Nuke the stylefunc_default C code - nelhage
174 * Nuke some refs to owl_message_get_notice - nelhage
175 * Clearing the line should preserve the echochar. - asedeno
176 * Fix logins to jabber.org - reported by gendalia - asedeno
177 * Move oneline style to perl. [trac #43] - nelhage
178 * Fix the error messages sending to users who don't exist or aren't signed
179   on. - nelhage
180 * Jabber Buddy Lists:
181  * Query the jabber:show_offline_buddies once when invoking onGetBuddyList()
182  * Don't bold online roster entries when hiding offline ones - asedeno
183 * Portability - removing C++ style comments. - asedeno
184 * Add the variable 'zsender' to customize the outgoing Zephyr
185   username. - geofft
186 * Bind M-left and M-right by default in the editor - nelhage
187 * eliminate a segfault. - asedeno
188
189BarnOwl r796 (2008-01-08)
190 * Define variables at the top of blocks for better ANSI C-ness (patch by
191   Chris Laas) [trac #18] - nelhage
192 * Implement :punt and :unpunt to punt arbitrary filters, rather than just z-
193   triplets. [trac #6] - nelhage
194 * Show non-personal pings like stock owl does. [trac #12] - nelhage
195 * Fix problems with jabber servers keeping the same stream id when
196   negotiating TLS tracked down by Greg Hudson. - asedeno
197 * When we're narrowing to an instance, properly include un-instances. This
198   fixes narrowing to any instance that starts with ``un-'' - nelhage
199 * Don't read before the start of the string for an instance - nelhage
200 * Adding an explicit -f - to the tar commands for FreeBSD compatibility
201   (reported by ecprice) - nelhage
202 * Some fixes for FreeBSD. - ecprice
203 * Do ~-expansion in :loadsubs. [trac #26] - nelhage
204 * Validate JIDs passed to jmuc join. [trac #25] - nelhage
205 * Show full JIDs for users in non-anonymous JIDs in :jmuc presence. [trac
206   #24] - nelhage
207 * Don't crash if we hit `i' on a zephyr containing non-ASCII iso-8859-
208   *. - nelhage
209 * added -m flag to aimwrite - matt
210 * aimwrite -m displays according to displayoutgoing - austein
211 * Make the usleep call more reasonable for less CPU usage - asedeno
212 * Add zip as build-depends - nelhage
213 * bind END in popless windows. [trac #41] - nelhage
214 * Allow C-r on outgoing messages (useful for CCs) - chmrr
215 * Identify ourselves as barnowl more consistently - chmrr
216 * Report subscription errors more accurately. - chmrr
217
218BarnOwl r751 (2007-08-01)
219 * Refactored message processing: All new messages, incoming or outgoing, get
220   added to the owl_global_messagequeue by protocol code, and then passed to
221   owl_proces_message, which serves as a single central code path for adding
222   messages to the message list. - nelhage
223 * Properly pass the usage when defining the jabberlogin command - nelhage
224 * Outgoing messages now log as much information as incoming messages - chmrr
225 * Fix a pointer corruption issue if we redefine the current style. - nelhage
226 * Adding 3 variables for the Jabber module: jabber:show_offline_buddies,
227   jabber:auto_away_timeout, jabber:auto_xa_timeout - asedeno
228 * Don't include self when replying to CC'd messages - chmrr
229 * Outgoing CC'd messages get logged to all recipients - chmrr
230 * Incoming CC'd zephyrs logged to all people they were sent to - chmrr
231 * Change the width at which we hard-wrap outgoing zephyrs by default so
232   that zephyrs will fit on screen with the default style. (suggested by
233   andersk) - nelhage
234 * Added a -s switch to change the location of the config dir (~/.owl) -
235   nelhage
236 * Don't allow you to go off the end of an empty message list. [trac
237   #9] - nelhage
238 * Allow you to send to -c message -i personal * - nelhage
239 * Make zephyr smartnarrow use the `personal' and `private' distinction
240   properly [trac #2] - nelhage
241 * Change the default personal filter to <message,personal,*> for
242   zephyr. - nelhage
243 * Display opcodes with the default style - nelhage
244
245BarnOwl r720 (2007-05-29)
246 * Correctly define a ``private'' zephyr as one that is sent to a
247    recipient that is neither empty nor starts with ``@'' - nelhage
248 * Fix builds under make -j - nelhage
249 * Fix sending of zcrypted zephyrs - nelhage
250 * Rewrite perl internals to factor out module loading. - nelhage
251 * Fix display of zephyrs with empty instances - nelhage
252 * Implemented a Module::Install plugin for building barnowl plugins - nelhage
253 * Modified the makefile to build and install perl modules - nelhage
254 * Fix the bug in which rejoining a MUC you're already in (nick change)
255   results in the MUC appearing multiple times when you show presence info for
256   all MUCs. - asedeno
257 * Implemented loading of both PAR and unpacked modules, and module
258   reloading. - nelhage
259 * Make the Makefile build and install perl modules on a clean install.
260   - nelhage
261 * Implemented an LRU cache of the message list fmtexts. This reduces
262   memory usage by roughly 1MB/kilo-zephyrs in steady state. - nelhage
263 * Escape $ in regexes (e.g. smartnarrowed instances)
264  - nelhage
265 * Adding 256-color support. This requires a version of ncurses that supports
266   ABI-6. Colors beyond the first eight are refered to by number. - asedeno
267 * Correctly escape {} and () in regular expressions - nelhage
268 * When generating filters, change single quotes and double quotes into
269   dots, so they line parser doesn't choke on them. This fixes problems
270   smart-narrowing to instances such as "this'll break it". - asedeno
271 * Improving the private/personal distinction:
272 * ``private'' means to/or from an individual, not a chat/class/etc.
273 * ``personal'' means ``matches the personal filter'' - nelhage
274 * Beep on personal messages, not private, by default.
275  - nelhage
276 * Some small doc fixes (thanks to jwalden for pointing them out). - nelhage
277 * Added the ability to define new variables from perl. - nelhage
278 * Documented said ability via BarnOwl::new_variable_* - nelhage
279 * Add a "setsearch" command which sets the search highlight string without
280   moving the cursor. - glasser
281
282BarnOwl r657 (2007-03-06)
283 * Fix libfaim to make it compile - nelhage
284 * Apply some memory leak patches by alexmv and yoz - nelhage
285 * Make smartnarrow un- and .d-aware - chmrr
286 * Add a `getstyle' command - asedeno
287 * Make Test failures print file/line numbers - nelhage
288 * Fixed regression tests for booleans variables. - asedeno
289 * Add a perl perl hook into owl's main loop. - asedeno
290 * Added the ability to install real commands from perl code - nelhage
291 * Fix a hang in owl_editwin_move_to_previousword - nelhage
292 * Updated the version number and startup message - nelhage
293 * Added initial support for creating and injecting messages into the display
294   from perl. - nelhage
295 * Added the ability for perl code to hang arbitrary reply commands off of
296   messages. - nelhage
297 * Expose the edit window hooks to perl - nelhage
298 * Removed references to -ldes - kchen
299 * Exposed owl_function_error and owl_function_makemsg as commands - nelhage
300 * Implemented initial Jabber support. - asedeno
301 * Implemented initial Jabber groupchat support. - asedeno
302 * Added a perl hook to the buddy list display - nelhage
303 * Added a get_data_dir function to the perl interface - hartmans
304 * Don't include the default typemap in xsubpp compile line - hartmans
305 * Cause perl to always be loaded, even if no owlconf is present. - hartmans
306 * Implemented an extensible perl module system - hartmans
307 * Exposed owl_fuction_popless_text() and owl_fuction_popless_ztext() to
308   perl - asedeno
309 * Support multiple simaltaneous Jabber connections - asedeno
310 * Fixed a segfault on subbing without a .zephyr.subs file - nelhage
311 * Implemented Jabber Roster support - asedeno
312 * Don't quit if we can't contact the hostmaster. - nelhage
313 * Support filters based on arbitrary message attributes - nelhage
314 * Rewrote and massively cleaned up the filter system internals. - nelhage
315 * Fixed the ``personal'' filter to work better with all protocols - nelhage
316 * Made `smartnarrow' more generic, and implemented it for jabber. - nelhage
317 * Changed executable name to "barnowl" - nelhage
318 * Renamed the `owl::' package to BarnOwl:: - nelhage
319 * Dynamically link perl libraries - nelhage
320 * Added background color support - asedeno
321 * Added idle-time tracking, and updated jabber to automatically set away
322   status - asedeno
323 * Implemented shortnames for jabber rosters and jwriting. - nelhage
324 * Fixed a crash when smartnarrowing to instances with lots of periods or
325   other regular expression metacharacters. - nelhage
326 * Support comments in ~/.owl/startup - asedeno
327 * Dispal tweaks for MIT's -c discuss messages. - asedeno
328 * Don't override perl's idea of the switches we need to do embedding. -
329   shadow
330 * Make the default style perl, rather than C. - nelhage
331 * Refactor the default style to be protocol generic - nelhage
332 * Prefer ~/.barnowlconf to .owlconf, if it exists. - nelhage
333 * Intern hostnames and message attribute keys for a slight memory
334   saving. - nelhage
335 * Use libncursesw when available - asedeno
336
3372.1.12pre
338        Don't crash when sending/logging outgoing
339           AIM message and not logged in [BZ 90]
340        Don't crash when senging to someone not on AIM buddy list [BZ 94]
341           (patch from Alex Vandiver)
342       
3432.1.11
344        Don't crash doing zlocate with bad tickets. [BZ 12]
345        Metion the path for the owlconf in intro.txt [BZ 54]
346        Print better error message if startup fails due to unreadable
347           .owlconf [BZ 57]
348        In load-subs: Print an error message if the file is unreadable or
349          doesn't exist, UNLESS load-subs is called with no arguments.  In
350          that case only print an error if the file exists but isn't
351          readable.  Still prints an error either way if zephyr reports a
352          failure. [BZ 19]
353        Fixed some small memory leaks in logging if files unwriteable
354        If the variable logfilter is set it names a filter.  Any messages
355          matching this filter are logged.  This is an independent
356          mechanism from the other logging variables.  If you want to
357          control all logging with logfilter the other variables must be
358          set to their default (off) settings. [BZ 37]
359        Relatively substantial changes made under the hood to support
360          filter logging.  Now have more consistent interfaces to
361          creating messages etc.  Still needs more work though.
362        Deal gracefully with being resized as small as 1x1 [BZ 3]
363
3642.1.10
365        Fix a new problem finding libdes425
366        Don't crash on very long hostnames [BZ 52]
367        In 'sub' command, create .zephyr.subs if it doesn't exist [BZ 15]
368        A fix for certain resize crashes (partly from alexmv) [BZ 55]
369        Turn off ISTRIP (gildea)
370       
3712.1.9
372        Include /usr/include/kerberosIV if it's found
373       
3742.1.8
375        Do OLC formatting for anything coming from olc.matisse
376        Improvements to popup size algorithm (from gildea)
377        Improved 'show colors' with non-colored labels
378       
3792.1.7
380        The colorclass command is added, to make colorization easy
381        Handle MIT Athena OLC zephyrs correctly
382        Updated ktools website / bug address
383        Do ntohs() when printing zephyr port in zephyr info
384        Updated man page
385       
3862.1.6
387        Fixed three bugs found by Valgrind.
388        Fixed a case where doing "aim addbuddy" instead of "addbuddy aim"
389          would cause a segfault.
390        pexec will now incrimentally display data as it is output
391          by the child process.  Additionally, commands running under
392          pexec may now be killed by quitting out of the popless window.
393        Added muxevents select loop dispatcher.  File descriptors may
394          be registered with muxevents and handlers will be dispatched
395          to when data is available for non-blocking read/write/except.
396        Switched the stderr_redir stuff to use muxevents.
397        Print C-\ correctly (from gildea)
398        Dropped first brace in muxevents functions for consistency
399        Catch SIGHUP and SIGTERM and do a proper logout
400       
4012.1.5
402        Added a licence
403        The 'personalbell' variable can now be set to 'on' 'off' or
404          the name of a filter to match against
405        The 'loglogins' variable now controls whether login/logout
406          messages are logged.  It is off by default.  For now this
407          affects only AIM messages, later zephyr login/logout messages
408          will also be logged if this is set to 'on'
409        Added 'show license'
410       
4112.1.4
412        Normalize and downcase AIM names for logging
413        Fixed a bug where sending a null zsig could cause a crash
414        Better 'away' toggling if only one protocol is away.
415
4162.1.3
417        Added perl filter elements.  Similar to having "filter <subfilter>"
418          in a filter, you may also have "perl <functionname>"
419          where <functionname> is passed an owl::Message object and
420          returns 0 or 1 depending on whether the message matches
421          that element of the filter.
422        Don't print an error about loading subs if there is no
423          .zephyr.subs
424        Do the initial zephyr_buddy_check when pseduologin set to true.
425        Updated man page
426       
4272.1.2
428        removed unused filter_depth variable
429        Fixed memory bug on receiving pings
430       
4312.1.1
432        Filters of filters now work.
433        Removed the "possibly not readable" part of the config parsing
434          error
435        In the sepbar, reverse video the view name when it's not set to
436          view_home (as opposed to the static 'all').
437        The '!' key (bound to 'view -r') now creates a negative version of
438          the current view and switches to it.  i.e. "show me all the
439          messages that are not these"
440        Added the 'ignorelogins' variable
441        Log when outgoing personal message fails
442        Removed file descriptor from sigpipe catcher printer just for now,
443          since the field does not exist on OSX
444        Added an ifndef for socklen_t in libfaim/ft.c
445        Added the 'aim search' command.  The popup on callback may be
446          dangerous, should switch to an admin msg for results, or add a
447          new event queue
448        First pass at AIM away messages.  It is a little different from
449          what most clients seem to do, in that an away reply is sent for
450          each message received.  Most clients only reply to the first one
451          per away-session.
452        Now have a set of 'aaway' commands and variables just like the
453          'zaway' ones (except that changing the 'aaway' variable talks to
454          the server)
455        The new 'away' command does everything for both AIM *and* zephyr.
456          There is a known funkiness here, where if you turn one away on,
457          and then use 'away' (or 'A') to toggle, you will turn on off and
458          the other on.  Just leaving it for now.  Should do better in the
459          next patch.
460        The 'A' key is bound to 'away'
461        Status bar can now read AWAY, Z-AWAY or A-AWAY.
462        Changed C-n to scroll down just a line in popless
463        If the config exists but is not readable, print an error before
464          exiting
465        Only print forced AIM logout message once.
466        Don't bind F1 to help in edit context
467        Fix bug in 'getsubs' with no tickets
468        New code for getting users from .anyfile
469        Added the 'pseudologins' variable, and code to do it
470        new attributes 'pseudo' 'logintty' and 'loginhost'
471        Don't print extra new lines in popless_file
472        New zephyr_get_field function
473       
4742.0.14
475        Fixed missing word in startup message
476        Better 'status' command
477        Use '+' for popwin corners when 'fancylines' is off
478        Allow TERMINFO to be overridden in the envrionment
479        Command line arg -D turns on debugging and deletes previous
480          debugging file
481        Do ~ expansion in 'dump' command.
482        Current directory added to 'status' command
483        Massive changes to libfaim and aim
484       
4852.0.13
486        Changed startup message for new mailing list
487        blist now prints AIM info even if .anyone is unreadable
488        Catch SIGPIPE and print an error rather than crashing.
489                [It's possible that this may have some portability
490                issues under Solaris and we may need to add some
491                configure stuff around SA_SIGINFO...]
492        Handle the case in aim_bstream_send where aim_send returns -1,
493                although there is likely an underlying problem here
494                that would lead to this case.
495        Print the username on aim login failure, not something random like
496                the password.  ;)
497        Un-word-wrap text when sending AIM messages.
498        Replace the main loop continue in the keyboard handler with an else.
499       
5002.0.12
501        Command history now doesn't allow the last entry
502           to be repeated
503        If format_msg returns "" print "<unformatted message>"
504        Better align oneline admin and loopback messages
505        Print an admin message indicating when subscriptions can
506           not be loaded on startup
507        Set aim_ignorelogin_timer to 15 by default
508        Admin message on login/logout of AIM
509        Fixed double quoting in smartzpunt
510        Added timestamp to login/logout messages
511        Fixed replies to loopback messages
512        Fixed smartnarrow on classes/instances with spaces
513        Added the 'loggingdirection' variable
514        All loopback messages log to 'loopback' now
515        Print an error message if trying an invalid color for a filter
516        Fixed bug causing > not to go to end of editwin every time
517       
5182.0.11
519        Updated basic help
520        Display CC: in outgoing CC messages
521        More AIM logout detection
522        Don't proclaim "interfaces changed" on first build.
523        Added the 'loopback' message type
524        Added the 'loopwrite' command
525        Added a timestamp to the default style
526        Zpunt now works with weird regex characters
527        Smart filters now work with weird regex characters
528       
5292.0.10
530        Allow 'hostname' in filters.
531        Fixed bug in reporting when no one is subbed to a class
532        Added an extral newline in logging incoming zephyrs
533        An admin message is displayed when you are logged out of AIM
534        Print an error message and admin message if an AIM send fails
535       
5362.0.9
537        Added the 'fancylines' variable.
538        Added the 'show startup' command.
539        Added feature for capturing stderr messages
540           from commands and displaying them in the errors buffer.
541        Create an admin message explaning that a zephyr couldn't
542           be sent
543        Better reporting of perl errors (both into the errqueue
544                and also clearing the error after displaying it).
545        Allow default_style to be specified in config.
546        Added errqueue
547        Added command "show errors"
548        Fixed bug removing newlines in backup files
549       
5502.0.8
551        Increased size of screen name field in buddy listing
552        Fixed bug with idle times causing broken pipes.
553        New libfaim
554        Added the 'source' command.
555        Make sure that a newline is always at the end of messages
556                returned by perl style formatting functions.
557        Add owl::login and owl::auth to legacy variables populated for format_msg.
558        Additions to intro.txt and advanced.txt documents.  (Still in progress.)
559        Add base methods for login_host and login_tty
560                and others that return undef.
561        New API for perl message formatting functions. 
562                Legacy variables are still supported for owl::format_msg
563                and owl::receive_msg, but these functions are now also
564                passed an owl::Message object which contains methods
565                for accessing the contents of the message.  See perlwrap.pm
566                (and docs TBD) for the available methods.
567                *** WARNING:  The exact API for owl::Message has
568                *** not yet stabilized.
569        Added "style" command for creating new styles.
570                Usage:  style <name> perl <function_name>
571        Added support for "show styles".  Changed global style table
572                from list to dictionary.
573        Changed AIM password prompt from "Password:" to "AIM Password:".
574        Messages are reformatted after a window resize to allow styles
575                to take into account the width of the window.
576        When perl throws an error, the message is put in the msgwin
577                if possible.
578        Added perl functions for:       
579                owl::getcurmsg() -- returns an owl::Message object for
580                                    the active message
581                                    in the current view.
582                owl::getnumcols() -- returns the column width of the window
583                owl::zephyr_getrealm() -- returns the zephyr realm
584                owl::zephyr_getsender() -- returns the zephyr sender
585        Made owl::COMMAND("foo"); be syntactic sugar for
586                owl::command("COMMAND foo");
587        Added perlwrap.pm to contain perl code to be compiled into
588                the binary.  This is transformed into perlwrap.c by
589                encapsulate.pl.
590        Renamed readconfig.c to perlconfig.c and changed variables accordingly.
591        Minor bugfixes in cmd.c and commands.c
592        Improved intro doc
593
5942.0.7
595        Idletimes now appear in the buddylisting
596        Failed AIM logins are now correctly reported
597        Owl will build now without zephyr, enabling it to act as a
598          standalone AIM client.
599        There is now a zcrypt command
600        Replies to zcrypted messages now work
601        Don't allow zwrite if zephyr isn't present
602        Cleaned up some warnings from linux gcc.
603        Fixed bug that can cause response stuff to crash
604        Improved status command
605        Fixed bug in buddy stuff
606       
6072.0.6
608        aimlogin will now accept the screenname without a password and ask
609           for the password such that it is not echo'd to the terminal
610        'addbuddy aim' and 'delbuddy aim' now work
611        Bug fix to make zwrite -m work with -c/-i
612        Fixed documentation bug in aimwrite
613        Initialze $owl::auth
614        Fix in autoconf for des425
615        Reformatted editwin.c and added capability of doing password-style
616           echoing
617       
6182.0.5
619        Fix in finding des for building zcrypt
620        Fixed description for alert_action variable
621        More detailed usage from -h
622        Special cased replies for webzephyr users on classes and
623          login notifications for webzephyr users
624        Fixed bug that caused a crash on zpunt with '*' for an instance
625        AIM logout and then login now works.
626        Fixed bug causing view -d not to work.
627        Added hostname and tty name to LOGIN/LOGOUT zephyrs on oneline
628          style
629       
6302.0.4
631        Made command line option -n actually work
632        Implemented styles, including the 'default' 'basic' and 'oneline'
633          styles.  A 'perl' style is available if a format_msg() function
634          is found in .owlconf
635        Added the 'default_style' variable
636        Added the 'toggle-oneline' command
637        The 'o' key is bound to 'toggle-oneline'
638        Internally, the one view now has a name, 'main', and message
639          recalcuations are done in place when its filter is changed.
640        Added filter field 'login' which can take the values 'login'
641           'logout' or 'none'
642        Added the perl variable $owl::login, just as above
643        Updated the 'login' and 'trash' filters appropriately
644        Fix for checking for DES in build system
645        Bug fix in using makemsg when no curses window is present
646        The variable $owl::auth now exists in perl
647        Use new internal function to delete zephyr subs from file
648        New 'sepbar_disable' variable can turn off sepbar info display
649        Updated contributor info
650        Added the 'show view' command
651        Bug fix in owl_regex
652        Fixed personal aim messages logging to class directory
653        Log "LOGIN" or "LOGOUT" for AIM buddy messages
654        zwrite -m now correctly displays an outgoing message and logs
655        zwrite -s now works
656        Strip spaces in AIM usernames on aimwrite send
657        Removed libfaim/config.log from CVS
658        Fixed some easy fixed-length buffers
659        Wordwrap incoming AIM messages
660        Fixed bug causing buddies not to be added to buddy list during
661          ingorelogin timer
662        Translate &lt; &gt; &amp; &quot; &nbsp; &ensp, &emsp, &endash and
663           &emdash
664       
6652.0.3
666        Don't ring the terminal bell on mail messages.
667        Nuke <FONT>
668        Make the build work a little better on OSX
669        Fixed a bug in fmtext
670        Expanded the size of the hostname buffer
671       
6722.0.2
673        Fixed bug in 'startup' command.
674
6752.0.1
676        Moved newmsgproc stuff to a function procedure
677        Added the 'newlinestrip' variable, on by default, that strips
678          leading and trailing newlines from incoming messages.
679        Fixed a case sensitivity probelm in owl_message_is_personal and
680           owl_message_is_private
681        The message object now uses a list of attributes internally, in
682          prep. for supporting new messaging protocols
683        owl_function_info now uses fmtext instead of one staticly sized
684          buffer
685        in owl_message_get_cc() require that the colon be present after
686          cc.
687        Added some defenses against resize crashes, and put in debug
688          messages if they're encountered
689        In filters 'true' and 'false' are now valid tokens.
690        The 'all' filter has been redefinied to be 'true' and there is a
691          'none' filter defined as 'false'
692        Fixed bug in 'unsub' command that could cause file corruption
693        In the zlist function, give a more detailed error message if
694          the file cannot be opened.
695        Renamed old instances of zsig_exec in the code to zsigproc
696        Don't print the stderr from zsigproc
697        Added a 'loadloginsubs' command to load login subscriptions from a
698          file
699        Added a 'loadsubs' command to eventually phase out the 'load-subs'
700          command
701        Made M-n work on classes and instances with spaces in them
702        Zaway now obeys the smart strip variable
703        Hacked the build system to not have the -E link problem on Athena
704        Added ZResetAuthentication in a number of places to fix problems
705          with stale tickets
706        Added some hooks for malloc debugging
707        M-p is bound to 'view personal' by default
708        loadsubs and loadloginsubs only print messages if in interactive
709          mode
710        added the 'alert_filter' variable, defaults to 'none'.
711        added the 'alert_action' variable, which is an owl command that
712          will be executed when new messages arive that match the
713          alert_filter
714        added the 'term' command which takes the 'raise' and 'deiconify'
715          options.  It assumes xterm for now.
716        only 'make distclean' will nuke core and ~ files now
717        fixes to owl_function_do_newmsgproc from Stephen
718        converted functions.c to new code style, which I'm giving a shot
719        Makefile.in: define DATADIR, for default owlconf.
720        Makefile.in: provide "all" and "install" rules.
721        configure.in: try also libdes and libkrb4, for people using heimdal
722        configure.in: see if des_ecb_encrypt is already prototyped.
723        configure.in: minor changes to work with new autoconf without needing acconfig.h.
724        configure.in: find the install program.
725        configure.in: test for use_default_colors since some versions of
726          solaris don't have it, so we can at least compile something
727          vaguely working there.
728        keypress.c: ifdefs for keys not defined on at least some solarises.
729        owl.c: don't call use_default_colors if we don't have it
730        readconfig.c: added *commented out* code to try to find a
731          system-default owlconf if the user doesn't have one.  Have to
732          ponder if I want this
733        zcrypt.c: don't prototype des_ecb_encrypt if there is a prototype in
734          des.h.
735        zcrypt.c: include owl.h so we get the configure-generated config.h
736        Change to codelist.pl to deal with new code style
737        Remove some ancient stuff from zcrypt.c
738        General cleanup to Makefile.in
739        CTRL and META are now OWL_CTRL and OWL_META.  OWL_CTRL moved to
740          keypress.c
741        do_encrypt declaired static
742        if we don't have des functions, do not try to build in zcrypt
743        kill the newmsgproc function on exit
744        Added libfaim
745        Added basic AIM support, including the "aimlogin", "aimwrite" and
746           "aimlogout" commands
747        New built-in filters 'aim' and 'zephyr'.
748        Do ZResetAuthentication() before zlog_in and zlog_out as well.
749        Print AIM login / logout notifications
750        The 'alist' command prints a list of aim buddies logged in
751        The 'blist' command prints users from all protocols
752        The 'l' key is now bound to 'blist' instead of 'zlist'
753        Started work on 'addbuddy' and 'delbuddy' command but they DO NOT
754          WORK yet
755        Removed a bit of faim code that allowed commands to be executed.
756        The 'B' key is now bound to 'alist'
757        Added the 'startup' and 'unstartup' commands
758        The $HOME/.owl directory is created on startup if it does not exist
759        Added the 'aim_ingorelogin_timer' variable
760        'addbuddy zephyr <user>' and 'delbuddy zephyr <user>' now work.
761        'isloginout' and 'isprivate' are now message attributes
762        improved 'info' function lists seperate info for zephyr, aim and
763           also prints all message attributes
764        AIM logging (both in and out) now works
765        Disabled 'addbuddy' and 'delbuddy' for aim since it doesn't work yet
766        Hacked the Perl build stuff not to link with iconv
767       
7681.2.8
769        Class pings are displayed differently now
770        Updated owlconf.simple example to format outgoing messages.
771       
7721.2.7
773        Outgoing messages now go through the config for formatting
774        Zaway now makes an outgoing message, instead of an admin message
775        The 'zlocate' command can now handle multiple users
776        The simple user format for "To:" is in effect again
777        Prettyed up the zwrite line for using 'reply' on a zaway
778        Added a workaround for a libzephyr bug that caused zwrites to fail
779          if zephyrs were sent just before and just after renewing tickets
780        Fixed a memory bug in getsubs
781        Added receive support for zcrypt messages
782        Added the 'zcrypt' variable which controls whether or not zcrypt
783          messages are decrypted
784        'reply' is disabled for zcrypt until sending zcrypt works
785        Started implementing zcrypt command
786        More updates to the intro doc
787       
7881.2.6
789        Started adding code for newmsgproc.  It doesn't fully work yet!
790          Don't use it.
791        Added search, '/' and '?' to basic help.
792        Will attempt to keep the current message as close as possible
793             to the previous current message after an expunge.
794        "set <variable>" and "unset <variable>" now work for boolean variables.
795        Fixed a bug in owl_function_calculate_topmsg_normal that caused a
796          segfault
797        Fixed some typos in the intro doc
798        Removed old zlog functions from zephyr.c
799        Implemented the dump command
800        New startup message
801       
8021.2.5
803        Patch to fix memory bug in replying to CC messages
804        If we're on Athena and have static krb (or other) libraries, use
805          them
806        Added "athstatic" program to the release, which handles the above
807        Cast to an int for isspace, to make gcc -Wall quiet
808        Added 'zlist' and 'l' to basic help.
809       
8101.2.4
811        'zlog in' will now take an optional thrid argument to set the
812             'tty' variable before setting the zlocation
813        There is now a 'zlist' command that acts like 'znol -l'
814        'l' is bound to 'zlist'
815        Fixed memory leak uninitialzed memory read in fmtext
816        viewwin will now say "End" instead of "More" when at the end
817        Added a debugging message indicating the result of topmsg
818          calculations
819        You can now use %me% in filters
820        The built-in personal filter is updated to do so
821        Fixed a bug in moving the pointer after an expunge
822        Fixed up the normal scrolling code.  Now it should always
823          land on a message, but it's still not optimal.
824        Added the variable 'smartstrip' which will strip kerberos
825          instances out for the 'reply' command.
826        Added -R/usr/athena/lib to the build for Athena
827        Started updating the intro document
828        Small changes to help / about
829        The 'subscribe' and 'unsubscribe' commands (and their aliases) now
830          update .zephyr.subs by default.  If either is given the '-t'
831          (for "temporary") option the .zephyr.subs will not be updated
832        Turned off beeping for hitting the top or bottom of the list of
833          messages
834        Made daemon.webzephyr a special case for smartstrip
835        Added 'out' as a default filter for outgoing messages
836       
8371.2.3
838        Added filters "ping", "auto" and "login" by default.
839        Added "body" as a valid field to match on in a filter.
840        Temporary fix to bug where C-SPACE would cause the key handler to
841             lock up.
842        Messages now have a direciton (in, out or none).  Filters can
843             match on this direction
844        Outbound messages are no longer type 'admin' but are of the
845             appropriate message type (i.e. 'zephyr') and are direction
846             'out'.
847        Smartnarrow now works on outgoing messages
848        'info' updated to show more information for admin and outgoing
849             messages
850        Renamed pretty_sender to short_zuser and renamed long_sender to
851             long_zuser
852        Moved zsig generation to the zwrite object
853        Print the zsig used for outgoing messages
854        The tty variable now controls the zephyr location tty name
855       
8561.2.2
857        Added the 'search' command.
858        '/' is a keybinding for 'search'
859        '?' is a keybinding for 'search -r'
860        Fixed stristr, which was completely broken
861        renamed owl_fmtext_ztext_stylestrip to owl_function_ztext_styletsrip
862             and put it in functions.c
863        Attempts to stay near the current message when switching views.
864             When switching from an empty view to one we've previously
865             been in, the new current message position will attempt
866             to be close to the current position from the last
867             time we visited that view.
868        Fixed bug in readconfig.c that prevented building under perl 5.005.
869        Switched "C-x C-x" to only "startcommand quit"
870        'getsubs' prints closer to the order you sub in.
871        Modified the behavior of last so that "> >" will clear the screen.
872        The new behavior of last is:
873              Moves the pointer to the last message in the view.
874              If we are already at the last message in the view,
875              blanks the screen and moves just past the end of the view
876              so that new messages will appear starting at the top
877              of the screen.
878        Fixed a typo in the help for smartzpunt.
879        Fixed functions to handle curmsg being past the end of the view.
880
8811.2.1
882        New framework for command handling.
883        New framework for keymap handling.
884        Added commands for everything that is bound
885             to a key (do 'show commands' to get the full list).
886        Added 'multi' and '(' commands to allow multiple commands
887             to be specified on a line.             
888        Added user keybindings with bindkey command.
889        Added command aliases (eg, "alias foo bar").
890        Added undelete command that parallels the delete command.
891        Added additional options to delete command.
892        The reply command now takes arguments.
893        Added 'edit:insert-text' command.
894        Added 'show zpunts' to show active punt filters.
895        Added 'show variable <name>' and 'show variables'.
896        Added 'show command <name>' and 'show commands'.
897        Added 'show keymap <name>' and 'show keymaps'.
898        Added 'M-u' to undelete all messages in current view.
899        Fixed dotsend so that the zephyr will still send if there
900             is whitespace after the dot but not on the same line.
901             This should resolve an issue where dotsend wouldn't work
902             if you'd gone up and edited a zephyr.
903        Bug in page down fixed
904        C-t will transpose characters
905        Fix the scrolling bug where we would sometimes fail to scroll
906             the screen down, leaving the current message off
907             the bottom of the screen.
908        Refixed 'login or login' typo in help
909        Fixed M-u description
910        Removed 'first' and 'last' from basic command help
911        Added M-N to basic key help
912        Added M-D, M-u to basic key help
913        Fixed a quoting problem in configure.in
914        Changed top of help to use 'show' instead of M-x
915        Fixed a bug in the summary field for user-created aliases
916        Added "reply zaway" which sends a zaway response to the current msg.
917        Added "edit:delete-prev-word" command and bound M-BACKSPACE to it.
918        Some buffer overruns fixed
919        Variables now have a summary and a long description.
920                Only the summary is shown with help.
921                The long description is shown with "show variable foo".
922        Added a 'scrollmode' variable which determines how the screen
923             will scroll as the cursor moves.  The default behaves
924             identically to previous versions of owl.
925             The following modes are supported:
926             normal      - This is the owl default.  Scrolling happens
927                           when it needs to, and an attempt is made to
928                           keep the current message roughly near
929                           the middle of the screen.  (default)
930             top         - The current message will always be the
931                           the top message displayed.
932             neartop     - The current message will be one down
933                           from the top message displayed,
934                           where possible.
935             center      - An attempt is made to keep the current
936                           message near the center of the screen.
937             paged       - The top message displayed only changes
938                           when user moves the cursor to the top
939                           or bottom of the screen.  When it moves,
940                           the screen will be paged up or down and
941                           the cursor will be near the top or
942                           the bottom.
943             pagedcenter - The top message displayed only changes
944                           when user moves the cursor to the top
945                           or bottom of the screen.  When it moves,
946                           the screen will be paged up or down and
947                           the cursor will be near the center.
948        Added owl_sprintf which returns the formatted string, or NULL.
949                The caller must free this string.
950                This will allocate enough memory and thus
951                avoid potential some buffer overrun situations.
952        Simple implementation of 'zwrite -m' (doesn't yet log an outgoing
953                message as having been sent.)
954        The "Not logged in or subscribing to messages" error
955                now includes the name of the recipient.
956        The "disable-ctrl-d" variable may also be set to "middle"
957                which will result in ctrl-d only sending at the
958                end of the message.  This is now the default.
959                This also added a command "editmulti:done-or-delete".
960        Fixed a bug in the "reply -e" command.
961        Always clear the command buffer before executing the command.
962                (So that interactive commands can sanely do start-command.)
963        Fixed preservation of e->dotsend across owl_editwin_clear().
964        Added history for multiline edit windows (eg, for zephyr composition).
965                The M-n and M-p keys will cycle through the history ring.
966                In particular, it is now possible to edit the command line
967                of a zephyr being composed:  C-c it and restart it
968                and then M-p to get the aborted composition back.
969        Added owl::send_zwrite(command, message) to the perl glue
970                to allow for the direct sending of multi-line messages.
971                For example:  owl::send_zwrite("-c foo -i bar", "hello");
972        Changed owl_fmtext_print_plain to return an alloc'd string to
973                avoid buffer overrun risks.
974        Added owl::ztext_stylestrip("...") function to perlglue
975                 which returns the ztext with formatting stripped out.
976        Added colorztext variable which can be used to disable @color()
977                 strings arriving in messages after it is set.
978                 (Currently, changing its value won't reformat messages).
979        Outgoing zephyr logging now obeys the logpath variable.
980        The '~' character in logpath and classlogpath now gets
981                 replaced with the user's home directory.
982        Added simple implementation of smartnarrow-to-admin that
983                 creates a "type-admin" autofilter.
984                 This was done mostly so that M-C-n and M-C-p do something
985                 sane on admin messages.
986        Added opera to the allowed options to the webbrowser variable.
987        Fixed some buffer overruns in the "reply" command.
988        When repying to "all" on a message that begins with "CC:" (eg, sent
989                 with "zwrite -C", the reply line will be constructed
990                 from the sender and the usernames on the CC: line
991                 of the message being replied to.
992        There is no such thing as C-R, so left C-r as it is but added:
993                 M-r --- edit reply to all
994                 M-R --- edit reply to sender
995        Added RCS Id strings to all files.
996        'show keymaps' shows details of all keymaps after summary list.
997        Added --no-move option to delete command.
998                In particular, delete-and-always-move-down may now
999                be implemented with
1000                '( delete --no-move ; next --skip-deleted )'.
1001        Folded the nextmsg and prevmsg commands and functions together into
1002                one command which takes arguments.
1003                Added '--filter <name>' option (eg, for next_personal),
1004                '--skip-deleted' option, and
1005                '--last-if-none'/'--first-if-none' options.
1006                Help updated accordingly. 
1007                In particular, the 'personal' filter is now used
1008                for 'next personal'. 
1009                Added --smart-filter and --smart-filter-instance options
1010                to the next and prev commands.
1011        Updated examples/owlconf.erik with the above.
1012        Made owl_function_fast*filt return a string and not do the
1013                narrowing, to make it more general.
1014        Added a smartfilter command that creates a filter
1015                based on the current message and returns the name
1016                of the filter.
1017        Added M-C-n and M-C-p keybindings to "move to next message
1018                matching current" and "move to previous message
1019                matching current"
1020        Added variables edit:maxfillcols and edit:maxwrapcols which
1021                will limit how wide editing paragraphs may get before
1022                they get wrapped.  This is a max and may be narrower
1023                depending on the current size of the window.
1024                If 0, the max is unlimited.  Default is 70 columns for
1025                edit:maxfillcols and unlimited for edit:maxwrapcols.
1026        Added smartzpunt command with key binding of "C-x k".
1027                This starts a zpunt command filled in with
1028                the proposed zpunt.
1029        Fixed a memory reference bug in delete and undelete commands.
1030        Added support for perl to call directly back into owl.
1031        Changed the implementation of owl::command("...") to immediately
1032                call back into owl.  This allows perl to get the return
1033                value of strings returned by owl commands.
1034        Added the getview command which returns the name of the current
1035                view's filter. 
1036        Added the getvar command which returns the value of a variable.
1037        Added an example to examples/owlconf.erik which uses TAB to
1038                narrow and restore the view. 
1039        Added an example to examples/owlconf.erik which uses M-c to
1040                color messages matching the current one green.
1041        Integrated change to fix problem with popup blinking on new zephyrs.
1042        C-l and resizes will now refresh an open viewwin (eg, help).
1043        Updated doc/code.txt to include info about filters, commands,
1044                contexts, and keybindings.
1045        Exec commands cleaned up to not have buffer-size limitations
1046                and to not mess up spaces.  exec also returns a string
1047                of the output now.
1048        Integrated changes from 1.1.3, and added docs for "zlocate -d"
1049                and new show commands.
1050        Show with arguments produces help on show.
1051        Fix a bug in readconfig caught by efence (where we'd try to read before
1052                the beginning of a string if it was empty).
1053        The perl command doesn't do makemsg directly, but instead
1054             returns the string and it will get printed if it
1055             was run interactively.
1056       
10571.1.3
1058        'show subs' and 'show subscriptions' are now the same as 'getsubs'
1059        zlocate now takes an optional -d argument
1060        'show terminal' / 'show term'
1061        '>' / last doesn't set the last message at the top of the screen now
1062        implemented _followlast as an unsupported feature
1063        include 'default' in the 'show colors' list
1064        added help for 'zpunt' and 'zunpunt'
1065        changed the bug address in the startup message
1066        can now do 'show status'
1067        can now do 'show version'
1068        'status' / 'show status' includes the owl version number now
1069        'show terminal' includes whether the terminal can change colors
1070        fixed off by one bugs in paging / scrolling viewwin
1071        don't downcase the sender when getting the log name for personals
1072        support @owl::fields as well as @fields
1073        downcase class/inst filter names in auto filters
1074
10751.1.2
1076        Fixed memory mishandling bug
1077        Fixed bug in redfining the filter attached to the current view
1078        M-n will narrow to message, instance on non-personal, class
1079             MESSAGE messages
1080        M-N behavies like M-n except that on class messages it narrows
1081            to class and instance
1082        line wrap earlier, to account for tabbing
1083        fixed typo in help
1084        'status' command now displays info on terminal color support
1085        zephyr @ formatting is now case independant
1086        added support for color terminals
1087        zephyr @color(foo) now works
1088        'D' for deleted messages is now not bold, unless it's the current
1089          message
1090        F1 displays the help screen
1091        added filter colors
1092        added the 'colorview' command
1093        added the 'show colors' command
1094        users who don't have a .zephyr.subs get a simpler format for
1095          incoming messages
1096        If colors are available 'show filters' will show a filter in the
1097          color associated with it.
1098        Added the zpunt and zunpunt commands
1099        Lines in the subs file starting with '-' are zpunted
1100        Include login/logout messages in auto user filters
1101        'V' changes to the home view ('all' by default)
1102       
11031.1.1
1104        Fixed perl, aperl, and pperl commands to deal with quoting
1105              and spaces in a saner manner.
1106        Removed all owl_get_* methods for booleans and switched
1107              cases where they were used to owl_is_*
1108        Changes to owlconf.erik to use some new features.
1109        Increased the size of the help buffer (as it
1110              was overflowing and truncating the help message).
1111        Variables prefixed with a _ are not shown in help
1112              or by printallvars (and prefixed Not Yet Implemented
1113              variables with this).
1114        Fix typo in help
1115        include stdio.h in functions.c
1116        remove stale "q to quit" from bottom of info message
1117        fix downward scrolling more than a page
1118        use authentication for zlocate, by default
1119        fixed buffer over run in info command on long messages
1120        call 'perl <file>' from Makefile to avoid hardcoding perl paths
1121        in Makefile don't build owl_prototypes.h unless necessary
1122        store the time for admin messages
1123        display admin message time in 'info' command
1124        fixed an editwin M-> last character bug
1125               
11261.1
1127        reply is a normal function now
1128        'R' does reply to sender
1129        'T' tells you how many messages were marked for deletion
1130        local realm removed from login / logout messages
1131        added command history
1132        better runtime / starttime reporting in 'status' command
1133        leave the pointer near the current message after expunge
1134        C-l recenters editwin
1135        implemented zlocate
1136        @italic works the same as @i
1137        on reply only quote class / instance when necessary
1138        C-r allows you to edit the reply line
1139        don't use unecessary options in reply line
1140        display 'info' errors in msgwin, not popup
1141        impelemnted aexec, pexec commands
1142        the zsig now goes through ztext formatting
1143        messages have id numbers now
1144        'info' prints the msgid
1145        added the 'filter' command
1146        added the 'view' command
1147        added the 'show filter' command
1148        added the 'viewclass' (and 'vc') commands
1149        added the 'viewuser' (and 'vu') commands
1150        M-n will filter to the current class or user
1151        'v' starts a view command
1152        M-D will delete all messages in current view
1153        added the 'delete' (and 'del') command
1154        load-subs with no argument loads the default subs file
1155        '<truncated>' is now when the *current* message is truncated
1156        the reply-lockout filter (with default) specifices messages that
1157           cannot be replied to.
1158        in the configfile owl::receive_msg is run whenever a message is
1159          received
1160        added the beep command
1161        added the contributors file
1162        declare ZGetSubscriptions and ZGetLocations since the includes
1163          don't seem to
1164        fixed bug in displaying last line in popwin if no final '\n'
1165        'T' uses the 'trash' filter now
1166        zaway_msg, zaway_msg_default and zaway are all user variables now.
1167        zsig variable overrides zsigproc
1168        If there's no appendtosepbar don't interfear with the sepbar
1169        Changed: owl_message_get_numlines will return 0 of m is NULL
1170        Added login messages to messages marked by owl_function_delete_automsgs
1171        Added owl_function_delete_by_id(id) which acts independent of view
1172        Added "-id <id>" option to delete command
1173        Fixed an arg checking bug in delete command
1174        Added owl::id to perl namespace with message id
1175        Fixed a memory corruption bug in readconfig.c (where right
1176              after the strdup to "out", we'd strcat a \n onto the end.
1177              This would be triggered whenever owl::format_msg returned
1178              a string not ending in a newline
1179        Added 'X' keybinding which expunges and then switches to
1180              a view defined by the variable "view_home" which defaults
1181              to "all"
1182        Consolidated readconfig.c somewhat to remove duplication.
1183              owl_config_execute now returns a string.
1184        Added an example config file that does vt-style formatting.
1185              (examples/owlconf.vtformat)
1186        Added the 'perl', 'aperl', and 'pperl' commands which will
1187              evaluate perl expressions.
1188        Fixed bug where pclose zsigproc would cause zombies
1189        Can set zsigproc or zsig to "" to disable
1190        Added support for multiple browsers (galeon and none were added).
1191              Configure with the "webbrowser" variable.
1192        Changing typewinsize height triggers resize event.
1193        Added zsig variable which will be used if no zsigproc and non-empty.
1194        Added "make test" rule to Makefile which will run regression tests,
1195              and added regression testing framework to tester
1196        Fixed codelist.pl to ignore static declarations.
1197        Added dict.c which contains string->ptr dictionary routines
1198              and the owl_dict type.
1199              These include regression tests.
1200        Overhaul/rewrite of variable handling.  Variables are now managed
1201              in an owl_vardict (in g.vars) which contains a dictionary
1202              of owl_variable's.  Each owl_variable has dispatch functions
1203              for validating values, setting it and getting it,
1204              and for setting it to and from string values.
1205              The variable.c file contains the list of variables.
1206              Stubs for the owl_global_<varname>_get functions and friends
1207              are generated from variable.c by stubgen.pl.
1208              The help.c messages for variables now calls into variable.c
1209              so all information about most variables is in one place.   
1210        Cleaned out code from global.c and command.c that was made obselete
1211              by variable overhaul.
1212        The set command now takes a -q option to not log a message.
1213        Fixed a bug where set and print with no arguments would
1214              print "Undefined variable" in addition
1215              to running owl_function_printallvars.
1216        debug is now a variable that can be turned on and off.
1217        Fixed mail,inbox message parsing in examples/owlconf.erik
1218        Made zaway_msg and zaway_msg_default into variables
1219        Changed owl_function_makemsg and owl_function_debugmsg
1220               to use varargs (ie, so they can now take a format
1221               string with args).
1222        Don't allow " and \ characters in URLs with the "w" command.
1223        Removed lots of build warnings.
1224        Popwins are wider by default so help messages fit better.
1225        Added an atokenize_free function.
1226        Fixes to work with an older version of libzephyr.
1227        Added dependencies on header files to Makefile.in
1228        Added pageup and pagedown key bindings to message list
1229        Added pageup and pagedown to viewwin
1230        Added configfile section to doc/intro.txt (from example config file)
1231        Added appendtosepbar variable which may contain text which will
1232              be appended to the sepbar.  This allows the configfile
1233              to put information about pings and logins into
1234              the sepbar.  (It may be worth also providing a variable
1235              which enables this by default, but for now this allows
1236              for experimenting with what works well.)
1237        Added doc/code.txt which gives a brief overview of the code.
1238        Added tags makefile rule and added TAGS to distclean rule.
1239       
12401.0.1
1241        fix frees in loadsubs and loadloginsubs
1242        don't return in owl_free
1243       
12441.0
1245        'print' and 'set' with no arguments prints all variables
1246        Added the 'unsubscribe' and 'unsub' command
1247        Renamed the 'unsub' command to 'unsuball'
1248        Added the 'getsubs' command which is like zctl ret
1249        Fixed bug in logging messages sent to more than one recipient
1250        Support '-C', '-O', and '-n' options to zwrite
1251        Fixed bug in owl_editwin_delete_char when there are no later chars
1252          after the cursor
1253        Make "more" and "truncated" work in the status bar
1254        enable printing of zsigproc and loginsubs variables
1255        only allow message scrolling if the message is actually off the
1256          screen
1257        'T' will mark all automated message for deletion
1258        'P' will go to the next personal message
1259        'M-P' will go to the previous personal message
1260        replying to a login message goes to the user now
1261        added a status command
1262        added the intro doc to the release
1263        fixed off by one bug in viewwin
1264        added complete online help
1265        pass $owl::realm in configfile
1266        fixed editwin wordwrapping on the last line
1267        fixed editwin problem with key_right past the last char
1268        print an error and quit if the configfile can't be parsed
1269        got rid of owl_mainwin_calculate_topmsg
1270        fixed off by one error in calculating topmsg upwards
1271        you can now reply to an admin message
1272        don't display an error about keypress on window resize
1273       
12740.11
1275        fixed bug in viewing messages longer than the screen
1276        indicate in the sepbar if there is a non zero vert offset
1277        send on '.' on a line by itself
1278        added disable-ctrl-d variable
1279        fixed bug where C-k did not delete the last \n in the buffer
1280        make non-character meta keys work
1281        use ZSendNotice instead of ZSendList
1282        implemented <, >, M-< and M-> in viewwin
1283        removed the spaces at the bottom of viewwin
1284        added 'about' command
1285        fixed bug using 'M' with no current message
1286        changed message object to use char *'s to save on memory
1287        change malloc, realloc, strdup and free to use owl hooks so that
1288           debugging can be added
1289               
12900.10.1
1291        fixed a trailing space bug in the parser
1292        impelemented the "burning ears" feature
1293        have admin messages do ztext parsing
1294        fixed bug in reporting which M- key was pressed
1295        C-g will now cancel commands like C-c
1296       
12970.10
1298        implemented owl_function_full_redisplay().
1299        C-l uses owl_function_full_redisplay().
1300        when a popwin exists to a full redisplay.  (fixes bug)
1301        improved the owl_editwin_process_char logic
1302        removed all unnecessary wrefresh's and replaced with wnoutrefesh
1303        owl_editwin_redisplay now takes an argument to optionally doupdate()
1304        improved the cut-and-paste speed by not doing a usleep the first
1305          time through the loop after getting a keypress.
1306        nuked typwin.c and associated stuff.  It's useless now.
1307        added viewwin code for paging windows
1308        curly braces work for zephyr formatting
1309        @i in zephyr formatting will be displayed as underlined text
1310        turned off idlok
1311        implemented viewwin
1312        implemented viewwi in popwin for pageable popwins
1313        help, info now use pageable popwins
1314        bound 'M' to bring the current message up in a popwin
1315        return, space bar, 'b' and backspace now scroll within a message
1316        turned off resize message
1317        C-v and M-v page the main window
1318        implemented owl_message_is_mail
1319        some build cleanup
1320
1321       
13220.9
1323        added owl_message_is_personal and have things use it
1324        added owl_message_is_private
1325        fixed 'print personalbell' and have 'set personalbell'
1326           print a message
1327        bold only on message_is_personal
1328        display the realm if not local
1329        implemented M-f, M-b, M-d, M-<, M-> in editwin
1330        implemnted word wrapping in editwin
1331        implemented M-q (paragraph-fill) in editwin
1332        fixed bug that caused owl to segfault logging a 'weird' class
1333        M-x is a keysym for ':'
1334        added smart bolding and userclue
1335        fixed a bug causing pings to beep even if rxping is off
1336       
13370.8.1
1338        fixed bug in logging code
1339       
13400.8
1341        implemented personal logging
1342        implemented class logging
1343        implemented resize of typewin
1344        fixed the backspace problem
1345        -v command line option prints the version number
1346       
13470.7
1348        load-subs will report error opening file
1349        skip comment lines in loadsubs and loadloginsubs
1350        changed internal references to rxping and txping
1351        fix replying to a blank instance
1352        added subscribe command
1353        subscribe to login messages from .anyone by default
1354        'loginsubs' variarble controlls automated login messages
1355        redisplay the editwin after a resize
1356        leave the cursor in the editwin if active
1357        fix problems in the build system
1358        added displayoutgoing variable
1359        temporarily removed error printing for zlog in / out
1360       
13610.61
1362        fixed bug in "message sent to <foo>" for zwrite
1363       
13640.6
1365        help updated
1366        zaway key set to caps A
1367        support zephyring other realms
1368        rxping variable for receiving pings
1369        txping variable for sending pings
1370        function in place to resize typwin
1371        C-l to refresh
1372        personal bell variable
1373        beta message now an admin message
1374       
13750.5
1376        Added the debug command and flag
1377        Fixed bug in printing fields in info command
1378        Added owl_fmtext_append_ztext and use it
1379        Better formating for pings and login zephyrs
1380        make tester depends on proto
Note: See TracBrowser for help on using the repository browser.