source: ChangeLog

Last change on this file was 678a7650, checked in by Adam Glasgall <glasgall@mit.edu>, 7 years ago
add ChangeLog entry for 1.10
  • Property mode set to 100644
File size: 91.3 KB
Line 
11.10
2 * No changes above what's already in 1.10rc1
3
41.10rc1
5 * Numerous autotools/build machinery fixes -andersk@mit.edu
6 * Numerous code correctness and simplification/cleanup fixes -andersk@mit.edu
7 * Add and use a cpanfile documenting perl module dependencies -jgross@mit.edu
8 * Add Travis configuration -jgross@mit.edu
9 * Avoid strchrnul -andersk@mit.edu
10 * Numerous IRC fixes -jgross@mit.edu
11 * Improve smartnarrow and smartfilter documentation -jgross@mit.edu
12 * filterproc: Rewrite using GIOChannel -andersk@mit.edu
13 * Implement :twitter-favorite -nelhage@nelhage.com
14 * Kill the client-side tweet length check. -nelhage@nelhage.com
15 * squelch the Twitter legacy_list_api warnings -nelhage@nelhage.com
16 * Use SSL for Twitter by default -adehnert@mit.edu
17 * Humanize zsigs -andersk@mit.edu
18 * Show Zephyr charset in info popup -andersk@mit.edu
19 * Fix Jabber SRV record support (at one point fixed connecting via jabber to google talk or facebook) -james2vegas@aim.com
20 * fix cmd_join in BarnOwl/Module/IRC.pm -james2vegas@aim.com
21 * Add a ~/.owl/ircchannels file, persist channels -jgross@mit.edu
22 * Added hooks for user going idle or active. -jgross@mit.edu
23 * Support channel-or-user IRC commands, and setup irc-msg to use it. -ezyang@mit.edu
24 * Refactor perl calls through a single method -jgross@mit.edu
25 * Really support building Perl modules from a separate builddir -andersk@mit.edu
26 * Get rid of all our embedded copies of Module::Install -andersk@mit.edu
27 * Don't let new_variable_* overriding previously set values -rnjacobs@mit.edu
28 * Messages sent to 'class messages' are not personal -jgross@mit.edu
29 * Expose message_matches_filter to perl -jgross@mit.edu
30 * Fail fast on -c filsrv, which most people won't have permission to send to -rnjacobs@mit.edu
31 * zcrypt: Use getopt_long for argument parsing -andersk@mit.edu
32 * zcrypt: Accept -help and --version -andersk@mit.edu
33 * barnowl --help: Write to stdout and exit successfully -andersk@mit.edu
34 * Don't swallow errors in :unsuball -davidben@mit.edu
35 * Allow testing in a separate build directory -andersk@mit.edu
36 * Add support for arbitrary Perl subs for getters and setters for barnowl variables -glasgall@mit.edu
37 * owl_zephyr_loadsubs: Don’t leak memory on error opening ~/.zephyr.subs -andersk@mit.edu
38 * Make :loadsubs reload instanced personals too -davidben@mit.edu
39 * Fix some undefined behavior in filter.c, caught by clang scan-build -jgross@mit.edu
40 * Die on a failed zephyr_zwrite; don't silently ignore it -jgross@mit.edu
41 * Fix a memory leak in zcrypt.c, caught by clang scan-build -jgross@mit.edu
42 * zcrypt: Make gpg stop messing around in ~/.gnupg -andersk@mit.edu
43 * Fix display of pseudologins -davidben@mit.edu
44 * Unbundle random Facebook module libraries -davidben@mit.edu
45 * Replace deprecated GLib < 2.31.0 APIs -andersk@mit.edu
46 * Abstract g->interrupt_lock -andersk@mit.edu
47 * zephyr: Replace outgoing default format with a small URL -geofft@mit.edu
48
491.9
50 * Update Jabber module for Net::DNS changes -james2vegas@aim.com
51 * Update and make configurable the Zephyr default format -adehnert@mit.edu
52 * Fix a crash when zcrypt fails -andersk@mit.edu
53 * Fix building with OpenSSL before 0.9.8 -andersk@mit.edu
54 * Make :loadsubs reload instanced personals too -davidben@mit.edu
55 * Make Perl zephyr_zwrite call die() when it fails -jgross@mit.edu
56 * Tell gpg calls from zcrypt to ignore ~/.gnupg -andersk@mit.edu
57 * Replace outgoing zephyr default format with a small URL -geofft@mit.edu
58 * Add getnumlines() to perl interface -asedeno@mit.edu
59 * Include names of invalid filters on filter errors -adehnert@mit.edu
60 * Don't incorrectly mark decryption failures as decrypted -davidben@mit.edu
61 * Hide the default cursor when possible -davidben@mit.edu
62 * Complete viewperson and vp as viewuser and vu -davidben@mit.edu
63 * Set z_charset = ZCHARSET_UTF_8 -andersk@mit.edu
64 * Allow zsender spoofing on cross-realm classes -andersk@mit.edu
65 * Append the realm to the zsender if missing -andersk@mit.edu
66 * Redisplay on setting colorztext -jgross@mit.edu
67 * Rename default config file to .owl/init.pl -kevinr@free-dissociation.com
68 * Add completion for jabberlogout -adehnert@mit.edu
69 * Switch to interactive context before sourcing the startup file -davidben@mit.edu
70 * Add completion for reload-module -adehnert@mit.edu
71 * editwin callback for canceling the editwin -jgross@mit.edu
72 * Fix dirtying windows inside a redraw handler -davidben@mit.edu
73 * Facebook module -ezyang@mit.edu
74 * Complete unstartup command just like startup command -jgross@mit.edu
75 * Fix the description of disable-ctrl-d -jgross@mit.edu
76 * Use wbkgrndset instead of wbkgdset in _owl_fmtext_wcolor_set -davidben@mit.edu
77 * Show the time zone in :info -jgross@mit.edu
78 * Treat [!.?]" as end of sentence in edit:fill-paragraph -jgross@mit.edu
79 * Correctly display multiline fields in :info -jgross@mit.edu
80
811.8.1
82 * Only add outgoing messages for personal part of half-personal messages -andersk@mit.edu
83 * Don’t write CC: line on zwrite -C '' -andersk@mit.edu
84 * Don’t send public pings on zwrite '' or zwrite @REALM -andersk@mit.edu
85 * Don’t treat zwrite '' as personal -andersk@mit.edu
86 * Stop pretending to support zwrite * -andersk@mit.edu
87 * Show foreign realms on non-personal zephyrs like Owl did -andersk@mit.edu
88 * Fix memory leak in zcrypt -davidben@mit.edu
89 * Don't attempt to switch filters in :view -d if invalid -davidben@mit.edu
90 * Fixed typo in unbindkey usage error -rileyb@mit.edu
91 * Fix bug generating filter text in 256-color mode -asedeno@mit.edu
92 * Remove ^noc from reply-lockout -geofft@mit.edu
93 * Avoid quadratic loops when receiving zephyrs -andersk@mit.edu
94 * Fix hang on empty zcrypt messages -adehnert@MIT.EDU
95
961.8
97 * Compute the home directory in zcrypt consistently with BarnOwl -davidben@mit.edu
98 * Make help show the correct keybinding for A -jgross@mit.edu
99 * Add a delete-and-expunge command. -jgross@mit.edu
100 * Fix a bug in the expunge command -jgross@mit.edu
101 * Replace 'Owl' with 'BarnOwl' in user visible places -jgross@mit.edu
102 * Allow zsigs to be '0' -jgross@mit.edu
103 * Reformat the man page to look more like others -davidben@mit.edu
104 * Consistently use BarnOwl or barnowl -davidben@mit.edu
105 * Update autoconf macros -andersk@mit.edu
106 * history: Do not deduplicate a partial entry -andersk@mit.edu
107 * Drop show timers feature -davidben@mit.edu
108 * Add new dependencies, AnyEvent and perl-Glib -davidben@mit.edu
109 * Bump required glib version to 2.16 -davidben@mit.edu
110 * Don't leak timestr when setting time in a perl message -asedeno@mit.edu
111 * Build with -Wwrite-strings -andersk@mit.edu
112 * Build with C99 -davidben@mit.edu
113 * Jabber: Handle nicks with leading dashes (e.g. Facebook XMPP) -ezyang@mit.edu
114 * Move log-writing onto a background thread. -adam@crossproduct.net
115 * Remove the length limit on field values in :info -jgross@mit.edu
116 * Show how far you are in a long message -jgross@mit.edu
117 * stderr_redirect_handler: Handle partial or failed reads -andersk@mit.edu
118 * Inform the user when an unpunt command does nothing -davidben@mit.edu
119 * Replace custom event loop with GLib's GMainLoop -davidben@mit.edu
120 * Encode glib version requirements in pkg-config check -asedeno@mit.edu
121 * Fix color pair usage on ncurses builds without ext-color -davidben@mit.edu
122 * IRC: Fix reconnect behavior. -nelhage@mit.edu
123 * IRC: Make nick-change events LOGIN messages instead of ADMIN. -nelhage@mit.edu
124 * IRC: Port module to AnyEvent::IRC. -asedeno@mit.edu, nelhage@nelhage.com
125 * Ability to set exposure arbitrarily (like "zctl set exposure") -jgross@mit.edu
126 * Kill --remove-debug option -davidben@mit.edu
127 * exec: Fix input redirection of multistatement commands -andersk@mit.edu
128 * Correctly set the realm in outgoing zwrite errors -davidben@mit.edu
129 * Correctly compute the realm for outgoing messages -davidben@mit.edu
130 * In duplicated outgoing zephyrs only reply on the relevant recipient -davidben@mit.edu
131 * Create per-recipient copies of outgoing messages for non-CC'd personals -liudi@mit.edu
132 * Add black to :show colors -andersk@mit.edu
133 * Fix reporting of errors from libzephyr -kcr@1ts.org
134 * Load Encode module for IRC. -timhill@alum.mit.edu
135 * IRC: Sort the output of :irc-names -nelhage@mit.edu
136 * Prepend "UNAUTH: " to displayed sender for unauthenticated zephyrs -adam@crossproduct.net
137 * For ‘punt’ with one argument, quote the filter name -andersk@mit.edu
138 * Fix spurious error running ‘punt’ with no arguments -andersk@mit.edu
139 * Only handle CCs in messages sent directly to you. -davidben@mit.edu
140 * Update copyright notices for 2011 -davidben@mit.edu
141 * If a smartfilter fails to parse, handle the error -davidben@mit.edu
142 * Replace per-editwin killbuf with a global one. -adam@crossproduct.net
143 * Don't use error_message if we are building without Zephyr. -nelhage@mit.edu
144 * Fix replying to outgoing zwrite when -m is passed -davidben@mit.edu
145 * Fix a number of quoting bugs -davidben@mit.edu
146 * Check passwd entries to determine home dir -davidben@mit.edu
147
1481.7.1
149 * Append sender's realm to CC'd unqualified names when replying. -adam@crossproduct.net
150 * Don't reset ncurses colorpairs in the middle of drawing. -davidben@mit.edu
151 * Fix viewuser when an unqualified name is given. -davidben@mit.edu
152
1531.7
154 * Fix quoting bugs in smartfilter, zpunt, and numerous other commands. -davidben@mit.edu
155 * Download Twitter consumer keys from barnowl.mit.edu. -nelhage@MIT.EDU
156 * Fix unsub when .zephyr.subs is a symlink. -jgross@MIT.EDU
157 * Display subject as XMPP personal context (if set). -adehnert@mit.edu
158 * Allow adding text to the command history. -adehnert@mit.edu
159 * Fix webzephyr handling. -asedeno@mit.edu
160 * Fix searching for text containing '!'. -andersk@mit.edu
161 * Fix a number of memory leaks. -davidben@mit.edu
162 * Correctly narrow on personals from realm-less senders. -davidben@mit.edu
163 * Add a random zsig function -kevinr@free-dissociation.com
164 * Implement searching in popup windows (help, etc.). davidben@mit.edu
165 * When a zwrite fails, display a more accurate error than "Waiting for ack". davidben@mit.edu
166 * Fix editwin motion for empty first lines -davidben@mit.edu
167 * Handle incoming messages with tab characters better. -davidben@mit.edu
168 * Use fpathconf to disable signals -asedeno@mit.edu
169 * Fix tab-completion of aliases. -nelhage@mit.edu
170 * Fix a crash and some bugs in 'zcrypt'. -nelhage@mit.edu
171 * Display the cleartext on outgoing zcrypted personals. -nelhage@mit.edu
172 * Add owl_window framework to allow more flexible UI. -davidben@mit.edu
173 * Display submap bindings in :show keymap KEYMAP. -davidben@mit.edu
174 * Make unit test environment more consistent with standard BarnOwl. -nelhage@mit.edu
175 * Jabber: Set long_sender in a MUC to the full sender JID (from presence). -andersk@mit.edu
176 * Do not instantiate various timers unless used. -davidben@mit.edu
177 * Make smartnarrow work better on CC:'d personals. -nelhage@mit.edu
178 * Set edit:maxwrapcols to 70 by default. -andersk@mit.edu
179 * Allow disabling of both automatic wrapping and filling, display soft line-breaks. -nelhage@mit.edu
180 * Fix a bug in editwin redraw with echochar set. -nelhage@mit.edu
181 * Refactor resize code to cut down on flicker and relayout the popwin. -davidben@mit.edu
182 * Make viewperson, vp aliases for viewuser. -kevinr@free-dissociation.com
183 * Import Twitter module into main tree. -nelhage@mit.edu
184
1851.6.2
186 * Use a uniquified debug file location. -nelhage@mit.edu
187 * Open the debug file using O_EXCL and an explicit mode. -nelhage@mit.edu
188 * Don't send AIM passwords to the debug log. -geofft@mit.edu
189 * Remove some dead AIM code that sends local files to the server. -geofft@mit.edu
190 * Handle errors from ZPending and ZReceiveNotice (CVE-2010-2725). -nelhage@mit.edu
191 * Include the public repository URL in the README -alexmv@mit.edu
192 * Install the documentation in 'make install'. -nelhage@mit.edu
193 * Add a configure flag to enable/disable building with krb4. -wthrowe@mit.edu
194 * Fix an infinite loop on 'view -r args'. -nelhage@mit.edu
195 * Free paths to Zephyr dot-files when non-existant -davidben@mit.edu
196 * Jabber: Accept a -m argument to jwrite to set the message. -nelhage@mit.edu
197
1981.6.1
199 * Jabber: Explain how to set your nick when joining a MUC. -andersk@mit.edu
200 * Jabber: Make smartnarrow -i filter on subject. -andersk@mit.edu
201 * Jabber: Fix completion of MUC names. -nelhage@mit.edu
202 * Improve help for bindkey and unbindkey -leonidg@mit.edu
203 * Fix a segfault in smartnarrow. -nelhage@mit.edu
204 * Fix a race in handling of resize events. -andersk@mit.edu
205
2061.6
207 * Support filtering on whether a message has been deleted. -nelhage@mit.edu
208 * Properly quote strings containing newlines or tabs. -nelhage@mit.edu
209 * Check for an unset mark in owl_editwin_replace_region. -nelhage@mit.edu
210 * Add the "narrow-related" variable. -geofft@mit.edu
211 * Fix a display bug under perl 5.12. -nelhage@mit.edu
212 * Only use typewindelta when opening multiline editwins. -nelhage@ksplice.com
213 * Add some checks to ./configure. -nelhage@mit.edu
214 * Fix a use-after-free in popexec.c -nelhage@mit.edu
215 * Make pseudologins asynchronous -asedeno@mit.edu
216 * Fix some bugs in editwin handling and clean up code. -nelhage@ksplice.com
217 * Add new command unbindkey for removing keybindings -leonidg@mit.edu
218 * zcrypt: Implement AES encryption support using GPG. -nelhage@mit.edu
219 * Add usage messages to everything in scripts/ -nelhage@mit.edu
220 * Split zcrypt into an external, standalong binary. -nelhage@mit.edu
221 * Fix minor documentation typo -alexmv@mit.edu
222 * Document the init/cleanup vs. new/delete naming conventions. -andersk@mit.edu
223 * Clean up code naming conventions to help avoid memory leaks.. -andersk@mit.edu
224 * Add edit:help command for zsh-style in-edit help -davidben@mit.edu
225 * Use libpanel to simplify and improve display layer. -davidben@mit.edu
226 * Jabber: Mention [-a <account>] in :help jwrite. -andersk@mit.edu
227 * Fix zcrypt when compiling without krb4 -oremanj@MIT.EDU
228 * Send multiple PRIVMSGs for IRC messages entered as multiple paragraphs -oremanj@mit.edu
229 * Require automake ≥ 1.7.0, and don’t warn about portability to non-GNU make. -andersk@mit.edu
230 * Makefile.am: Use only direct children in SUBDIRS, to appease automake 1.7. -andersk@mit.edu
231 * IRC: irc-disconnect on a pending reconnect should cancel it. -nelhage@mit.edu
232 * Complete several commands that accept a filename. -nelhage@mit.edu
233 * Complete the 'print' and 'bindkey' commands. -nelhage@mit.edu
234
2351.5.1
236 * Fix numerous memory leaks. -andersk@mit.edu
237 * owl_message_get_cc_without_recipient: Don’t overflow the output buffer. -andersk@mit.edu
238        (Fixes CVE-2010-0793)
239 * owl_command_aimwrite: Fix a buffer overflow on aimwrite -m. -andersk@mit.edu
240 * zcrypt: Don’t read off the end of misaligned input messages. -andersk@mit.edu
241 * Fix zcrypt when compiling without krb4 -oremanj@MIT.EDU
242 * Fix a crash narrowing to certain messages. -andersk@mit.edu
243 * Fix a subtle bug in the perl bindings. -nelhage@mit.edu
244 * Squelch an 'uninitialized' warning in recv:shift-left. -nelhage@mit.edu
245
2461.5
247 * Show the prompt in short editwins when scrolling back to the start. -nelhage@mit.edu
248 * Improve handling of some Jabber messages. -asedeno@mit.edu
249 * Allow ^Z to be rebound. -nelhage@mit.edu
250 * Skip some IRC admin messages by default, controlled by irc:skip -alexmv@mit.edu
251 * Reconnect and re-join channels on IRC disconnect -alexmv@mit.edu
252 * Correct the --with-libzephyr help string to --with-zephyr. -andersk@mit.edu
253 * Improve performance narrowing to certain filters. -nelhage@mit.edu
254 * Add completion for :filter* -adehnert@mit.edu
255 * Fix filter* -adehnert@mit.edu
256 * Mark the current mark with an asterisk -davidben@mit.edu
257 * Complete class names for the 'unsub' command. -nelhage@mit.edu
258 * Make control characters human-readable -kcr@1ts.org
259 * Further complete the show command -davidben@mit.edu
260 * Fix a bug reflowing text in the editwin. -davidben@mit.edu
261 * Reconnect to MUCs when reconnecting to Jabber. -asedeno@mit.edu
262 * Fix spurious trailing newlines in zsigs. -andersk@mit.edu
263 * Fix the behavior of the zsig variable.  -kcr@1ts.org
264 * Drop owl_animate_hack. -asedeno@mit.edu
265 * Add IRC server and channel listing to buddylist -alexmv@mit.edu
266 * Make Jabber try to reconnect when disconnected, at exponential intervals -alexmv@mit.edu
267 * Better documentation for jabberlogout. -asedeno@mit.edu
268 * jabberlogout -a --> jabberlogout -A -asedeno@mit.edu
269 * Change the default jabber resource to 'barnowl' -asedeno@mit.edu
270 * Updated Jabber documentation for consistency. -zhangc@mit.edu
271 * Document :bindkey more clearly. -geofft@mit.edu
272
2731.4
274 * Fix description of edit:history-next -davidben@mit.edu
275 * Don’t loop infinitely on matching the empty string. -andersk@mit.edu
276 * Fix a typo in the jroster help message. -asedeno@mit.edu
277 * IRC: Handle 'nosuchchannel' events. -nelhage@mit.edu
278 * Add a function for perl to query whether Zephyr is available. -nelhage@mit.edu
279 * Add a perl hook that is called once Zephyr is initialized. -nelhage@mit.edu
280 * AIM: Decode incoming messages properly. -nelhage@mit.edu
281 * AIM: Correctly send outgoing IMs with high-bit characters. -nelhage@mit.edu
282 * IRC: Encode outgoing messages as utf-8. -nelhage@mit.edu
283 * Return unicode strings to perl. -nelhage@mit.edu
284 * IRC: Fix '-a' with commands that take a channel. -nelhage@mit.edu
285 * Catch ^Z and display a message instead of suspending. -nelhage@mit.edu
286 * Fix missing commands from command completion. -nelhage@mit.edu
287 * Make kill-region stop killing extra bytes after multibyte characters. -andersk@mit.edu
288 * Squelch some 'uninitialized' warnings in IRC completion. -nelhage@mit.edu
289 * Add minimal completion for 'aimwrite'. -nelhage@mit.edu
290 * Zephyr completion: Convert fields to lowercase for completing. -nelhage@mit.edu
291 * Implement a shift_words method on completion contexts. -nelhage@mit.edu
292 * Export skiptokens to perl. -nelhage@mit.edu
293 * owl_text_quote: Don’t leak a kretch-sized buffer. -andersk@mit.edu
294 * Spread the background color across the right hand side of messages -kcr@1ts.org
295 * Perl callout for zsig computation + move default to perl -kcr@1ts.org
296 * BarnOwl::get_zephyr_variable gets you a .zephyr.vars variable -kcr@1ts.org
297 * Correctly prototype functions with no parameters as foo(void), not foo(). -andersk@mit.edu
298 * Cause unsub to warn user if user wasn't subbed -davidben@mit.edu
299 * Refresh popwin border when we redisplay viewwin -davidben@mit.edu
300 * owl_command_zcrypt: Fix a compile warning building without zcrypt. -nelhage@mit.edu
301 * Compile with warnings enabled by default. -andersk@mit.edu
302 * Add equivalent long options for all short options. -nelhage@mit.edu
303 * Remove defunct TODO and BUGS files. -nelhage@mit.edu
304 * editwin: Properly update points inside a replaced region. -nelhage@mit.edu
305 * Shift-R on CC zephyrs should go to the sender only -adehnert@mit.edu
306 * BarnOwl::Module::Jabber: Quote jroster auth, deauth commands. -andersk@mit.edu
307 * Use automake’s silent-rules mode if available, for quieter build output. -andersk@mit.edu
308 * Add configurable time display -adehnert@mit.edu
309 * Add BarnOwl::redisplay() -asedeno@mit.edu
310 * Bind C-v and M-v in popless windows -nelhage@mit.edu
311 * Fix an off by one error in some editwin code. -asedeno@mit.edu
312 * Make zdots work even if the buffer has trailing whitespace. -nelhage@mit.edu
313 * Fix pseudo-login interation with zephyr initialization. -asedeno@mit.edu
314 * Correct the --with-libzephyr help message in the configure script. -broder@mit.edu
315 * Set the UTF-8 flag on on strings we pass to Perl. -nelhage@mit.edu
316   * aim.c, perlconfig.c: Fix format string bugs. -andersk@mit.edu
317 * BarnOwl::Completion: Use multi-argument quote. -andersk@mit.edu
318 * Jabber: Add quoting for editwin prompt. -andersk@mit.edu
319 * IRC: Add quoting for reply commands and editwin prompt. -andersk@mit.edu
320 * Fix quoting for filterappend, filterand, filteror. -andersk@mit.edu
321 * skiptokens: Handle quotes more correctly. -nelhage@mit.edu
322
3231.3
324 * Clean up the edit window code significantly. -kcr
325 * Support inputting tabs in the editwin. -kcr
326 * Support C-y for yanking text in the editwin. -kcr
327 * Implement some convenience commands for working with filters. -adehnert
328 * IRC: Fix "ARRAY(0x...)" at the start of 'whois' output. -nelhage
329 * Expands tabs to 8 spaces in incoming and outgoing messages. -nelhage
330 * Make 'zwrite -C ... -m ...' add a CC: line. -nelhage
331 * Switch the build system to use automake. -nelhage
332 * Make BarnOwl::$COMMAND to warn if it tokenizes its arguments. -nelhage
333 * Expose more editwin functionality to perl. -nelhage
334 * Quash a zephyr 3 warning by adding some missing consts. -andersk
335 * Fix crash on malformed multi command. -andersk
336 * owl_command_punt_unpunt: Plug memory leak. -andersk
337 * stderr_redirect_handler: Plug a memory leak. -andersk
338 * Jabber: Sort roster entries. -asedeno
339 * Get rid of a whole bunch of useless casts. -andersk
340 * Reimplement search in terms of owl_regex. -andersk
341 * Export owl_function_debugmsg to perl as BarnOwl::debug(). -nelhage
342 * Implement a tab-completion framework. -nelhage
343 * Tab-complete commands. -nelhage
344 * Tab-complete zephyr commands. -nelhage
345 * Tab-complete help command. -davidben
346 * Tab-complete :jwrite. -asedeno
347 * Tab-complete :filter. -davidben
348 * Tab-complete IRC commands. -broder
349 * Tab-complete the :show command. nelhage
350 * Tab-complete :vu and :vc. -nelhage
351 * Tab-complete :set and :getvar. -davidben
352 * Tab-complete :view. -davidben
353 * Improve JID resolution. -asedeno
354 * Quash some unused variable warnings building --without-zephyr. -andersk
355 * Use 'const' modifiers in the source where appropriate. -andersk
356
3571.2.1
358 * Fix building with Zephyr support. -nelhage
359 * Support --with-stack-protector in 'configure'. -nelhage
360
3611.2
362 * Fix some typos in source and messages. -adehnert
363 * Support an explicit --with{out,}-zephyr configure option. -nelhage
364 * Display a nicer error in :blist if .anyone doesn't exist. -geofft
365 * Don't zcrypt shift-R replies to zcrypted messages -adehnert
366 * Export a time_t for messages to perl as 'unix_time' -nelhage
367 * Get rid of cryptic numeric messages after IRC commands. -ezyang
368 * IRC: Include IRC admin messages in the 'irc' filter. -geofft
369 * Fix M-LEFT and M-RIGHT bindings. -nelhage
370 * Fix replycmd to use right class/instance -adehnert
371 * Allow SIGINT to interrupt getting the Zephyr buddy list -nelhage
372 * Break perlwrap.pm into multiple files. -nelhage
373 * Handle errors in perlwrap.pm better. -nelhage
374 * Don't attempt to send a Zephyr logout if we never initialized Zephyr. -nelhage
375 * Display personals better in OneLine mode. -adehnert
376 * Display context for pings -adehnert
377 * Support --program-{prefix,suffix,transform}. -nelhage
378 * Send instanced pings and give useful error messages -adehnert
379 * Add <message,*,%me%> to default BarnOwl subs. -adehnert
380 * Maintain instance when using shift-R on personals -adehnert
381 * Improve handling of outgoing instanced personals -adehnert
382 * Don't require personals to be -i personal. -geofft
383 * Display context for personals, so as to make <message,*,%me> usable. -geofft
384 * Implement mark and swap in the message list. -asedeno
385 * Fix handling of C-SPACE. -nelhage
386 * Fix some warnings. -nelhage
387 * Handle SIGINT, and make ^C interrupt searches. -nelhage
388 * Fix the usage line for punt/unpunt -nelhage
389 * Small bugfixes to release scripts. -nelhage
390
3911.1.1
392 * Fix bogus errors 'subscribing to login messages'. -nelhage
393 * Correctly send Zephyr login notices at startup. -nelhage
394 * Fix compilation with Zephyr support. -alexmv
395 * Fix an issue with incoming Zephyrs being delayed. -asedeno
396 * Fix display of zpunt lines. -asedeno
397 * Handle invalid regular expressions better (fix a segfault). -nelhage
398 * Correctly handle zpunts with recipient %me%. -nelhage
399 * Always send outgoing Zephyrs in utf-8. -nelhage
400 * Fix documentation for 'zsig' and 'zisgproc'. -nelhage
401 * Fix personal replies on webzephyr. -geofft
402 * Fix two memory leaks formatting messages. -nelhage, andersk
403 * Fix Makefile on platforms with Solaris tar. -nelhage
404
4051.1
406 * Support building with -fstack-protector. -hartmans
407 * Don't save partial passwords in editwin history. -nelhage
408 * Improve IRC documentation. -nelhage
409 * Don't use the 'zsender' variable for personals. -geofft
410 * Implement irc-quote and irc-mode. -nelhage
411 * Leave a one-column margin when wordwrapping. -nelhage
412 * Remove some autotools-generated files. -andersk
413 * Include IRC in the default build. -nelhage
414 * Add a wordwrapping variant of the default style. -nelhage
415 * Don't send stderr to admin messages. -nelhage
416 * Remove a build-dependency on krb4. -hartmans
417 * Allow the creation of type zephyr messages from perl. -geofft
418 * Initialize Zephyr asynchronously at startup. -nelhage
419
4201.0.5
421 * Implement initial support for real timers. -nelhage
422 * Fix some compile warnings. -nelhage
423 * Don't ignore the --datarootdir setting. -andersk
424 * Replace questionable sprintf(buf, "%s...", buf, ...) pattern. -andersk
425 * Show IRC /me messages with the conventional * instead of bold -andersk
426 * Rip out the openurl function and related variables. -andersk
427 * Stop leaking perl variables in :perl. -nelhage
428 * Display multi-line error messages as admin messages. -nelhage
429 * Fix a bug rendering multi-byte characters in the last column of the window. -andersk
430 * Map Esc-A/B/C/D like arrow keys everywhere. -geofft
431 * Fix a bug trying to disconnect from Jabber with no accounts connected. -asedeno
432 * Call perl_sys_init3 to make libperl work on several other platforms. -hartmans
433 * Bind the 'Delete' key to delete the next character. -andersk
434 * Fix a double-free in owl_zephyr_delsub. -geofft
435 * Don't fill-paragraph the ending dot of the buffer. -price
436 * Fix numerous unsafe uses of sprintf(). -nelhage
437        (Fixes CVE-2009-0363)
438
4391.0.4
440 * Added a ':show quickstart' command. -geofft
441 * Allow filters that reference a sub filter more than once non-cyclically. -nelhage
442 * Make 'version' return 'BarnOwl' not 'Owl'
443 * Escape interpolated regexes in filters. -andersk
444 * Various code cleanups. -andersk
445 * Fix format string injection bugs. -andersk
446 * Clean up various code warnings. -nelhage
447 * Replace questionable sprintf(buf, "%s...", buf, ...) pattern. -andersk
448 * Show IRC /me messages with the conventional * instead of bold. -andersk
449 * Rip out the openurl function and webbrowser variable. -andersk
450
4511.0.3
452 * Moved BarnOwl source control to git on github.
453 * Only call the zsig proc when we actually send a message. -asedeno
454 * Strip out BOMs from Jabber messages. -asedeno
455 * Fix logging of personal jabbers from JIDs containing / -nelhage
456 * Fix Jabber breakage under reload-modules. -asedeno
457 * Make reload-moduled correctly re-run startup hooks. -asedeno
458 * Squelch Jabbers with no bodies, such as typing notifications. -asedeno
459 * Various small spelling and grammar fixes. -geofft
460 * Fix a segfault when sending short zcrypted messages. -asedeno
461
4621.0.2.1
463 * Fix :reload-module's interactions with PAR modules
464
4651.0.2
466 * Fix a segfault on retrieving zephyr subs when the user doesn't
467   have any or has expired tickets. -asedeno
468 * Don't complain about non-existant ~/.owl/startup when starting. -asedeno
469 * Fix narrowing to personals in IRC. -alexmv
470 * Don't segfault retrieving subscriptions without valid tickets. -asedeno
471 * Load modules even if .owlconf doesn't run successfully. -nelhage
472 * Update the manpage for barnowl. -nelhage
473 * Better support for irc-names, irc-topic, and irc-whois. -geofft
474 * Display /quit messages in IRC -geofft.
475 * Add a new perl hook for all new messages. -geofft
476 * Fix a bug causing corrupted input in the editwin on end-of-line. -nelhage
477 * Add better support for adding hooks in perl that behave correctly
478       on module reload. -nelhage
479 * Added a :reload-module command to reload a single module. -nelhage
480 * Fixed quoting issues replying to jabber users or MUCs containing
481        whitespace or quites. -nelhage
482
4831.0.1
484 * Remove an unneeded .orig file from libfaim/ - hartmans
485 * Update the copyright notice in ':show license' - nelhage
486 * Add a jabber:spew variable that controls whether unrecognized
487   Jabber messages (such as pubsub requests) are displayed. - nelhage
488 * Make the 'style' command assume the main:: package for
489   unqualified subroutine references. Reported by Jesse Vincent. - nelhage
490 * Rename doc/contributors to the more canonical AUTHORS - nelson
491
4921.0.0
493 * Don't fail silently when sourcing a file; actually let the user know. - asedeno
494 * Only hang for 1s, rather than 10s, if there is no zhm - nelhage
495 * Merge the unicode branch to trunk. BarnOwl is now unicode aware
496   and can send, receive, input and display UTF-8 encoded
497   messages. Unicode changelog:
498   * Put glib's CFLAGS and LDFLAGS at the beginning of the corresponding
499     variables. - nelhage
500   * Unicode branch: Fix building without zephyr. - asedeno
501   * Fix a unicode branch wordwrap problem. - asedeno
502   * Fixing an obscure wrapping bug that nelhage and I tracked down. - asedeno
503   * Rename configure.in to configure.ac so Debian autoconf DTRT. - nelhage
504   *  Fix a bug in owl_editwin_move_to_previousword() which would skip over
505       single letter words. - asedeno
506   * I think I like this better. - asedeno
507   * Fix nelhage's key_left bug. Don't spin at the locktext boundary. - asedeno
508   * fix a typo in OWL_FMTEXT_UTF8_BGDEFAULT
509   * fix a parsing issue for attributes - asedeno
510   * Better compliance with UTF-8 processing. Stop trying
511     to pull in a UTF-8 character as soon as we know something has gone
512     wrong. - asedeno
513   * Removing more hackery I left behind after doing things
514     the right way. - asedeno
515   * editwin.c - fix a wrapping bug I introduced in the
516     last revision. It could leave us with a buffer that was not valid UTF-
517     8 - asedeno
518   * editwin.c - lots of utf-8 cleanup that I had been
519     putting off. util.c - a can we break here'' function based on perl's
520     Text::WrapI18N - asedeno
521   * Remove more bad hacks. - asedeno
522   * Remove a debug message I accidentally left in. Remove
523     the hours old check_utf8 hackery in favor of actually marking strings as
524     UTF-8 from the C side. - asedeno
525   * editwin.c: make locktext deal with UTF-8
526   * Jabber - More utf-8 sanitizing.
527   * Pet peeve - tabs. That should be the end of it for
528     now. - asedeno
529   * Shuffling a line of code to where it actually should
530     be. - asedeno
531   * Patches to jabber libraries for better UTF-8
532     handling. - asedeno
533   * fix a typo that was causing background problems
534   * pass defaults attributes through in the truncate functions - asedeno
535   * Eliminating a warning by un-internalizing a new fmtext
536     function. - asedeno
537   * Do not use bit 0x80 to indicate meta. We have other uses for that bit.
538   * shift it above ncurses's KEY_MAX instead. - asedeno
539   * drop unused struct member
540   * fixing post-processing in the editwin. - asedeno
541   * Preserve colors when highlighting search terms. - asedeno
542   * ignore KEY_RESIZE if we know what that is. We don't need an
543     unhandled keypress every time we resize the terminal. - asedeno
544   * more strict utf-8 byte fetching.
545     This probably still needs more work. - asedeno
546   * Strip formmating characters when dumping to
547     file. - asedeno
548   * fixing bugs in editwin bufflen calculations. - asedeno
549   * Fix search code so higlighting actually works. - asedeno
550   * Remove options for libcurses and libncurses. This really only works with
551     libncursesw. - asedeno
552   * text entry:
553    first pass at utf-8 text entry.
554   * Change wcwidth() calls to mk_wcwidth() - asedeno
555   * First pass at outbound zephyr -> iso-8859-1 sanitizing.
556     Not that we can input anything other than ascii yet...
557   * Fixing bug encountered when last field was not null-
558     terminated. - asedeno
559   * First pass at incoming zephyr -> UTF-8 sanitizing.
560     This only operates on incoming data so far. We still need to clean outgoing
561     data -- the plan is to attempt conversion to ISO-8859-1, and use that if it
562     works. - asedeno
563   * Reworked the fmtext format to use in-line formatting.  Characters used
564     for formatting are part of Unicode Supplemental Private Area-B, or
565     Plane 16.
566   * include wchar.h
567   * replace hand-rolled width detection with wcswidth.
568   * pad with space if we end up halfway into a character at the start of a line.
569   * UTF-8 - first pass
570   * make owl_text_truncate_cols() and owl_fmtext_truncate_cols() understand character width.
571     This may need more work. Some code duplication - see if we can refactor.
572   * stristr() rewritten to yse g_utf_casefold() instead of downstr(), and restructured to have a single return.
573   * only_whitespace() rewritten for unicode.
574 * Fix sending jabbers to JIDs beginning with `+' - nelhage
575 * Compile zcrypt.c with -w so I don't get all these warnings in my compile
576   output whenever I change any headers - nelhage
577 * Implement /me for outgoing IRC messages - geofft
578 * Add a makefile rule to support emacs flymake-mode - nelhage
579 * Bind the combinations the iPhone sends for arrow keys [probably other
580   terminals, too] - nelhage
581 * avoid null pointer dereference if msg is NULL (or a 0 length is
582   claimed) - shadow
583 * Move styles from the current mishmash of different options to a unified
584   perl object interface. - nelhage
585 * Refactor default style code somewhat to be more easily extensible - nelhage
586 * Put glib's CFLAGS and LDFLAGS at the beginning of the corresponding
587   variables. - nelhage
588 * IRC: /list, /who, and /stats commands - geofft
589 * IRC: Make M-N mostly, rather than completely, useless. - geofft
590 * Fix two small bugs in styling pointed out by broder - nelhage
591 * Document create_style - nelhage
592 * Move time_hhmm into a format_time method - nelhage
593 * Remove prototypes from perlwrap.pm - nelhage
594 * Quote regexp filter elements with spaces in them. - asedeno
595 * Deal with smart-narrowing when the user's screenname has spaces in it. - asedeno
596 * Add a new struct member to the global to hold an escaped aim screenname.
597    populate the aforementioned new struct member. - asedeno
598 * Removed our debian subdirectory, per Debian guidelines, at broder's
599   request. - geofft
600 * Make `all' the first target so we build the modules by default - nelhage
601 * Commit inc/ under IRC so we build on systems with too old a M::I - nelhage
602 * updating contributors - nelhage
603 * Clean up licensing information and add a COPYING file - nelhage
604 * Update bugs email to a more professional looking address, and remove the
605   Development build warning. - nelhage
606
607BarnOwl r989 (2008-03-21)
608 * Stick modules on the beginning of @INC, not the end - nelhage
609 * Merge in the select branch. BarnOwl's main loop now uses a select()
610   based event loop rather than continually polling, and uses much less
611   CPU. - asedeno
612 * Fix a bug where an explicit (local) realm foiled
613   owl_message_get_cc_without_recipient(). (per quentin) - geofft
614 * HTML Filtering fix for BODY tag - austein
615 * Add parenthesis to fix a perl error in IRC - nelhage
616 * Make IRC admin messages actually display their content - nelhage
617 * Fix a file descriptor leak. - asedeno
618 * Fix loading PAR modules that weren't present at startup - nelhage
619 * Update perlwrap.pm documentation for the select() BarnOwl - nelhage
620 * Render IRC notices as normal messages - nelhage
621 * ensure that even if ioctl(,TIOCGWINSZ,) returns 0s we never set g->lines
622   (and g->cols) to 0 - shadow
623 * Generate less ugly error spew if a module fails to load - nelhage
624 * Added :webzephyr command with keybinding W. - geofft
625 * Fix a race condition in which zephyrs received during init are not noticed
626   until the next zephyr after entering the mainloop. - asedeno
627
628BarnOwl r941 (2008-02-18)
629 * unicode/glib branch Remove a debug message I accidentally left in. Remove
630   the hours old check_utf8 hackery in favor of actually marking strings as
631   UTF-8 from the C side. - asedeno
632 * unicode/glib branch Remove more bad hacks. - asedeno
633 * Rewrite ::Connection to not subclass Net::IRC::Connection to avoid stupid
634   namespace conflicts - nelhage
635 * svn:ignore for great justice - nelhage
636 * Attempt to load BarnOwl::MessageList::SQL and error if it fails. Note that
637   the aforementioned class n'existe pas - nelhage
638 * unicode/glib branch editwin.c - lots of utf-8 cleanup that I had been
639   putting off. util.c - a can we break here'' function based on perl's
640   Text::WrapI18N - asedeno
641 * unicode/glib branch editwin.c - fix a wrapping bug I introduced in the
642   last revision. It could leave us with a buffer that was not valid UTF-
643   8 - asedeno
644 * dropping one unnecessary time(NULL) call. - asedeno
645 * unicode/glib branch removing more hackery I left behind after doing things
646   the right way. - asedeno
647 * unicode/glib branch better compliance with UTF-8 processing. Stop trying
648   to pull in a UTF-8 character as soon as we know something has gone
649   wrong. - asedeno
650*        First prototype of a SQL-backed message list. This is probably
651        horribly broken, and is painfully slow at the moment. - nelhage
652 * minor changes to IRC
653 * Resizing should not leave the current message off screen. - asedeno
654 * Added initial IRC support. Not built or installed by default. - geofft
655 * Preserve colors when highlighting search terms. - asedeno
656 * Handle zephyrs to users on non -c message better [trac #39] - nelhage
657 * Make :reload-modules work correctly with PARs - nelhage
658 * Document (nearly) every public function in the BarnOwl:: namespace -
659   nelhage
660 * strip IRC coloring from IRC messages - nelhage
661 * Document ::Hook and ::Hooks - nelhage
662 * Nuke the stylefunc_default C code - nelhage
663 * Nuke some refs to owl_message_get_notice - nelhage
664 * Clearing the line should preserve the echochar. - asedeno
665 * Fix logins to jabber.org - reported by gendalia - asedeno
666 * Move oneline style to perl. [trac #43] - nelhage
667 * Fix the error messages sending to users who don't exist or aren't signed
668   on. - nelhage
669 * Jabber Buddy Lists:
670  * Query the jabber:show_offline_buddies once when invoking onGetBuddyList()
671  * Don't bold online roster entries when hiding offline ones - asedeno
672 * Portability - removing C++ style comments. - asedeno
673 * Add the variable 'zsender' to customize the outgoing Zephyr
674   username. - geofft
675 * Bind M-left and M-right by default in the editor - nelhage
676 * eliminate a segfault. - asedeno
677
678BarnOwl r796 (2008-01-08)
679 * Define variables at the top of blocks for better ANSI C-ness (patch by
680   Chris Laas) [trac #18] - nelhage
681 * Implement :punt and :unpunt to punt arbitrary filters, rather than just z-
682   triplets. [trac #6] - nelhage
683 * Show non-personal pings like stock owl does. [trac #12] - nelhage
684 * Fix problems with jabber servers keeping the same stream id when
685   negotiating TLS tracked down by Greg Hudson. - asedeno
686 * When we're narrowing to an instance, properly include un-instances. This
687   fixes narrowing to any instance that starts with ``un-'' - nelhage
688 * Don't read before the start of the string for an instance - nelhage
689 * Adding an explicit -f - to the tar commands for FreeBSD compatibility
690   (reported by ecprice) - nelhage
691 * Some fixes for FreeBSD. - ecprice
692 * Do ~-expansion in :loadsubs. [trac #26] - nelhage
693 * Validate JIDs passed to jmuc join. [trac #25] - nelhage
694 * Show full JIDs for users in non-anonymous JIDs in :jmuc presence. [trac
695   #24] - nelhage
696 * Don't crash if we hit `i' on a zephyr containing non-ASCII iso-8859-
697   *. - nelhage
698 * added -m flag to aimwrite - matt
699 * aimwrite -m displays according to displayoutgoing - austein
700 * Make the usleep call more reasonable for less CPU usage - asedeno
701 * Add zip as build-depends - nelhage
702 * bind END in popless windows. [trac #41] - nelhage
703 * Allow C-r on outgoing messages (useful for CCs) - chmrr
704 * Identify ourselves as barnowl more consistently - chmrr
705 * Report subscription errors more accurately. - chmrr
706
707BarnOwl r751 (2007-08-01)
708 * Refactored message processing: All new messages, incoming or outgoing, get
709   added to the owl_global_messagequeue by protocol code, and then passed to
710   owl_proces_message, which serves as a single central code path for adding
711   messages to the message list. - nelhage
712 * Properly pass the usage when defining the jabberlogin command - nelhage
713 * Outgoing messages now log as much information as incoming messages - chmrr
714 * Fix a pointer corruption issue if we redefine the current style. - nelhage
715 * Adding 3 variables for the Jabber module: jabber:show_offline_buddies,
716   jabber:auto_away_timeout, jabber:auto_xa_timeout - asedeno
717 * Don't include self when replying to CC'd messages - chmrr
718 * Outgoing CC'd messages get logged to all recipients - chmrr
719 * Incoming CC'd zephyrs logged to all people they were sent to - chmrr
720 * Change the width at which we hard-wrap outgoing zephyrs by default so
721   that zephyrs will fit on screen with the default style. (suggested by
722   andersk) - nelhage
723 * Added a -s switch to change the location of the config dir (~/.owl) -
724   nelhage
725 * Don't allow you to go off the end of an empty message list. [trac
726   #9] - nelhage
727 * Allow you to send to -c message -i personal * - nelhage
728 * Make zephyr smartnarrow use the `personal' and `private' distinction
729   properly [trac #2] - nelhage
730 * Change the default personal filter to <message,personal,*> for
731   zephyr. - nelhage
732 * Display opcodes with the default style - nelhage
733
734BarnOwl r720 (2007-05-29)
735 * Correctly define a ``private'' zephyr as one that is sent to a
736    recipient that is neither empty nor starts with ``@'' - nelhage
737 * Fix builds under make -j - nelhage
738 * Fix sending of zcrypted zephyrs - nelhage
739 * Rewrite perl internals to factor out module loading. - nelhage
740 * Fix display of zephyrs with empty instances - nelhage
741 * Implemented a Module::Install plugin for building barnowl plugins - nelhage
742 * Modified the makefile to build and install perl modules - nelhage
743 * Fix the bug in which rejoining a MUC you're already in (nick change)
744   results in the MUC appearing multiple times when you show presence info for
745   all MUCs. - asedeno
746 * Implemented loading of both PAR and unpacked modules, and module
747   reloading. - nelhage
748 * Make the Makefile build and install perl modules on a clean install.
749   - nelhage
750 * Implemented an LRU cache of the message list fmtexts. This reduces
751   memory usage by roughly 1MB/kilo-zephyrs in steady state. - nelhage
752 * Escape $ in regexes (e.g. smartnarrowed instances)
753  - nelhage
754 * Adding 256-color support. This requires a version of ncurses that supports
755   ABI-6. Colors beyond the first eight are refered to by number. - asedeno
756 * Correctly escape {} and () in regular expressions - nelhage
757 * When generating filters, change single quotes and double quotes into
758   dots, so they line parser doesn't choke on them. This fixes problems
759   smart-narrowing to instances such as "this'll break it". - asedeno
760 * Improving the private/personal distinction:
761 * ``private'' means to/or from an individual, not a chat/class/etc.
762 * ``personal'' means ``matches the personal filter'' - nelhage
763 * Beep on personal messages, not private, by default.
764  - nelhage
765 * Some small doc fixes (thanks to jwalden for pointing them out). - nelhage
766 * Added the ability to define new variables from perl. - nelhage
767 * Documented said ability via BarnOwl::new_variable_* - nelhage
768 * Add a "setsearch" command which sets the search highlight string without
769   moving the cursor. - glasser
770
771BarnOwl r657 (2007-03-06)
772 * Fix libfaim to make it compile - nelhage
773 * Apply some memory leak patches by alexmv and yoz - nelhage
774 * Make smartnarrow un- and .d-aware - chmrr
775 * Add a `getstyle' command - asedeno
776 * Make Test failures print file/line numbers - nelhage
777 * Fixed regression tests for booleans variables. - asedeno
778 * Add a perl perl hook into owl's main loop. - asedeno
779 * Added the ability to install real commands from perl code - nelhage
780 * Fix a hang in owl_editwin_move_to_previousword - nelhage
781 * Updated the version number and startup message - nelhage
782 * Added initial support for creating and injecting messages into the display
783   from perl. - nelhage
784 * Added the ability for perl code to hang arbitrary reply commands off of
785   messages. - nelhage
786 * Expose the edit window hooks to perl - nelhage
787 * Removed references to -ldes - kchen
788 * Exposed owl_function_error and owl_function_makemsg as commands - nelhage
789 * Implemented initial Jabber support. - asedeno
790 * Implemented initial Jabber groupchat support. - asedeno
791 * Added a perl hook to the buddy list display - nelhage
792 * Added a get_data_dir function to the perl interface - hartmans
793 * Don't include the default typemap in xsubpp compile line - hartmans
794 * Cause perl to always be loaded, even if no owlconf is present. - hartmans
795 * Implemented an extensible perl module system - hartmans
796 * Exposed owl_fuction_popless_text() and owl_fuction_popless_ztext() to
797   perl - asedeno
798 * Support multiple simaltaneous Jabber connections - asedeno
799 * Fixed a segfault on subbing without a .zephyr.subs file - nelhage
800 * Implemented Jabber Roster support - asedeno
801 * Don't quit if we can't contact the hostmaster. - nelhage
802 * Support filters based on arbitrary message attributes - nelhage
803 * Rewrote and massively cleaned up the filter system internals. - nelhage
804 * Fixed the ``personal'' filter to work better with all protocols - nelhage
805 * Made `smartnarrow' more generic, and implemented it for jabber. - nelhage
806 * Changed executable name to "barnowl" - nelhage
807 * Renamed the `owl::' package to BarnOwl:: - nelhage
808 * Dynamically link perl libraries - nelhage
809 * Added background color support - asedeno
810 * Added idle-time tracking, and updated jabber to automatically set away
811   status - asedeno
812 * Implemented shortnames for jabber rosters and jwriting. - nelhage
813 * Fixed a crash when smartnarrowing to instances with lots of periods or
814   other regular expression metacharacters. - nelhage
815 * Support comments in ~/.owl/startup - asedeno
816 * Dispal tweaks for MIT's -c discuss messages. - asedeno
817 * Don't override perl's idea of the switches we need to do embedding. -
818   shadow
819 * Make the default style perl, rather than C. - nelhage
820 * Refactor the default style to be protocol generic - nelhage
821 * Prefer ~/.barnowlconf to .owlconf, if it exists. - nelhage
822 * Intern hostnames and message attribute keys for a slight memory
823   saving. - nelhage
824 * Use libncursesw when available - asedeno
825
8262.1.12pre
827        Don't crash when sending/logging outgoing
828           AIM message and not logged in [BZ 90]
829        Don't crash when senging to someone not on AIM buddy list [BZ 94]
830           (patch from Alex Vandiver)
831       
8322.1.11
833        Don't crash doing zlocate with bad tickets. [BZ 12]
834        Metion the path for the owlconf in intro.txt [BZ 54]
835        Print better error message if startup fails due to unreadable
836           .owlconf [BZ 57]
837        In load-subs: Print an error message if the file is unreadable or
838          doesn't exist, UNLESS load-subs is called with no arguments.  In
839          that case only print an error if the file exists but isn't
840          readable.  Still prints an error either way if zephyr reports a
841          failure. [BZ 19]
842        Fixed some small memory leaks in logging if files unwriteable
843        If the variable logfilter is set it names a filter.  Any messages
844          matching this filter are logged.  This is an independent
845          mechanism from the other logging variables.  If you want to
846          control all logging with logfilter the other variables must be
847          set to their default (off) settings. [BZ 37]
848        Relatively substantial changes made under the hood to support
849          filter logging.  Now have more consistent interfaces to
850          creating messages etc.  Still needs more work though.
851        Deal gracefully with being resized as small as 1x1 [BZ 3]
852
8532.1.10
854        Fix a new problem finding libdes425
855        Don't crash on very long hostnames [BZ 52]
856        In 'sub' command, create .zephyr.subs if it doesn't exist [BZ 15]
857        A fix for certain resize crashes (partly from alexmv) [BZ 55]
858        Turn off ISTRIP (gildea)
859       
8602.1.9
861        Include /usr/include/kerberosIV if it's found
862       
8632.1.8
864        Do OLC formatting for anything coming from olc.matisse
865        Improvements to popup size algorithm (from gildea)
866        Improved 'show colors' with non-colored labels
867       
8682.1.7
869        The colorclass command is added, to make colorization easy
870        Handle MIT Athena OLC zephyrs correctly
871        Updated ktools website / bug address
872        Do ntohs() when printing zephyr port in zephyr info
873        Updated man page
874       
8752.1.6
876        Fixed three bugs found by Valgrind.
877        Fixed a case where doing "aim addbuddy" instead of "addbuddy aim"
878          would cause a segfault.
879        pexec will now incrimentally display data as it is output
880          by the child process.  Additionally, commands running under
881          pexec may now be killed by quitting out of the popless window.
882        Added muxevents select loop dispatcher.  File descriptors may
883          be registered with muxevents and handlers will be dispatched
884          to when data is available for non-blocking read/write/except.
885        Switched the stderr_redir stuff to use muxevents.
886        Print C-\ correctly (from gildea)
887        Dropped first brace in muxevents functions for consistency
888        Catch SIGHUP and SIGTERM and do a proper logout
889       
8902.1.5
891        Added a licence
892        The 'personalbell' variable can now be set to 'on' 'off' or
893          the name of a filter to match against
894        The 'loglogins' variable now controls whether login/logout
895          messages are logged.  It is off by default.  For now this
896          affects only AIM messages, later zephyr login/logout messages
897          will also be logged if this is set to 'on'
898        Added 'show license'
899       
9002.1.4
901        Normalize and downcase AIM names for logging
902        Fixed a bug where sending a null zsig could cause a crash
903        Better 'away' toggling if only one protocol is away.
904
9052.1.3
906        Added perl filter elements.  Similar to having "filter <subfilter>"
907          in a filter, you may also have "perl <functionname>"
908          where <functionname> is passed an owl::Message object and
909          returns 0 or 1 depending on whether the message matches
910          that element of the filter.
911        Don't print an error about loading subs if there is no
912          .zephyr.subs
913        Do the initial zephyr_buddy_check when pseduologin set to true.
914        Updated man page
915       
9162.1.2
917        removed unused filter_depth variable
918        Fixed memory bug on receiving pings
919       
9202.1.1
921        Filters of filters now work.
922        Removed the "possibly not readable" part of the config parsing
923          error
924        In the sepbar, reverse video the view name when it's not set to
925          view_home (as opposed to the static 'all').
926        The '!' key (bound to 'view -r') now creates a negative version of
927          the current view and switches to it.  i.e. "show me all the
928          messages that are not these"
929        Added the 'ignorelogins' variable
930        Log when outgoing personal message fails
931        Removed file descriptor from sigpipe catcher printer just for now,
932          since the field does not exist on OSX
933        Added an ifndef for socklen_t in libfaim/ft.c
934        Added the 'aim search' command.  The popup on callback may be
935          dangerous, should switch to an admin msg for results, or add a
936          new event queue
937        First pass at AIM away messages.  It is a little different from
938          what most clients seem to do, in that an away reply is sent for
939          each message received.  Most clients only reply to the first one
940          per away-session.
941        Now have a set of 'aaway' commands and variables just like the
942          'zaway' ones (except that changing the 'aaway' variable talks to
943          the server)
944        The new 'away' command does everything for both AIM *and* zephyr.
945          There is a known funkiness here, where if you turn one away on,
946          and then use 'away' (or 'A') to toggle, you will turn on off and
947          the other on.  Just leaving it for now.  Should do better in the
948          next patch.
949        The 'A' key is bound to 'away'
950        Status bar can now read AWAY, Z-AWAY or A-AWAY.
951        Changed C-n to scroll down just a line in popless
952        If the config exists but is not readable, print an error before
953          exiting
954        Only print forced AIM logout message once.
955        Don't bind F1 to help in edit context
956        Fix bug in 'getsubs' with no tickets
957        New code for getting users from .anyfile
958        Added the 'pseudologins' variable, and code to do it
959        new attributes 'pseudo' 'logintty' and 'loginhost'
960        Don't print extra new lines in popless_file
961        New zephyr_get_field function
962       
9632.0.14
964        Fixed missing word in startup message
965        Better 'status' command
966        Use '+' for popwin corners when 'fancylines' is off
967        Allow TERMINFO to be overridden in the envrionment
968        Command line arg -D turns on debugging and deletes previous
969          debugging file
970        Do ~ expansion in 'dump' command.
971        Current directory added to 'status' command
972        Massive changes to libfaim and aim
973       
9742.0.13
975        Changed startup message for new mailing list
976        blist now prints AIM info even if .anyone is unreadable
977        Catch SIGPIPE and print an error rather than crashing.
978                [It's possible that this may have some portability
979                issues under Solaris and we may need to add some
980                configure stuff around SA_SIGINFO...]
981        Handle the case in aim_bstream_send where aim_send returns -1,
982                although there is likely an underlying problem here
983                that would lead to this case.
984        Print the username on aim login failure, not something random like
985                the password.  ;)
986        Un-word-wrap text when sending AIM messages.
987        Replace the main loop continue in the keyboard handler with an else.
988       
9892.0.12
990        Command history now doesn't allow the last entry
991           to be repeated
992        If format_msg returns "" print "<unformatted message>"
993        Better align oneline admin and loopback messages
994        Print an admin message indicating when subscriptions can
995           not be loaded on startup
996        Set aim_ignorelogin_timer to 15 by default
997        Admin message on login/logout of AIM
998        Fixed double quoting in smartzpunt
999        Added timestamp to login/logout messages
1000        Fixed replies to loopback messages
1001        Fixed smartnarrow on classes/instances with spaces
1002        Added the 'loggingdirection' variable
1003        All loopback messages log to 'loopback' now
1004        Print an error message if trying an invalid color for a filter
1005        Fixed bug causing > not to go to end of editwin every time
1006       
10072.0.11
1008        Updated basic help
1009        Display CC: in outgoing CC messages
1010        More AIM logout detection
1011        Don't proclaim "interfaces changed" on first build.
1012        Added the 'loopback' message type
1013        Added the 'loopwrite' command
1014        Added a timestamp to the default style
1015        Zpunt now works with weird regex characters
1016        Smart filters now work with weird regex characters
1017       
10182.0.10
1019        Allow 'hostname' in filters.
1020        Fixed bug in reporting when no one is subbed to a class
1021        Added an extral newline in logging incoming zephyrs
1022        An admin message is displayed when you are logged out of AIM
1023        Print an error message and admin message if an AIM send fails
1024       
10252.0.9
1026        Added the 'fancylines' variable.
1027        Added the 'show startup' command.
1028        Added feature for capturing stderr messages
1029           from commands and displaying them in the errors buffer.
1030        Create an admin message explaning that a zephyr couldn't
1031           be sent
1032        Better reporting of perl errors (both into the errqueue
1033                and also clearing the error after displaying it).
1034        Allow default_style to be specified in config.
1035        Added errqueue
1036        Added command "show errors"
1037        Fixed bug removing newlines in backup files
1038       
10392.0.8
1040        Increased size of screen name field in buddy listing
1041        Fixed bug with idle times causing broken pipes.
1042        New libfaim
1043        Added the 'source' command.
1044        Make sure that a newline is always at the end of messages
1045                returned by perl style formatting functions.
1046        Add owl::login and owl::auth to legacy variables populated for format_msg.
1047        Additions to intro.txt and advanced.txt documents.  (Still in progress.)
1048        Add base methods for login_host and login_tty
1049                and others that return undef.
1050        New API for perl message formatting functions. 
1051                Legacy variables are still supported for owl::format_msg
1052                and owl::receive_msg, but these functions are now also
1053                passed an owl::Message object which contains methods
1054                for accessing the contents of the message.  See perlwrap.pm
1055                (and docs TBD) for the available methods.
1056                *** WARNING:  The exact API for owl::Message has
1057                *** not yet stabilized.
1058        Added "style" command for creating new styles.
1059                Usage:  style <name> perl <function_name>
1060        Added support for "show styles".  Changed global style table
1061                from list to dictionary.
1062        Changed AIM password prompt from "Password:" to "AIM Password:".
1063        Messages are reformatted after a window resize to allow styles
1064                to take into account the width of the window.
1065        When perl throws an error, the message is put in the msgwin
1066                if possible.
1067        Added perl functions for:       
1068                owl::getcurmsg() -- returns an owl::Message object for
1069                                    the active message
1070                                    in the current view.
1071                owl::getnumcols() -- returns the column width of the window
1072                owl::zephyr_getrealm() -- returns the zephyr realm
1073                owl::zephyr_getsender() -- returns the zephyr sender
1074        Made owl::COMMAND("foo"); be syntactic sugar for
1075                owl::command("COMMAND foo");
1076        Added perlwrap.pm to contain perl code to be compiled into
1077                the binary.  This is transformed into perlwrap.c by
1078                encapsulate.pl.
1079        Renamed readconfig.c to perlconfig.c and changed variables accordingly.
1080        Minor bugfixes in cmd.c and commands.c
1081        Improved intro doc
1082
10832.0.7
1084        Idletimes now appear in the buddylisting
1085        Failed AIM logins are now correctly reported
1086        Owl will build now without zephyr, enabling it to act as a
1087          standalone AIM client.
1088        There is now a zcrypt command
1089        Replies to zcrypted messages now work
1090        Don't allow zwrite if zephyr isn't present
1091        Cleaned up some warnings from linux gcc.
1092        Fixed bug that can cause response stuff to crash
1093        Improved status command
1094        Fixed bug in buddy stuff
1095       
10962.0.6
1097        aimlogin will now accept the screenname without a password and ask
1098           for the password such that it is not echo'd to the terminal
1099        'addbuddy aim' and 'delbuddy aim' now work
1100        Bug fix to make zwrite -m work with -c/-i
1101        Fixed documentation bug in aimwrite
1102        Initialze $owl::auth
1103        Fix in autoconf for des425
1104        Reformatted editwin.c and added capability of doing password-style
1105           echoing
1106       
11072.0.5
1108        Fix in finding des for building zcrypt
1109        Fixed description for alert_action variable
1110        More detailed usage from -h
1111        Special cased replies for webzephyr users on classes and
1112          login notifications for webzephyr users
1113        Fixed bug that caused a crash on zpunt with '*' for an instance
1114        AIM logout and then login now works.
1115        Fixed bug causing view -d not to work.
1116        Added hostname and tty name to LOGIN/LOGOUT zephyrs on oneline
1117          style
1118       
11192.0.4
1120        Made command line option -n actually work
1121        Implemented styles, including the 'default' 'basic' and 'oneline'
1122          styles.  A 'perl' style is available if a format_msg() function
1123          is found in .owlconf
1124        Added the 'default_style' variable
1125        Added the 'toggle-oneline' command
1126        The 'o' key is bound to 'toggle-oneline'
1127        Internally, the one view now has a name, 'main', and message
1128          recalcuations are done in place when its filter is changed.
1129        Added filter field 'login' which can take the values 'login'
1130           'logout' or 'none'
1131        Added the perl variable $owl::login, just as above
1132        Updated the 'login' and 'trash' filters appropriately
1133        Fix for checking for DES in build system
1134        Bug fix in using makemsg when no curses window is present
1135        The variable $owl::auth now exists in perl
1136        Use new internal function to delete zephyr subs from file
1137        New 'sepbar_disable' variable can turn off sepbar info display
1138        Updated contributor info
1139        Added the 'show view' command
1140        Bug fix in owl_regex
1141        Fixed personal aim messages logging to class directory
1142        Log "LOGIN" or "LOGOUT" for AIM buddy messages
1143        zwrite -m now correctly displays an outgoing message and logs
1144        zwrite -s now works
1145        Strip spaces in AIM usernames on aimwrite send
1146        Removed libfaim/config.log from CVS
1147        Fixed some easy fixed-length buffers
1148        Wordwrap incoming AIM messages
1149        Fixed bug causing buddies not to be added to buddy list during
1150          ingorelogin timer
1151        Translate &lt; &gt; &amp; &quot; &nbsp; &ensp, &emsp, &endash and
1152           &emdash
1153       
11542.0.3
1155        Don't ring the terminal bell on mail messages.
1156        Nuke <FONT>
1157        Make the build work a little better on OSX
1158        Fixed a bug in fmtext
1159        Expanded the size of the hostname buffer
1160       
11612.0.2
1162        Fixed bug in 'startup' command.
1163
11642.0.1
1165        Moved newmsgproc stuff to a function procedure
1166        Added the 'newlinestrip' variable, on by default, that strips
1167          leading and trailing newlines from incoming messages.
1168        Fixed a case sensitivity probelm in owl_message_is_personal and
1169           owl_message_is_private
1170        The message object now uses a list of attributes internally, in
1171          prep. for supporting new messaging protocols
1172        owl_function_info now uses fmtext instead of one staticly sized
1173          buffer
1174        in owl_message_get_cc() require that the colon be present after
1175          cc.
1176        Added some defenses against resize crashes, and put in debug
1177          messages if they're encountered
1178        In filters 'true' and 'false' are now valid tokens.
1179        The 'all' filter has been redefinied to be 'true' and there is a
1180          'none' filter defined as 'false'
1181        Fixed bug in 'unsub' command that could cause file corruption
1182        In the zlist function, give a more detailed error message if
1183          the file cannot be opened.
1184        Renamed old instances of zsig_exec in the code to zsigproc
1185        Don't print the stderr from zsigproc
1186        Added a 'loadloginsubs' command to load login subscriptions from a
1187          file
1188        Added a 'loadsubs' command to eventually phase out the 'load-subs'
1189          command
1190        Made M-n work on classes and instances with spaces in them
1191        Zaway now obeys the smart strip variable
1192        Hacked the build system to not have the -E link problem on Athena
1193        Added ZResetAuthentication in a number of places to fix problems
1194          with stale tickets
1195        Added some hooks for malloc debugging
1196        M-p is bound to 'view personal' by default
1197        loadsubs and loadloginsubs only print messages if in interactive
1198          mode
1199        added the 'alert_filter' variable, defaults to 'none'.
1200        added the 'alert_action' variable, which is an owl command that
1201          will be executed when new messages arive that match the
1202          alert_filter
1203        added the 'term' command which takes the 'raise' and 'deiconify'
1204          options.  It assumes xterm for now.
1205        only 'make distclean' will nuke core and ~ files now
1206        fixes to owl_function_do_newmsgproc from Stephen
1207        converted functions.c to new code style, which I'm giving a shot
1208        Makefile.in: define DATADIR, for default owlconf.
1209        Makefile.in: provide "all" and "install" rules.
1210        configure.in: try also libdes and libkrb4, for people using heimdal
1211        configure.in: see if des_ecb_encrypt is already prototyped.
1212        configure.in: minor changes to work with new autoconf without needing acconfig.h.
1213        configure.in: find the install program.
1214        configure.in: test for use_default_colors since some versions of
1215          solaris don't have it, so we can at least compile something
1216          vaguely working there.
1217        keypress.c: ifdefs for keys not defined on at least some solarises.
1218        owl.c: don't call use_default_colors if we don't have it
1219        readconfig.c: added *commented out* code to try to find a
1220          system-default owlconf if the user doesn't have one.  Have to
1221          ponder if I want this
1222        zcrypt.c: don't prototype des_ecb_encrypt if there is a prototype in
1223          des.h.
1224        zcrypt.c: include owl.h so we get the configure-generated config.h
1225        Change to codelist.pl to deal with new code style
1226        Remove some ancient stuff from zcrypt.c
1227        General cleanup to Makefile.in
1228        CTRL and META are now OWL_CTRL and OWL_META.  OWL_CTRL moved to
1229          keypress.c
1230        do_encrypt declaired static
1231        if we don't have des functions, do not try to build in zcrypt
1232        kill the newmsgproc function on exit
1233        Added libfaim
1234        Added basic AIM support, including the "aimlogin", "aimwrite" and
1235           "aimlogout" commands
1236        New built-in filters 'aim' and 'zephyr'.
1237        Do ZResetAuthentication() before zlog_in and zlog_out as well.
1238        Print AIM login / logout notifications
1239        The 'alist' command prints a list of aim buddies logged in
1240        The 'blist' command prints users from all protocols
1241        The 'l' key is now bound to 'blist' instead of 'zlist'
1242        Started work on 'addbuddy' and 'delbuddy' command but they DO NOT
1243          WORK yet
1244        Removed a bit of faim code that allowed commands to be executed.
1245        The 'B' key is now bound to 'alist'
1246        Added the 'startup' and 'unstartup' commands
1247        The $HOME/.owl directory is created on startup if it does not exist
1248        Added the 'aim_ingorelogin_timer' variable
1249        'addbuddy zephyr <user>' and 'delbuddy zephyr <user>' now work.
1250        'isloginout' and 'isprivate' are now message attributes
1251        improved 'info' function lists seperate info for zephyr, aim and
1252           also prints all message attributes
1253        AIM logging (both in and out) now works
1254        Disabled 'addbuddy' and 'delbuddy' for aim since it doesn't work yet
1255        Hacked the Perl build stuff not to link with iconv
1256       
12571.2.8
1258        Class pings are displayed differently now
1259        Updated owlconf.simple example to format outgoing messages.
1260       
12611.2.7
1262        Outgoing messages now go through the config for formatting
1263        Zaway now makes an outgoing message, instead of an admin message
1264        The 'zlocate' command can now handle multiple users
1265        The simple user format for "To:" is in effect again
1266        Prettyed up the zwrite line for using 'reply' on a zaway
1267        Added a workaround for a libzephyr bug that caused zwrites to fail
1268          if zephyrs were sent just before and just after renewing tickets
1269        Fixed a memory bug in getsubs
1270        Added receive support for zcrypt messages
1271        Added the 'zcrypt' variable which controls whether or not zcrypt
1272          messages are decrypted
1273        'reply' is disabled for zcrypt until sending zcrypt works
1274        Started implementing zcrypt command
1275        More updates to the intro doc
1276       
12771.2.6
1278        Started adding code for newmsgproc.  It doesn't fully work yet!
1279          Don't use it.
1280        Added search, '/' and '?' to basic help.
1281        Will attempt to keep the current message as close as possible
1282             to the previous current message after an expunge.
1283        "set <variable>" and "unset <variable>" now work for boolean variables.
1284        Fixed a bug in owl_function_calculate_topmsg_normal that caused a
1285          segfault
1286        Fixed some typos in the intro doc
1287        Removed old zlog functions from zephyr.c
1288        Implemented the dump command
1289        New startup message
1290       
12911.2.5
1292        Patch to fix memory bug in replying to CC messages
1293        If we're on Athena and have static krb (or other) libraries, use
1294          them
1295        Added "athstatic" program to the release, which handles the above
1296        Cast to an int for isspace, to make gcc -Wall quiet
1297        Added 'zlist' and 'l' to basic help.
1298       
12991.2.4
1300        'zlog in' will now take an optional thrid argument to set the
1301             'tty' variable before setting the zlocation
1302        There is now a 'zlist' command that acts like 'znol -l'
1303        'l' is bound to 'zlist'
1304        Fixed memory leak uninitialzed memory read in fmtext
1305        viewwin will now say "End" instead of "More" when at the end
1306        Added a debugging message indicating the result of topmsg
1307          calculations
1308        You can now use %me% in filters
1309        The built-in personal filter is updated to do so
1310        Fixed a bug in moving the pointer after an expunge
1311        Fixed up the normal scrolling code.  Now it should always
1312          land on a message, but it's still not optimal.
1313        Added the variable 'smartstrip' which will strip kerberos
1314          instances out for the 'reply' command.
1315        Added -R/usr/athena/lib to the build for Athena
1316        Started updating the intro document
1317        Small changes to help / about
1318        The 'subscribe' and 'unsubscribe' commands (and their aliases) now
1319          update .zephyr.subs by default.  If either is given the '-t'
1320          (for "temporary") option the .zephyr.subs will not be updated
1321        Turned off beeping for hitting the top or bottom of the list of
1322          messages
1323        Made daemon.webzephyr a special case for smartstrip
1324        Added 'out' as a default filter for outgoing messages
1325       
13261.2.3
1327        Added filters "ping", "auto" and "login" by default.
1328        Added "body" as a valid field to match on in a filter.
1329        Temporary fix to bug where C-SPACE would cause the key handler to
1330             lock up.
1331        Messages now have a direciton (in, out or none).  Filters can
1332             match on this direction
1333        Outbound messages are no longer type 'admin' but are of the
1334             appropriate message type (i.e. 'zephyr') and are direction
1335             'out'.
1336        Smartnarrow now works on outgoing messages
1337        'info' updated to show more information for admin and outgoing
1338             messages
1339        Renamed pretty_sender to short_zuser and renamed long_sender to
1340             long_zuser
1341        Moved zsig generation to the zwrite object
1342        Print the zsig used for outgoing messages
1343        The tty variable now controls the zephyr location tty name
1344       
13451.2.2
1346        Added the 'search' command.
1347        '/' is a keybinding for 'search'
1348        '?' is a keybinding for 'search -r'
1349        Fixed stristr, which was completely broken
1350        renamed owl_fmtext_ztext_stylestrip to owl_function_ztext_styletsrip
1351             and put it in functions.c
1352        Attempts to stay near the current message when switching views.
1353             When switching from an empty view to one we've previously
1354             been in, the new current message position will attempt
1355             to be close to the current position from the last
1356             time we visited that view.
1357        Fixed bug in readconfig.c that prevented building under perl 5.005.
1358        Switched "C-x C-x" to only "startcommand quit"
1359        'getsubs' prints closer to the order you sub in.
1360        Modified the behavior of last so that "> >" will clear the screen.
1361        The new behavior of last is:
1362              Moves the pointer to the last message in the view.
1363              If we are already at the last message in the view,
1364              blanks the screen and moves just past the end of the view
1365              so that new messages will appear starting at the top
1366              of the screen.
1367        Fixed a typo in the help for smartzpunt.
1368        Fixed functions to handle curmsg being past the end of the view.
1369
13701.2.1
1371        New framework for command handling.
1372        New framework for keymap handling.
1373        Added commands for everything that is bound
1374             to a key (do 'show commands' to get the full list).
1375        Added 'multi' and '(' commands to allow multiple commands
1376             to be specified on a line.             
1377        Added user keybindings with bindkey command.
1378        Added command aliases (eg, "alias foo bar").
1379        Added undelete command that parallels the delete command.
1380        Added additional options to delete command.
1381        The reply command now takes arguments.
1382        Added 'edit:insert-text' command.
1383        Added 'show zpunts' to show active punt filters.
1384        Added 'show variable <name>' and 'show variables'.
1385        Added 'show command <name>' and 'show commands'.
1386        Added 'show keymap <name>' and 'show keymaps'.
1387        Added 'M-u' to undelete all messages in current view.
1388        Fixed dotsend so that the zephyr will still send if there
1389             is whitespace after the dot but not on the same line.
1390             This should resolve an issue where dotsend wouldn't work
1391             if you'd gone up and edited a zephyr.
1392        Bug in page down fixed
1393        C-t will transpose characters
1394        Fix the scrolling bug where we would sometimes fail to scroll
1395             the screen down, leaving the current message off
1396             the bottom of the screen.
1397        Refixed 'login or login' typo in help
1398        Fixed M-u description
1399        Removed 'first' and 'last' from basic command help
1400        Added M-N to basic key help
1401        Added M-D, M-u to basic key help
1402        Fixed a quoting problem in configure.in
1403        Changed top of help to use 'show' instead of M-x
1404        Fixed a bug in the summary field for user-created aliases
1405        Added "reply zaway" which sends a zaway response to the current msg.
1406        Added "edit:delete-prev-word" command and bound M-BACKSPACE to it.
1407        Some buffer overruns fixed
1408        Variables now have a summary and a long description.
1409                Only the summary is shown with help.
1410                The long description is shown with "show variable foo".
1411        Added a 'scrollmode' variable which determines how the screen
1412             will scroll as the cursor moves.  The default behaves
1413             identically to previous versions of owl.
1414             The following modes are supported:
1415             normal      - This is the owl default.  Scrolling happens
1416                           when it needs to, and an attempt is made to
1417                           keep the current message roughly near
1418                           the middle of the screen.  (default)
1419             top         - The current message will always be the
1420                           the top message displayed.
1421             neartop     - The current message will be one down
1422                           from the top message displayed,
1423                           where possible.
1424             center      - An attempt is made to keep the current
1425                           message near the center of the screen.
1426             paged       - The top message displayed only changes
1427                           when user moves the cursor to the top
1428                           or bottom of the screen.  When it moves,
1429                           the screen will be paged up or down and
1430                           the cursor will be near the top or
1431                           the bottom.
1432             pagedcenter - The top message displayed only changes
1433                           when user moves the cursor to the top
1434                           or bottom of the screen.  When it moves,
1435                           the screen will be paged up or down and
1436                           the cursor will be near the center.
1437        Added owl_sprintf which returns the formatted string, or NULL.
1438                The caller must free this string.
1439                This will allocate enough memory and thus
1440                avoid potential some buffer overrun situations.
1441        Simple implementation of 'zwrite -m' (doesn't yet log an outgoing
1442                message as having been sent.)
1443        The "Not logged in or subscribing to messages" error
1444                now includes the name of the recipient.
1445        The "disable-ctrl-d" variable may also be set to "middle"
1446                which will result in ctrl-d only sending at the
1447                end of the message.  This is now the default.
1448                This also added a command "editmulti:done-or-delete".
1449        Fixed a bug in the "reply -e" command.
1450        Always clear the command buffer before executing the command.
1451                (So that interactive commands can sanely do start-command.)
1452        Fixed preservation of e->dotsend across owl_editwin_clear().
1453        Added history for multiline edit windows (eg, for zephyr composition).
1454                The M-n and M-p keys will cycle through the history ring.
1455                In particular, it is now possible to edit the command line
1456                of a zephyr being composed:  C-c it and restart it
1457                and then M-p to get the aborted composition back.
1458        Added owl::send_zwrite(command, message) to the perl glue
1459                to allow for the direct sending of multi-line messages.
1460                For example:  owl::send_zwrite("-c foo -i bar", "hello");
1461        Changed owl_fmtext_print_plain to return an alloc'd string to
1462                avoid buffer overrun risks.
1463        Added owl::ztext_stylestrip("...") function to perlglue
1464                 which returns the ztext with formatting stripped out.
1465        Added colorztext variable which can be used to disable @color()
1466                 strings arriving in messages after it is set.
1467                 (Currently, changing its value won't reformat messages).
1468        Outgoing zephyr logging now obeys the logpath variable.
1469        The '~' character in logpath and classlogpath now gets
1470                 replaced with the user's home directory.
1471        Added simple implementation of smartnarrow-to-admin that
1472                 creates a "type-admin" autofilter.
1473                 This was done mostly so that M-C-n and M-C-p do something
1474                 sane on admin messages.
1475        Added opera to the allowed options to the webbrowser variable.
1476        Fixed some buffer overruns in the "reply" command.
1477        When repying to "all" on a message that begins with "CC:" (eg, sent
1478                 with "zwrite -C", the reply line will be constructed
1479                 from the sender and the usernames on the CC: line
1480                 of the message being replied to.
1481        There is no such thing as C-R, so left C-r as it is but added:
1482                 M-r --- edit reply to all
1483                 M-R --- edit reply to sender
1484        Added RCS Id strings to all files.
1485        'show keymaps' shows details of all keymaps after summary list.
1486        Added --no-move option to delete command.
1487                In particular, delete-and-always-move-down may now
1488                be implemented with
1489                '( delete --no-move ; next --skip-deleted )'.
1490        Folded the nextmsg and prevmsg commands and functions together into
1491                one command which takes arguments.
1492                Added '--filter <name>' option (eg, for next_personal),
1493                '--skip-deleted' option, and
1494                '--last-if-none'/'--first-if-none' options.
1495                Help updated accordingly. 
1496                In particular, the 'personal' filter is now used
1497                for 'next personal'. 
1498                Added --smart-filter and --smart-filter-instance options
1499                to the next and prev commands.
1500        Updated examples/owlconf.erik with the above.
1501        Made owl_function_fast*filt return a string and not do the
1502                narrowing, to make it more general.
1503        Added a smartfilter command that creates a filter
1504                based on the current message and returns the name
1505                of the filter.
1506        Added M-C-n and M-C-p keybindings to "move to next message
1507                matching current" and "move to previous message
1508                matching current"
1509        Added variables edit:maxfillcols and edit:maxwrapcols which
1510                will limit how wide editing paragraphs may get before
1511                they get wrapped.  This is a max and may be narrower
1512                depending on the current size of the window.
1513                If 0, the max is unlimited.  Default is 70 columns for
1514                edit:maxfillcols and unlimited for edit:maxwrapcols.
1515        Added smartzpunt command with key binding of "C-x k".
1516                This starts a zpunt command filled in with
1517                the proposed zpunt.
1518        Fixed a memory reference bug in delete and undelete commands.
1519        Added support for perl to call directly back into owl.
1520        Changed the implementation of owl::command("...") to immediately
1521                call back into owl.  This allows perl to get the return
1522                value of strings returned by owl commands.
1523        Added the getview command which returns the name of the current
1524                view's filter. 
1525        Added the getvar command which returns the value of a variable.
1526        Added an example to examples/owlconf.erik which uses TAB to
1527                narrow and restore the view. 
1528        Added an example to examples/owlconf.erik which uses M-c to
1529                color messages matching the current one green.
1530        Integrated change to fix problem with popup blinking on new zephyrs.
1531        C-l and resizes will now refresh an open viewwin (eg, help).
1532        Updated doc/code.txt to include info about filters, commands,
1533                contexts, and keybindings.
1534        Exec commands cleaned up to not have buffer-size limitations
1535                and to not mess up spaces.  exec also returns a string
1536                of the output now.
1537        Integrated changes from 1.1.3, and added docs for "zlocate -d"
1538                and new show commands.
1539        Show with arguments produces help on show.
1540        Fix a bug in readconfig caught by efence (where we'd try to read before
1541                the beginning of a string if it was empty).
1542        The perl command doesn't do makemsg directly, but instead
1543             returns the string and it will get printed if it
1544             was run interactively.
1545       
15461.1.3
1547        'show subs' and 'show subscriptions' are now the same as 'getsubs'
1548        zlocate now takes an optional -d argument
1549        'show terminal' / 'show term'
1550        '>' / last doesn't set the last message at the top of the screen now
1551        implemented _followlast as an unsupported feature
1552        include 'default' in the 'show colors' list
1553        added help for 'zpunt' and 'zunpunt'
1554        changed the bug address in the startup message
1555        can now do 'show status'
1556        can now do 'show version'
1557        'status' / 'show status' includes the owl version number now
1558        'show terminal' includes whether the terminal can change colors
1559        fixed off by one bugs in paging / scrolling viewwin
1560        don't downcase the sender when getting the log name for personals
1561        support @owl::fields as well as @fields
1562        downcase class/inst filter names in auto filters
1563
15641.1.2
1565        Fixed memory mishandling bug
1566        Fixed bug in redfining the filter attached to the current view
1567        M-n will narrow to message, instance on non-personal, class
1568             MESSAGE messages
1569        M-N behavies like M-n except that on class messages it narrows
1570            to class and instance
1571        line wrap earlier, to account for tabbing
1572        fixed typo in help
1573        'status' command now displays info on terminal color support
1574        zephyr @ formatting is now case independant
1575        added support for color terminals
1576        zephyr @color(foo) now works
1577        'D' for deleted messages is now not bold, unless it's the current
1578          message
1579        F1 displays the help screen
1580        added filter colors
1581        added the 'colorview' command
1582        added the 'show colors' command
1583        users who don't have a .zephyr.subs get a simpler format for
1584          incoming messages
1585        If colors are available 'show filters' will show a filter in the
1586          color associated with it.
1587        Added the zpunt and zunpunt commands
1588        Lines in the subs file starting with '-' are zpunted
1589        Include login/logout messages in auto user filters
1590        'V' changes to the home view ('all' by default)
1591       
15921.1.1
1593        Fixed perl, aperl, and pperl commands to deal with quoting
1594              and spaces in a saner manner.
1595        Removed all owl_get_* methods for booleans and switched
1596              cases where they were used to owl_is_*
1597        Changes to owlconf.erik to use some new features.
1598        Increased the size of the help buffer (as it
1599              was overflowing and truncating the help message).
1600        Variables prefixed with a _ are not shown in help
1601              or by printallvars (and prefixed Not Yet Implemented
1602              variables with this).
1603        Fix typo in help
1604        include stdio.h in functions.c
1605        remove stale "q to quit" from bottom of info message
1606        fix downward scrolling more than a page
1607        use authentication for zlocate, by default
1608        fixed buffer over run in info command on long messages
1609        call 'perl <file>' from Makefile to avoid hardcoding perl paths
1610        in Makefile don't build owl_prototypes.h unless necessary
1611        store the time for admin messages
1612        display admin message time in 'info' command
1613        fixed an editwin M-> last character bug
1614               
16151.1
1616        reply is a normal function now
1617        'R' does reply to sender
1618        'T' tells you how many messages were marked for deletion
1619        local realm removed from login / logout messages
1620        added command history
1621        better runtime / starttime reporting in 'status' command
1622        leave the pointer near the current message after expunge
1623        C-l recenters editwin
1624        implemented zlocate
1625        @italic works the same as @i
1626        on reply only quote class / instance when necessary
1627        C-r allows you to edit the reply line
1628        don't use unecessary options in reply line
1629        display 'info' errors in msgwin, not popup
1630        impelemnted aexec, pexec commands
1631        the zsig now goes through ztext formatting
1632        messages have id numbers now
1633        'info' prints the msgid
1634        added the 'filter' command
1635        added the 'view' command
1636        added the 'show filter' command
1637        added the 'viewclass' (and 'vc') commands
1638        added the 'viewuser' (and 'vu') commands
1639        M-n will filter to the current class or user
1640        'v' starts a view command
1641        M-D will delete all messages in current view
1642        added the 'delete' (and 'del') command
1643        load-subs with no argument loads the default subs file
1644        '<truncated>' is now when the *current* message is truncated
1645        the reply-lockout filter (with default) specifices messages that
1646           cannot be replied to.
1647        in the configfile owl::receive_msg is run whenever a message is
1648          received
1649        added the beep command
1650        added the contributors file
1651        declare ZGetSubscriptions and ZGetLocations since the includes
1652          don't seem to
1653        fixed bug in displaying last line in popwin if no final '\n'
1654        'T' uses the 'trash' filter now
1655        zaway_msg, zaway_msg_default and zaway are all user variables now.
1656        zsig variable overrides zsigproc
1657        If there's no appendtosepbar don't interfear with the sepbar
1658        Changed: owl_message_get_numlines will return 0 of m is NULL
1659        Added login messages to messages marked by owl_function_delete_automsgs
1660        Added owl_function_delete_by_id(id) which acts independent of view
1661        Added "-id <id>" option to delete command
1662        Fixed an arg checking bug in delete command
1663        Added owl::id to perl namespace with message id
1664        Fixed a memory corruption bug in readconfig.c (where right
1665              after the strdup to "out", we'd strcat a \n onto the end.
1666              This would be triggered whenever owl::format_msg returned
1667              a string not ending in a newline
1668        Added 'X' keybinding which expunges and then switches to
1669              a view defined by the variable "view_home" which defaults
1670              to "all"
1671        Consolidated readconfig.c somewhat to remove duplication.
1672              owl_config_execute now returns a string.
1673        Added an example config file that does vt-style formatting.
1674              (examples/owlconf.vtformat)
1675        Added the 'perl', 'aperl', and 'pperl' commands which will
1676              evaluate perl expressions.
1677        Fixed bug where pclose zsigproc would cause zombies
1678        Can set zsigproc or zsig to "" to disable
1679        Added support for multiple browsers (galeon and none were added).
1680              Configure with the "webbrowser" variable.
1681        Changing typewinsize height triggers resize event.
1682        Added zsig variable which will be used if no zsigproc and non-empty.
1683        Added "make test" rule to Makefile which will run regression tests,
1684              and added regression testing framework to tester
1685        Fixed codelist.pl to ignore static declarations.
1686        Added dict.c which contains string->ptr dictionary routines
1687              and the owl_dict type.
1688              These include regression tests.
1689        Overhaul/rewrite of variable handling.  Variables are now managed
1690              in an owl_vardict (in g.vars) which contains a dictionary
1691              of owl_variable's.  Each owl_variable has dispatch functions
1692              for validating values, setting it and getting it,
1693              and for setting it to and from string values.
1694              The variable.c file contains the list of variables.
1695              Stubs for the owl_global_<varname>_get functions and friends
1696              are generated from variable.c by stubgen.pl.
1697              The help.c messages for variables now calls into variable.c
1698              so all information about most variables is in one place.   
1699        Cleaned out code from global.c and command.c that was made obselete
1700              by variable overhaul.
1701        The set command now takes a -q option to not log a message.
1702        Fixed a bug where set and print with no arguments would
1703              print "Undefined variable" in addition
1704              to running owl_function_printallvars.
1705        debug is now a variable that can be turned on and off.
1706        Fixed mail,inbox message parsing in examples/owlconf.erik
1707        Made zaway_msg and zaway_msg_default into variables
1708        Changed owl_function_makemsg and owl_function_debugmsg
1709               to use varargs (ie, so they can now take a format
1710               string with args).
1711        Don't allow " and \ characters in URLs with the "w" command.
1712        Removed lots of build warnings.
1713        Popwins are wider by default so help messages fit better.
1714        Added an atokenize_free function.
1715        Fixes to work with an older version of libzephyr.
1716        Added dependencies on header files to Makefile.in
1717        Added pageup and pagedown key bindings to message list
1718        Added pageup and pagedown to viewwin
1719        Added configfile section to doc/intro.txt (from example config file)
1720        Added appendtosepbar variable which may contain text which will
1721              be appended to the sepbar.  This allows the configfile
1722              to put information about pings and logins into
1723              the sepbar.  (It may be worth also providing a variable
1724              which enables this by default, but for now this allows
1725              for experimenting with what works well.)
1726        Added doc/code.txt which gives a brief overview of the code.
1727        Added tags makefile rule and added TAGS to distclean rule.
1728       
17291.0.1
1730        fix frees in loadsubs and loadloginsubs
1731        don't return in owl_free
1732       
17331.0
1734        'print' and 'set' with no arguments prints all variables
1735        Added the 'unsubscribe' and 'unsub' command
1736        Renamed the 'unsub' command to 'unsuball'
1737        Added the 'getsubs' command which is like zctl ret
1738        Fixed bug in logging messages sent to more than one recipient
1739        Support '-C', '-O', and '-n' options to zwrite
1740        Fixed bug in owl_editwin_delete_char when there are no later chars
1741          after the cursor
1742        Make "more" and "truncated" work in the status bar
1743        enable printing of zsigproc and loginsubs variables
1744        only allow message scrolling if the message is actually off the
1745          screen
1746        'T' will mark all automated message for deletion
1747        'P' will go to the next personal message
1748        'M-P' will go to the previous personal message
1749        replying to a login message goes to the user now
1750        added a status command
1751        added the intro doc to the release
1752        fixed off by one bug in viewwin
1753        added complete online help
1754        pass $owl::realm in configfile
1755        fixed editwin wordwrapping on the last line
1756        fixed editwin problem with key_right past the last char
1757        print an error and quit if the configfile can't be parsed
1758        got rid of owl_mainwin_calculate_topmsg
1759        fixed off by one error in calculating topmsg upwards
1760        you can now reply to an admin message
1761        don't display an error about keypress on window resize
1762       
17630.11
1764        fixed bug in viewing messages longer than the screen
1765        indicate in the sepbar if there is a non zero vert offset
1766        send on '.' on a line by itself
1767        added disable-ctrl-d variable
1768        fixed bug where C-k did not delete the last \n in the buffer
1769        make non-character meta keys work
1770        use ZSendNotice instead of ZSendList
1771        implemented <, >, M-< and M-> in viewwin
1772        removed the spaces at the bottom of viewwin
1773        added 'about' command
1774        fixed bug using 'M' with no current message
1775        changed message object to use char *'s to save on memory
1776        change malloc, realloc, strdup and free to use owl hooks so that
1777           debugging can be added
1778               
17790.10.1
1780        fixed a trailing space bug in the parser
1781        impelemented the "burning ears" feature
1782        have admin messages do ztext parsing
1783        fixed bug in reporting which M- key was pressed
1784        C-g will now cancel commands like C-c
1785       
17860.10
1787        implemented owl_function_full_redisplay().
1788        C-l uses owl_function_full_redisplay().
1789        when a popwin exists to a full redisplay.  (fixes bug)
1790        improved the owl_editwin_process_char logic
1791        removed all unnecessary wrefresh's and replaced with wnoutrefesh
1792        owl_editwin_redisplay now takes an argument to optionally doupdate()
1793        improved the cut-and-paste speed by not doing a usleep the first
1794          time through the loop after getting a keypress.
1795        nuked typwin.c and associated stuff.  It's useless now.
1796        added viewwin code for paging windows
1797        curly braces work for zephyr formatting
1798        @i in zephyr formatting will be displayed as underlined text
1799        turned off idlok
1800        implemented viewwin
1801        implemented viewwi in popwin for pageable popwins
1802        help, info now use pageable popwins
1803        bound 'M' to bring the current message up in a popwin
1804        return, space bar, 'b' and backspace now scroll within a message
1805        turned off resize message
1806        C-v and M-v page the main window
1807        implemented owl_message_is_mail
1808        some build cleanup
1809
1810       
18110.9
1812        added owl_message_is_personal and have things use it
1813        added owl_message_is_private
1814        fixed 'print personalbell' and have 'set personalbell'
1815           print a message
1816        bold only on message_is_personal
1817        display the realm if not local
1818        implemented M-f, M-b, M-d, M-<, M-> in editwin
1819        implemnted word wrapping in editwin
1820        implemented M-q (paragraph-fill) in editwin
1821        fixed bug that caused owl to segfault logging a 'weird' class
1822        M-x is a keysym for ':'
1823        added smart bolding and userclue
1824        fixed a bug causing pings to beep even if rxping is off
1825       
18260.8.1
1827        fixed bug in logging code
1828       
18290.8
1830        implemented personal logging
1831        implemented class logging
1832        implemented resize of typewin
1833        fixed the backspace problem
1834        -v command line option prints the version number
1835       
18360.7
1837        load-subs will report error opening file
1838        skip comment lines in loadsubs and loadloginsubs
1839        changed internal references to rxping and txping
1840        fix replying to a blank instance
1841        added subscribe command
1842        subscribe to login messages from .anyone by default
1843        'loginsubs' variarble controlls automated login messages
1844        redisplay the editwin after a resize
1845        leave the cursor in the editwin if active
1846        fix problems in the build system
1847        added displayoutgoing variable
1848        temporarily removed error printing for zlog in / out
1849       
18500.61
1851        fixed bug in "message sent to <foo>" for zwrite
1852       
18530.6
1854        help updated
1855        zaway key set to caps A
1856        support zephyring other realms
1857        rxping variable for receiving pings
1858        txping variable for sending pings
1859        function in place to resize typwin
1860        C-l to refresh
1861        personal bell variable
1862        beta message now an admin message
1863       
18640.5
1865        Added the debug command and flag
1866        Fixed bug in printing fields in info command
1867        Added owl_fmtext_append_ztext and use it
1868        Better formating for pings and login zephyrs
1869        make tester depends on proto
Note: See TracBrowser for help on using the repository browser.