Revision history for RPi-Serial

3.02       2026-06-12
        - Fixed a heap buffer overflow in gets(): the Perl wrapper passed a
          zero-length scalar that the XS tty_gets() then wrote up to $num_bytes
          into. tty_gets() is now a self-allocating XSUB (Newx/Safefree) that
          returns the exact bytes read
        - gets() is now binary-safe: it returns the exact bytes read (embedded
          NULs and trailing whitespace preserved) instead of running the result
          through unpack "A*"
        - tty_gets() now croaks on a read error instead of calling exit(-1),
          and clears O_NONBLOCK on the fd so the port's VTIME read timeout
          applies (short/idle reads return the partial data instead of
          spuriously failing)

3.01    2019-09-24
        - added crc() method/function for calculating CRCs

3.00    2019-08-02
        - added the XS file to the distribution

2.99    2019-08-02
        - removed requirement of WiringPi::API, all low-level operational code
          is now incorporated into a local XS file

2.3603  2018-02-09
        - added WARNING section in POD about the requirement of disabling
          the Pi's Bluetooth before the GPIO serial will work (closes #1)

2.3602  2017-07-01
        - added DESTROY method to close() the serial port

0.01    2017-07-01
        First version, released on an unsuspecting world.
