Skip to content

Commit 5e71077

Browse files
Update python changelog
1 parent 5bf24a8 commit 5e71077

File tree

1 file changed

+54
-28
lines changed

1 file changed

+54
-28
lines changed

python-manual/modules/ROOT/pages/upgrade.adoc

Lines changed: 54 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,6 @@ pip3 install -U neo4j==5.27
4848
----
4949
////
5050

51-
5251
////
5352
[[new-features]]
5453
== New features
@@ -60,10 +59,16 @@ pip3 install -U neo4j==5.27
6059
.Vector support
6160
[%collapsible]
6261
====
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.
6470
====
6571
|
66-
6772
6873
|===
6974
////
@@ -79,69 +84,90 @@ Deprecated features are likely to be removed in the next major release.
7984
|Version |Message |Status
8085

8186
|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.
87+
|*Environment*
88+
89+
- Dropped support for Python 3.7, 3.8, 3.9.
90+
- Package-alias `neo4j-driver` stopped receiving updates starting with 6.0. Install `neo4j` instead.
91+
- `setup.py` has been removed. Use a recent enough packaging/build tool supporting `pyproject.toml`.
8492
|label:removed[]
8593

8694
|6.0
87-
|Package-alias `neo4j-driver` stopped receiving updates starting with 6.0. Install `neo4j` instead.
95+
|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.
8897
|label:removed[]
8998

9099
|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.
93102
A `ResourceWarning` is emitted instead. +
94103
Call `driver.close()` explicitly or create the driver via a `with` statement.
95104
|label:removed[]
96105

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-
104106
|6.0
105107
|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.
106108
|label:removed[]
107109

108110
|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*
111112

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.
114116
|label:removed[]
115117

118+
116119
|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].
118131
|label:removed[]
119132

120133
|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`].
122135
|label:removed[]
123136

124137
|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()`.
126139
|label:removed[]
127140

128141
|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.
130144
|label:removed[]
131145

132146
|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]
135149

136150
|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]
140154

141155
|5.0
142156
|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).
143157
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.
144158
|label:deprecated[]
145159

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.
170+
Use a `neo4j.Bookmarks` object instead.
171+
|label:deprecated[]
146172

147173
|===

0 commit comments

Comments
 (0)