Skip to content

Releases: aichaos/rivescript-js

1.15.0 - August 7 2016

08 Aug 00:23
Compare
Choose a tag to compare

Changes

  • 1.15.0 2016-08-07
    • Add a new contructor option, forceCase, which will force-lowercase your
      triggers during parse time, enabling authors to use uppercase letters in
      triggers without it being a syntax error. Do note however that Unicode
      case folding can become an issue with certain symbols. (Bugs #143 and #69).
    • Fix a bug where inline redirects, like {@ hello} would fail to match their
      trigger due to the presence of a space between the @ and text (bug #145).
    • Add a non-fatal warning at parse time if it's detected that you used an
      @Redirect command in conjunction with a -Reply or *Condition. In such
      cases, the redirect "wins" and preempts the others, which may be surprising
      behavior, and RiveScript will warn you about this now (bug #58).
    • Prevent errors from arising when the user's history object is invalid, for
      example if somebody manually overrode the __history__ user
      variable (PR #151).
    • Fix a bug in the write() function where -Replies were being written when
      a trigger actually had no reply (resulting in a single-character -
      command which raises an error when re-parsed) (PR #141).
    • Add more documentation to the rs.Promise function, including a full
      example of how to use the replyAsync() method (bug #144).

1.14.0 - July 9 2016

09 Jul 22:08
Compare
Choose a tag to compare

Changes

  • 1.14.0 2016-07-09
    • Add a new API function: getUserTopicTriggers returns a list of triggers
      available from a user's current topic, including triggers that came from
      topics inherited/included by their topic (PR #138).
    • Change how the parser handles inline comments (// appearing on the same
      line as RiveScript code). Previously, it required at least one space to
      be present on either side of the // characters. Now, it only requires a
      space before the //.
    • Add new examples: using RiveScript as a router, and a link to a plugin for
      using RiveScript with Hubot.
    • Add a new ASCII logo to the header output of shell.js and shell.coffee
      .   .       
     .:...::      RiveScript Interpreter (JavaScript)
    .::   ::.     Library Version: v1.14.0
 ..:;;. ' .;;:..  
    .  '''  .     Type '/quit' to quit.
     :;,:,;:      Type '/help' for more options.
     :     :

1.13.0 - June 14 2016

14 Jun 19:20
Compare
Choose a tag to compare

Changes

  • 1.13.0 2016-06-14
    • Fix the <call> tags not being executed on the left side of conditionals,
      so that <call>test</call> == true => Success types of conditions should
      work (bug #107).
    • Fix trigger regexp processing so that if a {weight} tag contains a space
      before or after it (or: a space between {weight} and the rest of the
      trigger text), the spaces are also stripped so that matching isn't broken
      for that trigger (bug #102).
    • Rename the old async-object example to second-reply to lessen confusion
      between it and async-reply (bug #123).
    • Fix the _ wildcard not being able to match Unicode letters (bug #118).
    • Add initialMatch() to the API, which is like lastMatch() but it returns
      the original trigger that the user matched instead of a redirected trigger
      (PR #127).

1.12.2 - May 16 2016

16 May 19:43
Compare
Choose a tag to compare

Changes

  • 1.12.2 2016-05-16
    • Call the error handler on loadDirectory() when the directory doesn't exist
      or isn't a directory (bug #117).
    • Include the dist/ directory on npm for easy web browser embedding using
      npmcdn.

1.12.1 - May 5 2016

05 May 22:34
Compare
Choose a tag to compare

Changes

  • 1.12.1 2016-05-05
    • Fix the <call>...</call> regular expression to match line break characters
      and preserve them in the argument list sent to an object macro (bug #108).

1.12.0 - April 17 2016

17 Apr 21:54
Compare
Choose a tag to compare

Changes

  • 1.12.0 2016-04-17
    • Fix the stringify() function to also escape newlines on conditionals.
    • Various fixes to "pipe syntax" for arrays, optionals and alternations;
      having a "blank" entry separated by pipes (e.g. a trailing or leading pipe)
      would cause matching issues. These have been fixed and a syntax error is
      given if this is detected at parsing time.
    • Added additional documentation for the usage of deparse() and related
      functions to the eg/deparse directory.

1.10.0 - March 30 2016

30 Mar 20:38
Compare
Choose a tag to compare

Changes

  • 1.10.0 2016-03-30
    • Fix a bug where ! local concat settings wouldn't apply to the first
      continuation of a conditional (bug #88)
    • Add the ability to override certain common error messages with custom text,
      for the cases where a trigger wasn't matched, when a trigger was matched
      but no reply was given, when an object macro wasn't found, and when deep
      recursion errors arise (bug #90)
    • Fix a bug where the <@> syntax for a redirect fails when <star1> is
      undefined (bug #92)
    • Fix the stringify() function to escape newline characters so that the
      resulting code doesn't have syntax errors when reloading it (bug #95)
    • Fix some triggers in the default example brain to account for substitution
      on the bot's previous reply (bug #87)
    • Add command line arguments to shell.js and shell.coffee: use --debug
      to enable verbose debug logging and --utf8 to enable UTF-8 mode.

Release 1.8.0 - March 18 2016

18 Mar 17:29
Compare
Choose a tag to compare

Changes

  • 1.8.0 2016-03-18
    • Update the way the args array works in JavaScript object macros: it now
      uses a shell-style array where quoted strings come in as one array element,
      even if it contains spaces.
    • Update all internal user variable getting/setting to use the public
      setUservar() and getUservar() methods, enabling developers to override
      the implementation of these functions.
    • Fix a bug when looking for %Previous tags, so that if the current topic
      has no %Previous trigger RiveScript won't bother looking for them.

Release 1.6.0 - March 8 2016

08 Mar 18:55
Compare
Choose a tag to compare

Changes

  • 1.6.0 2016-03-08
    • Update the deparse() and stringify() functions to include the source
      code of JavaScript object macros in the output.
    • Update the loadDirectory() function to load RiveScript files recursively.

Release 1.4.0 - Feb 11 2016

12 Feb 00:11
Compare
Choose a tag to compare

Changes

  • 1.4.0 2016-02-11
    • Add support for asynchronous object macros (using promises via RSVP.js),
      and the accompanying replyAsync() function and example code.
    • Add ability to use an array in a reply element as a shortcut for random
      text: - (@myArray) translates to - {random}my|array|content{/random}.