jung-2.1
Highlights:
- GitHub is now the new home of JUNG. You can continue to find versions of JUNG prior to 2.1 at SourceForge, but no new versions will be released there.
Now that it is easier to review - The commons-collections-generics library dependency has been replaced with Guava v19.
This change is not backwards-compatible with existing code. It was necessary because of a security issue, but we also decided that Guava was a much better
library to depend on in future for a variety of reasons (some of which will become apparent in future JUNG releases). - As of this version, JUNG now depends on Java v1.6 (up from 1.5).
- The matrix-related code has been removed, and with it the dependency on Colt.
- The (now unnecessary) woodstox dependency has been removed.
- JUNG now uses Travis to ensure that new code builds correctly before it is merged into the master branch.
- Everyone's favorite trivial change: the Maven artifact ID for JUNG is now
jung
, notjung2
.
Many thanks to @cgruber for his help in getting the release and testing machinery in place.
In terms of interfaces, the replacement of commons-collections with Guava has the following user-visible effects:
Predicate
->Predicate
Factory
->Supplier
Transformer
->Function
There are also (of course) many internal changes related to this replacement, e.g.
ChainedTransformer
->Functions.compose()
Buffer
,UnboundedFifoBuffer
->Queue
,LinkedList
BidiMap
->BiMap
(Note that some of the method signatures on these interfaces are different, e.g.,
Predicate.evaluate()
->Predicate.apply()
.)
Bug fixes:
- Fixed path problem in TestGraphMLReader.java
General:
- Replaced uses of
assert
withPreconditions
checks. - Updated a lot of Javadoc to be standards-compliant with the latest formatter expectations.
- Removed some dead code.
- Replaced (almost all) uses of
MapMaker
withLoadingCache/CacheBuilder/CacheLoader
StructurallyEquivalent
: renamedcanPossiblyCompare()
tocanBeEquivalent
PajekNetIOTest
: fixed a bug (improper use ofRandomLocationTransformer
)- `MixedRandomGraphGenerator: removed unused ‘parallel’ param
AggregateLayout
: madeisLocked()
anddone()
more efficient (early exit)DAGLayout
:setRoot()
: removed unused ‘g’ paramMinimumSpanningForest
: converted internal Map to FunctionConstantMap
: no longer used, removedDiscreteDistribution
: replacedcheckLengths()
byPreconditions.checkArgument()
callsMapBinaryHeap
: removed deprecatedpop()
methodWeakComponentClustererTest, TestKStepMarkov, TestBetweennessCentrality, TestImageShaper
: commented outprintln()
(note: these tests are not actually testing anything :P)TreeUtils
: removed commented-outmergeForests()
,addChildrenToForest()
ToStringLabeller()
: removed unnecessary type parameterDefaultVertexIconTransfomer
: no longer needed, removedPluggableRendererDemo
: removed unnecessary/unused guacamole inSeed{Draw,Fill}Color
inner classesFourPassImageShaper
: mostly refactored into ImageShapeUtilsClassicPickSupport
: removed, no longer neededSpatialRectangle
: removed, not used- commented out a few System.out.println instances
- removed a few unused parameters
- fixed a lot of compilation warnings (missing generic types, etc.)