News

Announcing Raphtory v0.16.0: Core Refinements, Metadata, and Major Performance Boosts

Share post

We are excited to announce the release of Raphtory v0.16.0. This is a foundational update focused on refining the core concepts of the platform, leading to a more intuitive API, clearer graph semantics, and massive performance improvements, especially for GraphQL users.

This release overhauls fundamental aspects of Raphtory to pave the way for more powerful features in the future. Let's explore these important changes.

🚀 Headline Feature: Separating Properties and Metadata

The most significant change in this release is a complete separation of temporal properties from constant properties, which are now known as metadata. Previously, the API for these concepts overlapped, which could lead to unexpected behavior.

Now, constant, unchanging attributes of a node or edge are accessed via .metadata, while time-series properties remain under .properties. For example, node.properties.constant.get("...") is now simply node.metadata.get("..."). This change makes the API cleaner, your code more explicit, and the distinction between evolving and static data crystal clear.

🔬 Time Semantics Overhaul

We have performed a major overhaul of time semantics within Raphtory to provide more accurate and intuitive temporal analysis.

  • Explicit Updates: The system now distinguishes between a node being updated directly versus being created implicitly by an edge. This allows for much finer-grained filtering.
  • Smarter Filtering: Filtering edges can now correctly filter out nodes that only exist because of those edges.
  • Clearer is_active vs is_valid: For persistent graphs, we've clarified the distinction: is_active means an update occurred in the query window, while is_valid means the entity's latest state is an addition.

⚡️ Massive Performance and GraphQL Upgrades

This release brings a dramatic boost to query performance and the power of our GraphQL integration.

  • 100x Faster GraphQL Server: We have optimized the server internals, resulting in over 100x faster queries in our internal benchmarks. We've also enabled compression by default.
  • New Raphtory CLI: A new command-line interface is now installed with the Python package. You can use it to easily start a server or, more importantly, generate the GraphQL schema (raphtory-graphql schema) without needing to run a server first.
  • New APIs: We've introduced powerful new capabilities, including edge filtering on the PersistentGraph and the ability to negate filters (e.g., filter.Not(...)).

💥 Breaking Changes

This is a foundational release with several important breaking changes you need to be aware of:

  • Metadata API: As mentioned, you must update all code that accesses constant properties to use the new .metadata attribute.
  • Time Semantics: Queries that rely on the old time behaviors, especially concerning latest_time or how nodes were filtered based on edges, may produce different results and should be reviewed.
  • Python Filter API: The old Prop("name") API for property filters has been removed. You should now use the filter.Property("name") expression.

Other Notable Improvements

  • Indexes: Raphtory's powerful indexes can now be saved to and loaded from disk, persisting them across sessions.
  • Python: We have removed unneeded Python dependencies and relaxed the NumPy version requirement, making installation lighter and more flexible.
  • Bug Fixes: This release fixes issues related to layers, parquet reading, and various GraphQL edge cases to create a more stable and reliable experience.

Get Started with v0.16.0 Today!

While v0.16.0 focuses more on core improvements than flashy new features, these changes are critical for the stability, performance, and long-term vision of Raphtory. The refined APIs and performance boosts create a much stronger foundation for all your graph analysis needs.

For a complete list of all changes, please review the full release notes on GitHub.

As always, we welcome your feedback. Happy analyzing!

Resources

You might also like

Discover insights and tools for data analysis.

Holistic Network Analysis Over Time
null

Holistic Network Analysis Over Time

For every real threat, compliance teams are buried under an avalanche of false positives. This “alert fatigue” is more than just an annoyance; it’s a critical vulnerability and a massive operational drain. Investigators waste precious time chasing ghosts born from monitoring systems that lack context, while sophisticated, genuine threats risk being lost in the noise. The key to solving this isn’t more alerts, but more clarity.
August 11, 2025
1 min 34 sec
Reduce False Positives
null

Reduce False Positives

For every real threat, compliance teams are buried under an avalanche of false positives. This “alert fatigue” is more than just an annoyance; it’s a critical vulnerability and a massive operational drain. Investigators waste precious time chasing ghosts born from monitoring systems that lack context, while sophisticated, genuine threats risk being lost in the noise. The key to solving this isn’t more alerts, but more clarity.
August 11, 2025
1 min 41 sec
High-Performance Investigation at Scale
null

High-Performance Investigation at Scale

For an investigator, time is the most critical resource. Every minute spent waiting for a query to run is a minute a criminal has to cover their tracks. Unfortunately, legacy systems simply can’t keep up with the scale of modern data. The result is a slow, frustrating process where deep, exploratory analysis is impossible. To win the fight against financial crime, investigators need tools that operate at the speed of their own curiosity.
August 10, 2025
1 min 40 sec

Unlock Your

Data's Potential

Discover how our tool transforms your data analysis with a personalized demo or consultation.

Learn more
Book a demo