v0.9.2
New functionality and API changes
- PersistentGraphs are now available as properties on the graph #1596
- EventGraphs and PersistentGraphs can now be converted into eachother via
into_graph
andinto_persistent_graph
#1596 - Changed the return type of
layer_name
andtime
from Option to Result - this means when they are called incorrectly the user will get an error (explaining when these functions should be used) instead of a None, which could easily be confused for the edge not having a layer name or timestamp. #1593 - Added
unique
andordered_dedupe
functions on temporal properties #1603 - Added a Temporal Bipartite projection #1396
- Added node type filtering on
Nodes
PathFromGraph
andPathFromNode
#1510
GraphQL Improvements
- Added Microsoft SSO/Authentication #1629
- Set in_/out_/edges to return
GQLEdges
objects which can be correctly filtered and paged. #1585 - Set in_/out_/neighbours to return
GQLPathFromNode
objects which can be correctly filtered and paged. #1585 - Added an optional
keys
argument to the GQLPropertiesvalues
function - meaning you can select a subset of the properties on the nodes without having to callvalue
over and over. #1585 - Added Apollo event tracing to find bottlenecks in your queries #1585
- Removed node/edge filtering as it was ineffecient - all functionality is available now that graphql APIs are in parity with python/rust #1585
- Removed several old/ultra specific functions which can now be better served by the standard APIs #1585
Bug fixes and performance improvments
- Drastically improved the performance of the Eval APIs used for writing algorithms in Raphtory - this should see all algorithms written this way run faster. #1617 #1622
- Reworked the temporal motif algorithms to use more efficient internal functions and data structures #1623
- Fixed an issue with exploded edges panicking if a requested property wasn't present #1592
- Graphql can now correctly index Boolean properties #1597
- Exploded edges now return the correct value when calling
first
andlast
#1594 - Fixed an issue in saving/loading graphs in python where save used relative paths, but load used absolute.
- Added several new benchmarks to ensure no regressions in performance when making larger core changes.
- Several documentation fixes
Structural Changes
- There are several large structural refactors as part of this release, with another planned for 0.10.0 - these are to enable us to make both the Rust and Python libraries more extensible for developers building plugins. #1608 #1631
What's Changed
- Bump tqdm from 4.65.0 to 4.66.3 by @dependabot in #1588
- Bump jinja2 from 3.1.2 to 3.1.4 by @dependabot in #1589
- fix issue with missing properties for exploded edges causing panic #1592 by @iamsmkr in #1595
- Fix/graphql by @iamsmkr in #1597
- fix exploded edges latest time #1591 by @iamsmkr in #1594
- fixes #1583 by @iamsmkr in #1596
- Bump scrapy from 2.11.1 to 2.11.2 by @dependabot in #1601
- Graphql improvements by @miratepuffin in #1585
- Os master squashed by @fabianmurariu in #1608
- add hide_arrow_dep.sh by @fabianmurariu in #1612
- Fix readthedocs by @fabianmurariu in #1613
- Feature/layer name time by @iamsmkr in #1593
- Performance fixes for the eval apis by @ljeub-pometry in #1617
- Fix python non arrow by @fabianmurariu in #1616
- make local_clustering_coefficient benchmark actually useful again by @ljeub-pometry in #1618
- add raphtory-arrow to .gitignore to avoid accidental commits/push by @fabianmurariu in #1620
- Raphtory api by @fabianmurariu in #1621
- Fix/performance by @ljeub-pometry in #1622
- impl unique temporal props by @iamsmkr in #1603
- Temporal bipartite projection by @narnolddd in #1396
- Bump requests from 2.31.0 to 2.32.0 by @dependabot in #1607
- impl node type filter for nodes, pathfromgraph and pathfromnode by @iamsmkr in #1606
- run rust tests without arrow enabled to check that still works by @ljeub-pometry in #1626
- supported empty node types while node type filtering by @iamsmkr in #1624
- fix arrowgraph for gql by @iamsmkr in #1619
- fix issue with path while saving and loading graphs by @iamsmkr in #1627
- Motifs tidy ii by @narnolddd in #1623
- Refactor pre release by @fabianmurariu in #1631
- Added Microsoft Authentication to GraphQL by @Haaroon in #1629
- change key and perms for benchmark workflow by @Haaroon in #1633
- disbale internal dispatch by @Haaroon in #1634
- simplify the testing by @ljeub-pometry in #1632
- Update readme.md by @Haaroon in #1636
- Release v0.9.0 by @github-actions in #1637
- update pometry-storage to the right version of raphtory-api by @fabianmurariu in #1638
- Added dryrun flag as now required for release by @miratepuffin in #1639
- Fixed github release by @miratepuffin in #1640
- github actions are sometimes stupid by @fabianmurariu in #1642
- add metadata required for release by @fabianmurariu in #1643
- fix the zip dependency by @fabianmurariu in #1644
- Release v0.9.1 by @github-actions in #1645
- Remove par iter from hot path by @fabianmurariu in #1647
- Fixed documentation to state nodes instead of edges for find_nodes by @brandon-haugen in #1648
- Release v0.9.2 by @github-actions in #1652
New Contributors
- @brandon-haugen made their first contribution in #1648
Full Changelog: v0.8.1...v0.9.2