apupier commented on code in PR #24405: URL: https://github.com/apache/camel/pull/24405#discussion_r3527120277
########## docs/user-manual/modules/ROOT/pages/camel-4x-upgrade-guide-4_22.adoc: ########## @@ -94,3 +94,63 @@ payloads, enable stream caching on the route. * The `bufferSize` option has been removed. It only configured the previous streaming implementation and no longer has any effect with authenticated encryption. + +=== camel-weaviate - potential breaking change + +The Weaviate Java client has been upgraded from v5 (`io.weaviate:client`) to v6 (`io.weaviate:client6`). +This is a major upgrade with several breaking changes. + +==== Scheme default value + +The `scheme` endpoint option now defaults to `http`. Previously it had no default. Routes that relied on the old +behavior (passing no scheme) should explicitly set `scheme=http` or `scheme=https` as appropriate. + +==== Collection name case sensitivity + +Weaviate v6 requires collection names to start with an uppercase letter (PascalCase). Existing routes using lowercase +collection names (e.g., `weaviate:myCollection`) must be updated to use PascalCase (e.g., `weaviate:MyCollection`). + +==== New gRPC configuration options + +The v6 client requires a gRPC connection in addition to the HTTP connection. +Two new endpoint options have been added: `grpcHost` (defaults to the HTTP host) and `grpcPort` (defaults to `50051`). +When connecting to a Weaviate server that exposes gRPC on a non-default host or port, these options must be set explicitly. + +==== Response body types changed + +The exchange body returned by the producer no longer uses `io.weaviate.client.base.Result<T>` wrappers. +Code that casts the response body must be updated: + +[cols="1,2,2", options="header"] +|=== +| Action | Old body type | New body type + +| `CREATE_COLLECTION` | `Result<Boolean>` | `Boolean` +| `CREATE` | `Result<WeaviateObject>` | `WeaviateObject<Map<String, Object>>` +| `UPDATE_BY_ID` | `Result<Boolean>` | `Boolean` +| `DELETE_BY_ID` | `Result<Boolean>` | `Boolean` +| `DELETE_COLLECTION` | `Result<Boolean>` | `Boolean` +| `QUERY` | `Result<GraphQLResponse>` | `QueryResponse<Map<String, Object>>` +| `QUERY_BY_ID` | `Result<List<WeaviateObject>>` | `Optional<WeaviateObject<Map<String, Object>>>` +|=== + +The `WeaviateObject` class has also moved from `io.weaviate.client.v1.data.model` to `io.weaviate.client6.v1.api.collections` +and uses accessor methods (`uuid()`, `properties()`) instead of getter methods (`getId()`, `getProperties()`). + +==== Client type changed + +The autowired client type has changed from `io.weaviate.client.WeaviateClient` to `io.weaviate.client6.v1.api.WeaviateClient`. +Routes that inject a custom `WeaviateClient` instance must update the import and construction to use the v6 API +(e.g., `WeaviateClient.connectToCustom(...)` instead of `new WeaviateClient(config)`). + +==== Readiness check removed + +The v5 client performed a readiness check (`misc().readyChecker()`) during client creation and threw an exception +if the Weaviate server was not ready. The v6 client no longer performs this check at startup. Errors will now +surface on the first operation instead of during endpoint initialization. + +==== Proxy configuration deprecated + +The v6 client no longer supports HTTP proxy configuration. +The `proxyHost`, `proxyPort`, and `proxyScheme` endpoint options are deprecated and have no effect. +They will be removed in a future release. Review Comment: if these properties have no more action, i think it is better to remove them than to deprecate them. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
