迁移到 6.0.0
这是 GraphQL 库版本 6 的文档。对于长期支持 (LTS) 版本 5,请参阅 GraphQL 库版本 5 LTS。 |
此页面列出了从 Neo4j GraphQL 库版本 5.x 到 6.x 的所有重大更改以及如何更新它。
重大更改
以下是版本 5.0.0 到 6.0.0 的所有重大更改的列表。
删除非 CDC 订阅
已删除对 Neo4jGraphQLSubscriptionsCDCEngine
以外的订阅引擎的支持。这意味着订阅仅在启用了更改数据捕获 (CDC) 的数据库上有效。以下引擎不再受支持
-
Neo4jGraphQLSubscriptionsDefaultEngine
从 @relationship
中删除已弃用的隐式“some”过滤器
已弃用的没有运算符后缀的隐式“some”过滤器已从 @relationship
中删除,取而代之的是显式的 _SOME
过滤器。
之前 | 现在 |
---|---|
|
|
删除聚合过滤器输入中的无效过滤器
在以前的库版本中,用于聚合过滤器的输入包含不依赖于聚合函数的过滤器。这些过滤器在以前的库版本中已弃用,并从模式中删除。
要查看在过滤中支持的聚合函数,请参阅 聚合过滤。
删除不使用 _LENGTH
的字符串聚合过滤器
由于字符串聚合是使用长度计算的,因此它们现在需要所有字符串聚合过滤器的 _LENGTH
后缀。
之前 | 现在 |
---|---|
|
|
从 assertIndexesAndConstraints
中删除已弃用的 options
参数
已删除 assertIndexesAndConstraints
实用程序中已弃用的 options
参数。数据库迁移超出了 Neo4j GraphQL 库的范围,所有索引和约束都必须手动管理。
从顶级更新中删除不是 update
的顶级参数
顶级 update
变异现在仅接受 update
参数。
以下嵌套操作已移至 update
参数
-
创建
-
删除
-
连接
-
断开连接
-
连接或创建
之前 | 现在 |
---|---|
|
|
更改接口连接字段的 sort 参数
接口连接字段的 sort 参数现在是非空元素列表。
之前 | 现在 |
---|---|
|
|
已弃用的 _NOT
过滤器不再受支持
以下已弃用的 NOT
过滤器已从模式中删除,因为它们不再受支持
-
_NOT
-
_NOT_CONTAINS
-
_NOT_ENDS_WITH
-
_NOT_IN
-
_NOT_STARTS_WITH
-
_NOT_INCUDES
-
node_NOT
-
edge_NOT
要在 GraphQL 库的 6.x 版本中实现相同的功能,请改用 布尔 NOT
运算符。
之前 | 现在 |
---|---|
|
|
@relationship
上已弃用的 _NOT
过滤器不再受支持
以下 @relationship
上已弃用的 _NOT
过滤器已删除且不再受支持
-
actors_NOT
-
actorsConnection_NOT
要在 GraphQL 库的 6.x 版本中实现相同的功能,请使用 NONE
量词。
之前 | 现在 |
---|---|
|
|
更改 Neo4jFeaturesSettings 中的 excludeDeprecatedFields
设置
由于在 6.x 版本中许多已弃用的字段已被删除,因此已修改 excludeDeprecatedFields
设置以反映这些更改。
以下字段已被删除
-
bookmark
-
negationFilters
-
arrayFilters
-
stringAggregation
-
aggregationFilters
-
nestedUpdateOperationsFields
以下字段已添加
-
implicitEqualFilters
-
deprecatedOptionsArgument
-
directedArgument
从 sort 参数中删除一些 @cypher
字段
以下 @cypher
字段类型已从 sort
参数中删除,因为它们不能用作排序字段
-
具有非空参数的
@cypher
字段。 -
具有不可排序类型(如
Node
、List
等)的@cypher
字段。
从 cypherQueryOptions
中删除 connectComponentsPlanner
在 connectComponentsPlanner
被弃用后,该字段不再在 GraphQL 上下文中被接受,并从 cypherQueryOptions
对象中删除。
新增功能
弃用和警告
隐式等值过滤器已弃用
以下隐式等值过滤器已弃用
-
{ name: "Keanu" }
-
{ count: 10 }
您可以使用{ name_EQ: "Keanu" }
和 { count_EQ: 10 }
来实现相同的功能。已弃用的等值过滤器将在 7.x 版本中移除。
之前 | 现在 |
---|---|
|
|
@node
必须显式定义
将来,没有@node
指令的类型将不再被视为 Neo4j 节点。在 6.0.0 版本中,不需要为表示 Neo4j 节点的每个 GraphQL 类型指定 @node
指令,但建议这样做,并且如果未指定则会发出警告。确实存在某些情况下不应使用 @node
,例如,对于由 @cypher 字段返回的不是 Neo4j 节点的类型。
之前 | 现在 |
---|---|
|
|
已弃用隐式等值过滤器
以前,如果一个字段出现在过滤器中而没有指定运算符,则将其视为等值过滤器。此行为现已弃用,并将在将来移除。请改用_EQ
过滤器。
之前 | 现在 |
---|---|
|
|
已弃用分页 options
参数
查询和 @relationship
字段中的 options
参数已弃用,并将在将来移除。请改用 limit
、offset
和 sort
参数。
之前 | 现在 |
---|---|
|
|