source: ChangeLog @ c2bcd54

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