Skip to content

Releases: neo4j/graph-data-science-client

Neo4j Graph Data Science Python Client 1.14

20 Feb 12:56
Compare
Choose a tag to compare

We are happy to announce the alpha release of graphdatascience, the GDS Python client, version 1.14. It is published to PyPI.

Documentation: https://neo4j.com/docs/graph-data-science-client/1.14/

Breaking changes

  • Drop support for PyArrow 15.
  • Remove support for the alpha version of the GDS Arrow Server.

Bug fixes

  • Fixed a bug, where sessions could not be created for AuraDB instances of tier business-critical.
  • Fixed a bug, where sessions would fail on write-back if the Graph was empty.
  • Fixed a bug, where the progress bar would not be shown unless the jobId parameter was set. The progress bar can be toggled on and off via GraphDataScience::set_show_progress.

Improvements

  • Support Python 3.13.
  • Support PyArrow 19.0.
  • Display progress bar for remote projection and open-ended tasks.
  • Improve progress bar by showing the description of the currently running task.
  • Allow passing the optional graph filter also as type str to gds.graph.list() instead of only Graph.
  • Listen and to SIGINT and SIGTERM and interrupt projection and write-backs based on GDS Session. Note this only works if the query runs in the main thread.
  • Avoid data copy by using the arrow-based DataFrame backend for arrow-based endpoints and if pandas>2.0
  • Support node_properties parameter also as type str instead of only list for endpoint gds.graph.nodeProperties.stream.

Full Changelog: 1.13...1.14

Neo4j Graph Data Science Python Client 1.13

07 Jan 10:51
Compare
Choose a tag to compare

We are happy to announce the alpha release of graphdatascience, the GDS Python client, version 1.13. It is published to PyPI.

Documentation: https://neo4j.com/docs/graph-data-science-client/1.13/

Breaking changes

  • Drop support for Python 3.8 as its EOL
  • Drop support for PyArrow 14
  • Throw on duplicate node properties passed to gds.graph.nodeProperties.stream as this is seen as a bad input. If duplication was intended, this can be done on the Dataframe result.

New features

  • Add GdsSessions::available_cloud_locations() to return available locations for session creation.

Bug fixes

  • Fixed a bug for gds.nodeProperties.stream() where the result contained duplicate rows if listNodeLabels=True and separate_property_columns=True is given.

Improvements

  • Inform about Session failures such as Out of Memory. GdsSession::get_or_create will fail and GdsSessions::list_sessions will return the errors in a new field along errors.
  • Improve error message around connection issues against Sessions.
  • Avoid a query getting stuck on fetching progress logging if the database is unavailable.

Other changes

  • Added support for PyArrow 18

Full Changelog: 1.12...1.13

Neo4j Graph Data Science Python Client 1.12

09 Oct 13:12
Compare
Choose a tag to compare

We are happy to announce the alpha release of graphdatascience, the GDS Python client, version 1.12. It is published to PyPI.

Documentation: https://neo4j.com/docs/graph-data-science-client/1.12/

Highlights:

New features

  • Add Neo4j python driver rust extension as a new optional dependency.
  • Support creating GDS Sessions for self-managed Neo4j DBMS.
    • GdsSessions.get_or_create requires a new parameter cloud_location to specify where the session will be created.
  • Return the id of a session and allow deletion by id or name.
  • Add ttl parameter to GdsSessions.get_or_create to control if and when an unused session will be automatically deleted.
  • Add concurrency control for remote write-back procedures using the concurrency parameter.
  • Add progress logging for remote write-back when using GDS Sessions.
  • Added a flag to GraphDataScience and AuraGraphDataScience classes to disable displaying progress bars when running procedures.

Improvements

  • The database connection is now validated before a session is created.
  • Retry authentication requests.

Neo4j Graph Data Science Python Client 1.12a1

02 Sep 14:46
Compare
Choose a tag to compare

We are happy to announce the alpha release of graphdatascience, the GDS Python client, version 1.12a1. It is published to PyPI.

Documentation: https://neo4j.com/docs/graph-data-science-client/1.12-preview/

Highlights:

New features

  • Add Neo4j python driver rust extension as a new optional dependency.
  • Support creating GDS Sessions for self-managed Neo4j DBMS.
    • GdsSessions.get_or_create requires a new parameter cloud_location to specify where the session will be created.
  • Return the id of a session and allow deletion by id or name.
  • Add ttl parameter to GdsSessions.get_or_create to control if and when an unused session will be automatically deleted.
  • Add concurrency control for remote write-back procedures using the concurrency parameter.
  • Add progress logging for remote write-back when using GDS Sessions.

Improvements

  • The database connection is now validated before a session is created.

Neo4j Graph Data Science Python Client 1.11

01 Aug 14:57
Compare
Choose a tag to compare

We are happy to announce the release of graphdatascience, the GDS Python client, version 1.11! It is published to PyPI!

Documentation: https://neo4j.com/docs/graph-data-science-client/1.11/

Highlights:

  • Fixed a bug which caused the auth token returned from the GDS Arrow Server was not correctly received.
  • Fixed a bug which didn't allow the user to specify relationship_types as a string in gds.graph.relationshipProperties.stream().
  • Fixed a bug in kge-predict-transe-pyg-train.ipynb which now uses the gds.graph.relationshipProperty.stream() call and can correctly handle multiple relationships between the same pair of nodes. Issue ref: #554

The release can be pip installed with pip install graphdatascience==1.11.

Neo4j Graph Data Science Python Client 1.11a4

18 Jul 14:53
12c687a
Compare
Choose a tag to compare

We are happy to announce the alpha release of graphdatascience, the GDS Python client, version 1.11a3. It is published to PyPI.

Documentation: https://neo4j.com/docs/graph-data-science-client/1.11-preview/

Highlights:

New features

  • Add the new concept of GDS Sessions, used to manage GDS computations in Aura, based on data from an AuraDB instance.
    • Add a new gds.graph.project endpoint to project graphs from AuraDB instances to GDS sessions.
    • Add a new top-level class GdsSessions to manage GDS sessions in Aura.
      • GdsSessions support get_or_create(), list(), and delete().
    • Creating a new session supports various sizes.
    • The run_cypher() method will run Cypher queries targeting the configured AuraDB instance.

Bug fixes

  • Fixed a bug which caused the auth token returned from the GDS Arrow Server was not correctly received.
  • Fixed a bug which didn't allow the user to specify relationship_types as a string in gds.graph.relationshipProperties.stream().
  • Fixed a bug in kge-predict-transe-pyg-train.ipynb which now uses the gds.graph.relationshipProperty.stream() call and can correctly handle multiple relationships between the same pair of nodes. Issue ref: #554

Improvements

  • Improved the error message if gds.graph.project.cypher produces an empty graph.

Other changes

  • Updated required neo4j driver from 4.4.2 to the latest 4.4 path release (4.4.12) or later.

Neo4j Graph Data Science Python Client 1.11a3

05 Jul 12:24
Compare
Choose a tag to compare

We are happy to announce the alpha release of graphdatascience, the GDS Python client, version 1.11a3. It is published to PyPI.

Documentation: https://neo4j.com/docs/graph-data-science-client/1.11-preview/

Highlights:

New features

  • Add the new concept of GDS Sessions, used to manage GDS computations in Aura, based on data from an AuraDB instance.
    • Add a new gds.graph.project endpoint to project graphs from AuraDB instances to GDS sessions.
    • Add a new top-level class GdsSessions to manage GDS sessions in Aura.
      • GdsSessions support get_or_create(), list(), and delete().
    • Creating a new session supports various sizes.
    • The run_cypher() method will run Cypher queries targeting the configured AuraDB instance.

Bug fixes

  • Fixed a bug which caused the auth token returned from the GDS Arrow Server was not correctly received.
  • Fixed a bug which didn't allow the user to specify relationship_types as a string in gds.graph.relationshipProperties.stream().
  • Fixed a bug in kge-predict-transe-pyg-train.ipynb which now uses the gds.graph.relationshipProperty.stream() call and can correctly handle multiple relationships between the same pair of nodes. Issue ref: #554

Neo4j Graph Data Science Python Client 1.11a2

10 Jun 13:28
972680d
Compare
Choose a tag to compare

We are happy to announce the alpha release of graphdatascience, the GDS Python client, version 1.11a2. It is published to PyPI.

Documentation: https://neo4j.com/docs/graph-data-science-client/1.11-preview/

Highlights:

New features

  • Add the new concept of GDS Sessions, used to manage GDS computations in Aura, based on data from an AuraDB instance.
    • Add a new gds.graph.project endpoint to project graphs from AuraDB instances to GDS sessions.
    • Add a new top-level class GdsSessions to manage GDS sessions in Aura.
      • GdsSessions support get_or_create(), list(), and delete().
    • Creating a new session supports various sizes.
    • The run_cypher() method will run Cypher queries targeting the configured AuraDB instance.

Bug fixes

  • Fixed a bug which caused the auth token returned from the GDS Arrow Server was not correctly received.

Neo4j Graph Data Science Python Client 1.11a1

28 May 09:02
5780a0e
Compare
Choose a tag to compare

We are happy to announce the alpha release of graphdatascience, the GDS Python client, version 1.11a. It is published to PyPI.

Documentation: https://neo4j.com/docs/graph-data-science-client/1.11-preview/

Highlights:

New features

  • Add the new concept of GDS Sessions, used to manage GDS computations in Aura, based on data from an AuraDB instance.
    • Add a new gds.graph.project endpoint to project graphs from AuraDB instances to GDS sessions.
      • nodePropertySchema and relationshipPropertySchema can be used to optimise remote projections.
    • Add a new top-level class GdsSessions to manage GDS sessions in Aura.
      • GdsSessions support get_or_create(), list(), and delete().
    • Creating a new session supports various sizes.
    • The run_cypher() method will run Cypher queries targeting the configured AuraDB instance.

Bug fixes

  • Fixed a bug which caused the auth token returned from the GDS Arrow Server to not be correctly received.

Graph Data Science Python Client 1.10

03 Apr 14:11
4ba2d82
Compare
Choose a tag to compare

We are happy to announce the release of graphdatascience, the GDS Python client, version 1.10! It is published to PyPI!

Documentation: https://neo4j.com/docs/graph-data-science-client/1.10/

Highlights:

  • Fixed an issue where source and target IDs of relationships in heterogeneous OGBL graphs were not parsed correctly.
  • Fixed an issue where configuration parameters such as aggregation were ignored by gds.graph.toUndirected.
  • Fixed an issue where the database given for the GraphDataScience construction was not used for metadata retrieval, causing an exception to be raised if the default "neo4j" database was missing.
  • Fixed an issue where progress bars would not always complete.
  • Fixed an issue where an empty relationship type could not be streamed.

The release can be pip installed with pip install graphdatascience==1.10.