Changelog
v1.8.0 - June 12, 2025
Features and improvements
- Added support for label-property composite, edge-type, edge-type property, global edge property and point indices in the object graph mapper. #351
- From Memgraph 3.3.0, nested indices are supported. Tests for nested indices were added to show how they work the same as label-property indices. #357
- Updated dependencies to support Python 3.9 - 3.12. #355,#358,#347,#349
v1.7.0 - March 25, 2025
Improvements
- Updated
to_cypher_value()andescape_value()to usejson.dumps()instead offstring. This solves an issue when there is a combination of characters in a string that need to be both escaped (e.g., an apostrophe ') and not escaped (e.g. newlines, \n) and allows flexibility in how the developer instantiates their strings and whether they chose to escape their strings ahead of sending them through to Cypher or not. (https://github.com/memgraph/gqlalchemy/pull/341) - Bumped up dependencies to allow users to use higher, more recent versions of their favorite libraries, without making breaking changes for those who have lower versions in their environments (https://github.com/memgraph/gqlalchemy/pull/334)
- Updated query modules signatures to keep them up to date (https://github.com/memgraph/gqlalchemy/pull/335)
v1.6.0 - July 10, 2024
Features and improvements
- Added
SIMILARoperator 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()andterminate_transactions()methods for easier transaction management (https://github.com/memgraph/gqlalchemy/pull/310) - Added support for
ZonedDateTimedata type (https://github.com/memgraph/gqlalchemy/pull/312)
v1.5.1 - January 8, 2024
Updates
- Support
pydanticversions >= 2.3.0, < 3.0.0 (https://github.com/memgraph/gqlalchemy/pull/298) - Support
pymgclientversions >= 1.3.1, < 2.0.0 ,neo4jversions >= 4.4.3, < 5.0.0,pytest-flake8versons >= 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 forNodeandRelationshipto simplify merging nodes and relationships (https://github.com/memgraph/gqlalchemy/pull/244) - Added spelling fixes (https://github.com/memgraph/gqlalchemy/pull/251)
- Turned
dockerinto an optional dependency (https://github.com/memgraph/gqlalchemy/pull/279)
Bug fixes
- Fixed typing for
get_triggersmethod (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
neo4jdependency (https://github.com/memgraph/gqlalchemy/pull/263/files) - Bumped
pydanticto 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_valuemethod and fixed a bug in query creation for theMapproperty type. #198
v1.4 - March 10, 2023
Features and improvements
- Data from Memgraph can now be imported from and exported to
NetworkX,DGLandPyGgraph 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
GQLAlchemyWaitForConnectionErrorandGQLAlchemyDatabaseError#188 - Fixed
Datetimeserialisation #185
Updates
- Bumped
pyarrow#193 - Updated
poetryto 1.2.0 andpymgclientto 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
Fieldfromgqlalchemy.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()andreturn()methods from the query builder to base classes list. #139 - Added new argument types in
return_(),yield_()andwith_()methods in the query builder. #146 - Added
IntegratedAlgorithmclass instance as argument into()andfrom()methods in the query builder. #141 - Extended
IntegratedAlgorithmclass with the Breadth-first search algorithm. #142 - Extended
IntegratedAlgorithmclass with the Weighted shortest path algorithm. #143 - Extended
IntegratedAlgorithmclass with the Depth-first search algorithm. #144 - Removed the usage of
sudofrom theinstance_runnermodule. #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
Tupleas new argument type in query modules. #155 - Changed
hostandportMemgraphproperties 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
lazyfor configuring lazy loading in theMemgraphclass. #159 - Added
datetimesupport for property types. #161 - Added
Operatorenum which can be used asoperatorvalue inset_()andwhere()methods in the query builder. #165 - Added an extension to the
QueryBuilderclass 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
NoneforOptionalproperties. #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()andxor_where()methods. #114 - Added
where_not(),and_not(),or_not()andxor_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
ONkeyword in query builder. #90 - Added
execute()option in query builder. #92 - Added
load_csv()andxor_where()methods to query builder. #90
Bug fixes
- Fixed
save_node_with_id()signature in thesave_node()method. #109 - Constraints and indexes defined in
Fieldnow work correctly. Before, when they were added to theFieldof the property, they were always set toTrue, regardless of their actual value. #90 - Fixed label inheritance to get all labels of base class. #105
- Removed extra argument called
optionalfrom theMergeclass. #118 - Removed unnecessary quotes from the
bootstraps_serversargument 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()andremove(). - 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.