sjbarag / brs

An interpreter for the BrightScript language that runs on non-Roku platforms.
MIT License
113 stars 43 forks source link

fix(manifest): BREAKING-CHANGE Prevent precision loss in parsed manifest #576

Closed sjbarag closed 3 years ago

sjbarag commented 3 years ago

Numbers are allowed in RBI's manifest file, but brs used to lose precision by parsing them as numbers. This caused some subtle differences when a manifest was re-serialized after parsing, in which 1.0 was represented only as 1. It's unclear whether or not this caused issues with applications run in RBI using that rewritten manifest, but this was originally reported back in July 2019. Stop parsing manifest values as numbers to prevent precision loss.

fixes #279