source: ChangeLog @ 667a1b6

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