source: ChangeLog @ 7e6d1fd

barnowl_perlaimdebianowlrelease-1.10release-1.4release-1.5release-1.6release-1.7release-1.8release-1.9
Last change on this file since 7e6d1fd was 7e6d1fd, checked in by James M. Kretchmar <kretch@mit.edu>, 19 years ago
Metion .owlconf path in intro.txt. [BZ 54]
  • Property mode set to 100644
File size: 44.7 KB
Line 
1$Id$
2
32.1.11
4        Don't crash doing zlocate with bad tickets. [BZ 12]
5        Metion the path for the owlconf in intro.txt [BZ 54]
6
72.1.10
8        Fix a new problem finding libdes425
9        Don't crash on very long hostnames [BZ 52]
10        In 'sub' command, create .zephyr.subs if it doesn't exist [BZ 15]
11        A fix for certain resize crashes (partly from alexmv) [BZ 55]
12        Turn off ISTRIP (gildea)
13       
142.1.9
15        Include /usr/include/kerberosIV if it's found
16       
172.1.8
18        Do OLC formatting for anything coming from olc.matisse
19        Improvements to popup size algorithm (from gildea)
20        Improved 'show colors' with non-colored labels
21       
222.1.7
23        The colorclass command is added, to make colorization easy
24        Handle MIT Athena OLC zephyrs correctly
25        Updated ktools website / bug address
26        Do ntohs() when printing zephyr port in zephyr info
27        Updated man page
28       
292.1.6
30        Fixed three bugs found by Valgrind.
31        Fixed a case where doing "aim addbuddy" instead of "addbuddy aim"
32          would cause a segfault.
33        pexec will now incrimentally display data as it is output
34          by the child process.  Additionally, commands running under
35          pexec may now be killed by quitting out of the popless window.
36        Added muxevents select loop dispatcher.  File descriptors may
37          be registered with muxevents and handlers will be dispatched
38          to when data is available for non-blocking read/write/except.
39        Switched the stderr_redir stuff to use muxevents.
40        Print C-\ correctly (from gildea)
41        Dropped first brace in muxevents functions for consistency
42        Catch SIGHUP and SIGTERM and do a proper logout
43       
442.1.5
45        Added a licence
46        The 'personalbell' variable can now be set to 'on' 'off' or
47          the name of a filter to match against
48        The 'loglogins' variable now controls whether login/logout
49          messages are logged.  It is off by default.  For now this
50          affects only AIM messages, later zephyr login/logout messages
51          will also be logged if this is set to 'on'
52        Added 'show license'
53       
542.1.4
55        Normalize and downcase AIM names for logging
56        Fixed a bug where sending a null zsig could cause a crash
57        Better 'away' toggling if only one protocol is away.
58
592.1.3
60        Added perl filter elements.  Similar to having "filter <subfilter>"
61          in a filter, you may also have "perl <functionname>"
62          where <functionname> is passed an owl::Message object and
63          returns 0 or 1 depending on whether the message matches
64          that element of the filter.
65        Don't print an error about loading subs if there is no
66          .zephyr.subs
67        Do the initial zephyr_buddy_check when pseduologin set to true.
68        Updated man page
69       
702.1.2
71        removed unused filter_depth variable
72        Fixed memory bug on receiving pings
73       
742.1.1
75        Filters of filters now work.
76        Removed the "possibly not readable" part of the config parsing
77          error
78        In the sepbar, reverse video the view name when it's not set to
79          view_home (as opposed to the static 'all').
80        The '!' key (bound to 'view -r') now creates a negative version of
81          the current view and switches to it.  i.e. "show me all the
82          messages that are not these"
83        Added the 'ignorelogins' variable
84        Log when outgoing personal message fails
85        Removed file descriptor from sigpipe catcher printer just for now,
86          since the field does not exist on OSX
87        Added an ifndef for socklen_t in libfaim/ft.c
88        Added the 'aim search' command.  The popup on callback may be
89          dangerous, should switch to an admin msg for results, or add a
90          new event queue
91        First pass at AIM away messages.  It is a little different from
92          what most clients seem to do, in that an away reply is sent for
93          each message received.  Most clients only reply to the first one
94          per away-session.
95        Now have a set of 'aaway' commands and variables just like the
96          'zaway' ones (except that changing the 'aaway' variable talks to
97          the server)
98        The new 'away' command does everything for both AIM *and* zephyr.
99          There is a known funkiness here, where if you turn one away on,
100          and then use 'away' (or 'A') to toggle, you will turn on off and
101          the other on.  Just leaving it for now.  Should do better in the
102          next patch.
103        The 'A' key is bound to 'away'
104        Status bar can now read AWAY, Z-AWAY or A-AWAY.
105        Changed C-n to scroll down just a line in popless
106        If the config exists but is not readable, print an error before
107          exiting
108        Only print forced AIM logout message once.
109        Don't bind F1 to help in edit context
110        Fix bug in 'getsubs' with no tickets
111        New code for getting users from .anyfile
112        Added the 'pseudologins' variable, and code to do it
113        new attributes 'pseudo' 'logintty' and 'loginhost'
114        Don't print extra new lines in popless_file
115        New zephyr_get_field function
116       
1172.0.14
118        Fixed missing word in startup message
119        Better 'status' command
120        Use '+' for popwin corners when 'fancylines' is off
121        Allow TERMINFO to be overridden in the envrionment
122        Command line arg -D turns on debugging and deletes previous
123          debugging file
124        Do ~ expansion in 'dump' command.
125        Current directory added to 'status' command
126        Massive changes to libfaim and aim
127       
1282.0.13
129        Changed startup message for new mailing list
130        blist now prints AIM info even if .anyone is unreadable
131        Catch SIGPIPE and print an error rather than crashing.
132                [It's possible that this may have some portability
133                issues under Solaris and we may need to add some
134                configure stuff around SA_SIGINFO...]
135        Handle the case in aim_bstream_send where aim_send returns -1,
136                although there is likely an underlying problem here
137                that would lead to this case.
138        Print the username on aim login failure, not something random like
139                the password.  ;)
140        Un-word-wrap text when sending AIM messages.
141        Replace the main loop continue in the keyboard handler with an else.
142       
1432.0.12
144        Command history now doesn't allow the last entry
145           to be repeated
146        If format_msg returns "" print "<unformatted message>"
147        Better align oneline admin and loopback messages
148        Print an admin message indicating when subscriptions can
149           not be loaded on startup
150        Set aim_ignorelogin_timer to 15 by default
151        Admin message on login/logout of AIM
152        Fixed double quoting in smartzpunt
153        Added timestamp to login/logout messages
154        Fixed replies to loopback messages
155        Fixed smartnarrow on classes/instances with spaces
156        Added the 'loggingdirection' variable
157        All loopback messages log to 'loopback' now
158        Print an error message if trying an invalid color for a filter
159        Fixed bug causing > not to go to end of editwin every time
160       
1612.0.11
162        Updated basic help
163        Display CC: in outgoing CC messages
164        More AIM logout detection
165        Don't proclaim "interfaces changed" on first build.
166        Added the 'loopback' message type
167        Added the 'loopwrite' command
168        Added a timestamp to the default style
169        Zpunt now works with weird regex characters
170        Smart filters now work with weird regex characters
171       
1722.0.10
173        Allow 'hostname' in filters.
174        Fixed bug in reporting when no one is subbed to a class
175        Added an extral newline in logging incoming zephyrs
176        An admin message is displayed when you are logged out of AIM
177        Print an error message and admin message if an AIM send fails
178       
1792.0.9
180        Added the 'fancylines' variable.
181        Added the 'show startup' command.
182        Added feature for capturing stderr messages
183           from commands and displaying them in the errors buffer.
184        Create an admin message explaning that a zephyr couldn't
185           be sent
186        Better reporting of perl errors (both into the errqueue
187                and also clearing the error after displaying it).
188        Allow default_style to be specified in config.
189        Added errqueue
190        Added command "show errors"
191        Fixed bug removing newlines in backup files
192       
1932.0.8
194        Increased size of screen name field in buddy listing
195        Fixed bug with idle times causing broken pipes.
196        New libfaim
197        Added the 'source' command.
198        Make sure that a newline is always at the end of messages
199                returned by perl style formatting functions.
200        Add owl::login and owl::auth to legacy variables populated for format_msg.
201        Additions to intro.txt and advanced.txt documents.  (Still in progress.)
202        Add base methods for login_host and login_tty
203                and others that return undef.
204        New API for perl message formatting functions. 
205                Legacy variables are still supported for owl::format_msg
206                and owl::receive_msg, but these functions are now also
207                passed an owl::Message object which contains methods
208                for accessing the contents of the message.  See perlwrap.pm
209                (and docs TBD) for the available methods.
210                *** WARNING:  The exact API for owl::Message has
211                *** not yet stabilized.
212        Added "style" command for creating new styles.
213                Usage:  style <name> perl <function_name>
214        Added support for "show styles".  Changed global style table
215                from list to dictionary.
216        Changed AIM password prompt from "Password:" to "AIM Password:".
217        Messages are reformatted after a window resize to allow styles
218                to take into account the width of the window.
219        When perl throws an error, the message is put in the msgwin
220                if possible.
221        Added perl functions for:       
222                owl::getcurmsg() -- returns an owl::Message object for
223                                    the active message
224                                    in the current view.
225                owl::getnumcols() -- returns the column width of the window
226                owl::zephyr_getrealm() -- returns the zephyr realm
227                owl::zephyr_getsender() -- returns the zephyr sender
228        Made owl::COMMAND("foo"); be syntactic sugar for
229                owl::command("COMMAND foo");
230        Added perlwrap.pm to contain perl code to be compiled into
231                the binary.  This is transformed into perlwrap.c by
232                encapsulate.pl.
233        Renamed readconfig.c to perlconfig.c and changed variables accordingly.
234        Minor bugfixes in cmd.c and commands.c
235        Improved intro doc
236
2372.0.7
238        Idletimes now appear in the buddylisting
239        Failed AIM logins are now correctly reported
240        Owl will build now without zephyr, enabling it to act as a
241          standalone AIM client.
242        There is now a zcrypt command
243        Replies to zcrypted messages now work
244        Don't allow zwrite if zephyr isn't present
245        Cleaned up some warnings from linux gcc.
246        Fixed bug that can cause response stuff to crash
247        Improved status command
248        Fixed bug in buddy stuff
249       
2502.0.6
251        aimlogin will now accept the screenname without a password and ask
252           for the password such that it is not echo'd to the terminal
253        'addbuddy aim' and 'delbuddy aim' now work
254        Bug fix to make zwrite -m work with -c/-i
255        Fixed documentation bug in aimwrite
256        Initialze $owl::auth
257        Fix in autoconf for des425
258        Reformatted editwin.c and added capability of doing password-style
259           echoing
260       
2612.0.5
262        Fix in finding des for building zcrypt
263        Fixed description for alert_action variable
264        More detailed usage from -h
265        Special cased replies for webzephyr users on classes and
266          login notifications for webzephyr users
267        Fixed bug that caused a crash on zpunt with '*' for an instance
268        AIM logout and then login now works.
269        Fixed bug causing view -d not to work.
270        Added hostname and tty name to LOGIN/LOGOUT zephyrs on oneline
271          style
272       
2732.0.4
274        Made command line option -n actually work
275        Implemented styles, including the 'default' 'basic' and 'oneline'
276          styles.  A 'perl' style is available if a format_msg() function
277          is found in .owlconf
278        Added the 'default_style' variable
279        Added the 'toggle-oneline' command
280        The 'o' key is bound to 'toggle-oneline'
281        Internally, the one view now has a name, 'main', and message
282          recalcuations are done in place when its filter is changed.
283        Added filter field 'login' which can take the values 'login'
284           'logout' or 'none'
285        Added the perl variable $owl::login, just as above
286        Updated the 'login' and 'trash' filters appropriately
287        Fix for checking for DES in build system
288        Bug fix in using makemsg when no curses window is present
289        The variable $owl::auth now exists in perl
290        Use new internal function to delete zephyr subs from file
291        New 'sepbar_disable' variable can turn off sepbar info display
292        Updated contributor info
293        Added the 'show view' command
294        Bug fix in owl_regex
295        Fixed personal aim messages logging to class directory
296        Log "LOGIN" or "LOGOUT" for AIM buddy messages
297        zwrite -m now correctly displays an outgoing message and logs
298        zwrite -s now works
299        Strip spaces in AIM usernames on aimwrite send
300        Removed libfaim/config.log from CVS
301        Fixed some easy fixed-length buffers
302        Wordwrap incoming AIM messages
303        Fixed bug causing buddies not to be added to buddy list during
304          ingorelogin timer
305        Translate &lt; &gt; &amp; &quot; &nbsp; &ensp, &emsp, &endash and
306           &emdash
307       
3082.0.3
309        Don't ring the terminal bell on mail messages.
310        Nuke <FONT>
311        Make the build work a little better on OSX
312        Fixed a bug in fmtext
313        Expanded the size of the hostname buffer
314       
3152.0.2
316        Fixed bug in 'startup' command.
317
3182.0.1
319        Moved newmsgproc stuff to a function procedure
320        Added the 'newlinestrip' variable, on by default, that strips
321          leading and trailing newlines from incoming messages.
322        Fixed a case sensitivity probelm in owl_message_is_personal and
323           owl_message_is_private
324        The message object now uses a list of attributes internally, in
325          prep. for supporting new messaging protocols
326        owl_function_info now uses fmtext instead of one staticly sized
327          buffer
328        in owl_message_get_cc() require that the colon be present after
329          cc.
330        Added some defenses against resize crashes, and put in debug
331          messages if they're encountered
332        In filters 'true' and 'false' are now valid tokens.
333        The 'all' filter has been redefinied to be 'true' and there is a
334          'none' filter defined as 'false'
335        Fixed bug in 'unsub' command that could cause file corruption
336        In the zlist function, give a more detailed error message if
337          the file cannot be opened.
338        Renamed old instances of zsig_exec in the code to zsigproc
339        Don't print the stderr from zsigproc
340        Added a 'loadloginsubs' command to load login subscriptions from a
341          file
342        Added a 'loadsubs' command to eventually phase out the 'load-subs'
343          command
344        Made M-n work on classes and instances with spaces in them
345        Zaway now obeys the smart strip variable
346        Hacked the build system to not have the -E link problem on Athena
347        Added ZResetAuthentication in a number of places to fix problems
348          with stale tickets
349        Added some hooks for malloc debugging
350        M-p is bound to 'view personal' by default
351        loadsubs and loadloginsubs only print messages if in interactive
352          mode
353        added the 'alert_filter' variable, defaults to 'none'.
354        added the 'alert_action' variable, which is an owl command that
355          will be executed when new messages arive that match the
356          alert_filter
357        added the 'term' command which takes the 'raise' and 'deiconify'
358          options.  It assumes xterm for now.
359        only 'make distclean' will nuke core and ~ files now
360        fixes to owl_function_do_newmsgproc from Stephen
361        converted functions.c to new code style, which I'm giving a shot
362        Makefile.in: define DATADIR, for default owlconf.
363        Makefile.in: provide "all" and "install" rules.
364        configure.in: try also libdes and libkrb4, for people using heimdal
365        configure.in: see if des_ecb_encrypt is already prototyped.
366        configure.in: minor changes to work with new autoconf without needing acconfig.h.
367        configure.in: find the install program.
368        configure.in: test for use_default_colors since some versions of
369          solaris don't have it, so we can at least compile something
370          vaguely working there.
371        keypress.c: ifdefs for keys not defined on at least some solarises.
372        owl.c: don't call use_default_colors if we don't have it
373        readconfig.c: added *commented out* code to try to find a
374          system-default owlconf if the user doesn't have one.  Have to
375          ponder if I want this
376        zcrypt.c: don't prototype des_ecb_encrypt if there is a prototype in
377          des.h.
378        zcrypt.c: include owl.h so we get the configure-generated config.h
379        Change to codelist.pl to deal with new code style
380        Remove some ancient stuff from zcrypt.c
381        General cleanup to Makefile.in
382        CTRL and META are now OWL_CTRL and OWL_META.  OWL_CTRL moved to
383          keypress.c
384        do_encrypt declaired static
385        if we don't have des functions, do not try to build in zcrypt
386        kill the newmsgproc function on exit
387        Added libfaim
388        Added basic AIM support, including the "aimlogin", "aimwrite" and
389           "aimlogout" commands
390        New built-in filters 'aim' and 'zephyr'.
391        Do ZResetAuthentication() before zlog_in and zlog_out as well.
392        Print AIM login / logout notifications
393        The 'alist' command prints a list of aim buddies logged in
394        The 'blist' command prints users from all protocols
395        The 'l' key is now bound to 'blist' instead of 'zlist'
396        Started work on 'addbuddy' and 'delbuddy' command but they DO NOT
397          WORK yet
398        Removed a bit of faim code that allowed commands to be executed.
399        The 'B' key is now bound to 'alist'
400        Added the 'startup' and 'unstartup' commands
401        The $HOME/.owl directory is created on startup if it does not exist
402        Added the 'aim_ingorelogin_timer' variable
403        'addbuddy zephyr <user>' and 'delbuddy zephyr <user>' now work.
404        'isloginout' and 'isprivate' are now message attributes
405        improved 'info' function lists seperate info for zephyr, aim and
406           also prints all message attributes
407        AIM logging (both in and out) now works
408        Disabled 'addbuddy' and 'delbuddy' for aim since it doesn't work yet
409        Hacked the Perl build stuff not to link with iconv
410       
4111.2.8
412        Class pings are displayed differently now
413        Updated owlconf.simple example to format outgoing messages.
414       
4151.2.7
416        Outgoing messages now go through the config for formatting
417        Zaway now makes an outgoing message, instead of an admin message
418        The 'zlocate' command can now handle multiple users
419        The simple user format for "To:" is in effect again
420        Prettyed up the zwrite line for using 'reply' on a zaway
421        Added a workaround for a libzephyr bug that caused zwrites to fail
422          if zephyrs were sent just before and just after renewing tickets
423        Fixed a memory bug in getsubs
424        Added receive support for zcrypt messages
425        Added the 'zcrypt' variable which controls whether or not zcrypt
426          messages are decrypted
427        'reply' is disabled for zcrypt until sending zcrypt works
428        Started implementing zcrypt command
429        More updates to the intro doc
430       
4311.2.6
432        Started adding code for newmsgproc.  It doesn't fully work yet!
433          Don't use it.
434        Added search, '/' and '?' to basic help.
435        Will attempt to keep the current message as close as possible
436             to the previous current message after an expunge.
437        "set <variable>" and "unset <variable>" now work for boolean variables.
438        Fixed a bug in owl_function_calculate_topmsg_normal that caused a
439          segfault
440        Fixed some typos in the intro doc
441        Removed old zlog functions from zephyr.c
442        Implemented the dump command
443        New startup message
444       
4451.2.5
446        Patch to fix memory bug in replying to CC messages
447        If we're on Athena and have static krb (or other) libraries, use
448          them
449        Added "athstatic" program to the release, which handles the above
450        Cast to an int for isspace, to make gcc -Wall quiet
451        Added 'zlist' and 'l' to basic help.
452       
4531.2.4
454        'zlog in' will now take an optional thrid argument to set the
455             'tty' variable before setting the zlocation
456        There is now a 'zlist' command that acts like 'znol -l'
457        'l' is bound to 'zlist'
458        Fixed memory leak uninitialzed memory read in fmtext
459        viewwin will now say "End" instead of "More" when at the end
460        Added a debugging message indicating the result of topmsg
461          calculations
462        You can now use %me% in filters
463        The built-in personal filter is updated to do so
464        Fixed a bug in moving the pointer after an expunge
465        Fixed up the normal scrolling code.  Now it should always
466          land on a message, but it's still not optimal.
467        Added the variable 'smartstrip' which will strip kerberos
468          instances out for the 'reply' command.
469        Added -R/usr/athena/lib to the build for Athena
470        Started updating the intro document
471        Small changes to help / about
472        The 'subscribe' and 'unsubscribe' commands (and their aliases) now
473          update .zephyr.subs by default.  If either is given the '-t'
474          (for "temporary") option the .zephyr.subs will not be updated
475        Turned off beeping for hitting the top or bottom of the list of
476          messages
477        Made daemon.webzephyr a special case for smartstrip
478        Added 'out' as a default filter for outgoing messages
479       
4801.2.3
481        Added filters "ping", "auto" and "login" by default.
482        Added "body" as a valid field to match on in a filter.
483        Temporary fix to bug where C-SPACE would cause the key handler to
484             lock up.
485        Messages now have a direciton (in, out or none).  Filters can
486             match on this direction
487        Outbound messages are no longer type 'admin' but are of the
488             appropriate message type (i.e. 'zephyr') and are direction
489             'out'.
490        Smartnarrow now works on outgoing messages
491        'info' updated to show more information for admin and outgoing
492             messages
493        Renamed pretty_sender to short_zuser and renamed long_sender to
494             long_zuser
495        Moved zsig generation to the zwrite object
496        Print the zsig used for outgoing messages
497        The tty variable now controls the zephyr location tty name
498       
4991.2.2
500        Added the 'search' command.
501        '/' is a keybinding for 'search'
502        '?' is a keybinding for 'search -r'
503        Fixed stristr, which was completely broken
504        renamed owl_fmtext_ztext_stylestrip to owl_function_ztext_styletsrip
505             and put it in functions.c
506        Attempts to stay near the current message when switching views.
507             When switching from an empty view to one we've previously
508             been in, the new current message position will attempt
509             to be close to the current position from the last
510             time we visited that view.
511        Fixed bug in readconfig.c that prevented building under perl 5.005.
512        Switched "C-x C-x" to only "startcommand quit"
513        'getsubs' prints closer to the order you sub in.
514        Modified the behavior of last so that "> >" will clear the screen.
515        The new behavior of last is:
516              Moves the pointer to the last message in the view.
517              If we are already at the last message in the view,
518              blanks the screen and moves just past the end of the view
519              so that new messages will appear starting at the top
520              of the screen.
521        Fixed a typo in the help for smartzpunt.
522        Fixed functions to handle curmsg being past the end of the view.
523
5241.2.1
525        New framework for command handling.
526        New framework for keymap handling.
527        Added commands for everything that is bound
528             to a key (do 'show commands' to get the full list).
529        Added 'multi' and '(' commands to allow multiple commands
530             to be specified on a line.             
531        Added user keybindings with bindkey command.
532        Added command aliases (eg, "alias foo bar").
533        Added undelete command that parallels the delete command.
534        Added additional options to delete command.
535        The reply command now takes arguments.
536        Added 'edit:insert-text' command.
537        Added 'show zpunts' to show active punt filters.
538        Added 'show variable <name>' and 'show variables'.
539        Added 'show command <name>' and 'show commands'.
540        Added 'show keymap <name>' and 'show keymaps'.
541        Added 'M-u' to undelete all messages in current view.
542        Fixed dotsend so that the zephyr will still send if there
543             is whitespace after the dot but not on the same line.
544             This should resolve an issue where dotsend wouldn't work
545             if you'd gone up and edited a zephyr.
546        Bug in page down fixed
547        C-t will transpose characters
548        Fix the scrolling bug where we would sometimes fail to scroll
549             the screen down, leaving the current message off
550             the bottom of the screen.
551        Refixed 'login or login' typo in help
552        Fixed M-u description
553        Removed 'first' and 'last' from basic command help
554        Added M-N to basic key help
555        Added M-D, M-u to basic key help
556        Fixed a quoting problem in configure.in
557        Changed top of help to use 'show' instead of M-x
558        Fixed a bug in the summary field for user-created aliases
559        Added "reply zaway" which sends a zaway response to the current msg.
560        Added "edit:delete-prev-word" command and bound M-BACKSPACE to it.
561        Some buffer overruns fixed
562        Variables now have a summary and a long description.
563                Only the summary is shown with help.
564                The long description is shown with "show variable foo".
565        Added a 'scrollmode' variable which determines how the screen
566             will scroll as the cursor moves.  The default behaves
567             identically to previous versions of owl.
568             The following modes are supported:
569             normal      - This is the owl default.  Scrolling happens
570                           when it needs to, and an attempt is made to
571                           keep the current message roughly near
572                           the middle of the screen.  (default)
573             top         - The current message will always be the
574                           the top message displayed.
575             neartop     - The current message will be one down
576                           from the top message displayed,
577                           where possible.
578             center      - An attempt is made to keep the current
579                           message near the center of the screen.
580             paged       - The top message displayed only changes
581                           when user moves the cursor to the top
582                           or bottom of the screen.  When it moves,
583                           the screen will be paged up or down and
584                           the cursor will be near the top or
585                           the bottom.
586             pagedcenter - The top message displayed only changes
587                           when user moves the cursor to the top
588                           or bottom of the screen.  When it moves,
589                           the screen will be paged up or down and
590                           the cursor will be near the center.
591        Added owl_sprintf which returns the formatted string, or NULL.
592                The caller must free this string.
593                This will allocate enough memory and thus
594                avoid potential some buffer overrun situations.
595        Simple implementation of 'zwrite -m' (doesn't yet log an outgoing
596                message as having been sent.)
597        The "Not logged in or subscribing to messages" error
598                now includes the name of the recipient.
599        The "disable-ctrl-d" variable may also be set to "middle"
600                which will result in ctrl-d only sending at the
601                end of the message.  This is now the default.
602                This also added a command "editmulti:done-or-delete".
603        Fixed a bug in the "reply -e" command.
604        Always clear the command buffer before executing the command.
605                (So that interactive commands can sanely do start-command.)
606        Fixed preservation of e->dotsend across owl_editwin_clear().
607        Added history for multiline edit windows (eg, for zephyr composition).
608                The M-n and M-p keys will cycle through the history ring.
609                In particular, it is now possible to edit the command line
610                of a zephyr being composed:  C-c it and restart it
611                and then M-p to get the aborted composition back.
612        Added owl::send_zwrite(command, message) to the perl glue
613                to allow for the direct sending of multi-line messages.
614                For example:  owl::send_zwrite("-c foo -i bar", "hello");
615        Changed owl_fmtext_print_plain to return an alloc'd string to
616                avoid buffer overrun risks.
617        Added owl::ztext_stylestrip("...") function to perlglue
618                 which returns the ztext with formatting stripped out.
619        Added colorztext variable which can be used to disable @color()
620                 strings arriving in messages after it is set.
621                 (Currently, changing its value won't reformat messages).
622        Outgoing zephyr logging now obeys the logpath variable.
623        The '~' character in logpath and classlogpath now gets
624                 replaced with the user's home directory.
625        Added simple implementation of smartnarrow-to-admin that
626                 creates a "type-admin" autofilter.
627                 This was done mostly so that M-C-n and M-C-p do something
628                 sane on admin messages.
629        Added opera to the allowed options to the webbrowser variable.
630        Fixed some buffer overruns in the "reply" command.
631        When repying to "all" on a message that begins with "CC:" (eg, sent
632                 with "zwrite -C", the reply line will be constructed
633                 from the sender and the usernames on the CC: line
634                 of the message being replied to.
635        There is no such thing as C-R, so left C-r as it is but added:
636                 M-r --- edit reply to all
637                 M-R --- edit reply to sender
638        Added RCS Id strings to all files.
639        'show keymaps' shows details of all keymaps after summary list.
640        Added --no-move option to delete command.
641                In particular, delete-and-always-move-down may now
642                be implemented with
643                '( delete --no-move ; next --skip-deleted )'.
644        Folded the nextmsg and prevmsg commands and functions together into
645                one command which takes arguments.
646                Added '--filter <name>' option (eg, for next_personal),
647                '--skip-deleted' option, and
648                '--last-if-none'/'--first-if-none' options.
649                Help updated accordingly. 
650                In particular, the 'personal' filter is now used
651                for 'next personal'. 
652                Added --smart-filter and --smart-filter-instance options
653                to the next and prev commands.
654        Updated examples/owlconf.erik with the above.
655        Made owl_function_fast*filt return a string and not do the
656                narrowing, to make it more general.
657        Added a smartfilter command that creates a filter
658                based on the current message and returns the name
659                of the filter.
660        Added M-C-n and M-C-p keybindings to "move to next message
661                matching current" and "move to previous message
662                matching current"
663        Added variables edit:maxfillcols and edit:maxwrapcols which
664                will limit how wide editing paragraphs may get before
665                they get wrapped.  This is a max and may be narrower
666                depending on the current size of the window.
667                If 0, the max is unlimited.  Default is 70 columns for
668                edit:maxfillcols and unlimited for edit:maxwrapcols.
669        Added smartzpunt command with key binding of "C-x k".
670                This starts a zpunt command filled in with
671                the proposed zpunt.
672        Fixed a memory reference bug in delete and undelete commands.
673        Added support for perl to call directly back into owl.
674        Changed the implementation of owl::command("...") to immediately
675                call back into owl.  This allows perl to get the return
676                value of strings returned by owl commands.
677        Added the getview command which returns the name of the current
678                view's filter. 
679        Added the getvar command which returns the value of a variable.
680        Added an example to examples/owlconf.erik which uses TAB to
681                narrow and restore the view. 
682        Added an example to examples/owlconf.erik which uses M-c to
683                color messages matching the current one green.
684        Integrated change to fix problem with popup blinking on new zephyrs.
685        C-l and resizes will now refresh an open viewwin (eg, help).
686        Updated doc/code.txt to include info about filters, commands,
687                contexts, and keybindings.
688        Exec commands cleaned up to not have buffer-size limitations
689                and to not mess up spaces.  exec also returns a string
690                of the output now.
691        Integrated changes from 1.1.3, and added docs for "zlocate -d"
692                and new show commands.
693        Show with arguments produces help on show.
694        Fix a bug in readconfig caught by efence (where we'd try to read before
695                the beginning of a string if it was empty).
696        The perl command doesn't do makemsg directly, but instead
697             returns the string and it will get printed if it
698             was run interactively.
699       
7001.1.3
701        'show subs' and 'show subscriptions' are now the same as 'getsubs'
702        zlocate now takes an optional -d argument
703        'show terminal' / 'show term'
704        '>' / last doesn't set the last message at the top of the screen now
705        implemented _followlast as an unsupported feature
706        include 'default' in the 'show colors' list
707        added help for 'zpunt' and 'zunpunt'
708        changed the bug address in the startup message
709        can now do 'show status'
710        can now do 'show version'
711        'status' / 'show status' includes the owl version number now
712        'show terminal' includes whether the terminal can change colors
713        fixed off by one bugs in paging / scrolling viewwin
714        don't downcase the sender when getting the log name for personals
715        support @owl::fields as well as @fields
716        downcase class/inst filter names in auto filters
717
7181.1.2
719        Fixed memory mishandling bug
720        Fixed bug in redfining the filter attached to the current view
721        M-n will narrow to message, instance on non-personal, class
722             MESSAGE messages
723        M-N behavies like M-n except that on class messages it narrows
724            to class and instance
725        line wrap earlier, to account for tabbing
726        fixed typo in help
727        'status' command now displays info on terminal color support
728        zephyr @ formatting is now case independant
729        added support for color terminals
730        zephyr @color(foo) now works
731        'D' for deleted messages is now not bold, unless it's the current
732          message
733        F1 displays the help screen
734        added filter colors
735        added the 'colorview' command
736        added the 'show colors' command
737        users who don't have a .zephyr.subs get a simpler format for
738          incoming messages
739        If colors are available 'show filters' will show a filter in the
740          color associated with it.
741        Added the zpunt and zunpunt commands
742        Lines in the subs file starting with '-' are zpunted
743        Include login/logout messages in auto user filters
744        'V' changes to the home view ('all' by default)
745       
7461.1.1
747        Fixed perl, aperl, and pperl commands to deal with quoting
748              and spaces in a saner manner.
749        Removed all owl_get_* methods for booleans and switched
750              cases where they were used to owl_is_*
751        Changes to owlconf.erik to use some new features.
752        Increased the size of the help buffer (as it
753              was overflowing and truncating the help message).
754        Variables prefixed with a _ are not shown in help
755              or by printallvars (and prefixed Not Yet Implemented
756              variables with this).
757        Fix typo in help
758        include stdio.h in functions.c
759        remove stale "q to quit" from bottom of info message
760        fix downward scrolling more than a page
761        use authentication for zlocate, by default
762        fixed buffer over run in info command on long messages
763        call 'perl <file>' from Makefile to avoid hardcoding perl paths
764        in Makefile don't build owl_prototypes.h unless necessary
765        store the time for admin messages
766        display admin message time in 'info' command
767        fixed an editwin M-> last character bug
768               
7691.1
770        reply is a normal function now
771        'R' does reply to sender
772        'T' tells you how many messages were marked for deletion
773        local realm removed from login / logout messages
774        added command history
775        better runtime / starttime reporting in 'status' command
776        leave the pointer near the current message after expunge
777        C-l recenters editwin
778        implemented zlocate
779        @italic works the same as @i
780        on reply only quote class / instance when necessary
781        C-r allows you to edit the reply line
782        don't use unecessary options in reply line
783        display 'info' errors in msgwin, not popup
784        impelemnted aexec, pexec commands
785        the zsig now goes through ztext formatting
786        messages have id numbers now
787        'info' prints the msgid
788        added the 'filter' command
789        added the 'view' command
790        added the 'show filter' command
791        added the 'viewclass' (and 'vc') commands
792        added the 'viewuser' (and 'vu') commands
793        M-n will filter to the current class or user
794        'v' starts a view command
795        M-D will delete all messages in current view
796        added the 'delete' (and 'del') command
797        load-subs with no argument loads the default subs file
798        '<truncated>' is now when the *current* message is truncated
799        the reply-lockout filter (with default) specifices messages that
800           cannot be replied to.
801        in the configfile owl::receive_msg is run whenever a message is
802          received
803        added the beep command
804        added the contributors file
805        declare ZGetSubscriptions and ZGetLocations since the includes
806          don't seem to
807        fixed bug in displaying last line in popwin if no final '\n'
808        'T' uses the 'trash' filter now
809        zaway_msg, zaway_msg_default and zaway are all user variables now.
810        zsig variable overrides zsigproc
811        If there's no appendtosepbar don't interfear with the sepbar
812        Changed: owl_message_get_numlines will return 0 of m is NULL
813        Added login messages to messages marked by owl_function_delete_automsgs
814        Added owl_function_delete_by_id(id) which acts independent of view
815        Added "-id <id>" option to delete command
816        Fixed an arg checking bug in delete command
817        Added owl::id to perl namespace with message id
818        Fixed a memory corruption bug in readconfig.c (where right
819              after the strdup to "out", we'd strcat a \n onto the end.
820              This would be triggered whenever owl::format_msg returned
821              a string not ending in a newline
822        Added 'X' keybinding which expunges and then switches to
823              a view defined by the variable "view_home" which defaults
824              to "all"
825        Consolidated readconfig.c somewhat to remove duplication.
826              owl_config_execute now returns a string.
827        Added an example config file that does vt-style formatting.
828              (examples/owlconf.vtformat)
829        Added the 'perl', 'aperl', and 'pperl' commands which will
830              evaluate perl expressions.
831        Fixed bug where pclose zsigproc would cause zombies
832        Can set zsigproc or zsig to "" to disable
833        Added support for multiple browsers (galeon and none were added).
834              Configure with the "webbrowser" variable.
835        Changing typewinsize height triggers resize event.
836        Added zsig variable which will be used if no zsigproc and non-empty.
837        Added "make test" rule to Makefile which will run regression tests,
838              and added regression testing framework to tester
839        Fixed codelist.pl to ignore static declarations.
840        Added dict.c which contains string->ptr dictionary routines
841              and the owl_dict type.
842              These include regression tests.
843        Overhaul/rewrite of variable handling.  Variables are now managed
844              in an owl_vardict (in g.vars) which contains a dictionary
845              of owl_variable's.  Each owl_variable has dispatch functions
846              for validating values, setting it and getting it,
847              and for setting it to and from string values.
848              The variable.c file contains the list of variables.
849              Stubs for the owl_global_<varname>_get functions and friends
850              are generated from variable.c by stubgen.pl.
851              The help.c messages for variables now calls into variable.c
852              so all information about most variables is in one place.   
853        Cleaned out code from global.c and command.c that was made obselete
854              by variable overhaul.
855        The set command now takes a -q option to not log a message.
856        Fixed a bug where set and print with no arguments would
857              print "Undefined variable" in addition
858              to running owl_function_printallvars.
859        debug is now a variable that can be turned on and off.
860        Fixed mail,inbox message parsing in examples/owlconf.erik
861        Made zaway_msg and zaway_msg_default into variables
862        Changed owl_function_makemsg and owl_function_debugmsg
863               to use varargs (ie, so they can now take a format
864               string with args).
865        Don't allow " and \ characters in URLs with the "w" command.
866        Removed lots of build warnings.
867        Popwins are wider by default so help messages fit better.
868        Added an atokenize_free function.
869        Fixes to work with an older version of libzephyr.
870        Added dependencies on header files to Makefile.in
871        Added pageup and pagedown key bindings to message list
872        Added pageup and pagedown to viewwin
873        Added configfile section to doc/intro.txt (from example config file)
874        Added appendtosepbar variable which may contain text which will
875              be appended to the sepbar.  This allows the configfile
876              to put information about pings and logins into
877              the sepbar.  (It may be worth also providing a variable
878              which enables this by default, but for now this allows
879              for experimenting with what works well.)
880        Added doc/code.txt which gives a brief overview of the code.
881        Added tags makefile rule and added TAGS to distclean rule.
882       
8831.0.1
884        fix frees in loadsubs and loadloginsubs
885        don't return in owl_free
886       
8871.0
888        'print' and 'set' with no arguments prints all variables
889        Added the 'unsubscribe' and 'unsub' command
890        Renamed the 'unsub' command to 'unsuball'
891        Added the 'getsubs' command which is like zctl ret
892        Fixed bug in logging messages sent to more than one recipient
893        Support '-C', '-O', and '-n' options to zwrite
894        Fixed bug in owl_editwin_delete_char when there are no later chars
895          after the cursor
896        Make "more" and "truncated" work in the status bar
897        enable printing of zsigproc and loginsubs variables
898        only allow message scrolling if the message is actually off the
899          screen
900        'T' will mark all automated message for deletion
901        'P' will go to the next personal message
902        'M-P' will go to the previous personal message
903        replying to a login message goes to the user now
904        added a status command
905        added the intro doc to the release
906        fixed off by one bug in viewwin
907        added complete online help
908        pass $owl::realm in configfile
909        fixed editwin wordwrapping on the last line
910        fixed editwin problem with key_right past the last char
911        print an error and quit if the configfile can't be parsed
912        got rid of owl_mainwin_calculate_topmsg
913        fixed off by one error in calculating topmsg upwards
914        you can now reply to an admin message
915        don't display an error about keypress on window resize
916       
9170.11
918        fixed bug in viewing messages longer than the screen
919        indicate in the sepbar if there is a non zero vert offset
920        send on '.' on a line by itself
921        added disable-ctrl-d variable
922        fixed bug where C-k did not delete the last \n in the buffer
923        make non-character meta keys work
924        use ZSendNotice instead of ZSendList
925        implemented <, >, M-< and M-> in viewwin
926        removed the spaces at the bottom of viewwin
927        added 'about' command
928        fixed bug using 'M' with no current message
929        changed message object to use char *'s to save on memory
930        change malloc, realloc, strdup and free to use owl hooks so that
931           debugging can be added
932               
9330.10.1
934        fixed a trailing space bug in the parser
935        impelemented the "burning ears" feature
936        have admin messages do ztext parsing
937        fixed bug in reporting which M- key was pressed
938        C-g will now cancel commands like C-c
939       
9400.10
941        implemented owl_function_full_redisplay().
942        C-l uses owl_function_full_redisplay().
943        when a popwin exists to a full redisplay.  (fixes bug)
944        improved the owl_editwin_process_char logic
945        removed all unnecessary wrefresh's and replaced with wnoutrefesh
946        owl_editwin_redisplay now takes an argument to optionally doupdate()
947        improved the cut-and-paste speed by not doing a usleep the first
948          time through the loop after getting a keypress.
949        nuked typwin.c and associated stuff.  It's useless now.
950        added viewwin code for paging windows
951        curly braces work for zephyr formatting
952        @i in zephyr formatting will be displayed as underlined text
953        turned off idlok
954        implemented viewwin
955        implemented viewwi in popwin for pageable popwins
956        help, info now use pageable popwins
957        bound 'M' to bring the current message up in a popwin
958        return, space bar, 'b' and backspace now scroll within a message
959        turned off resize message
960        C-v and M-v page the main window
961        implemented owl_message_is_mail
962        some build cleanup
963
964       
9650.9
966        added owl_message_is_personal and have things use it
967        added owl_message_is_private
968        fixed 'print personalbell' and have 'set personalbell'
969           print a message
970        bold only on message_is_personal
971        display the realm if not local
972        implemented M-f, M-b, M-d, M-<, M-> in editwin
973        implemnted word wrapping in editwin
974        implemented M-q (paragraph-fill) in editwin
975        fixed bug that caused owl to segfault logging a 'weird' class
976        M-x is a keysym for ':'
977        added smart bolding and userclue
978        fixed a bug causing pings to beep even if rxping is off
979       
9800.8.1
981        fixed bug in logging code
982       
9830.8
984        implemented personal logging
985        implemented class logging
986        implemented resize of typewin
987        fixed the backspace problem
988        -v command line option prints the version number
989       
9900.7
991        load-subs will report error opening file
992        skip comment lines in loadsubs and loadloginsubs
993        changed internal references to rxping and txping
994        fix replying to a blank instance
995        added subscribe command
996        subscribe to login messages from .anyone by default
997        'loginsubs' variarble controlls automated login messages
998        redisplay the editwin after a resize
999        leave the cursor in the editwin if active
1000        fix problems in the build system
1001        added displayoutgoing variable
1002        temporarily removed error printing for zlog in / out
1003       
10040.61
1005        fixed bug in "message sent to <foo>" for zwrite
1006       
10070.6
1008        help updated
1009        zaway key set to caps A
1010        support zephyring other realms
1011        rxping variable for receiving pings
1012        txping variable for sending pings
1013        function in place to resize typwin
1014        C-l to refresh
1015        personal bell variable
1016        beta message now an admin message
1017       
10180.5
1019        Added the debug command and flag
1020        Fixed bug in printing fields in info command
1021        Added owl_fmtext_append_ztext and use it
1022        Better formating for pings and login zephyrs
1023        make tester depends on proto
Note: See TracBrowser for help on using the repository browser.