Revision history for Bytes::Random::Secure
0.21 2013-01-24
- All functions and methods will now throw an exception if the byte-count
parameter is passed something that doesn't look like an integer >= 0.
- examples/*.pl updated to demonstrate new features.
- Remove silly check for "bag" strings longer than 2**32.
- Eliminate a line of unreachable code from _closest_divisor().
- Test coverage is now 100%.
0.20 2013-01-24
- This is a major release. Much thanks to Dana Jacobson for his ideas,
suggestions, code reviews, and for writing Crypt::Random::Seed.
- Major refactoring / rewrite.
- Built an OO base layer over which the functions interface is a thin wrapper.
- OO interface exposed publically.
- Documented all functions. (POD)
- removed config_seed() (never publically released).
- Seed defaults for both interfaces are 256 bits.
- Major enhancements to test suite. (Coverage is 99.3%)
- ALL OF THE FOLLOWING CHANGES ARE FROM (UNRELEASED) 0.13:
- * Compatible with Perl 5.6.
- * Dropped Crypt::Random::Source dependency in favor of Crypt::Random::Seed.
- * Seeding is lazy.
- * Minimum seed size: 2-longs (64 bits). Maximum, 16 longs (512 bits).
- * Documented how to configure seeding.
0.13 2013-01-15 (Never released)
- POD clarification, enhancement.
- Improved backwards compatibility support for Perl v5.6.x.
- Eliminated Crypt::Random::Source dependency in favor of Crypt::Random::Seed;
Thanks to Dana Jacobsen for creating that light-weight and powerful tool.
- Added some seed tests.
- Made Test::Pod::Coverage a 'RELEASE_TESTING' only test.
- Made seeding and RNG-instantiation "lazy" so that
"use Bytes::Random::Secure;" only drains system entropy if random bytes are
actually requested. (Thanks again to Dana Jacobsen for the idea).
- Modified _seed() to pass seed configuration through to Crypt::Random::Seed's
constructor.
- Added a config_seed() class method to facilitate configuration of
the Crypt::Random::Seed object used in seeding the ISAAC algorithm.
- Minimum seed size set to 2-longs, max to 16-longs (default).
- Documented how to configure the seeding, and explained why it might be
useful to do so (drain less system entropy).
- Added META.* tests.
0.12 2012-12-09
- Applied rewrite of random_bytes() from Dana Jacobsen, that improves
performance while at the same time making better use of the 32 bit random
value returned by ISAAC.
- POD fixes/tweaks.
0.11 2012-12-05
- Fixed a few issues where v0.10 broke compatibility with Perls older than
v5.10. (Removed // operator.)
- POD improvements.
- Added a few entries in MANIFEST.SKIP.
0.10 2012-12-04
- Better handling of random_bytes() (no parameter passed): Now defaults to
zero bytes explicitly, so we don't get "uninitialized values" warnings.
- Added random_string_from($bag,$length) function.
- Added tests for no param list, as well as for new random_string_from()
function and its support functions.
- POD enhancements.
- Removed bytes pragma; it wasn't necessary, and prevented support for
unicode code points in random_string_from()'s bag.
0.09 2012-11-02
- "Changes" is now CPAN::Changes::Spec compliant.
- Added t/09-changes.t to verify spec compliance.
0.08 2012-10-28
- Added an example in the ./examples/ directory.
- Added a minimum Perl version to the distribution metadata.
0.07 2012-09-23
- Refined t/20-functionality.t's approach toward verifying bytes seem well
behaved.
- Corrected a couple of POD problems.
- Note: Under Moose the test suite generates a few warnings. Not sure what
the best solution will be (they're harmless but annoying).
0.06 2012-09-21
- Fixed the optionality of t/21-bytes_random_tests.t.
- Documented the install process in README.
0.05 2012-09-20
- POD revisions: Better details on dependencies, minimizing bloat, and
Win32-specific requirements.
- 21-bytes_random_tests.t is now optional, because Statistics::Basic will
fail to install in some environments due to a problem in one of its
dependencies (Number::Format).
0.04 2012-09-19
- Added t/21-bytes_random_tests.t, which is an adaptation of the test suite
for the Bytes::Random module.
- Added a BUILD_REQUIRES dependency to accommodate the Bytes::Random tests.
0.03 2012-09-18
- POD enhancements, explaining the dependency chain, and how to minimize
the Any::Moose impact by ensuring Mouse is installed.
- Removed syntax that was only valid for newer versions of Perl. We should
be 5.6.x compatible now.
- Placed the random number factory in a closure, making it only accessable
by the accessor random_bytes().
- Added some tests for seed generation since we took that functionality
away from Math::Random::Secure when we removed it from our list of
dependencies in v0.02.
- Added a Win32 test to Makefile.PL so that a Windows-only dependency will
be included if necessary.
0.02 2012-09-17
- Removed Math::Random::Secure dependency.
- Added Math::Random::ISAAC and Crypt::Random::Source dependencies (they
were already dependencies of Math::Random::Secure, so we're actually a
little lighter-weight now).
- POD enhancements: Explain Math::Random::ISAAC::XS plugin, explain
dependency chain, and explain why it gets a whole lot worse under Windows.
0.01 2012-09-06
- Initial CPAN release.