API Changes
* Changed the Graph Builder API such that instead of having to define a graph update case class and pass it to the sendUpdate() function, each update type has its only function. These are then overloaded to cleanly handle properties and types.
Testing
* Created the Raphtory Component which runs into its own JVM allowing the deployment of Raphtory 'clusters' locally for better testing.
* Created an all commands test generator which runs 300k updates of all types across a distributed deployment.
* Added a StateTest algorithm which extracts the full structural and property histories from a flattening.
* Added functionality to compare versions of Raphtory
* Requires running the all commands test, then querying the new state test and connected components across the history of the resulting graph.
* The results of the prior version and new version can then be compared by a new `ResultsCompare` class which pulls the data from mongo and reports on if it is correct and if a speed up has been obtained.
* These can all be found in `com.raphtory.dev.allcommands`
Internal Improvements
* Fixed the Watermarking functionality.
* All router workers now synchronise fully for bounded datasets.
* All ingestion workers now report the correct safe time.
* Safe times are now aggregated fully in the new Watermark Manager.
* Fixed bug in Router Workers where they were sharing an outbound queue object.
* Fully refactored the messages for Update ingestion and synchronisation.
* Extracted all message parsing logic from Entity Storage and moved to Ingestion worker -- both cleaned up addressing poor function names.
Analysis
* Added a variety of new algorithms -- experimenting with Community Detection, temporal mutli-layer LPA and temporal motif counting.
* These can be found in `com.raphtory.algorithms`
* Entity Visitor Property access has been expanded, but is to be fully redone in the next version.
Extra Bits
* Fully updated readme and documentation.
* Large clean up of the overall project, removing old readme information/pictures, PDF's and other elements which can be moved to the examples repository.
* Moved the src code to be top level.
* Added multi-line Spout, to be merged into standard file spout - can be found in `com.raphtory.spouts`
* Added a dev folder for alpha algorithms and example Raphtory pipelines for testing.
Thanks wuliaososhunhun imanehaf dorely103 narnolddd richardclegg felixcdr jamesalford Haaroon Alnaimi-
raphtory-akka-0.1
Initial Raphtory release now that it is in a useable state to ingest and build the graph. This is a test release for current users and will soon be superseded by v0.2 which will include an updated analysis model.