The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.
Revision history for Perl extension Data::BitStream::XS.

0.04    17 May 2012
  - get sub was using POPul -- should use either POPu or POPul/POPuq.  Changed
    to POPu and added a simple test.  Data::BitStream has more extensive tests
    that found this when testing the 'xs' implementation (this module) on LLP64
    systems (generally 64-bit Perl on 32-bit O/S).  This did not effect LP64
    systems (generally 64-bit Perl on 64-bit O/S).
  - Use Inline C when possible for image compression example.
  - Add put_raw implementation.
  - Unified internal stack code.  A little faster.
  - Add Generalized Fibonacci, Goldbach G1/G2, Comma, and Block Taboo codes.
  - is_prime and next_prime are available for export if you want them for some
    reason.  They're quite fast, though other packages have some advantages
    (e.g. Math::Primality is very slow for small numbers but can work with
    GMP arbitrary size numbers, Math::Prime::XS is faster for generating a
    range of primes, and Math::Prime::FastSieve should be better if you're
    doing many operations over a finite range and have some memory).

0.03    23 Nov 2011
  - Tracked down the LLP64 (32-bit long, 64-bit long long) issue down to using
    an unsigned long in the .xs get_* macro.  Fixed.  After v0.02, pure 32-bit
    and pure 64-bit systems would work, but 64-bit Perl on 32-bit O/S didn't.
    It should work now.
  - Allow Omega to encode 0 - ~0 instead of 0 - ~0-1.  All codes are full range.
  - Better use of const pointers.
  - Code run through valgrind.
  - More consistent error status.
  - On code errors or reading off end of stream, position should remain
    unchanged (if they trap the croak).  Many codes have changes to make this
    happen, and a new test is added to find a lot of these issues.  It is not
    complete.
  - Added examples, mainly copied from Data::BitStream.
  - New fheader() and new(fheader => ...) methods added to finish off the
    compatibility with Data::BitStream in file I/O.


0.02     9 Nov 2011
  - Fix tests on 5.6/5.8 that broke things at the last minute.
  - Change // comments and mixed declarations to allow compilation with
    old C compilers (--std=c89 --ansi -pedantic).
    Variadic macros still being used however.
  - Try to match word size with Perl word size.  Hopefully will fix
    issues with LLP64 model machines using 64-bit Perl.


0.01  Mon Nov  7 06:00:00 2011
  - Initial version