=encoding utf8 =head1 REVISION HISTORY FOR Set::Object =head1 1.22, 8 Oct 2007 =over =item * Sub-classing interface added; it is now much easier to make L subclasses that return objects other than more Ls when subclassing. From Brían Mach Aon Innéirghthe. =back =head1 1.21, 17 Feb 2007 =over =item * Fix false negative when Test::Pod::Coverage isn't installed. Reported by Anna Bernathova of SuSE. =back =head1 1.20, 16 Feb 2007 =over =item * The C<-Ecompare> function was returning "disjoint" for empty sets. RT#24965. (Nigel Metheringham) =item * Document lots of methods that were previously not documented. =item * Fix C. It was not passing its arguments to Cnew()>, which was very broken. =back =head1 1.19, 23 Jan 2007 =over =item * remove bogus inclusions of Data::Dumper and Devel::Peek =item * New class C, which all weak sets should get re-blessed into when you call C<-Eweaken>. Also added alternative methods of constructing weak sets. =item * Fix a memory leak with scalar members (the internal hash used to store the items was never being freed). RT#24508. =back =head1 1.18, 14 Sep 2006 =over =item * We could only build on gcc due to the use of variadic macros. use C<#ifdef> to hide this GCC-specific extension (used only for debugging) from non-GCC compilers. =item * Add note to man page on compatibility of C serializations of Cs between revisions. =back =head1 1.17, 1 Aug 2006 =over =item * fix compile problem affecting some platforms =back =head1 1.16, 18 Jul 2006 =over =item * weak reference support =back =head1 1.15, 21 Jun 2006 =over =item * Dumping sets with scalars in them via L now works. =back =head1 1.14 =over =item * Fix build problem on Win32 (thanks Steffen Goeldner) =back =head1 1.13 =over =item * Fix F so this F is not delivered as C :-} =item * Restore compatibility with 5.6.0 =item * Remove some compile-time warnings, please let me know if this version does not build on any platform! =back =head1 1.12, 30 Aug 2005 =over =item * added patch from Sergey Skvortsov for backwards compatibility with Perl versions before 5.8 (include >100k F!) =item * removed 'C' constructor from default export list, as its name conflicts with too many other modules. =back =head1 1.11, 27 Apr 2005 =over =item * removed debugging C<&_> func (was causing strange errors on 5.9.1) =cut =back =head1 1.10, 2 Apr 2005 =over =item * added 'C' constructor and use-as-array-ref interface =back =head1 1.09, 26 Mar 2005 =over =item * added 'bool' overload operator to C. For backwards compatibility, always returns true. =back =head2 1.08_02, 14 Jan 2005 =over =item * Cutting out the "Universe" representation; this module gives plain sets only. =item * documentation fixes =back =head2 1.08_01, 12 Jan 2005 =over =item * First attempt at adding support for scalars. This version tries to work as closely to C as possible. This approach will not be continued unless there are a lot of requests for it to be implemented. I think it's overly complicated, and not what people expect when they want a Set. =back =head1 1.08, 14 Oct 2004 =over =item * another segfault bites the dust; this time, avoids a segfault when taking a difference between sets of exactly 31 and 0 size. Same root fault as the previous bug, this time I have a test case for it, too. =back =head1 1.07, 16 Aug 2004 =over =item * yet another segfault fix, this time due to incorrect use of PUSHs vs XPUSHs. There is no test case for this bug unfortunately. =back =head1 1.06, 1 May 2004 =over =item * Fixed segfault when attempting to remove items from an empty set (fix from Richard Sterling Cox) =back =head1 1.05, 5 Jan 2004 =over =item * some segfault fixes with Storable and Perl 5.6.1 (Perl 5.8.1 should be OK) =back =head1 1.04, 3 Aug 2003 =over =item * added various functions similar to some found in Scalar::Util, but with an extra one that performs a function that lays some groundwork for L (C). Some of these functions were in the XS code anyway, and they are extremely small, so I didn't see a problem with duplicating them - saves an extra dependancy. Plus, Graham Barr won't let me put C or C in his module. Knowing that they are available will also assist in fixing some longer standing bugs in Tangram (eg, using C<$obj + 0> to get a unique ID when C would be better) =item * lots more input marshalling; if you ever end up doing funny things to a C, then at least now you'll get a clearer error message. =item * more tests; L test coverage now at 91% (stmt), 67% (branch) =item * erroneously putting scalars into Cs now no longer dumps core. =item * serialisation of C objects is now possible via the L module (L still does the wrong thing, but there is nothing I can do about that). =back =head1 1.03, 24 Jan 2003 =over =item * fixed overload related bug =back =head1 HISTORIC RELEASES From original F file. Revision history for Perl extension Set::Object. 0.01 Sat Jun 6 13:36:56 1998 - original version; created by h2xs 1.18 0.02 Sun Jul 12 1998 - fixed refcount bug that leaked object when hash was reorganized - ensured compatibility with Perl 5.004_71 1.00 mid-99 - fixed some bug (related to subsets?) - first mature release 1.01 8 Nov 1999 - no longer use Perl arrays internally, now compatible with Perl 5.005_62 1.02 8 May 08 2000 - fixed bug that miscomputed new bucket while reindexing =cut