source: ChangeLog @ 91258ca

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