The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
2007-10-23  Jarkko Hietaniemi  <jhi@iki.fi>

	* Add cartesian_product() and power_set(), both as full
	  constructors and as iterators.

	* Add empty_clone().
	
	* Makefile.PL not requiring Test::More since we are not using it.
	
	* Released as 1.22.

2007-10-04  Jarkko Hietaniemi  <jhi@iki.fi>

	* Made to work with the upcoming Perl 5.005_05
	  (yes, you read that right), most importantly
	  Scalar::Util made optional (we fall back to
	  pure Perl emulations for blessed() and refaddr()
	  if necessary).  Everything else already worked.

	* Released as 1.21.

Sat Aug	 6 12:39:43 2005  Jarkko Hietaniemi  <jhi@iki.fi>

	* [cpan #13816] Set::Scalar blesses unblessed refs

	  A genuine bug, the suggsted fix used, but then again Set::Scalar
	  was never designed or tested be used with references as the set
	  members.  I would not recommend doing that unless much more
	  testing has been conducted.  A test added to misc.t for that,
	  and a warning about using references as the set members added
	  to the pod.
	
	* [cpan #13856] funny behavior in Set::Scalar::Base::intersection and Set::Scalar::Base::union

	  A genuine bug, but the suggested fix as-is would break
	  the special cases of intersecting with the null set and
	  unioning with the universal set.
	  A slightly enhanced version of the fix used instead,
	  tests added to intersection.t and union.t.
	
	* [cpan #13857] Set::Scalar::Base::_binary_underload bug

	  Not really a bug.  The _binary_underload() method is only
	  ever going to be called by Set::Scalar itself, or by classes
	  derived from Set::Scalar, so the assumption that all references
	  are object and that they are capable of calling the new() method
	  (i.e. being instance of Set::Scalar) is completely valid.
	  Trying to use the suggested fix also badly breaks the
	  laws.t when the universal and null sets are present.

	* Released as 1.20.

Sun Mar 28 17:16:26 2004  Jarkko Hietaniemi  <jhi@iki.fi>

	* [cpan #5829] When is_disjoint() was called in list
	  context, and the result was disjoint (not disjoint
	  universes), the return value was a list with one
	  undef element, from Alexei.

	* Released as 1.19.

Sat Oct	 4 17:56:24 2003  Jarkko Hietaniemi  <jhi@iki.fi>

	* Removed a cut-and-paste bug from symmetric_difference();
	  from frederik.

	* Released as 1.18. 

Sat Dec	 8 01:48:35 2001  Jarkko Hietaniemi  <jhi@iki.fi>

	* Added is_empty() and empty() aliases for is_null()
	  and null(); from Peter Oliver.

	* In the display callback discussion show by example
	  that one can use the same callback for several sets
	  (instead of generating a new anonymous subroutine each time),
	  and clarify the class versus object method wording.
		
	* Released as 1.17. 

Tue Oct 23 17:20:32 2001  Jarkko Hietaniemi  <jhi@iki.fi>

	* Allow customising the set display: as_string_callback().

	* Got the acknoledgement about the clear() idea wrong:
	  it was Dave Lewis, not Dan Berger.

	* Document that the clear() does not really release the memory.
	
	* Released as 1.16. 

Mon Oct 22 20:18:56 2001  Jarkko Hietaniemi  <jhi@iki.fi>

	* Documentation and whitespace nits: 1.14.

	* Released as 1.15. 

Sat Oct 20 02:56:21 2001  Jarkko Hietaniemi  <jhi@iki.fi>

	* Changed has() and contains() to return boolean,
	  not the member, as pointed out by Mark Dilger.

	* Add clear() method to remove all the elements,
	  as suggested by Dave Lewis.  Doesn't release the
	  memory to the operating system, though (in general,
	  Perl doesn't), just releases the memory to be reused
	  by Perl, so don't expect your memory footprint go down
	  when you clear your gigaset.
		
	* Released as 1.13.
	  
Sat Oct 13 17:40:28 2001  Jarkko Hietaniemi  <jhi@iki.fi>

	* Add each() as a lighter weight way of iterating
	  over sets, as suggested by Dave Lewis.

	* Released as 1.12.
	  
Wed Oct 10 17:31:12 2001  Jarkko Hietaniemi  <jhi@iki.fi>

	* In boolean contexts the string representation of sets
	  is not the best possible one, reported by Dan Berger.
	  Now the size of the set is returned in boolean contexts.
	  
	* Released as 1.11.
	  
Fri Aug	 3 15:42:38 2001  Jarkko Hietaniemi  <jhi@iki.fi>

	* 1.10: Added COPYRIGHT and LICENSE.

Mon May	 7 17:53:18 2001  Jarkko Hietaniemi  <jhi@iki.fi>

	* Annotation mixup: The fix known as 1.08 by Mark Dilger,
	  not Joy Koenig.
	 
	* Released as 1.09.

	* Set::Scalar()->new() - Set::Scalar()->new() didn't equal
	  Set::Scalar()->new(), thanks to wrong inheritance order.
	  Spotted and most graciously fixed by Joy Koenig.

	* Released as 1.08.

Mon Mar	 5 16:31:32 2001  Jarkko Hietaniemi  <jhi@iki.fi>

	* Union could end up returning a true universe, from which one
	  cannot delete elements (e.g. using difference), bug reported
	  by Malcolm Purvis.  The fix (which was applied to all of the
	  union+intersection+difference+symmetric_difference) was to
	  'downgrade' results of the same size as the first argument.

	* Set::Scalar called itself Set::Scalar::Base.
	
	* Released as 1.07.

Sat Feb 10 00:54:29 2001  Jarkko Hietaniemi  <jhi@iki.fi>

	* Make the code Perl 5.00404-proof, patch from Ed Grimm.
	
	* Released as 1.06.

Thu Jan 18 08:24:20 2001  Jarkko Hietaniemi  <jhi@iki.fi>

	* Add examples of the set differences.

	* NOTE: unique now returns a set, not a list of elements,
	  as it was documented and intended.

	* Released as 1.05.

	* unique() was rather broken, reported by Malcolm Purvis.

	* Released as 1.04.

Tue Oct 31 03:09:03 2000  Jarkko Hietaniemi  <jhi@iki.fi>

	* Use a custom overloaded data stringification routine
	  instead of overload::StrVal().  This solves the memory
	  leak reported by Joshua Richardson <jric@yahoo-inc.com>
	  _and_ speeds up the code by about 40%! (make test timings)

	* Released as 1.03.

Fri Sep 15 18:56:08 2000  Jarkko Hietaniemi  <jhi@iki.fi>

	* Null sets weren't subsets of every set in comparisons.
	  Noticed by Gerard Vreeswijk <gv@cs.uu.nl>.

	* Released as 1.02.

2000-04-15  Jarkko Hietaniemi  <jhi@iki.fi>

	* Make to work with perl 5.6.0.

	* Release as 1.01 as no bug reports have been seen for many moons.

1999-09-24  Jarkko Hietaniemi  <jhi@iki.fi>

	* Paul Schinder <schinder@pobox.com> reported that the set_set.t
	  subtest #5 produces "(a (b (a (c ...) ...)) (c ...))" for him,
	  not "(a (b (a ...)) (c ...))" as expected.  Nondeterminism
	  in stringification.  Not yet resolved but the test hacked
	  to allow either (for subtests #5 and #6).

	* Timothy Kimball <kimball@stsci.edu> reported that Set::Scalar 0.9
	  had the super/subsetness the wrong way round.	 Fixed.

	* Set::Scalar 0.901 released.