Mon Oct 30 17:02:02 EST 2006 Released jutil 1.3 2006-10-30 16:58 cananian * src/net/cscott/jutil/AbstractMultiMap.java: Add commas in the appropriate places in AbstractMultiMap.toString(). 2006-10-30 15:14 cananian * src/net/cscott/jutil/: AbstractHeap.java, AbstractMapEntry.java, AbstractMultiMap.java, AggregateSetFactory.java, BinaryHeap.java, BitSetFactory.java, Heap.java, InvertibleMultiMap.java, MapSet.java, MultiMapSet.java, PairMapEntry.java, UnmodifiableIterator.java, UnmodifiableListIterator.java: Use additional {@link} tags for method references. 2006-10-30 14:58 cananian * src/net/cscott/jutil/: AbstractHeap.java, AbstractMapEntry.java, AbstractMultiMap.java, AggregateMapFactory.java, AggregateSetFactory.java, BinaryHeap.java, BinaryTree.java, BinomialHeap.java, BitSetFactory.java, BitString.java, CollectionFactory.java, CollectionWrapper.java, CombineIterator.java, Default.java, DisjointSet.java, Environment.java, Factories.java, FibonacciHeap.java, FilterIterator.java, GenericInvertibleMap.java, GenericInvertibleMultiMap.java, GenericMultiMap.java, GenericMultiMapFactory.java, HashEnvironment.java, Heap.java, Indexer.java, IntervalTree.java, InvertibleMap.java, InvertibleMultiMap.java, IteratorEnumerator.java, LinearMap.java, LinearSet.java, ListFactory.java, ListWrapper.java, MapFactory.java, MapSet.java, MapWrapper.java, MultiMap.java, MultiMapFactory.java, MultiMapSet.java, PairMapEntry.java, PersistentEnvironment.java, PersistentMap.java, PersistentMapFactory.java, PersistentMultiMapFactory.java, PersistentSet.java, PersistentSetFactory.java, PersistentTreeNode.java, RedBlackTree.java, ReferenceUnique.java, ReverseIterator.java, ReverseListIterator.java, SetFactory.java, SetWrapper.java, SnapshotIterator.java, TestMap.java, TestSet.java, UniqueStack.java, UniqueVector.java, UnmodifiableIterator.java, UnmodifiableListIterator.java, UnmodifiableMultiMap.java, WorkSet.java: Bulk update javadoc tags: ClassName -> {@link ClassName}. 2006-10-30 14:12 cananian * src/net/cscott/jutil/Version.java: Hide my email address from the internet (exposes via javadoc's "constant field values" list). 2006-10-30 14:08 cananian * build-user.xml, upload.sh: Add 'dist' target & a script to upload new versions to the website. 2006-10-30 13:43 cananian * COPYING: Added license terms to repository (inadvertently removed when we changed build infrastructures). 2006-10-30 11:19 cananian * src/net/cscott/jutil/UnmodifiableMap.java: Work around a bug in the JDK1.5/1.6 compiler which prevents us from doing a clean build. 2006-10-29 22:25 cananian * src/net/cscott/jutil/PersistentSet.java: PersistentSet now implements Iterable. 2006-10-29 22:24 cananian * src/net/cscott/jutil/BitSetFactory.java: Loosen type: allow Collection instead of Set in constructors for BitSetFactory. 2006-10-29 15:19 cananian * NEWS: Added information about user-visible changes in the last commit to the NEWS file. 2006-10-29 15:15 cananian * src/net/cscott/jutil/: CollectionWrapper.java, GenericInvertibleMap.java, SetWrapper.java, UnmodifiableMap.java, UnmodifiableMapSet.java, UnmodifiableMultiMap.java, Factories.java, ListWrapper.java, MapWrapper.java, UnmodifiableMultiMapSet.java: Made the CollectionWrapper/SetWrapper/ListWrapper classes abstract, and used a virtual 'wrapped()' method to allow narrowing the type of the wrapper in subclasses (and thus avoid wasting space with duplicate references to the same object with successively narrower types). Add UnmodifiableMap/MapSet/MultiMap/MultiMapSet classes to safely protect these types from mutation. (The UnmodifiableMap type has the advantage over Collections.unmodifiableMap() that its entrySet() returns an (Unmodifiable)MapSet.) 2006-10-29 15:10 cananian * src/net/cscott/jutil/UnmodifiableIterator.java: Add UnmodifiableIterator.proxy() method to generate an UnmodifiableIterator from a normal Iterator. 2006-10-29 11:59 cananian * JUtil.Manifest, build-user.xml: Add JAR targets. 2006-10-29 11:51 cananian * .classpath, .cvsignore, .project, Makefile.am, NEWS, README, autogen.sh, build-user.xml, build.xml, configure.ac, .settings/org.eclipse.jdt.core.prefs, src/net/cscott/jutil/.cvsignore, src/net/cscott/jutil/Version.java, src/net/cscott/jutil/Version.java.in: Convert build from autoconf to Eclipse/Ant. 2006-10-29 11:27 cananian * src/net/cscott/jutil/: AggregateMapFactory.java, AggregateSetFactory.java, DisjointSet.java, LinearMap.java, LinearSet.java, ReverseIterator.java, Util.java, AbstractHeap.java, CombineIterator.java, Default.java, FibonacciHeap.java, HashEnvironment.java, Makefile.am, PersistentMap.java, PersistentMultiMapFactory.java, PersistentSet.java, SnapshotIterator.java, UnmodifiableMultiMap.java, ListFactory.java, MultiMapSet.java, TestSet.java: Remove eclipse warnings (mostly unused imports). 2006-10-28 00:03 cananian * src/net/cscott/jutil/Factories.java: Add factories to create EnumSet and EnumMaps. 2006-10-08 15:39 cananian * Makefile.am: Add target to package all source in a jar, in the format which Eclipse prefers. 2006-10-08 15:35 cananian * Makefile.am, src/net/cscott/jutil/BitString.java, src/net/cscott/jutil/UniqueVector.java, src/net/cscott/jutil/Version.java.in: Fix javadoc errors. 2006-10-08 15:28 cananian * autogen.sh: Update to automake-1.9. 2006-02-20 14:21 cananian * src/net/cscott/jutil/: BinaryHeap.java, BinomialHeap.java, Default.java, FibonacciHeap.java, GenericMultiMap.java, PersistentMap.java, PersistentSet.java: Remove some unsafe/unchecked cast warnings. 2005-01-20 16:43 cananian * src/net/cscott/jutil/PersistentMultiMapFactory.java: The component collections of PersistentMultiMapFactory are (persistent) sets. 2005-01-20 16:39 cananian * src/net/cscott/jutil/: PersistentMultiMapFactory.java, PersistentTreeNode.java: Add 'merger' parameter to PersistentTreeNode.putAll, which allows a fast addAll() implementation in PersistentMultiMapFactory. Also implement fast equals() and hashCode() in the sets returned by MultiMapImpl.getValues(). 2005-01-20 15:54 cananian * src/net/cscott/jutil/: AbstractMultiMap.java, Makefile.am, PersistentMultiMapFactory.java: First draft of cloneable persistent MultiMap factory class. This works much better than trying to create a cloneable multimap from GenericMultiMap (since not only the top-level map, but also all the component sets which are values in the map need to be cloned). 2005-01-19 21:32 cananian * src/net/cscott/jutil/: AbstractMultiMap.java, GenericMultiMap.java, Makefile.am: Factor out an AbstractMultiMap implementation from GenericMultiMap, for reuse. 2005-01-19 21:31 cananian * src/net/cscott/jutil/: PersistentMapFactory.java, PersistentSet.java, PersistentSetFactory.java, PersistentMap.java: Remind the user that good hashcode implementations are still required. 2005-01-19 20:14 cananian * src/net/cscott/jutil/: GenericInvertibleMap.java, GenericMultiMapFactory.java, Makefile.am, MultiMapFactory.java: Clean up the MultiMapFactory interface by splitting off the support for GenericMultiMap -- that goes in its own GenericMultiMapFactory class. 2004-06-29 15:44 cananian * src/net/cscott/jutil/: BinaryHeap.java, BinomialHeap.java, CollectionFactory.java, Default.java, FibonacciHeap.java, ListFactory.java, MapFactory.java, MultiMapFactory.java, SetFactory.java: Get rid of workarounds for bugs in Sun's javac; also use Collections.emptySet() and friends where appropriate. 2004-06-29 15:23 cananian * src/net/cscott/jutil/: BinomialHeap.java, Factories.java, FibonacciHeap.java, HashEnvironment.java, PersistentMapFactory.java, PersistentSetFactory.java: Fixup code to comply with JDK1.5.0 beta 2, which requires types on the right-hand side of an instanceof expression to be 'reifiable'. (Despite the "strong discouragement" of the use of 'raw types' elsewhere in the spec.) 2004-03-28 02:48 cananian * src/net/cscott/jutil/Factories.java: Add stock LinkedHashMap and LinkedHashSet factories to Factories class. 2004-03-25 14:17 cananian * src/net/cscott/jutil/PersistentSetFactory.java: Fit a null pointer exception in the containsAll() implementation of the Sets returned by PersistentSetFactory. 2004-02-07 21:00 cananian * src/net/cscott/jutil/: ListFactory.java, WorkSet.java: Deprecate WorkSet (use java.util.LinkedHashSet) and ListFactory.singleton (use java.util.Collections.singletonList). 2004-02-07 17:37 cananian * src/net/cscott/jutil/LinearSet.java: More precise type for LinearSet.clone(). 2004-02-01 14:57 cananian * src/net/cscott/jutil/Default.java: Improve documentation. Refactor code to reduce duplication. Parameterize EMPTY_MAP and EMPTY_MULTIMAP. 2004-02-01 14:44 cananian * src/net/cscott/jutil/MultiMap.java: Remove some out-of-date docs. 2004-01-30 06:57 cananian * src/net/cscott/jutil/: HashEnvironment.java, UniqueStack.java, UniqueVector.java, WorkSet.java: Use variance properly in constructors (to replace explicit type parameters). 2004-01-30 03:55 cananian * src/net/cscott/jutil/: PersistentMap.java, PersistentMapFactory.java, PersistentSet.java, PersistentSetFactory.java, PersistentTreeNode.java: Javadoc updates for Persistent*; also add constant-time clone to PersistentMap and PersistentSet. 2004-01-24 17:31 cananian * configure.ac: Released JUtil version 1.1. 2004-01-14 13:44 cananian * src/net/cscott/jutil/TestMap.java: Comment out two tests in order to make things work with type-safe collections. 2004-01-14 13:44 cananian * src/net/cscott/jutil/: Makefile.am, PersistentMapFactory.java, PersistentSetFactory.java, PersistentTreeNode.java: Worked around some javac errors with bogus 'inconvertible types'; fixed bugs in PersistentMapFactory (need to compare value with equals() to properly implement Map interface) and PersistentTreeNode (putAll was fubared). 2004-01-13 16:57 cananian * src/net/cscott/jutil/: AggregateMapFactory.java, Makefile.am, PersistentEnvironment.java, TestMap.java, UniqueVector.java: Commit a few improvements (and suggestions for improvements) from my uncommitted FLEX tree. 2004-01-13 16:40 cananian * src/net/cscott/jutil/: AbstractHeap.java, BinaryHeap.java, BinomialHeap.java, DisjointSet.java, Factories.java, FibonacciHeap.java, GenericInvertibleMultiMap.java, GenericMultiMap.java, HashEnvironment.java, UniqueVector.java: Update all code with the new for construct. 2004-01-13 15:47 cananian * NEWS, README, configure.ac, src/net/cscott/jutil/AbstractHeap.java, src/net/cscott/jutil/AggregateMapFactory.java, src/net/cscott/jutil/AggregateSetFactory.java, src/net/cscott/jutil/BinaryHeap.java, src/net/cscott/jutil/BinomialHeap.java, src/net/cscott/jutil/BitSetFactory.java, src/net/cscott/jutil/CollectionFactory.java, src/net/cscott/jutil/CollectionWrapper.java, src/net/cscott/jutil/CombineIterator.java, src/net/cscott/jutil/Default.java, src/net/cscott/jutil/Factories.java, src/net/cscott/jutil/FibonacciHeap.java, src/net/cscott/jutil/GenericInvertibleMap.java, src/net/cscott/jutil/GenericInvertibleMultiMap.java, src/net/cscott/jutil/GenericMultiMap.java, src/net/cscott/jutil/Heap.java, src/net/cscott/jutil/IntervalTree.java, src/net/cscott/jutil/LinearSet.java, src/net/cscott/jutil/ListFactory.java, src/net/cscott/jutil/ListWrapper.java, src/net/cscott/jutil/Makefile.am, src/net/cscott/jutil/MapFactory.java, src/net/cscott/jutil/MapWrapper.java, src/net/cscott/jutil/MultiMap.java, src/net/cscott/jutil/MultiMapFactory.java, src/net/cscott/jutil/PersistentMapFactory.java, src/net/cscott/jutil/PersistentSetFactory.java, src/net/cscott/jutil/SetFactory.java, src/net/cscott/jutil/UnmodifiableMultiMap.java: Migrate JUtil to the latest jsr-14 compiler (2.4 alpha 1). There are some extra casts when invoking constructors due to Sun bug #4951260, and PersistentMapFactory and PersistentSetFactory have been temporarily disabled due to another Sun bug (over-aggressive checking of instanceof involving wildcards). 2004-01-12 20:28 cananian * configure.ac, src/net/cscott/jutil/AggregateMapFactory.java, src/net/cscott/jutil/AggregateSetFactory.java, src/net/cscott/jutil/BinomialHeap.java, src/net/cscott/jutil/BitSetFactory.java, src/net/cscott/jutil/Default.java, src/net/cscott/jutil/LinearMap.java, src/net/cscott/jutil/LinearSet.java, src/net/cscott/jutil/Makefile.am, src/net/cscott/jutil/PersistentMap.java, src/net/cscott/jutil/PersistentMapFactory.java, src/net/cscott/jutil/PersistentSet.java, src/net/cscott/jutil/PersistentSetFactory.java, src/net/cscott/jutil/PersistentTreeNode.java, src/net/cscott/jutil/TestMap.java, src/net/cscott/jutil/TestSet.java, src/net/cscott/jutil/WorkSet.java: Update JUtil with all changes to FLEX sources since 2003-03-20. 2003-04-26 00:20 cananian * src/net/cscott/jutil/Version.java.in: Keep bug-report email address out of the docs (and hence off the 'net). 2003-04-26 00:13 cananian * src/net/cscott/jutil/Version.java.in: Added javadoc to the 'Version' class. 2003-04-25 23:50 cananian * .cvsignore, Makefile.am: Tweak/improve 'doc' rule. Add 'doc' and 'doc-link' to .cvsignore. Add 'Implementation-Version' tag to jar file. Add 'upload' rule to Makefile. 2003-04-04 23:37 cananian * src/net/cscott/jutil/: IntervalTree.java, RedBlackTree.java: More @see tag clean-ups. 2003-04-04 23:27 cananian * src/net/cscott/jutil/: BinaryTree.java, RedBlackTree.java: Fix malformed @see tags. 2003-04-01 20:26 cananian * Makefile.am: Use gjdoc for documentation instead of javadoc. 2003-03-19 22:00 cananian * Makefile.am, src/net/cscott/jutil/Version.java, src/net/cscott/jutil/Version.java.in: Have the jutil.jar file print the library version number if executed. 2003-03-19 21:00 cananian * configure.ac: Bump version number to 1.0. 2003-03-19 20:59 cananian * src/net/cscott/jutil/: Makefile.am, ReferenceUnique.java: Added 'ReferenceUnique' interface. 2003-03-19 20:58 cananian * src/net/cscott/jutil/: AbstractHeap.java, AbstractMapEntry.java, AggregateMapFactory.java, AggregateSetFactory.java, BinaryHeap.java, BinaryTree.java, BinomialHeap.java, BitSetFactory.java, BitString.java, CollectionFactory.java, CollectionWrapper.java, CombineIterator.java, Default.java, DisjointSet.java, Environment.java, Factories.java, FibonacciHeap.java, FilterIterator.java, GenericInvertibleMap.java, GenericInvertibleMultiMap.java, GenericMultiMap.java, HashEnvironment.java, Heap.java, Indexer.java, IntervalTree.java, InvertibleMap.java, InvertibleMultiMap.java, IteratorEnumerator.java, LinearMap.java, LinearSet.java, ListFactory.java, ListWrapper.java, Makefile.am, MapFactory.java, MapSet.java, MapWrapper.java, MultiMap.java, MultiMapFactory.java, MultiMapSet.java, PairMapEntry.java, PersistentEnvironment.java, PersistentMap.java, PersistentSet.java, PersistentTreeNode.java, RedBlackTree.java, ReverseIterator.java, ReverseListIterator.java, SetFactory.java, SetWrapper.java, SnapshotIterator.java, TestMap.java, TestSet.java, UniqueStack.java, UniqueVector.java, UnmodifiableIterator.java, UnmodifiableListIterator.java, UnmodifiableMultiMap.java, Util.java, Version.java, WorkSet.java: Added all the source files. And we build! (Imported from JChirp, which borrowed them from FLEX.) 2003-03-19 20:52 cananian * .cvsignore, AUTHORS, Makefile.am, NEWS, README, autogen.sh, configure.ac, src/net/cscott/jutil/.cvsignore, src/net/cscott/jutil/Makefile.am, src/net/cscott/jutil/Version.java.in: Skeleton of JUtil package. No actual source files yet, just all the auto* magic.