User Tools

Site Tools


whats_new_112

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
whats_new_112 [2018/03/25 17:05]
avon updated to 1.12 a38
whats_new_112 [2018/04/28 19:50] (current)
avon mystic 1.12 Alpha 39 released
Line 2674: Line 2674:
  
    <​ALPHA 1.12 A38 RELEASED -- Jan 1, 2018>    <​ALPHA 1.12 A38 RELEASED -- Jan 1, 2018>
 +
 +</​code>​
 +
 +===== 1.12 Alpha 39 =====
 +
 +<​code>​
 +
 + + New Python command: backspace (number, destructive). ​ This function sends
 +   ​(number) backspaces and if (destructive) is True, then it will also
 +   ​delete the character. ​ If False it will only move the cursor backwards.
 +
 + + Record data changes for user database:
 +
 +     - First on and last on dates are now stored in Unix timestamp format.
 +
 +     - Expire, last password change, and last e-mail validation dates now
 +       use julian day number
 +
 +     - IP field extended to support IPV6, host extended to 80 characters
 +
 +     - Vote tracking extended from 20 to 99
 +
 +     - Added space for variable iteration PBKDF2-HMAC-SHA512 encrypted user
 +       ​passwords.
 +
 +     - Added User country field for historical storage
 +
 +     - Local QWK Path is now split into Local QWK Path and Local REP Path
 +
 + + Record data changes for message base database:
 +
 +     - Expanded name to 60 characters
 +
 +     - Removed Sponsor field
 +
 +     - Added Read EchoACS and Post EchoACS
 +
 +     - Created date changed from packed DOS to Unix timestamp format
 +
 + + Record data changes for file base database:
 +
 +     - Extended name to 60 characters
 +
 +     - Extended echotag to 40 characters
 +
 +     - Added Passthrough EchoACS
 +
 +     - Created date changed from packed DOS to Unix timestamp format
 +
 + + Record data changes for events database:
 +
 +     - Added a unique ID to each event
 +
 +     - Added OSType attribute to each event
 +
 +     - Added new statistical tracking attributes
 +
 +     - Removed Node number from BBS type event
 +
 +     - Added field to support enhanced semaphore event system
 +
 + + Record data changes for servers database: Added more space for more server
 +   types and options.
 +
 + + Installation program will now question the installer at the beginning to
 +   help determine the local console codepage on Linux platforms.
 +
 + + Mystic message searching now allows full logical boolean searches along
 +   with order of operations. ​ The following tokens are used:
 +
 +     & = AND
 +     | = OR
 +     ! = NOT
 +
 +   ​Parentheses can be used to group results. ​ If you want to search for a
 +   ​single word or user you can still just type in the word, but otherwise
 +   you now have the options to do searching like:
 +
 +      (g00r00 & released) | pre-alpha
 +
 +   This would return any message that contained both g00r00"​ AND "​released",​
 +   OR it contained the word "​pre-alpha"​
 +
 +   ​Searches are case insensitive and will search the From, To, Subject, and
 +   ​message content (excluding kludge lines).
 +
 + + New door command line code %C.  This is replaced by the user's current
 +   ​codepage as either "​CP437"​ or "​UTF8"​.
 +
 + + Mystic will now track the country detected during country blocking within
 +   each user's session. ​ A new MCI code "​UO"​ will return the user's country
 +   of origin as determined by the country blocker in MIS.
 +
 + + Mystic'​s installation file install.exe can now be ran to copy over your
 +   ​binary files for you by command line:
 +
 +     ​install replace <root Mystic path>
 +
 +   ​Windows seems to be blocking this from running on my Windows test system
 +   for some reason, so I am looking into a way around whatever it is doing.
 +   You may need to rename it to something like "​temp.exe"​ in Windows to get
 +   this to work :\
 +
 + + ANSI editor now has a "CRLF at EOF" which always defaults to Yes.  If this
 +   is Yes, Mystic will save a CRLF at the end of the ANSI file so that the
 +   ​cursor moves to the next line.  If No, then Mystic will not.
 +
 + + ANSI editor now shows a "File saved" confirmation box after saving.
 +
 + + ANSI editor now retains the changed filename between save dialog boxes
 +
 + + CTRL+X will now exit the ANSI editor, asking to save if the file has been
 +   ​changed first.
 +
 + + When in the full text and ANSI editors, the delete key will now allow files
 +   to be deleted within the Open file dialog box.
 +
 + ! Mystic was not properly handling MSGID fields created by Synchronet when
 +   ​replying to Echomail via Netmail
 +
 + ! Mystic will no longer refuse Netmails that use the Synchronet-style MSGID
 +
 + ! Bugfixes to ANSI editor save functions, particularly when saving without
 +   clear screen enabled.
 +
 + + New ANSI editor buffers will now default to saving with "Clear Screen Yes"
 +
 + ! FTP server was showing QWK packet when logged in as Anonymous
 +
 + + Mystic now has a new feature which can be enabled in the File Base Settings
 +   ​called "​Download FTP"​. ​ When this is enabled to Yes, Mystic will ask the
 +   user if they'd like to download their queued files via an FTP link instead
 +   of using a file transfer protocol.
 +
 +   The FTP link will contain a virtual directory that contains all of the
 +   files in their batch queue, and will expire after 1 hour.  The user can
 +   use their web browser or FTP client to connect to the FTP URL and list
 +   and download the files that they queued on the BBS.  Access enforcement
 +   and statistical tracking will be applied via the virtual FTP directory
 +   just as it would if the user was downloading the file from the BBS.
 +
 +   This feature requires that Mystic'​s FTP server is enabled and properly
 +   ​configured,​ and that Anonymous FTP access is enabled in the Server
 +   ​settings. ​ This means proper firewall configuration and valid BBS domain
 +
 +   Four new prompts will go along with this.  If you are using the default
 +   ​prompts you can simply copy over the default.txt to your data directory,
 +   but if you have modified the prompts then you'll need to add these new
 +   ​prompts into your default.txt and any other themes you use.  They are
 +   ​located in the upgrade.txt or the default.txt from a fresh installation.
 +
 +   An HTTP equivalent will be enabled in a future build.
 +
 + + MIS now has a basic HTTP server. ​ The server can be created in the server
 +   ​editor within the configuration. ​ A webroot path must be defined, which
 +   ​points to a directory where your website files and configuration will
 +   ​exist. ​ For example, if you set webroot to c:​\mystic\webroot\ then you
 +   will need to create two subdirectories under it (cfg and www):
 +
 +      c:​\mystic\webroot\cfg\
 +      c:​\mystic\webroot\www\
 +
 +   In the www folder will be where you place your website files. ​ The CFG
 +   ​folder will hold various configuration values for the web server in the
 +   ​future. ​ Note this is a very barebones server at this point only really
 +   ​capable of serving basic websites, but I intend to work on it further as
 +   I find time.
 +
 + + ANSI editor now has block options. ​ CTRL+B can be used to select a block
 +   of text to be centered on.
 +
 + + ANSI editor now has a block option for filling a block with a character,
 +   an attribute or both.
 +
 + + ANSI editor now has a block option to select a block and center text found
 +   ​within the selected block (using the center of the selected block as the
 +   ​center point)
 +
 + + Event system will now recalcuate the event state every 10 seconds, this
 +   has been increased from 5 seconds in order to reduce load of an updated
 +   ​semaphore system
 +
 + + The "​Semaphore"​ event system has been enhanced to allow specifying boolean
 +   logic of semaphore files that must exist (or not) to trigger an event. A
 +   new field has been added to define which semaphore files should be removed
 +   when the event is ran.  The usual boolean evaluation tokens that are used
 +   in ACS, message searching, etc, all apply here as well: () to define order,
 +   ​!=NOT,​ &=AND |=OR.   An example usage might be:
 +
 +      Event Type: Semaphore
 +       ​Semaphore:​ (echomail.in|netmail.in)!fidopoll.bsy
 +      Kill After: echomail.in|netmail.in
 +
 +   The above example says to trigger the event if echomail.in OR netmail.in
 +   ​exists but NOT if fidopoll.bsy exists. ​ The result would be that the
 +   ​command line would run when there is incoming net/​echomail but it'd also
 +   wait for fidopoll to finish running (if it is) before kicking off.
 +
 +   The Kill After field says that when it runs it should delete echomail.in
 +   and netmail.in. ​ Each file specified here should be separated by a pipe
 +   ​character (|).
 +
 +   For existing systems, the upgrade program will automatically populate the
 +   "​Kill after" field with the currently configured semaphores but for new
 +   ​events you'll now need to define which semaphores to delete when it runs.
 +
 + + Semaphore events will now delete the semaphore files when it executes
 +   ​instead of at the time the semaphores are detected.
 +
 + + Semaphore events now dynamically update their "run state" until the point
 +   in which they execute. ​ This means that if a semaphore event triggers but
 +   ​another event is running which causes it to be flagged "Run next", it will
 +   ​continue to evaluate the semaphore files up until the moment it runs. If
 +   the state of those semaphores changes between being flagged as Run Next and
 +   ​actually executing, the event will detect it and adjust itself accordingly.
 +
 + ! Fixed a bug in the socket code that could sometimes cause a lost connection
 +   to not be detected if it happens while sending data to the client. ​ This
 +   could be a major cause for those who've had some "ghost node" issues.
 +
 + ! Who's Online was not pausing when the BBS had enough nodes to fill up
 +   ​multiple pages.
 +
 + + NodeSpy now has an option to connect via IPV4, IPV6, or to default to
 +   ​either V4/V6 and then fallback to using the other if it cannot resolve
 +   the address.
 +
 + + Echomail nodes can now be configured to default to resolving via IPV4 or
 +   V6, with a fallback to the other one if the address cannot be resolved.
 +
 + + FidoPoll will now attempt to use IPV6 if it is available and then fallback
 +   to IPV4 when connecting to unsecure nodelist via a nodelist lookup.
 +
 + + MIS event status will now display the date and time when the event was
 +   last executed as well as the last result returned from execution. ​ If you
 +   are a A39 pre-alpha tester, note that any events you've created in the
 +   Event editor with A39 may have to be recreated for this tracking to work
 +   ​because the "Event ID" was always getting set to 0 in earlier builds.
 +
 + + SENDMAIL now has an IPType similar to those added to Fidopoll, echomail
 +   ​nodes,​ Nodespy, etc.
 +
 + ! Mystic BINKP should no longer fail CRAM-MD5 negotiations when a BINKP
 +   ​option is listed after the CRAM-MD5 handshake in the options frame.
 +
 + + Mystic FIDOPOLL FTP send functions will now log FTP session data to the
 +   log file, similar to what it does with BINKP.
 +
 + + Mystic FIDOPOLL FTP will now automatically prepend a / to a directory if   it is not configured in Mystic'​s echomail node configuration with a slash
 +   it is not configured in Mystic'​s echomail node configuration with a /
 +
 + + QWKPOLL will now log to "​qwkpoll.log"​ in the log files directory.
 +
 + + QWKPOLL will now log all FTP client/​server exchanges in qwkpoll.log
 +
 + + MIS will now attempt to detect any ghost nodes and will reset the node
 +   data under many different circumstances. ​ If this happens, it will be
 +   ​logged in mis.log with an explaination as to why it was assumed to be
 +   a ghost node.  This combined with other recent stability improvements
 +   ​should help quite a bit with long term uptime of the terminal nodes and
 +   ​servers.
 +
 + + Echomail node configuration:​ Echomail node address input now is a single
 +   input instead of splitting out zone, net, node and point into their own
 +   ​fields. ​ This is done to make a little more room on the form for other
 +   ​options.
 +
 + + Echomail node configuration:​ Nodes now have a "SysOp Name" field.
 +
 + + Mystic Python has a new function: Delay (milliseconds) causes the problem
 +   to wait for a specific number of milliseconds.
 +
 + + All Mystic executables will now either display the compiled version
 +   ​date/​time or have a -ver/​-version option to do the same.
 +
 + + New menu command: MF (View draft message posts). ​ This command allows
 +   users to view and resume any saved draft message posts. ​ If the user
 +   has no drafts a simple message will be printed saying there are no
 +   saved drafts.
 +
 +   ​Drafts are automatically saved when a user runs out of time, gets
 +   ​disconnected for inactivity or loses/drops connection in the middle of
 +   ​posting or while replying to a message. ​ If Mystic has any sort of error
 +   while saving the message, it will also creat a draft of the message for
 +   the user.
 +
 +   If the optional data of /SCAN is supplied, Mystic will check to see if
 +   there are any drafts, and prompt the user if they would like to
 +   ​review their saved drafts ONLY if they have drafts. ​ If they do not do
 +   ​drafts,​ the command will simply do nothing. ​ Ideally you could put this
 +   ​somewhere during your login process, as the new default install does in
 +   ​prelogin.mnu
 +
 +   Six new prompts (532-537) go along with this. If you are using the default
 +   ​prompts you can simply copy over the default.txt to your data directory,
 +   but if you have modified the prompts then you'll need to add these new
 +   ​prompts into your default.txt and any other themes you use.  They are
 +   ​located in the upgrade.txt or the default.txt from a fresh installation.
 +
 + + New ACS command "​OD"​ returns TRUE if the user has any draft message posts
 +   ​saved.
 +
 + + New MCI code "​MF"​ shows the number of draft messages saved for the current
 +   user.
 +
 + + Posting a message now no longer enforces group requirements when evaluating
 +   the "​PostACS"​
 +
 + + The message editor now has a "Save as draft" option from the command menu.
 +   This means you will need to add that command to the menu if you use a
 +   ​custom template for your message editor, otherwise replace msg_editor.ini
 +   with the newer one from the installation.
 +
 +   See upgrade.txt for instructions on adding the command or use the default
 +   ​msg_editor.ini as a guideline.
 +
 + + Two new Python functions: pwrite and pwriteln. ​ These work just like the
 +   ​write/​writeln or rwrite/​rwriteln except they only resolve pipe color codes
 +   and not all MCI codes.
 +
 + + Echomail ACS is active. ​ Note: YOU MUST BE USING MUTIL TO PROCESS ECHOMAIL
 +   AND .TIC FOR THIS SYSTEM TO WORK.  Mystic cannot apply security to third
 +   party tossers.
 +
 +   This system is just like User access system except that it applies to
 +   ​echomail nodes. ​ Each echomail node has its own security level, group
 +   ​memberships (to echomail groups) and a set of acess flags. ​ The following
 +   ​commands are available within EACS:
 +
 +      s<​level> ​ : Echomail node must have a Security Level greater than or
 +                  equal to <​level>​
 +      g<​number>​ : Echomail node must be a member of Echomail group ID equal
 +                  to <​number>​
 +      f<​flag> ​  : Echomail node must have flag <​flag>​ which is a letter
 +                  between A to Z.
 +      u<​number>​ : Echomail node must have a unique ID of <​number>​. ​ This
 +                  allows security to be applied to specific nodes (ID is
 +                  shown in echomail node editor).
 +
 +   Just like user ACS, Echomail ACS can also use parenthesis and boolean
 +   ​evaulation.
 +
 + + Echomail ACS has been activated for message base subscribing/​reading. A
 +   new field in each Message base configuration called "List EACS" defines
 +   the ACS requires for an echommail node to be able to see, subscribe, or
 +   ​unsubscribe to the area via AreaFix
 +
 +   Hubs can still manually link a base to a node regardless of security, so
 +   for example if you wanted to force nodes to always carry a specific echo
 +   area, you would give them the base and then set the "List EACS" to an
 +   ​access they do not have (or even use % which is "​never"​ in ACS terms). With
 +   this setup in place, the node cannot add or remove the area, they can only
 +   ​perform rescans.
 +
 + ! When hatching/​tossing files, MUTIL will now properly randomly generate a
 +   ​random 8 letter .tic filename if one already exists of the same name as
 +   the archive.
 +
 + + The FU (File upload) menu command now has a new optional data command
 +   ​called "/​current"​. ​ If this option is specified, Mystic will attempt
 +   to upload to the current file base even if a specific file base has been
 +   ​configured for uploads.
 +
 + + The GH and GI (Goodbye and Hang up Immediately) menu commands have a new
 +   ​optional data option. ​ If "/​RECYCLE"​ supplied, Mystic will log the current
 +   user out and restart the session as if the user just connected to the BBS.
 +
 + + The XL (Matrix Login) command now as a new optional data option. ​ If /FULL
 +   is supplied, the typical Matrix login will be immediately skipped and the
 +   user will be presented the standard login process. ​ This is intended to
 +   allow people to use the Matrix login for things other than a Matrix-style
 +   log in.
 +
 + + MUTIL [ImportEchoMail] now has a new option: default_rescan. ​ This option
 +   ​allows the SysOp to define the default parameters used when a downlink
 +   ​requests a %RESCAN on all message bases. ​ In the past this defaulted to
 +   "​R=250"​. ​ MUTIL will continue to default to that value if it is not defined
 +   in the .ini file, otherwise it will adopt whatever is defined. ​ Be sure to
 +   ​define a valid command otherwise RESCAN will not work.  See the default
 +   ​MUTIL.INI for more information.
 +
 + + MUTIL now has a new option under the [General] section: "​logcache"​. ​ This
 +   can be a true or false value. ​ If true, MUTIL will cache the log file
 +   ​meaning it will write the log file in chunks of "​8KB"​ instead of every
 +   line being written. ​ This is the default and HIGHLY recommended setting for
 +   ​MUTIL. If set to false, MUTIL will physically open the log file and write
 +   each individual log line to the file and then close it.  Setting this to
 +   false will most likely significantly reduce performance.
 +
 + + Mystic AREA/​FILEFIX wasn't properly reporting +1 to Netmail when processing
 +   a request.
 +
 + ! Fixed a bug in Areafix RESCAN when using the R= command, caused by changes
 +   to my JAM code back when I was optimizing the statistical calculation for
 +   the Index reader.
 +
 + + New MPL function DateUnix returns the current date/time in Unix format
 +
 + + New MPL function DateU2D (unixdate): Converts <​unixdate>​ to a DOS date
 +
 + + New MPL function DateD2U (dosdate): Converts <​dosdate>​ to a Unix date
 +
 + + AreaFix responses now list the message base name along with the echotag
 +
 + + AreaFix rescans now show the total messages exported
 +
 + + AreaFix %LIST command now has an option parameter to perform boolean
 +   ​capable searches on the echotag and message base name.  These work just
 +   like msg searches with parenthesis (&)AND (|) OR (!) NOT functionality:​
 +
 +      %LIST BBS            - List areas that contains "​BBS"​
 +      %LIST BBS!Renegade ​  - List areas that contains "​BBS"​ but not "​Renegade"​
 +
 + + AreaFix now has a "​%ALL"​ command. ​ Using "​%ALL"​ or "​%+ALL"​ will add all
 +   areas the node has access to.  Using "​%-ALL"​ will remove all nodes the
 +   area has access to.  The command has an option second parameter which will
 +   ​perform a boolean capable search on the echotag and message base name:
 +
 +      %ALL                 - Add all bases the node has access to (but not
 +                             ​subbed)
 +      %-ALL                - Remove all bases the node has subscribed to
 +      %ALL BBS!Renegade ​   - Add all that contain "​BBS"​ but not "​Renegade"​ in
 +                             the echotag or base name
 +      %-ALL BBS!Renegade ​  - Remove all bases that contain "​BBS"​ but not
 +                             "​Renegade"​ in the echotag or base name
 +
 + + File Bases now have an "List EACS"​. ​ This Echomail ACS works identically
 +   to the Message Base version, allowing hubs to define which nodes have
 +   ​access to list, subscribe, and receive get files from an echoed file base
 +
 + + FileFix %LIST function now has an optional second parameter to perform
 +   ​boolean searches in the same was as Areafix.
 +
 + + FileFix now has an %ALL function that mimics the functionality of the
 +   ​Areafix equivalent.
 +
 +   <​ALPHA 1.12 A39 RELEASED -- April 20, 2018>
  
 </​code>​ </​code>​
whats_new_112.txt ยท Last modified: 2018/04/28 19:50 by avon