Revision history for Perl extension UUID.

ToDo:
  - Remove old tests.
  - Remove TODO in tests.
  - Convert all uuid functions to local.
  - Makfile order.
      - Deps need DFSEP too?
      - Doing cp_nonempty on every make.
      - Running manifypods every make. (not make test)
  - SEGV in compare.
      - 0.31_12/8db6ed20-8f10-11ee-98b0-b3c3213a625c
      - 0.31_13/32e1b61c-8d3c-11ee-a6ce-d46877b9db4f
      - 0.31_14/24e82eea-8ece-11ee-84db-a641c0d4a11c
      - 0.31_15/dcd55dd6-8f99-11ee-82b8-a1839035dbe2
      - 0.31_16/41feedb2-91d9-11ee-99f5-806a47702ea9
  - MSVC timeval
      - 0.31_13/ebe94d3a-7057-1014-8029-be67cb952333
      - 0.31_14/103adbca-6c79-1014-9b7b-7eeae3396204
      - 0.31_15/52762811-70e8-1014-9432-a672cb952333
      - 0.31_16/d3366b02-6d23-1014-840d-9aebe3396204
  - MSVC fails to build all
      - 0.31_12/338a4f11-7017-1014-92ee-f26ccb952333
  - XS_RETURN_EMPTY
      - 0.31_11/888459aa-8f24-11ee-98b0-b3c3213a625c
  - Can't call method "is_local" on unblessed reference
      - 0.31_13/8d5c8762-8f57-11ee-98b0-b3c3213a625c
      - 0.31_14/50b750c6-9024-11ee-98b0-b3c3213a625c
      - 0.31_15/67f8858e-9024-11ee-98b0-b3c3213a625c
  - hwaddr missing
      - 0.31_12/74a658ae-8ec8-11ee-98b0-b3c3213a625c
  - no input files
      - 0.31_11/579e95c0-8f11-11ee-98b0-b3c3213a625c
  - bad bootstrap - XSRETURN_EMPTY - Using $< in a non-suffix rule
      - 0.31_11/143c6c44-8ee9-11ee-98b0-b3c3213a625c
  - MURMUR_DOBYTES
      - 0.31_11/2891f134-8c4e-11ee-98b0-b3c3213a625c
  - @ not found
      - 0.31_10/69f1cd06-8f10-11ee-98b0-b3c3213a625c
      - 0.31_10/79c56dc8-8f24-11ee-98b0-b3c3213a625c  <-- also, XS_RETURN_EMPTY
  - Solaris signed char vs char in typedef for uint8_t.
      - 0.31_10/a174fdf2-8ddf-11ee-98b0-b3c3213a625c
  - stray '\177' in program
      - 0.31_10/e91ae5ac-8b39-11ee-98b0-b3c3213a625c

next
  - Fixup repo tree with better commit timestamps.
  - Move test debug dump to separate file.
  - Expose uuid_type().
  - Expose uuid_variant().
  - Bump dev version.
  - Force verbose tests if automated testing.
  - Change test debug output to TAP stream comments.
  - Don't skip debug test.
  - Make sure debug test exits clean.
  - Clean up "whitespace errors".
  - Make sure all files in dist are in MANIFEST.
  - Make sure all MANIFEST files are in dist.
  - Bump dev version.
  - Expand smoker coverage.
  - Try different approach to uuid_type().
  - Bump dev version.
  - Add tests for type/variant.
  - Try unpacking first for uuid_type().
  - Bump dev version.
  - Change type/variant test messages.
  - Comment unused test code.
  - Fix multiple BSD compiler warnings.
  - Pass char pointer to my_unpack().
  - Add note on rpc interface randomness.
  - Bump dev version.
  - Fix nested comment.
  - Distill Changes.
  - Bump dev version.
  - Unpack to string first in uuid_type().
  - Bump dev version.
  - Use uuid_type() directly on e2fs for Solaris 64bit.
  - Look for e2fs interface before rpc, for FreeBSD.
  - Bump dev version.
  - Import e2fsprogs code.
  - Expose uuid_type().
  - Expose uuid_variant().
  - Bump dev version.
  - Add personal attributions to edited e2fs code.
  - Rename t/9test.t to t/9old_test.t.
  - Remove debug facility.
  - Remove Devel::CheckLib.
  - Reorganize POD, document types() and variant().
  - Add tests.
  - Move wrapper code to XS.
  - Expose uuid_time().
  - Tidy.
  - Update todo.
  - Fix 3time.t.
  - Bump dev version.
  - Windows getuid() fails. Use 0xdeadbeef instead.
  - Restore original e2fs includes.
  - Fix earlier fix to silence bootstraping.
  - Fix Win32 file separators in Makefile.
  - Restore includes in uuidP.h.
  - Relocate get_uuidpm_version().
  - Restore config.h.in.
  - Tidy subst.pl.
  - Look for header files.
  - Import dirpaths.h.in.
  - Move src to usrc.
  - Expand module prereqs to pedantic levels.
  - Silence mkpath.
  - Remove dirpaths.h.in guts. It's a NoOp in this case.
  - Add scripts to dump uuid defines.
  - Change xs includes to "system" type.
  - Add tests to write ulib/EUMM.h.
  - Move UUID config out of Makefile.PL.
  - Add exceptions to t/0gen.t.
  - Tidy t/0gen.t
  - Fix typos.
  - Include EUMM.h.
  - Fix build message.
  - Bump dev version.
  - Document time().
  - Test time().
  - Fix win32 quoting issue in makefile.
  - Fix sv_setpvn args.
  - Remove casts from SvGROW result.
  - Fix args to unparse() and friends.
  - Some versions of make dont support some autovars.
  - Fix quoting in distmeta for win32.
  - Sofware::License requires perl-5.12.0.
  - More win32 makefile fixups for distdir.
  - Re-order generated dist files to satisfy OCD.
  - Regress one quote fix.
  - Win32 makefile path fixups.
  - Dont add to manifest if manifest doesnt exist.
  - Add temp files to cleanup and sort.
  - Re-order meta generation and addition.
  - Fix typo.
  - Add temp files to cleanup.
  - Fix nested qualifiers.
  - Win32 insists on backups when using perl -i.
  - Yet another win32 quote fix.
  - Win32 doesnt chdir during disttest.
  - Aggresively remove backup to in place edit.
  - Try fixing BSD type char vs signed char.
  - Bump dev version.
  - Tests.
  - Split bin into ubin/util.
  - Change subst.pl to print to stdout.
  - Atomically move generated headers into place.
  - Change configure.pl to print to given file.
  - Move EUMM.h atomically into place.
  - Untangle config output caused by perl -l.
  - Fix deps to deal with make -j.
  - Wrong message on configure.pl.
  - Fix fixing wrong file, uuid_types.h.new instead.
  - Delay module build until after ulib generation.
  - Add test for broken compare.
  - Aggressively removed wrong file.
  - Patch gen_uuid.c for Solaris.
  - Require Text::Patch.
  - Update MANIFEST.
  - Clean patch backup.
  - Win32 makefile quoting.
  - Remove :raw layer in patch script.
  - Dont build manifypods until after library.
  - Split two different core dump reports into t seperate tests.
  - Change SvGROW to sv_grow.
  - Isolate one bad test.
  - Bump dev version.
  - Add note to Solaris patch.
  - Use sv_grow everywhere.
  - Remove some of the Makefile mods.
  - Added some temporary debugging.
  - Test debug.
  - Use sizeof(struct uuid) vs sizeof(uuid_t).
  - Expand call to uuid_compare.
  - Update MANIFEST.
  - Bump dev version.
  - Complicate MYMETA inclusion.
  - Use struct uuid directly.
  - Use PERL_NO_GET_CONTEXT.
  - Bump dev version.
  - Go back to uuid_t vs struct uuid.
  - Turn off -Wcompound-token-split-by-macro.
  - Use uuid_t for sizeof.
  - Win32 doesnt like turning off stuff it doesnt know.
  - More pointer fixups.
  - Revert 1 of the fixups.
  - Look for struct timeval.
  - Turn off debug.
  - Guard EUMM.h.
  - Typo.
  - Patch uuid.h includes to more correctly deal with Win32.
  - Rename Solaris patch.
  - Fix dep.
  - Simulate preprocessor logic in configure.pl.
  - Replace missing result message.
  - Update MANIFEST.
  - Add second level of patching and reorganize.
  - Update if UUID.xs changes.
  - Fix make order.
  - Move make variables to post_constants section.
  - Add files to 0gen.t.
  - Bump dev version.
  - Try new generate() xs.
  - Patch uuid_compare to myuuid_compare.
  - Restore generate() and friends.
  - Add torture test for compare().
  - Bump dev version.

0.31 Mon Nov  6 23:43:58 EST 2023
  - Make generated metafiles authoritative and test.
    - Thanks to twata. [rt.cpan.org #150311]
  - Re-enable warnings, per Kwalitee.
  - Rename License to LICENSE, per Kwalitee.
  - Add 'provides' info to metafiles, per Kwalitee.
  - Add test deps, per Kwalitee.
  - Switch to non-system types.
  - Fix make order.
  - Fix misguided config.h.
  - Fix missing prototypes.
  - Fix missing patch.

0.30 Tue Oct 31 17:16:50 EDT 2023
  - Bump ExtUtils::MakeMaker prereq to 6.64 (first version supporting
    TEST_REQUIRES).
  - Better support for older Win32.
  - Fix trivial build warnings.

0.29 Wed Oct 25 01:15:57 EDT 2023
  - Bump prereq version for Devel::CheckLib to 1.14 to fix problems with
    Strawberry versions 5.18 to 5.28. Earlier Strawberry did not ship
    Devel::CheckLib. Newer versions shipped 1.14 or later.
    - Thanks to twata. [rt.cpan.org #143841]

0.28 Sat Dec 29 00:59:25 EST 2018
  - Add OSSP variant of libuuid. CentOS7 (and presumably other RedHat
    derivatives) have packages for both OSSP and e2fs. Favor e2fs, if
    found, since our implementation of OSSP is probably slower.
    - Thanks to Greg Cox. [rt.cpan.org #128122]

0.27 Fri Sep 23 01:52:00 EDT 2016
  - Update SYNOPSIS to remove ":all". Indiscriminate exports could cause
    problems with other modules, such as File::Copy::copy().
    - Thanks to Slaven Rezic. [rt.cpan.org #118033]

0.26 Sat May  7 02:32:52 EDT 2016
  - Fix broken @ARGV handling in Makefile.PL regarding debug flag.
    - Also changed DEBUG flag to UUID_DEBUG
    - Thanks to gregor herrmann. [rt.cpan.org #114213]

0.25 Mon Mar 14 10:15:55 EDT 2016
  - Changed all prints in Makefile.PL to warns and made both
    unbuffered to match Devel::CheckLib
  - Remove uuid_unparse_lower/upper() calls which don't exist
    on SunOS
  - Ignore TEST_REQUIRES on EUMM < 6.64
  - Try to find correct link lib (-lrpcrt4, -luuid, -lc, in order)
  - Make string argument a char** for uuid_to_string()
  - Add note on Linux UUID packages
  - Moved test.pl to t/test.t and updated to Test::More
  - Changed debug() to emit to stderr to match Devel::CheckLib
  - Removed Makefile.PL verbosity
  - Added switch to Makefile.PL to incite verbosity
  - Become verbose for smokers only on dev releases
  - Added build notice for missing header/libraries
  - Bail out of build if uuid_t size == 0
  - Reorganized header/library search to find wayward OSX
    - Thanks to David Wheeler and William Faulk for pointers and
      lots of patience in testing. [rt.cpan.org #104394]

0.24 Mon Jan 19 01:05:14 EST 2015
  - Add 'extern "C"' for g++

0.23 Sun Dec 28 18:58:04 EST 2014
  - Reverse order of rpc.h and rpcdce.h in UUID.xs (rpc.h first)

0.22 Sun Dec 28 08:42:23 EST 2014
  - Ugh! Forgot to include rpcdce.h in UUID.xs

0.21 Sun Dec 28 08:35:23 EST 2014
  - Instead of unistd.h, try rpcdce.h on Win
  - Minor cleanup in test.pl

0.20 Sat Dec 27 19:27:28 EST 2014
  - Also include unistd.h when using Rpc.h (Win)
  - Fix pointer problem in -luuid search on Win
  - Fix minor header propagation problem in Makefile.PL

0.19 Fri Dec 26 17:09:12 EST 2014
  - Fix pointer confusion in do_uuid() on BSD [rt.cpan.org #101137]

0.18 Fri Dec 26 08:20:06 EST 2014
  - Allow for non-true/false return from uuid_from_string() on BSD
  - Remove unused dependency on Config.pm
  - Added yet more debug info for 'make test' time
  - Change -DPERL__UUID__UUID_BUF_SZ to -DPERL__UUID__STRUCT_SZ

0.17 Fri Dec 26 05:05:13 EST 2014
  - Removed two nested comments on BSD /* sigh */
  - Let e2fs machines use sv_cmp too (let's see if OSX Frankenbox works)
  - Changed warns in Makefile.PL to prints

0.16 Thu Dec 25 18:24:23 EST 2014
  - Typo on Windows/BSD
  - Trying sv_cmp() instead of uuid_compare() on RPC-based machines

0.15 Thu Dec 25 05:55:13 EST 2014
  - REALLY fix do_uuid() typo. Really.
  - Fix pointer problems on BSD
  - Removed uuid_copy() from BSD. How did that get there? =)
  - Added yet another test for OSX segfault!
  - Check and set -DPERL__UUID__UUID_BUF_SZ=?? in Makefile.PL
    (Should be the same everywhere, right? Right?)

0.14 Wed Dec 24 22:39:42 EST 2014
  - Fix typo in Windows do_uuid() for compiler fail on strawberry
  - Now checking for all header files instead of taking first
  - Added more detail for failed interface search
  - Added check for uuid struct size

0.13 Wed Dec 24 07:45:49 EST 2014
  - Split -luuid search into header file and interface type stages
  - Removed SvPV_nolen everywhere (buffer overflows)

0.12 Wed Dec 24 03:07:50 EST 2014
  - Added support for non-e2fs systems (BSD, OSX, Win)

0.11_01 Tue Dec 23 20:23:29 EST 2014
  - Modified test.pl to hopefully catch where MacOSX fails
  - Heavy mods to Makefile.PL to differentiate between interfaces
  - Makefile.PL *lots* more verbose
  - Lots of #ifdefs added in XS
  - First shot at code that works for BSD style interface

0.11 Mon Dec 22 19:03:09 EST 2014
  - Looks like I've managed to cut the failure reports down a little TOO
    far, so now splitting the search for -luuid into two separate
    phases. The first, which I don't want to deal with right now, tests
    for usability of the -luuid flag by itself. The second, tests for
    usability of individual functions. We'll deal with platforms that
    actually find libuuid first, then MAYBE revisit others.

0.10 Mon Dec 22 11:55:30 EST 2014
  - Added clear() and is_null()
  - Added copy() and compare()
  - Added unparse_lower() and unparse_upper()
  - Added generate_random() and generate_time()

0.09 Mon Dec 22 04:31:26 EST 2014
  - Drag test.pl into this century using Test.pm
  - Add postamble to Makefile to generate README
  - Overhaul POD
  - Fix MacOS warning "unsigned char* <--> char*"

0.08 Sun Dec 21 06:06:21 EST 2014
  - Added README with pod2text UUID.pm README
  - Switched libuuid search to Devel::CheckLib

0.07 Sat Dec 20 21:12:17 EST 2014
  - Updated Makefile.PL
  - Added search for -luuid at Makefile.PL time
  - Updated license and POD to Artistic 2.0

0.06 Thu Dec 18 08:01:44 EST 2014
  - Took over maintaining (Rick Myers - JRM)
  - Added uuid()

0.05 Fri Dec 14 20:00:00 GMT 2012
  - Took over maintaining (Lukas Zapletal - LZAP)
  - Version bump (no changes)
  - Releasing in the original location

0.04 Wed Jul 22 20:17:26 PDT 2009
  - Seems to be abandoned (again)
  - Bump version number and upload to PAUSE

0.03  Fri Jan 12 15:24:24 MST 2007
  - Added Artistic license
  - Took over maintaining (Colin Faber - CFABER)

0.02  Unknown
  - unknown changes

0.01  Thu Feb  8 06:07:59 2001
  - original version; created by h2xs 1.20 with options -A -n UUID