-
Notifications
You must be signed in to change notification settings - Fork 204
4.0 changelog
Please read our Driver Migration Guide for guidance and breaking changes when migrating from 1.7 drivers to 4.0 drivers.
- For managed transactions (transaction functions), the retry timer is started after the first failed attempt.
- API cleanup, improved pydocs.
- API documentation, updated the documentation to a stable state.
- The
fetch_sizeconfig setting for session is now in use for Bolt Protocol 4.0 and fetches records in batches as needed when invokingSession.runandTransaction.run. -
Result.summary()have been replaced withResult.consume(), this behaviour is to consume all remaining records in the buffer and returns the ResultSummary. - Support for multiple active results within a transaction.
- API cleanup.
- Configuration
max_retry_timeis renamed tomax_transaction_retry_time - Updated examples
- Multi database support (#384)
- Fix for non-blocking sendall (#378)
-
neoboltis not a dependency any more. -
neotimeis not a dependency any more. -
Support for Bolt Protocol 3.0
-
Support for Bolt Protocol 4.0 (Connection Layer Only)
-
Added a Bookmark class
-
Bookmarks are changed from a String to Bookmark object.
-
Added
driver.verify_connectivity()method. -
Exceptions Changes:
- Removed
ConnectionExpired - Renamed
neo4j.exceptions.CypherErrortoneo4j.exceptions.Neo4jError - Introduced Driver API class hierarchy with
Neo4jErrorandDriverError - (Internal API) Introduced Connection API class hierarchy with BoltError (Please raise an issue on github if these surface to the user.)
- Improved connection failure error message information.
- Connecting to unsupported Bolt Protocol will raise an error explaining the supported versions available for the driver.
- Removed
-
Removed
transaction.successflag.The pattern is no longer valid for a transaction object,
tx:tx = begin() # DO STUFF tx.success = True tx.close()Use the pattern instead:
tx = begin() # DO STUFF tx.commit() -
Connections are now unencrypted by default; to reproduce former behaviour, add
encrypted=Trueto Driver configuration. -
The
neo4j.v1subpackage is now no longer available; all imports should be taken from theneo4jpackage instead. -
Changed
session(access_mode)from a positional to a keyword argument -
The
bolt+routingURI scheme is now namedneo4j -
Added new URI scheme
bolt+ssc, this will set the direct driver to be secure and allow self signed sertificates. -
Added new URI scheme
bolt+s, this will set the direct driver to be secure. -
Added new URI scheme
neo4j+ssc, this will set the routing driver to be secure and allow self signed sertificates. -
Added new URI scheme
neo4j+s, this will set the routing driver to be secure. -
Python 3.8 supported.
-
Python 3.7 supported.
-
Python 3.6 supported.
-
Python 3.5 supported.
-
Python 3.4 support has been dropped.
-
Python 3.3 support has been dropped.
-
Python 3.2 support has been dropped.
-
Python 3.1 support has been dropped.
-
Python 3.0 support has been dropped.
-
Python 2.7 support has been dropped.