Difference between revisions of "Changelog"

From DiceRoller Documentation
m
Line 6: Line 6:
 
** Throw more informational exceptions rather than having an internal detail throw an exception (ArgumentNullException instead of NullReferenceException, InvalidOperationException with a more meaningful error message rather than ArgumentException on Dictionary.Add, etc.).
 
** Throw more informational exceptions rather than having an internal detail throw an exception (ArgumentNullException instead of NullReferenceException, InvalidOperationException with a more meaningful error message rather than ArgumentException on Dictionary.Add, etc.).
 
** Fix roll macro argument parsing.
 
** Fix roll macro argument parsing.
 
  
 
== 1.1.0 ==
 
== 1.1.0 ==

Revision as of 19:56, 1 May 2017

1.2.0 (prerelease)

  • Additional documentation comments, and fixing some inaccuracies in existing comments.
  • Additional unit tests.
  • Bugfixes:
    • Trim leading/trailing spaces around macro parameters before passing them to macro callbacks.
    • Throw more informational exceptions rather than having an internal detail throw an exception (ArgumentNullException instead of NullReferenceException, InvalidOperationException with a more meaningful error message rather than ArgumentException on Dictionary.Add, etc.).
    • Fix roll macro argument parsing.

1.1.0

  • New Play-by-Post helper class RollPost, found in the Dice.PbP namespace.
    • Rolls can be serialized and saved to a database (or somewhere else, I don't judge) so that rolls within a post remain fixed between previews/edits.
    • Contains the ability to detect tampering of roll expressions within a post (deleting/modifying rolls). Adding new rolls at the end is ok, everything else causes validation errors.
    • A new [roll] macro which can be used to obtain results of previous rolls in the same post.
  • DieResult and RollResult are now Serializable and Equatable.
  • Group rolls can now be rerolled.
  • New if() global function, which lets you test an expression against a comparison, and return one of two expressions depending on whether or not the comparison succeeded.

1.0.0

  • Initial version