Releases: ToxicFrog/vstruct
Releases · ToxicFrog/vstruct
v2.1.1
No API changes.
Lua 5.3 support has been improved: LUA_COMPAT_MATLIB is no longer required, although if you have it, vstruct will use the faster builtin math.frexp for floating-point operations rather than a slower Lua-only version.
Fixes
- Several of the rockspecs had incorrect version bounds. These have now been fixed.
New features
- when invoking the random test generator, you can now pass multiple test kinds on the command line, e.g.
lua test.lua NROF_TESTS=8192 read writeto run both read and write tests. - passing
DISABLE_FREXPas the first argument totest.luawill cause it to disable the builtinmath.frexpfor all tests, and run them with the lua-only version
v2.1.0
v2.0.1
- Added some basic performance tests
- Dramatically improved performance when packing large arrays into strings
- Moved the contents of ./vstruct/ into ./; this directory structure originally existed to support luadist, but made it harder for non-luadist users to install
- LuaRocks support (thanks to @deepakjois)
v2.0.0
This is an enhancement release.
THIS RELEASE BREAKS BACKWARDS COMPATIBILITY. See README.md for details. In most cases migrating existing code to 2.0 should be trivial.
New in 2.0:
- Major internal redesign and refactoring.
- API uses read/write instead of pack/unpack.
- Compiled format strings behave slightly differently.
- Added vstruct.records() iterator.
- Added vstruct.register() and format string splicing.
- Improved test coverage.
- Improved error reporting for invalid arguments to API functions.
v1.1.4
This is a bugfix release. If you use format p or pass non-integer values to formats i or u you should upgrade to this version to fix potentially serious bugs in these formats.
- Fixed a bug where certain non-integer values passed to format
p,i, orucan crash the library outright or cause it to silently write incorrect data. The root cause was an incorrect assumption thatstring.charwould truncate rather than rounding. - Improvements to documentation and unit tests.
v1.1.3
This is an enhancement release.
New in this version:
xformat extended to permit padding with a specific value: "x8,15" writes 8 bytes of 0x0F.- Improved error reporting for compile and runtime errors.
- Improved test coverage, especially for error reporting.
- README now uses markdown.
- Documentation updates and clarification.