* User event log is now functional & attached to various events * Add additional missing system events * Completely re-write last_callers to have new functionality, etc. * Events.addListenerMultipleEvents() * New 'moduleInitialize' export for module init vs Event specific registerEvents * Add docs on last_callers mod
4.3 KiB
4.3 KiB
Whats New
This document attempts to track major changes and additions in ENiGMA½. For details, see GitHub.
0.0.9-alpha
- Development is now against Node.js 8.x LTS. While other Node.js series may continue to work, you're own your own and YMMV!
- Fixed
justifyproperties:leftandrightvalues were formerly swapped (oops!) - Menu items can now be arrays of objects not just arrays of strings.
- The properties
itemFormatandfocusItemFormatallow you to supply the string format for items. For example if a menu object is{ "userName" : "Bob", "age" : 35 }, aitemFormatmight be|04{userName} |08- |14{age}. - If no
itemFormatis supplied, the default formatter is{text}. - Setting the
datamember of an object will cause form submissions to use this value instead of the selected items index. - See the default
luciano_blocktronicsmatrixmenu for example usage.
- The properties
- You can now set the
sortproperty on a menu to sort items. Iftrueitems are sorted bytext. If the value is a string, it represents the key in menu objects to sort by. - Hot-reload of configuration files such as menu.hjson, config.hjson, your themes.hjson, etc.: When a file is saved, it will be hot-reloaded into the running system
- Note that any custom modules should make use of the new Config.get() method.
- The old concept of
autoScalehas been removed. See https://github.com/NuSkooler/enigma-bbs/issues/166 - Ability to delete from personal mailbox (finally!)
- Add ability to skip file and/or message areas during newscan. Set config.omitFileAreaTags and config.omitMessageAreaTags in new_scan configuration of your menu.hjson
{userName}(sanatized) and{userNameRaw}as well as{cwd}have been added to param options when launching a door.- Any module may now register for a system startup intiialization via the
initializeModules(initInfo, cb)export. - User event log is now functional. Various events a user performs will be persisted to the
system.dbuser_event_logtable for up to 90 days. An example usage can be found in the updatedlast_callersmodule where events are turned into Ami/X style actions. Please seeUPGRADE.md!
0.0.8-alpha
- Mystic BBS style extended pipe color codes. These allow for example, to set "iCE" background colors.
- File descriptions (FILE_ID.DIZ, etc.) now support Renegade |## pipe, PCBoard, and other less common color codes found commonly in BBS era scene releases.
- New menu stack flags:
noHistorynow works as expected, and a new addition ofpopParent. See the defaultmenu.hjsonfor usage. - File structure changes making ENiGMA½ much easier to maintain and run in Docker. Thanks to RiPuk (Dave Stephens)! See UPGRADE.md for details.
- Switch to pure JS xxhash instead of farmhash. Too many issues on ARM and other less popular CPUs with farmhash (Dave Stephens)
- Native CombatNet support! (Dave Stephens)
- Fix various issues with legacy DOS Telnet terminals. Note that some may still have issues with extensive CPR usage by ENiGMA½ that will be addressed in a future release.
- Added web (http://, https://) based download manager including batch downloads. Clickable links if using VTXClient!
- General VTX hyperlink support for web links
- DEL vs Backspace key differences in FSE
- Correly parse oddball
INTL,TOPT,FMPT,Via, etc. FTN kludge lines - NetMail support! You can now send and receive NetMail. To send a NetMail address a external user using
Name <address>format from your personal email menu. For example,Foo Bar <123:123/123>. The system also detects other formats such asaName @ address(Foo Bar@123:123/123) oputil.js: Addedmb areafixcommand to quickly send AreaFix messages from the command line. You can manually send them from personal mail as well.oputil.js fb rm|remove|del|deletefunctionality to remove file base entries- Users can now (re)set File and Message base pointers
- Add
--updateoption tooputil.js fb scan - Fix @watch path support for event scheduler including FTN, e.g. when looking for a
toss!.nowfile produced by Binkd.
...LOTS more!
Pre 0.0.8-alpha
See GitHub