Skip to content

10.0.0

Compare
Choose a tag to compare
@tfausak tfausak released this 02 Mar 01:00
· 375 commits to main since this release
e93910c

A lot changed here, but it was mostly behind the scenes. There were a few breaking changes, but they shouldn't affect most users.

  • Breaking #205: Changed the --help and --version flags to print their output to STDOUT and exit successfully. Previously they printed their output to STDERR and exited unsuccessfully.
  • Breaking #197: Stopped accepting numbers as valid input JSON for 64-bit numeric values. These must be strings now. Rattletrap has emitted strings for these values since version 7.0.0. See #121 for context.
  • Breaking 74e68ec: Removed the static build time flag, which has done nothing since version 9.3.2.
  • #203: Added a new --schema flag for outputting a JSON Schema that describes how replays are represented as JSON.
  • #202: Added a new --skip-crc flag for skipping the CRC check when parsing replays.
  • 844526a: Sped up CRC computation.
  • b447190: Upgraded to GHC 8.10.4.
  • #192 & #181: Put all encoding and decoding logic in the same module as the type. This drastically reduced the number of modules and hopefully makes the code easier to understand.
  • #206: Implemented FromJSON and ToJSON instances manually rather than using Generic based deriving. This speeds up compilation and makes it clearer how types are represented as JSON.
  • #194: Removed unnecessary Ord instances. This speeds up compilation.
  • #200: Improved how byte and bit decoding are implemented behind the scenes. This sets the stage for changing the decoding library.
  • #199 & #198: Changed the name of some types behind the scenes. This makes type names less redundant.
  • #195: Improved internal code structure. This avoids having lots of files in one directory.