source: ChangeLog @ 3c7d086a

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