REVISION HISTORY FOR Set::Object
1.29, 13 Feb 2013
Fixed a typo in a function which really shouldn't exist - RT#79653
Marked a couple of functions as deprecated for removal (including the above function).
Fixed the magic cleanup code to use the appropriate macro/function to clean up the magic list instead of trying to do it itself. Unsurprisingly, fixes a memory leak. (RT#69967, also RT#67289)
1.28, 22 Jul 2010
Fixed a portability concern for some platforms' C compilers (that do not support //-style comments) - RT#52690
Valid SIGNATURE file - RT#50492
1.27, 15 Jan 2009
Fix a typo that affected building against Perls with debugging enabled.
A minor #define refactor (Yuval).
Squash some long-standing warnings I had been ignoring for ages and Havard Eidnes prompted me to fix by logging an RT ticket for it.
Squash some global clean-up warnings.
1.26, 13 Oct 2008
Methods which destroyed
$@
due to internal use ofeval
now properly calllocal($@)
(Yuval)Fix a leak and a corner case with weak set magic, and squash some warnings (Yuval)
Define behaviour when dealing with return values from operations on weak sets. No longer hard-coded "Set::Object" - may affect Set::Object sub-classes (Sam).
(post-release changelog entry) related to the previous change, Set::Object::Weak::set did not use to shift the invocant off the stack, which caused result sets to have the inserted sets as members. It now does, fixing this bug.
1.25, 22 Jul 2008
Portability: support Perls before 5.7.3, and make this dependency explicit in the Makefile.PL
1.24, 20 Jul 2008
Remove threads test which had inadvertantly slipped into the MANIFEST from source control, and add comprehensive documentation on the state of thread support in this module.
Correct other silly MANIFEST mistakes.
1.23, 18 Jul 2008
Make behaviour when dealing with items which were
undef
defined. Previously it might segfault (or Bus Error on Mac OS X) on some operations and Perl versions, or result in an empty string being inserted.Fix a minor compile problem on IRIX, reported by David Cantrell.
1.22, 8 Oct 2007
Sub-classing interface added; it is now much easier to make Set::Object subclasses that return objects other than more Set::Objects when subclassing. From Brían Mach Aon Innéirghthe.
1.21, 17 Feb 2007
Fix false negative when Test::Pod::Coverage isn't installed. Reported by Anna Bernathova of SuSE.
1.20, 16 Feb 2007
The
->compare
function was returning "disjoint" for empty sets. RT#24965. (Nigel Metheringham)Document lots of methods that were previously not documented.
Fix
Set::Object::Weak::set()
. It was not passing its arguments toSet::Object::Weak->new()
, which was very broken.
1.19, 23 Jan 2007
remove bogus inclusions of Data::Dumper and Devel::Peek
New class
Set::Object::Weak
, which all weak sets should get re-blessed into when you call->weaken
. Also added alternative methods of constructing weak sets.Fix a memory leak with scalar members (the internal hash used to store the items was never being freed). RT#24508.
1.18, 14 Sep 2006
We could only build on gcc due to the use of variadic macros. use
#ifdef
to hide this GCC-specific extension (used only for debugging) from non-GCC compilers.Add note to man page on compatibility of
Storable
serializations ofSet::Object
s between revisions.
1.17, 1 Aug 2006
fix compile problem affecting some platforms
1.16, 18 Jul 2006
weak reference support
1.15, 21 Jun 2006
Dumping sets with scalars in them via Storable now works.
1.14
Fix build problem on Win32 (thanks Steffen Goeldner)
1.13
Fix Makefile.PL so this Changes.pod is not delivered as
Set::Changes
:-}Restore compatibility with 5.6.0
Remove some compile-time warnings, please let me know if this version does not build on any platform!
1.12, 30 Aug 2005
added patch from Sergey Skvortsov for backwards compatibility with Perl versions before 5.8 (include >100k ppport.h!)
removed '
set()
' constructor from default export list, as its name conflicts with too many other modules.
1.11, 27 Apr 2005
removed debugging
&_
func (was causing strange errors on 5.9.1)
1.10, 2 Apr 2005
added '
set()
' constructor and use-as-array-ref interface
1.09, 26 Mar 2005
added 'bool' overload operator to
Set::Object
. For backwards compatibility, always returns true.
1.08_02, 14 Jan 2005
Cutting out the "Universe" representation; this module gives plain sets only.
documentation fixes
1.08_01, 12 Jan 2005
First attempt at adding support for scalars. This version tries to work as closely to
Set::Scalar
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.
1.08, 14 Oct 2004
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.
1.07, 16 Aug 2004
yet another segfault fix, this time due to incorrect use of PUSHs vs XPUSHs. There is no test case for this bug unfortunately.
1.06, 1 May 2004
Fixed segfault when attempting to remove items from an empty set (fix from Richard Sterling Cox)
1.05, 5 Jan 2004
some segfault fixes with Storable and Perl 5.6.1 (Perl 5.8.1 should be OK)
1.04, 3 Aug 2003
added various functions similar to some found in Scalar::Util, but with an extra one that performs a function that lays some groundwork for Container::Object (
ish_int
).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
ish_int
oris_key
in his module.Knowing that they are available will also assist in fixing some longer standing bugs in Tangram (eg, using
$obj + 0
to get a unique ID whenrefaddr($obj)
would be better)lots more input marshalling; if you ever end up doing funny things to a
Set::Object
, then at least now you'll get a clearer error message.more tests; Devel::Cover test coverage now at 91% (stmt), 67% (branch)
erroneously putting scalars into
Set::Object
s now no longer dumps core.serialisation of
Set::Object
objects is now possible via the Storable module (Data::Dumper still does the wrong thing, but there is nothing I can do about that).
1.03, 24 Jan 2003
fixed overload related bug
HISTORIC RELEASES
From original Changes 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