Skip to content

Changelog

v1.6.0 - July 10, 2024

Features and improvements

  • Added SIMILAR operator to query builder (https://github.com/memgraph/gqlalchemy/pull/304)
  • Better documented how to load CSV from a remote location: to load CSV from a remote location, provide a URL as a path (https://github.com/memgraph/gqlalchemy/pull/305)
  • You can now add relationship properties in many-to-many mapping when importing a CSV file (https://github.com/memgraph/gqlalchemy/pull/306)
  • Added getter and setter for Memgraph storage modes (https://github.com/memgraph/gqlalchemy/pull/309)
  • Added get_transactions() and terminate_transactions() methods for easier transaction management (https://github.com/memgraph/gqlalchemy/pull/310)
  • Added support for ZonedDateTime data type (https://github.com/memgraph/gqlalchemy/pull/312)

v1.5.1 - January 8, 2024

Updates

  • Support pydantic versions >= 2.3.0, < 3.0.0 (https://github.com/memgraph/gqlalchemy/pull/298)
  • Support pymgclient versions >= 1.3.1, < 2.0.0 , neo4j versions >= 4.4.3, < 5.0.0, pytest-flake8 versons >= 1.0.7, < 2.0.0 (https://github.com/memgraph/gqlalchemy/pull/299)

v1.5.0 - September 22, 2023

Features and improvements

  • Added get_or_create() metod for Node and Relationship to simplify merging nodes and relationships (https://github.com/memgraph/gqlalchemy/pull/244)
  • Added spelling fixes (https://github.com/memgraph/gqlalchemy/pull/251)
  • Turned docker into an optional dependency (https://github.com/memgraph/gqlalchemy/pull/279)

Bug fixes

  • Fixed typing for get_triggers method (https://github.com/memgraph/gqlalchemy/pull/260)

Updates

  • Added support for Python 3.11 on Linux (https://github.com/memgraph/gqlalchemy/pull/281)
  • Added support for Python 3.10 on Windows (https://github.com/memgraph/gqlalchemy/pull/281)
  • Relaxed neo4j dependency (https://github.com/memgraph/gqlalchemy/pull/263/files)
  • Bumped pydantic to v2 (https://github.com/memgraph/gqlalchemy/pull/278)

Special thanks to all our outside contributors for their efforts! 👏

Note

We are hoping to have full support for Python 3.11 soon. Please open an issue if you have any blockers with the current update.

v1.4.1 - April 19, 2023

Features and improvements

  • Installing and testing GQLAlchemy is now easier because Apache Arrow, PyTorch Geometric and DGL dependencies have been made optional. #235

Bug fixes

  • Removed unnecessary extra argument in the call of the escape_value method and fixed a bug in query creation for the Map property type. #198

v1.4 - March 10, 2023

Features and improvements

  • Data from Memgraph can now be imported from and exported to NetworkX, DGL and PyG graph formats. #215
  • Now you can execute procedures from query modules on a subgraph using the project feature. #210
  • Now you can pass values from Python variables as parameters in Cypher queries. #217
  • Besides BSF, DSF and WSHORTEST, now you can also run the All shortest paths algorithm with GQLAlchemy. #200

v1.3.3 - Dec 15, 2022

Bug fixes

  • Added initial support for NumPy arrays (ndarray) and scalars (generic) #208

v1.3.2 - Sep 15, 2022

Bug fixes

  • Fixed Unicode serialisation #189
  • Fixed GQLAlchemyWaitForConnectionError and GQLAlchemyDatabaseError #188
  • Fixed Datetime serialisation #185

Updates

  • Bumped pyarrow #193
  • Updated poetry to 1.2.0 and pymgclient to 1.3.1 #191
  • Updated all dependencies #194

v1.3 - Jun 14, 2022

!!! warning ### Breaking Changes

- Renamed keyword argument `edge_label` to `relationship_type` in `to()` and `from()` methods in the query builder. [#145](https://github.com/memgraph/gqlalchemy/pull/145)

Major Features and Improvements

  • Added option to suppress warning GQLAlchemySubclassNotFoundWarning. #121
  • Added the possibility to import Field from gqlalchemy.models. #122
  • Added set_() method to the query builder. #128
  • Added wrapper class for query modules. #130
  • Added foreach() method to the query builder. #135
  • Added load_csv() and return() methods from the query builder to base classes list. #139
  • Added new argument types in return_(), yield_() and with_() methods in the query builder. #146
  • Added IntegratedAlgorithm class instance as argument in to() and from() methods in the query builder. #141
  • Extended IntegratedAlgorithm class with the Breadth-first search algorithm. #142
  • Extended IntegratedAlgorithm class with the Weighted shortest path algorithm. #143
  • Extended IntegratedAlgorithm class with the Depth-first search algorithm. #144
  • Removed the usage of sudo from the instance_runner module. #148
  • Added support for Neo4j in the Object-Graph Mapper and the query builder. #149
  • Changed string variables for Blob and S3 keyword arguments. #151
  • Added variable support for node and relationship properties. #154
  • Added Tuple as new argument type in query modules. #155
  • Changed host and port Memgraph properties to readonly. #156
  • Changed Memgraph.new_connection() to be a private method. #157
  • Added push() query modules for Kafka streams and Power BI. #158
  • Added argument lazy for configuring lazy loading in the Memgraph class. #159
  • Added datetime support for property types. #161
  • Added Operator enum which can be used as operator value in set_() and where() methods in the query builder. #165
  • Added an extension to the QueryBuilder class to support and autocomplete integrated and MAGE query modules. #168

Bug fixes

  • Fixed the unbound variable error in the return statement of the Cypher query in memgraph.save_relationship_with_id(). #166
  • Fixed checking if None for Optional properties. #167

v1.2 - Apr 12, 2022

!!! warning ### Breaking Changes

- Ordering query results as in GQLAlchemy older than 1.2 will not be possible.
- `where()`, `and_where()` and `or_where()` methods can't be used as in
  GQLAlchemy older than 1.2.
- Setting up the `bootstrap_servers` argument when creating a stream as in
  GQLAlchemy older than 1.2 will not be possible.

Major Features and Improvements

  • Improved where(), and_where(), or_where() and xor_where() methods. #114
  • Added where_not(), and_not(), or_not() and xor_not() methods. #114
  • Improved order_by() method from query builder by changing its argument types. #114
  • Added Docker and Binary Memgraph instance runners. #91
  • Added methods for dropping all indexes (drop_all_indexes()) and dropping all triggers (drop_all_triggers()). #100
  • Added table to graph importer and Amazon S3 importer. #100
  • Added Azure Blob and local storage importers. #104
  • Added an option to create a label index. #113
  • Added batch save methods for saving nodes (save_nodes()) and saving relationships (save_relationships()). #106
  • Added label filtering in where() method in query builder. #103
  • Added support for creating a trigger without ON keyword in query builder. #90
  • Added execute() option in query builder. #92
  • Added load_csv() and xor_where() methods to query builder. #90

Bug fixes

  • Fixed save_node_with_id() signature in the save_node() method. #109
  • Constraints and indexes defined in Field now work correctly. Before, when they were added to the Field of the property, they were always set to True, regardless of their actual value. #90
  • Fixed label inheritance to get all labels of base class. #105
  • Removed extra argument called optional from the Merge class. #118
  • Removed unnecessary quotes from the bootstraps_servers argument when creating a stream. #98

v1.1 - Jan 19, 2022

Major Features and Improvements

  • Added graph schema definition and validation.
  • Added new methods to the query builder: merge(), create(), unwind(),with_(), return_(), yield_(), order_by(), limit(), skip(), call(), delete() and remove().
  • Added on-disk storage for large properties that don't need to be stored in the graph database.
  • Added support for managing streams and database triggers.