EPIC5 Projects, Bugs, and other Errata:

KNOWN ERRATA (eg, bugs, or unresolved requests):
------------------------------------------------
<none>

ISSUES OF INTEREST
------------------
* Kreca mentions that word manip functions strip extraneous spaces.
* The way dcc filenames are handled is bad; you should be able to seamlessly
  rewrite filenames both outbound and inbound.  URL encoding should auto-detect
* Support $HOME with spaces in it for cygwin.
* Msoul wants a centralized script web service like irssi has with 
	http://irssi.org/scripts/scripts/scriptassist.pl
* Now that $xform() is mature, we can script many things:
    encode decode urlencode urldecode b64encode b64decode sedcrypt sha256
* Rewrite the input prompt to use a linked list instead of a C string.
* Normalize 'proto', 'type', and 'addrfamily' values with server stuff.
* There should be an /on send_encrypted_msg, /on send_encrypted_public, etc.
* All lastlogs for all windows should be stored in one big list
* You should be able to move lastlog items between windows, split, merge.
* Everybody wants utf8 support -- but who will volunteer to help me?
* IRCII supports "default" fg/bg colors, which looks intriguing.
* Larne would like to use 256-color-support for xterm.
* I would like to be able to /load zip files and put them into LOAD_PATH.
* UPnP support (http://miniupnp.free.fr) would fix dcc-behind-firewall dilema.
* If @ var = [encode] you should be able to do $($var)(args) to call it.
* Output rules
* Undernet's CPRIVMSG and CNOTICE allow chanops to msg members w/o penalty
* /CTCPs over /DCCs don't match up with their queries very well. (nullie)
* str_to_mask() should be silent, callers should be warning.
* Support for 64 bit ints could be more widespread
* Larne wants suppression of duplicated lines (like syslog maybe?)
* Remove all the hardcoded uses of select() so it isn't mandatory.
* Shattah would like something like /window omit <regex> to remove stuff.
* Kanan wants support for jabber
* Zlonix wants a way to be notified when window geometry changes
* Zlonix would like me to commit his /on signal patch
* Zlonix would like per-screen toplines

[See http://www.epicsol.org/PROJECTS for things to come in the future]
[See http://www.epicsol.org/CHANGELOG5 for things that changed in the past]

THE CHANGELOG SINCE THE LAST RELEASE:
-------------------------------------
* Change 'wserv4' to 'epic5-wserv4' to avoid conflicting with epic4.
* Fix output of /disconnect when disconnected to be less confusing.
* Some changes to tabkey.jm to see if we can get it working.
* Move some functions out of input.c to better places.
* Fix normalization bug via $stripcrap(all ^C0@^Otest) (from kitambi)
* Fix denormalization bug via $leftpc(9 ^C0@^Otest) (from kitambi)
* Make the activity script use its own /package.
* Enhance prntdump() to convert unprintable chars to hex.
* Change /set -word_break so it pretends you set it to " \t" (rb kitambi)
* Add socks5p.h from epic4 so we can build with socks5 again.
* Remember, it's ./configure --with-socks5=/usr/local/lib
* Make update_input() take a screen as an argument, to update one screen only.
* Make /window create screen's input lines work again (rb kitambi)
* Fix crash from /parsekey type_text
* Add ^Vs to the start of  DEFAULT_STATUS_FORMAT* in config.h
* Comment out code for /set reverse_status_line pending removal later.
* GC the code for -f/-F/-o/-O command line arguments
* Fix the serverctl() comment for howl
* Change /say (or the empty command) to send to channel first, query second
* Add $dccctl(SET|GET ref WANT_PORT) to set the -p flag.
* Change tabkey.jm to use /msg -serv/nick instead of /msg serv:nick
* Add dccctl(DEFAULT_PORT <string>) [see UPDATES]
* Add /on dcc_lost case for cant-bind-port [see UPDATES]
* Add 'dcc_ports' script [see UPDATES]
* Add mask_to_(positive|negative)_str to convert masks to shorter strings
* So now mask_to_str() returns strings like "ALL -DCC" if it's shorter!
* Fix a couple of bugs rb zlonix
* When doing /stack pop set ... the callback (if any) should be invoked.
* Add a server param to what_channel() so i can use it in send_text() later.
* Add length of 'meta' arg to ciphers so 'meta' doesn't have to be c string
* Fix highlight script so it pf-loads
* Add the ** unary operator -- double expand.  See UPDATES
* Comment what I'm going to mangle xform into.
* Fix happykey().  Sometimes, I just don't pay enough attention.
* Don't trim 1 too many chars on incoming encrypted messages. Important!
* Fix buffer sizes being too small to hold buffer for enc/dec short strings.
* Add $xform() handlers for blowfish and cast5
* Whip the $xform() callback functions into usable shape.
* Fix base64 encoding both via $xform() and $b64encode().
* Rewrite $xform(), see UPDATES.  Strong crypto now supported! YAY!
* Allow encryption $xform() handlers to reformat their keys, so we can...
* Add SHA256/AES/AESSHA $xform() encoders
* Fix it so it compiles without ssl support again.
* Add "ALL" $xform() encoder, returns all valid xforms
* Fix infinite recursion if you load a script as a formats file.
* Release epic5-0.3.4 (Solicitude) (1480)
* Fix bug that kept implied on hooks from working (important fix!)
* Add new level SYSERR (see UPDATES)
* Add a server refnum to syserr() to send the syserr to the proper window.
* Add a server refnum to new_open() so we can pass it to syserr().
* Add new flag to /XECHO, /XECHO -AS (output to all windows on server)
* This should make syserrs go to the "correct window" most of the time (larne)
* Fix hookctl(set list ... implied {...}) to work as intended (rb zlonix)
* Add $windowctl(GET refnum CHANNELS) (rb Black)
* Eliminate u_* type bsd-isms so we can compile with -ansi on linux.
* Add /lastlog -rewrite (see UPDATES)
* Add /set lastlog_rewrite as a special favor for larne.
* Fix a bug with /lastlog (in previous commit)
* Add dyanmic support for $xform()s, which I'll be using very soon.
* Fix configure so --with-threaded-stdout pulls in -pthread
* Include some commented out code that I'm ruminating over for input line
* Create CURSOR_LEFT and CURSOR_RIGHT macros to avoid assigning LOGICAL_CURSOR
* Default xforms now don't need to be ordered, or have default refnums.
* Fix BACKWARD_WORD or PREVIOUS_WORD or whatever it's called.
* Add /SET DEFAULT_REALNAME and DEFAULT_USERNAME
* Add scripted /set realname and /ircuser in builtins for backwards compat.
* Don't want to regfree() a failed attempt to regcomp(). (rb larne)
* Add $serverctl(get -1 default_realname) and $serverctl(get -1 realname).
* Change $Y to reflect current realname for current server.
* Add $xform(iconv fromcode/tocode ...) wrapper around iconv (3).
* Add support for ./configure --localdir
* Add support for ./configure --with-iconv=/usr/local
* Add support for looking for iconv in configure in various places
* Make configure check for nanosleep().
* Add function decls for [sg]et_server_realname()
* New version of screen.e
* Change "filename" to "local_filename" in dcc's, in prep of further work.
* Un-revert a few minor things.
* Don't use NULL in configure; use 0 instead.
* Fix missing NULL for $hookctl(list ...) [rb howl]
* Fix various other issues that valgrind found (yay!)
* Commit a 'url.irc' script that I don't know where it came from...
* Apparantly solaris 9 doesn't have <stdint.h>, intmax_t, or strtoimax. ick.
* Begin "fixing" protected implied hooks.  Must test above examples.
* The sequence we delete stuff on shutdown actually does matter.  (Fix crash)
* OK.  The implied hook, and protected implied hook stuff works now
* Make a note in UPDATES about *0 being an rval instead of lval, and *(*0).
* Begin a refactoring of dcc to make my life easier
* Simplify register_dcc_offer(), removing unnecessary args.
* Also, register_dcc_offer() will only take url-encoded filenames now.
* Fix up the ctcp handler do_ctcp to urlencode offered filenames.
* Change the DCC_FILE* macros to DCC_SEND and DCC_GET to stop confusing me
* Add a "offer_filename" variable to dcc's for next round of work
* GC some unused code
* Break dcc_message_transmit() into dcc_raw_transmit() and dcc_chat_transmit()
* Drastically simplify those two functions
* Fix up dcc_raw_transmit() so the hostname isn't required
* This means /dcc raw <fd> <host> <msg> ignores <host>. yay!
* Add $is8bit(). See UPDATES.
* Change $tobase(). Now $tobase(b i) should support negative integers (i).
* Revert commit 1498 (the dcc stuff) -- it was half baked.
* Fix warnings found with --with-warns.
* The dot (".") and tilde ("~") are unreserved characters in rfc3986 (urlencode)
* Fix panic when you call :func() and there is a builtin, but no alias.
* Add new status expando %{1}H which expands when in hold mode and not holding.
* Add /set status_holdmode which controls %{1}H
* Add %{1}H to the default status format.
* Add split_string() which converts a general delimited string to (char **)
* Add $splitw(delim string) which converts delimited string into a dword list
* Use $unsplit() to convert $splitw() into a uword list (see UPDATES)
* Fix ./configure --without-ipv6 to allow compiling on opensewer.
* Fix apparantly bogus test that prevented .files from being /load'ed (rb wjr)
