These are the changes to TinyMUX since TinyMUSH 2.0.10 patchlevel 6 (which
is documented in the file NOTES).  Refer to the online help for more
information about new features or commands.

Bugs and patches should be sent to:
	lauren@sneakers.org

TinyMUX 1.0 patchlevel 4:

User level changes:
- New switches to commands:
    @pemit: /list
    @teleport: /quiet
    @dump: /optimize
    @wall: /admin
- New attributes:
    @amail @atofail @mailsucc @otfail @signature @tofail
- New commands: 
    @cpattr @startslave think wiznews +help brief
- New functions:
    alphamax() alphamin() andflags() ansi() art() beep() children() columns()
    cwho() dec() decrypt() default() die() edefault() elements() encrypt()
    eval() findable() foreach() grab() grep() grepi() hasattr() hasattrp()
    haspower() hastype() ifelse() inc() inzone() isword() last() list() lit()
    lparent() matchall() mix() munge() objeval() objmem() orflags() playmem()
    pmatch() ports() scramble() shl() shr() shuffle() sortby() strcat()
    strtrunc() udefault() ulocal() vadd() vdim() vmag() vmul() vsub() vunit()
    visible() zwho()
- Side effect functions:
    create() link() pemit() set() tel()
- New flags:
    AUDITORIUM: Enables SpeechLock checking.
    ROYALTY: Can see things like a wizard, but can't modify.
    FIXED: Can't teleport or go home.
    UNINSPECTED: A marker flag for things which haven't passed inspection.
    NO_COMMAND: Objects with this flag aren't checked for $-commands.
    HEAD: Marker flag for group heads.
    NOBLEED: Prevents color bleeding on systems where ANSI_NORMAL does not
             work.
    TRANSPARENT: Displays exits in a room in a long format.
    STAFF: Marker flag for staff (no powers come with the flag).
    MONITOR: When set on a player, shows MUSHwide connects and disconnects.
    ANSI: When set on a player, enables output of ANSI color codes.
- New config parameters
    commac_database guest_nuker guest_prefix have_comsys have_ident 
    have_macros have_mailer have_zones have_plushelp ident_timeout
    mail_database mail_expiration number_guests parent_recursion_limit
    plushelp_file plushelp_index wiznews_file wiznews_index
    zone_recursion_limit
- New search classes:
    POWER ZONE
- @list powers added.
- @decompile now shows zones, and parents.
- ANSI color support has been introduced. Names of things, rooms, and exits
  may include ANSI color, and in most cases name checks will be matched as
  if the name did not have color.
- In addition to the ansi() function, the %c substitution may be used for
  ANSI color. ANSI_NORMAL will be appended to any string that contains ANSI.
- A channel system/comsystem has been added.
- Comsystem commands:
    @cboot @ccharge @ccheck @cchown @ccreate @cdestroy @cdiscover @cemit
    @clist @coflags @cpflags @csec @cset @csweep @cundiscover @cusersec
    @cwho addcom allcom comlist comtitle clearcom delcom tapcom
- A new mail system has been introduced.
- Mailer commands:
    @mail @malias
- Mailer manages a linked list for each player, hashed table of player
  dbrefs in use.
- Reviewing and retraction of mail sent to players added.
- Mail sending rewritten to be more like Brandy@CrystalMUSH's +mailer.
- A new macro system has been added.
- Macro commands:
    .add .chmod .create .CLEAR .def .del .desc .edit .ex .gex .list .undef
    .status 
- Support for multiple guests characters added, similar to old system, 
  Guests are locked, set ANSI and NO_COMMAND, and inherit the zone,
  parent, money, @desc, @aconnect and @disconnect of the prototype guest
  character.
- Zones have been implemented. Control of a zone object gives a player
  control of all objects zoned to that object. Commands set on a zone object
  will be inherited by all objects in that zone. @aconnects and @disconnects
  are also inherited. @chzone is the command to change zones.
- @aconnects and @adisconnects set on the master room are global.
- Powers have been introduced, granting certain aspects of wizard power to
  individual characters using @power.
- Page command modified to take a list of players, in the format
      page [<player-list>] = <message>
  The last paged player or list of players can be paged with just
      page <message>
- Wizards may now 'cd' at the login screen to connect DARK.
- Two new indexed files, for +help and wiznews. The file for +help may
  include percent substitutions for color.
- BUILDER is no longer a flag, converted to a power.
- Wizards no longer obey any kind of lock.
- RWHO code has been removed.
- iter(), parse(), and @dolist now use #@ as a marker to show the position
  within the list.
- @edit now hilites the changed text.
- Log now shows exact failed connect string.
- #1 can no longer @newpassword itself.
- Updated to read flat file databases up to PennMUSH 1.50 p13, will also
  read DarkZone variant of PennMUSH database.
- Speechlocks are now implemented, depends on the AUDITORIUM flag.
- OUTPUT_BLOCK_SIZE defined in config.h, tune for your memory needs.
- The commands SESSION, DOING, WHO, QUIT, LOGOUT, OUTPUTPREFIX, and
  OUTPUTSUFFIX are no longer case sensitive after login.
- The flags wizard, and hidden may now be @set on attributes.
- Mail expiration checking added. Mail is automatically deleted after a
  certain number of days. 
- Minor bug in setinter() fixed, ex: setinter(a a a b b b, a a b b) 

Internal code changes:
- New functions nhash_firstentry and nhash_nextentry for numbered hashtables.
- search_nametab now returns -2 if permission is not given.
- Logged out commands no longer checked when player is connected, and have
  been included in regular command table. SESSION, DOING, WHO, QUIT, LOGOUT,
  OUTPUTPREFIX, and OUTPUTSUFFIX, when connected, affect all of the player's
  logged in descriptors.
- Username and hostname lookups now done by a slave process, to prevent lag
  when a nameserver or ident server is locked up. Ident processing is done
  much more reliably, with a 5 minute timeout.
- functions.c split into functions.c and funceval.c. Most new functions are
  in funceval.c.
- The GNU database manager is required for use.
- Attribute caching has been eliminated, object caching always used.
- Beta port concentrator code introduced, not recommended.
- When a switch is used, the permission for that command will no longer be
  checked before the permission for the switch.
- MOTD message length extended to 4096 bytes.
- GOING objects are no longer saved, blank spaces are filled with GOING
  objects when the database is loaded.
- A bug which permits overflow of certain buffers from the connect screen
  has been fixed.
- @readcache memory leaks fixed, as well as possible buffer corruption in
  decode_flags and flag_describe.
- @alias now checks to see if the alias is a valid player name.
- 'Three message' bug in @destroy, when two objects of the same name are
  nearby, is fixed.
- Many notify()'s in @list changed to raw_notify().

TinyMUX 1.0 patchlevel 5:

- New config parameters
  fixed_home_message fixed_tel_message wizard_pass_locks
- Code made clean to work with 64-bit systems.
- @cpattr bugs fixed.
- @aconnects and @adisconnects are now checked for every object in the
  master room.
- zfun crash bug with no arguments fixed.
- Now loads parents from Penn systems correctly.
- Problems with locks on Penn 1.50 p13 and p14 fixed.
- Now able to load databases from TinyMUSH 2.2.1.
- strcpy, strncmp rewritten as StringCopy, and StringCopyTrunc and made
  inline (tested for future version).
- Quota and RQuota attribute conversion from 2.2 done correctly now.
- @set object/attribute=hidden|wizard works correctly.
- New attribute flags displayed: M (mortal dark) W (wizard only)
- Problems with attribute names of exactly 32 characters fixed.
- Division by zero problem in COLUMNS() fixed.

TinyMUX 1.0 patchlevel 6:

- @cpattr modified to be more flexible.
- Database compression works.
- Events checking system added, only @daily implemented at the moment.
  'eventchecking' parameter added to @enable/@disable.
- Config parameter signal_action altered. On a fatal signal, the MUX either
  dumps a crash database, attempts to dump core, and reloads the last
  checkpointed database, or attempts to dump core and exits.
- New attributes:
  @daily
- New commands:
  @program @quitprogram @restart
- New functions:
  empty items peek pop push
- New powers:
  prog
- New switches:
  @mail - /cc
- New config parameters:
  cache_trim events_daily_hour guests_channel public_channel site_chars
  stack_limit
- Config parameters removed:
  abort_on_bug cache_steal_dirty garbage_chunk gdbm_cache_size have_ident 
  have_plushelp ident_timeout recycling
- Logged out commands (WHO, QUIT, etc) now only work for the descriptor that
  executes them.
- Both memory based and disk based (default) database handling are available
  via options in the Makefile.
- Radix string compression is now available via options in the Makefile
  (Andrew Molitor)
- @mail/fwd now allows you to edit a message before sending.
- @mail/read now includes a To: field which shows multiple recipients of a
  message.
- You may now place quotes around a multiple word name when using @mail.
- You may now mix player names, mail aliases, and mail numbers to be replied
  to in any @mail player list.
- Channel usage now costs a set amount of money, specifiable by the channel
  owner or a wizard.
- @nuke of any object (players, exits, things, and rooms) sets an object
  GOING, and destroys the object during the next database check. This is the
  way rooms were destroyed in earlier patchlevels.

Internal code changes:
- Wildcard routines modified slightly for speed.
- Hashing is smart: often used keys are looked up faster.
- Bugs in @malias fixed, mortals can no longer delete global aliases.
- Attribute and evaluation locks are written out using attribute names
  instead of numbers, to be friendlier to database filters. (Andrew Molitor)
- Attributes are looked up on an object using a binary search. (Andrew
  Molitor)
- Database chunk code reworked to make the allocation strategy of large
  continuously growing objects better. (Andrew Molitor)
- An empty third argument to fold() is treated as an empty base case.
- M_READ in mail.h changed to M_ISREAD for Solaris compatibility.
- Floating point exceptions under Linux fixed (Darrin Wilson)
- squish() no longer squishes newlines and tabs.
- Under Linux, optimized versions of string functions are used.
- ToUpper() and ToLower() are now simple macros.
- @mail/stats now works correctly.
- Comsys bug involving large numbers of players on a channel fixed.
- New style of management for mail messages prevents duplicated copies of
  messages to multiple recipients.
- Channel owners may use cwho().
- Fixed memory leaks involving queue overflows.
- Improved malloc debugging, with makefile options.
- Garbage objects are now of type TYPE_GARBAGE, instead of TYPE_THING.
- Minor bug with zone control fixed.
- Fixed memory leaks in sortby, foreach, and zfun.
- Fixed memory leaks in sortby, foreach, and zfun.

TinyMUX 1.1 patchlevel 0:

- New config parameters:
  use_http concentrator_port
- New flags:
  VACATION - set only by wizards, reset when player connects. Helps mark
  inactive players who will eventually return.
- WWW support, in conjunction with 'muxcgi' external CGI program.
  (to be enabled in patchlevel 1)
- Concentrator integrated and made part of MUX distribution.
  (to be enabled in patchlevel 1)
- Fixed bug in @mail/quick.
- Fixed bug with names and pennies of cloned objects disappearing.
- Parser changed for speed, and all functions modified to support the new
  parser changes. (idea by T. Alexander Popiel)
- Guests are no longer set ANSI and NO_COMMAND by default, they follow
  the player_flags parameter.
- Names in page and mail lists are now seperated by commas.
- When given a dbref number, pmatch() will evaluate identically to num().
- Fixed bad names bug which allowed multiple players of the same name.
- Fixed bug that corrupted database on disk-based databases when LBUF_SIZE
  was changed. Buffer lengths may be freely changed.
- Buffer lengths doubled.
- WHO now shows the record number of players connected since startup, and
  the maximum number of players allowed online.
- @mail bugs that caused random seg faults fixed.
- Fixed crash bug with push() used with no arguments.
- If an object or it's owner is set DESTROY_OK, it is destroyed with no
  delay when @destroy'ed.
- Added a 3rd flag word.
- Problems loading some Penn 1.50.p15 databases fixed.
- @list process now shows number of descriptors available to the process.
- pemit() args are now only evaluated once.

TinyMUX 1.1 patchlevel 1:

- New functions:
  setr
- New switches:
  @function/preserve: Preserves registers across user defined functions.
- New exec() option: EV_NO_LOCATION, surpresses use of %l in an expression.
- The enactor for Idle, Away, and Reject messages is now the paging player.
  Messages are not sent if they evaluate to nothing. %l surpressed.
- 'GARGAGE' type added to search classes.
- Problem with @daily attributes fixed.
- pemit() and @pemit/list check for permission.
- @decompile now works with obj/attr, and takes wildcards for the attr.
- Database strings are now encapsulated using quotation marks, ala PennMUSH.
- queue_write now uses MBUFs to store output, instead of malloc.
- Record number of players is now stored permanently in the database, using
  tag of '-R<number>'.
- @malias/add and @malias/remove may now take dbrefs as arguments.
- MBUF_SIZE reduced to 200 bytes.
- Dark players leaving/joining a channel do not emit messages on the
  channel.
- Fixed problem with name() on exits without aliases.
- @restart now works consistently along with database checkpointing, and is
  more reliable.
- Database consistency checking introduced, using checksums. Checks are made
  on strings in memory, as well as disk-based strings. When corruption is
  found, <gamename>.db.CORRUPT is dumped and the process exits. This is
  designed to detect unknown modification of strings in memory and on disk.
  Note that it will not fix corruption, only keep it from going unnoticed.
  Regular backups are the only way to ensure data integrity.
- A termination signal will cause the MUX to dump to the flatfile
  <gamename>.db.KILLED instead of dumping normally.
- The 'Startmux' script will refuse to start if either <gamename>.db.KILLED
  or <gamename>.db.CORRUPT are present, in case they are unnoticed.

TinyMUX 1.2 patchlevel 0:

- Changed LBUF allocs that preserve global registers around user define
  functions to malloc()'s, to reduce the amount of buffers built up
  by recursion.
- Eliminated obsolete next_timer(). (Mars@SolMUX)
- Fixed bug that causes output buffer overflows.
- Fixed bad malias errors.
- Fixed @mail to work properly with radix compression.
- Players with expanded_who can see dark wizards on channels.
- Configuration parameter 'wizard_pass_locks' removed, power 'pass_locks'
  added.
- Appending and prepending mail text shows number of characters
  written/maximum.
- Non-MUX specific db code is now only compiled into the dbconvert
  executable. Removed support for old PernMUSH databases.
- Buffer pools are reset at database check time.
- A cache of names that have been stripped of ANSI codes is kept, if
  cache_names is on, for faster matching.
- You can use mail alias numbers with @malias/delete.
- Fixed V_ATRMONEY database flag and reinstituted it as a database flag.
- @malias/delete now takes an alias prefixed with *.
- Fixed memory leaks in the @mail code.
- Fixed @program memory leaks.
- Swapped around some malloc/buffer pool allocations.
- @malloc/add and remove work with names again.
- Fixed a very, very obsure problem that crashes the MUX when you output
  exactly 16,384 characters. (Mars@SolMUX)
- Fixed mail() to work with radix compression.
- Fixed @program crashes when a player who was logged in more than once and
  in an @program disconnected.
- No longer goes into an infinite db saving loop when it detects corruption.
  Simply exits.
- Objects may listen on channels.
- When a player who is already in an @program reconnects, the new connection
  is dropped to the @program prompt.
- ports() works properly when a player is logged in more than once.
- Mail errors are sent correctly when using radix compression.

TinyMUX 1.3 patchlevel 0:
- New flags:
  GAGGED
- New functions:
  lstack()
- @wait command syntax modified to allow blocking on attributes other than
  'Semaphore'.
- Vattr code rewritten to use standard hashing code, redundant code
  optimized.
- Code REALLY made clean for 64-bit systems (IE, Alpha running Digital
  UNIX :)
- Removed database consistency checking.
- New command @dbclean, removes stale attribute names from the database.
- Default cache size reduced to 20x10.
- Pueblo support integrated into the distribution, see "help pueblo".
- Fixed @clone/cost bug that allowed players to get arbitrary amounts of money.
- set() and create() now return #-1 PERMISSION DENIED.
- after() crash bug with invalid arguments fixed.
- idle_wiz_dark config parameter now applies to all players with the Idle
  power.
- Zone bug when enterlock is using an attribute key fixed.
- Fixed builder power to enable a player to build when global building is
  turned off... expected behavior, but never worked.
- .ex or .gex on a macro longer than 192 characters no longer crashes the
  MUX.
- @decompiling an attribute on an exit now returns a string using the exit's
  first alias.
- New switch for @decompile: /dbref, which uses an object dbref instead of
  the object's name in the output.
- You may now specify @pemit/list/contents, or @remit/list.
- New command: @addcommand. See 'wizhelp @addcommand'. God only.

TinyMUX 1.3 patchlevel 1:
- Fixed wizhelp entry for @addcommand.
- Fixed grep() and grepi() behavior.
- Fixed slave.c for Solaris 2.5.
- Makes @addcommand god only.

TinyMUX 1.3 patchlevel 2:
- Fixed a bug with zone checking involving using an evaluation lock in the
  EnterLock for a zone.

TinyMUX 1.3 patchlevel 3:
- Fixed a bug where the MUX would not save the mail or comsystem
  databases when restarting, or dumping a crash/killed database. It also
  enables the use of command switches for commands added by @addcommand to the
  global built-in table.

TinyMUX 1.3 patchlevel 4:
- New command: @mail/safe
- DARK wizards are no longer visable on the @cwho
- Permissions for @cboot work correctly
- The boot message @cboot generates is now correct
- @wait/<number> no longer crashes the game
- columns() with a field argument >78 is no longer allowed
- lcon() no longer has a leading space
- before() now works properly
- Some log errors recognize type GARBAGE now
- 'go home' is now bound by the FIXED flag
- Lookups on an incomplete player name when the player is DARK fails...
  it was possible to use this to see if a DARK player was connected
- You cannot restart while the game is dumping
- configuration for the radix library no longer looks for gawk, which is
  broken
- A small memory leak in help fixed
- Numerous memory leaks in the disk based database code fixed

TinyMUX 1.4 patchlevel 0:
- New commands:
  @delcommand @listcommands
- New config paramater 'indent_desc' will automatically put a space before
  and after object, room, and exit descriptions when being looked at.
- The built-in macro system has been removed. You MUST change your config
  file parameter 'commac_database' to 'comsys_database'!
- Fixed bugs causing problems with '#-1 PERMISSION DENIED' in function
  return values.
- @decompile now includes ansi codes when printing names which have ansi
  color imbedded.
- Fixed zone problem that would crash the MUX periodically when a object was
  examined.
- You can no longer use objeval on #1.
- ifelse() only evaluates the necessary arguments.
- foreach() now takes two additional arguments: one to begin parsing, and 
  one to end parsing.
- strcat() now takes 1 to n arguments.
- Range checking in delete() fixed.
- New function: case() is like switch(), but does no wildcard matching.
- 'news' now understands ANSI substitutions much like '+help' does.
- Sets guest characters DARK when they disconnect, so they'll not emit
  messages when a new guest connects.
- The new mail check now always occurs upon login.
- @addcommand now renames replaces built-in commands to '__<command name>'.
- @wait <n>=@restart will no longer crash the MUX.
- @oemit now works as described in the help, no longer only in the executing 
  player's location.

TinyMUX 1.4 patchlevel 1:
- This fixed a problem with the help for mail(), a crashing problem with
  repeat(), and a compiling problem with patchlevel.h.

TinyMUX 1.4 patchlevel 2:
- This patch fixes a problem with patchlevel.h, as well as a problem with
  @delcommand where restoring a built-in command was not functioning properly.

TinyMUX 1.4 patchlevel 3:
- Fixed problems with zone recursion, as well as a problem with examining a
  zoned object and seeing all attributes as the same name.
- All semaphores are now cleared on objects when they are destroyed.
- @clone now creates object with the correct cost.
- Fixed problem with @oemit that crept in 1.4p0.

TinyMUX 1.4 patchlevel 4:
- Fixed problems with makefile

TinyMUX 1.4 patchlevel 5:
- Fixed player-only permission for @doing
- Fixed queue problem in cque.c
- Fixed zone recursion problem
- Control in zwho() and inzone() now handled properly
- Fixed buffer problems with columns(), center(), and @mail

TinyMUX 1.4 patchlevel 6:
- addcommand now properly evaluates input
- null pointer bug in queue code fixed (Myrrdin)
- name can no longer be just ansi characters (Marlek)
- length checking in do_attribute and atr_str fixed (Robby Griffin)
- permissions in zwho, inzone, and objeval fixed (Geoff Gerrietts, Marlek)
- @daily attribute now properly cleared (Peter Clements)

TinyMUX 1.4 patchlevel 7:
- Fixed more command queue problems

TinyMUX 1.4 patchlevel 8:
- Fixed a naming bug in @create.

TinyMUX 1.4 patchlevel 9:
- Fixed @addcommand problems
- A problem with halting an object with commands still in the queue
- A string trunction problem with mail alias names
- A problem when mudconf.createmin == mudconf.createmax
- hastype() no longer requires examinable

TinyMUX 1.4 patchlevel 10:
- Fixed more @addcommand problems
- Fixed problem with ifelse() involving a misplaced pointer and conditional

TinyMUX 1.4 patchlevel 11:
- Fixed segv bug in do_mvattr cause by lack of a pointer check
- A bind_and_queue call in walkdb.c was missing an argument

TinyMUX 1.4 patchlevel 12:
- Munged queue code
- Fixed 'restrict' variable which is a keyword in Linux 2.0.30

TinyMUX 1.4 patchlevel 13:
- Fixes single-letter leadin support for @addcommand
- Fixes buffer overflow problem with addcom
  Reported by StormBringer <sb@cygnus.ImagingA.com>

TinyMUX 1.4 patchlevel 14:
- Fixed flag functions to not report dark and connected to non-wizards
  (Soruk@AuroraMUSH)
- Fixed help for inc() and dec() (Jeff Gostin)
- Names of objects may not exceed MBUF_SIZE
- @program help fixed (Kevin@FiranMUX)
- trunc() and round() now behave correctly with floating point and negative
  arguments (Robby Griffin)
- Many buffer overflows fixed (Robby Griffin)
- Only players can be added to mail aliases, and array overflow problem with
  @malias fixed (Robby Griffin)
- Other minor bugfixes

TinyMUX 1.4 patchlevel 15:
- safe_tprintf_str now NULL terminates its output


TinyMUX 1.5 patchlevel 0:
- New functions:
  regmatch() translate()
- Regular expressions may now be used in command patterns and listen patterns
  with the addition of a 'regexp' attribute flag. See 'help REGEXPS'.
- Piping of command output has been implemented. See 'help piping'. This
  may break some code... have to write conversion script.
- @addcommand now works with single letter commands (". :, ;, etc) however
  the original commands may *not* be accessed by prefixing with __.

TinyMUX 1.5 patchlevel 1:
- Fixed new command queue problem introduced by piping, where a current
  queue entry could be overwritten while executing. Reported by Robby Griffin.

TinyMUX 1.5 patchlevel 2:
- NOTE: This patch REQUIRES a reload from flatfile. Please backup your
  database before you install this patch.
- Integrated 1.4p11 fixes
- Fixed 'help PIPING'
- Removed redundant queue checking code in cque.c
- Added set_prefix_cmds() declaration
- Added translate() and regmatch() declarations :)
- Removed old 'fix_ansi()' code
- Database chunk code reworked to store all object text directly in the
  GDBM database, rather than the old method of storing an index in the GDBM
  database that pointed into a 'chunk file'. The <gamename>.gdbm.db
  'chunk file' is no longer needed.

TinyMUX 1.5 patchlevel 3:
- Fixed problem with dbconvert that prevented loading from flatfile
- Changed CHARBITS in regexp code to CHARMASK since some systems define
  CHARBITS
- Integrated 1.4p12 fixes
- Change to @addcommand code to allow for ':' and ';' to be replaced

TinyMUX 1.5 patchlevel 4:
- Integrated 1.4p13 fixes
- Adds missing argument to fn_range_check in regmatch()

TinyMUX 1.5 patchlevel 5:
- Memory leaks in the database code fixed
- Integrated 1.4p14 fixes

TinyMUX 1.5 patchlevel 6:
- Integrated 1.4p15 fix

TinyMUX 1.5 patchlevel 7:
- Integrated 1.4p16 fixes

TinyMUX 1.6 patchlevel 0:
- Finally fixed remaining database memory leaks
- Fixed out of range error in mid() (Xidus@Empire2710)
- No embedded newlines in channel titles (Reported by Robby Griffin)
- @clone may not be used to create an object with an ANSI code as its name
  (Reported by Robby Griffin)
- name() no longer causes problems on exit names which lack semicolons
  (Reported by Robby Griffin)
- No spurious prompts from @program after a @quitprogram (Kurt Fitzner)
- lexits() no longer leaves a leading space (Kurt Fitzner)
- o-messages (@odrop, @osucc) will no longer generate any messages if the
  attribute evaluates to a null string (Kurt Fitzner)
- @notify <object>/<attr> no longer incorrectly returns "Permission Denied"
  on some platforms (Reported by Robby Griffin)
- Extending a number past the end of a buffer with certain floating point
  functions no longer causes crashes (Reported by Robby Griffin)
- Fixed @cdestroy permissions (Reported by Robby Griffin)
- Fixed problem with stripping spaces after function names when
  space_compress is turned on. (Robby Griffin)