Changes for version 0.018 - 2026-02-11
- New exportable span() function which universally constructs a span from a SecretBuffer, Span object, or plain scalar.
- PEM object header values are no longer secrets, by default. This is a breaking change, but the module has been out less than two months.
- New methods to encode and decode variable-length integers and length-prefixed strings:
- append_lenprefixed / parse_lenprefixed
- append_base128le / parse_base128le
- append_base128be / parse_base128be
- append_asn1_der_length / parse_asn1_der_length
- New method Span->append_to, and normalize Span->copy_to to overwrite. This is a breaking change in that ->copy_to used to append to SecretBuffer but overwrite scalars. Now copy_to overwrites for both destination types and append_to appends to both destination types.
- Change type of secret_buffer_charset_test_codepoint codepoint from `uint32_t` to `U32` so that users of Inline aren't forced to `#include <stdint.h>` This is a breaking change for any C code which was looking up the function by name in the %C_API hash, but the ABI is unchanged.
Modules
Prevent accidentally leaking a string of sensitive data
Observe results of a write_async operation
Disable TTY echo within a scope
Parse INI format from a SecretBuffer
Parse PEM format from a SecretBuffer
Reference a span of bytes within a SecretBuffer
Provides
in lib/Crypt/SecretBuffer.pm