Changes to menu item handling: duplicate menu labels are no longer permitted. Any saved menus with duplicate labels will have the duplicate(s) replaced with a unique numeric suffix (you're then free to modify them as you wish). This is a slightly incompatible change, but duplicate labels don't really make sense anyway and the change was needed to improve menu efficiency.
Added '/sms replace' command to allow modification of existing menu items in a menu. See Usage / Replacing Menu Items
Enhanced '/sms add' to allow items to be added at any position in the menu instead of just at the end. See Usage / Adding Menu Items
Revamp of user variables - they are significantly more powerful now. Added @v: restrictor to restrict commands based on variable values - supports simple, numeric and regexp comparisons. /sms var command is now only available to admins by default. See User Variables
Added "view variables". These are arbitrary key/value pairs which can be added on a per-view basis. E.g. allows the possibility of a purchase menu having different costs on different views. View variables can also be displayed on the title or item label of their view. See Usage / Managing Views
Command parser: the string "<MONEY>" will be substituted with a formatted string of the player's current economy balance in commands (Vault required)
Command parser: the string "<VIEW>" will be substituted with the current view name in commands.
Redstone output: added "pulse" and "pulseany" rsoutputmode values. "pulse" will send a brief (duration configurable, default 1 second) redstone pulse when its associated item is executed. "pulseany" will send a pulse on all output switches if any item on that view is executed. See Redstone Output
Spout text entry popup (for <$:..> prompted commands) now uses OK and Cancel buttons and no longer responds to Enter and Escape keypresses - the spout textfield just doesn't work properly if the player types and presses Enter too quickly.
Completely dropped support for the very old '/sms add menu label|command|message' syntax (which was deprecated way back in v0.6)
Fix: $X cost check - false detection of insufficient XP under some circumstances
Fix: fixed NPE when repainting Spout views which didn't have a texture under some circumstances
Fix: players could pop up Spout views owned by someone else even when "ignore_view_ownership" was set to false
Fix: /sms break -loc x,y,z,world threw an "invalid number" error
Fix: sign/multisign view scroll position is now saved on server shutdown/reload (map/spout scroll positions, which are per-player, are not saved)
When using Spout, maps which are map views won't have their item name (tooltip) changed to match the menu title, due to a bug in Spoutcraft - http://issues.spout.org/browse/SPOUTCRAFT-99
When using Spout, there appears to be a problem where if you switch the Spoutcraft client from windowed to full-screen or vice versa (F11 key), spout views stop popping up when their hotkey is pressed. Possible Spoutcraft bug. Easy workaround: press Escape twice to pop the system menu up and down, and spout views will work properly again.