You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: python-manual/modules/ROOT/pages/upgrade.adoc
+54-28Lines changed: 54 additions & 28 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -48,7 +48,6 @@ pip3 install -U neo4j==5.27
48
48
----
49
49
////
50
50
51
-
52
51
////
53
52
[[new-features]]
54
53
== New features
@@ -60,10 +59,16 @@ pip3 install -U neo4j==5.27
60
59
.Vector support
61
60
[%collapsible]
62
61
====
63
-
Introduce Bolt 6.0 support, which includes vector types.
62
+
The type xref:data-types.adoc#vector[`Vector`] allows for storing and retrieving Cypher Vector objects stored in the database.
63
+
====
64
+
|
65
+
|
66
+
.New type `UNKNOWN`
67
+
[%collapsible]
68
+
====
69
+
The type xref:data-types.adoc#unknown[`UNKNOWN`] will be returned for objects coming from the server, when the driver doesn't recognize the type.
64
70
====
65
71
|
66
-
67
72
68
73
|===
69
74
////
@@ -79,69 +84,90 @@ Deprecated features are likely to be removed in the next major release.
79
84
|Version |Message |Status
80
85
81
86
|6.0
82
-
|link:https://neo4j.com/docs/api/python-driver/current/api.html#neo4j.Session[`Session`] -- Methods `.read_transaction()` and `.write_transaction()` are removed in favor of link:https://neo4j.com/docs/api/python-driver/current/api.html#neo4j.Session.execute_read[`.execute_read()`] and link:https://neo4j.com/docs/api/python-driver/current/api.html#neo4j.Session.execute_write[`.execute_write()`].
83
-
Through the new methods, the first argument of transaction functions is a `ManagedTransaction` object. It behaves like a regular `Transaction` object, except it does not offer the `.commit()`, `.rollback()`, `.close()`, and `.closed()` methods.
|link:https://neo4j.com/docs/api/python-driver/current/api.html#neo4j.Session[`Session`] -- Methods `.read_transaction()` and `.write_transaction()` have been removed in favor of link:https://neo4j.com/docs/api/python-driver/current/api.html#neo4j.Session.execute_read[`.execute_read()`] and link:https://neo4j.com/docs/api/python-driver/current/api.html#neo4j.Session.execute_write[`.execute_write()`].
96
+
Through the new methods, the first argument of transaction functions is a `ManagedTransaction` object. It behaves like a regular `Transaction` object, except it does not offer the `.commit()`, `.rollback()`, `.close()`, and `.closed()` methods.
88
97
|label:removed[]
89
98
90
99
|6.0
91
-
|Implicit closing of drivers and sessions through `+++__del__()+++` (destructor) is removed.
92
-
This behaviour is non-deterministic as there is no guarantee that the destructor will ever be called.
100
+
|Driver and session objects are not implicitly closed through `+++__del__()+++` (destructor) anymore.
101
+
This behaviour was non-deterministic as there is no guarantee that the destructor would ever be called.
93
102
A `ResourceWarning` is emitted instead. +
94
103
Call `driver.close()` explicitly or create the driver via a `with` statement.
95
104
|label:removed[]
96
105
97
-
|6.0
98
-
|Import of the following modules is not possible anymore without replacement, as they are internal and should not be used by client code: `neo4j.packstream`, `neo4j.routing`, `neo4j.config`, `neo4j.meta`, `neo4j.data`.
99
-
100
-
`ExperimentalWarning` (previously in `meta`) should be imported directly from neo4j. +
101
-
`neo4j.meta.version` is exposed through `+++neo4j.__version__+++`.
102
-
|label:removed[]
103
-
104
106
|6.0
105
107
|link:https://neo4j.com/docs/api/python-driver/current/api.html#neo4j.Driver[`Driver`] -- The config option `trust` is not available anymore. The options link:https://neo4j.com/docs/api/python-driver/current/api.html#trusted-certificates-ref[`trusted_certificates`] and link:https://neo4j.com/docs/api/python-driver/current/api.html#ssl-context-ref[`ssl_context`] are available.
106
108
|label:removed[]
107
109
108
110
|6.0
109
-
|link:https://neo4j.com/docs/api/python-driver/current/api.html#neo4j.Session[`Session`] -- The method `.last_bookmark()` is removed in favor of link:https://neo4j.com/docs/api/python-driver/current/api.html#neo4j.Session.last_bookmarks[`.last_bookmarks()`]. The logic is similar, but the new method returns `neo4j.Bookmarks` instead of `str`.
110
-
|label:removed[]
111
+
|*Bookmarks*
111
112
112
-
|6.0
113
-
|`neo4j.Bookmark` is removed in favor of link:https://neo4j.com/docs/api/python-driver/current/api.html#neo4j.Bookmarks[`neo4j.Bookmarks`].
113
+
- The method `Session.last_bookmark()` has been removed in favor of link:https://neo4j.com/docs/api/python-driver/current/api.html#neo4j.Session.last_bookmarks[`Session.last_bookmarks()`]. The logic is similar, but the new method returns `neo4j.Bookmarks` instead of `str`.
114
+
- `neo4j.Bookmark` has been removed in favor of link:https://neo4j.com/docs/api/python-driver/current/api.html#neo4j.Bookmarks[`neo4j.Bookmarks`].
115
+
- `Driver.session()` no longer accepts raw string bookmarks as bookmarks argument. Use a `neo4j.Bookmarks` object instead.
114
116
|label:removed[]
115
117
118
+
116
119
|6.0
117
-
|Importing submodules from `neo4j.time` is not possible anymore. Import everything from `neo4j.time` directly instead.
120
+
|*Imports*
121
+
122
+
- Import of the following modules has been removed without replacement, as they are internal and should not be used by client code: `neo4j.packstream`, `neo4j.routing`, `neo4j.config`, `neo4j.meta`, `neo4j.data`.
123
+
`neo4j.meta.version` is exposed through `+++neo4j.__version__+++`.
124
+
- Importing submodules from `neo4j.time` is not possible anymore. Import everything from `neo4j.time` directly instead.
125
+
- Importing `neo4j.work` and its submodules is not possible anymore. Import everything from `neo4j` directly instead.
126
+
- The following objects have been removed without replacement, as they are internal and should not be used by client code: `neo4j.spatial.hydrate_point`, `neo4j.spatial.dehydrate_point`, `neoj4.Config`, `neoj4.PoolConfig`, `neoj4.SessionConfig`, `neoj4.WorkspaceConfig`, `neo4j.data.DataDehydrator`, `neo4j.data.DataHydrator`.
127
+
- The following modules have been removed: `neo4j.conf`, `neo4j.data`, `neo4j.meta`, `neo4j.packstream`, `neo4j.routing`, `neo4j.time.arithmetic`, `neo4j.time.clock_implementation`, `neo4j.time.hydration`, `neo4j.time.metaclasses`, `neo4j.work`, `neo4j.work.query`, `neo4j.work.summary`
128
+
- `api.Version` has been removed as it's unused now.
129
+
`ServerInfo.protocol_version` is now a `tuple[int, int]` instead of a `api.Version`. This should be drop-in replacement is most cases.
130
+
- Make undocumented constants, helper functions, and other internal items private. For a full list, see the link:https://github.com/neo4j/neo4j-python-driver/blob/6.x/CHANGELOG.md[changelog].
118
131
|label:removed[]
119
132
120
133
|6.0
121
-
|Importing `neo4j.work` and its submodules is not possible anymore. Import everything from `neo4j` directly instead.
134
+
|Class `SummaryNotificationPosition` has been removed in favor of link:https://neo4j.com/docs/api/python-driver/current/api.html#neo4j.SummaryInputPosition[`SummaryInputPosition`].
122
135
|label:removed[]
123
136
124
137
|6.0
125
-
|The following objects are removed without replacement, as they are internal and should not be used by client code: `neo4j.spatial.hydrate_point`, `neo4j.spatial.dehydrate_point`, `neoj4.Config`, `neoj4.PoolConfig`, `neoj4.SessionConfig`, `neoj4.WorkspaceConfig`, `neo4j.data.DataDehydrator`, `neo4j.data.DataHydrator`.
138
+
|Method `Neo4jError.is_retriable()` has been removed in favor of `Neo4jError.is_retryable()`.
126
139
|label:removed[]
127
140
128
141
|6.0
129
-
|Class `SummaryNotificationPosition` is deprecated in favor of link:https://neo4j.com/docs/api/python-driver/current/api.html#neo4j.SummaryInputPosition[`SummaryInputPosition`].
142
+
|The magic method `Record.\\__getslice__()` has been removed.
143
+
If you were calling it directly, use `Record.\\__getitem__(slice(...))` or simply `record[...]` instead.
130
144
|label:removed[]
131
145
132
146
|6.0
133
-
|Undocumented methods `Neo4jError.is_fatal_during_discovery()` and `Neo4jError.invalidates_all_connections()` are removed without replacement.
134
-
|label:removed[]
147
+
|Changed errors raised under certain circumstances. For a full list, see the link:https://github.com/neo4j/neo4j-python-driver/blob/6.x/CHANGELOG.md[changelog].
148
+
|label:removed[Changed]
135
149
136
150
|6.0
137
-
|Undocumented method `Neo4jError.hydrate()` is removed without replacement. +
138
-
Altering the attributes of a `Neo4jError` is removed.
139
-
|label:removed[]
151
+
|Graph type sets (`neo4j.graph.EntitySetView`) can no longer by indexed by legacy `id` (`int`, e.g., `graph.nodes[0]`).
152
+
Use the `element_id` instead (`str`, e.g., `graph.nodes["..."]`).
153
+
|label:removed[Changed]
140
154
141
155
|5.0
142
156
|link:https://neo4j.com/docs/api/python-driver/current/api.html#neo4j.graph.Node[`Node`], link:https://neo4j.com/docs/api/python-driver/current/api.html#neo4j.graph.Relationship[`Relationship`] -- Property `id` (int) is deprecated in favor of `element_id` (str).
143
157
This also affects link:https://neo4j.com/docs/api/python-driver/current/api.html#neo4j.graph.Graph[`Graph`] objects, as indexing `graph.nodes[...]` and `graph.relationships[...]` with integers is deprecated in favor of indexing them with strings.
144
158
|label:deprecated[]
145
159
160
+
|6.0
161
+
|xref:result-summary.adoc#_notifications[Notifications] as Neo4j status codes are deprecated in favor of GQL status objects.
162
+
|label:deprecated[]
163
+
164
+
|6.0
165
+
|Module `neo4j.time.ClockTime` and its accessors are deprecated.
166
+
|label:deprecated[]
167
+
168
+
|6.0
169
+
|Passing raw sting bookmarks as `initial_bookmarks` to `GraphDatabase.bookmark_manager()` is deprecated.
0 commit comments