Skip to content

1.19.0 and 1.19.0-beta29

Latest

Choose a tag to compare

@dliubarskyi dliubarskyi released this 14 Aug 14:23
· 2 commits to main since this release

Notable Changes

Other Changes

  • Update the watsonx.ai SDK to the latest version by @andreadimaio in #5710
  • Redact sensitive AWS auth headers (Authorization, X-Amz-Security-Toke… by @OmkarKathile007 in #5799
  • fix: do not consume the response body on the OkHttp streaming path by @thswlsqls in #5806
  • Decode gzip/deflate responses in Utils.readBytes by @TimurRakhmatullin86 in #5801
  • fix: Map connectTimeout to connection establishment in Apache HTTP client by @thswlsqls in #5807
  • fix: Read SSE error response body as UTF-8 without reassembling line separators by @thswlsqls in #5809
  • Disable Apache HttpClient's automatic retries by default in ApacheHttpClient by @dliubarskyi in #5811
  • fix: preserve progressToken when applying a user-supplied MCP _meta by @wushiyuanmaimob in #5792
  • fix: treat an MCP $ref outside $defs as a plain schema, not a reference by @subhashpolisetti in #5790
  • fix: tear down previous MCP connection on reconnect to avoid resource leak by @farzad-sedaghatbin in #5757
  • fix: make Utils.merge null-safe and never return null by @Ayomipo18 in #5817
  • fix: avoid NoSuchElementException in dynamic tool refresh on evicted user message by @subhashpolisetti in #5820
  • chore: update google-genai to 1.63.0 by @glaforge in #5824
  • build(deps): bump websocket-driver from 0.7.4 to 0.7.5 in /docs by @dependabot[bot] in #5779
  • Fix NPE when LanguageModelQueryRouter receives an unknown retriever id from the LLM by @TimurRakhmatullin86 in #5796
  • docs: update Valkey embedding store to 9.1 GA container by @madolson in #5768
  • fix(deps): update dependency org.postgresql:postgresql to v42.7.12 [security] by @renovate[bot] in #5832
  • chore(deps): update dependency org.postgresql:postgresql to v42.7.12 [security] by @renovate[bot] in #5833
  • chore(deps): bump dompurify from 3.4.11 to 3.4.12 in /docs by @dependabot[bot] in #5830
  • chore(deps): bump body-parser from 1.20.4 to 1.20.6 in /docs by @dependabot[bot] in #5829
  • chore(deps): bump svgo from 3.3.3 to 3.3.4 in /docs by @dependabot[bot] in #5828
  • chore(deps): bump fast-uri from 3.1.2 to 3.1.4 in /docs by @dependabot[bot] in #5827
  • test: add unit tests for GoogleAiGeminiChatRequestParameters by @gaoxiaolei-s59 in #5715
  • test: fix swapped read/write method references in Tablestore metadata type guard message by @thswlsqls in #5611
  • fix: support 3D logit output in OnnxScoringBertCrossEncoder by @CountClaw in #5739
  • chore(deps-dev): bump org.postgresql:postgresql from 42.7.11 to 42.7.12 in /experimental/langchain4j-experimental-hibernate by @dependabot[bot] in #5826
  • docs(agentic): remove invalid executor() from async sequence example by @arimu1 in #5842
  • fix: support equals on agentic proxies by @thswlsqls in #5847
  • fix: return empty collection from parallel mapper agent on empty input by @thswlsqls in #5848
  • fix: Complete A2A response future when the stream ends without a result by @thswlsqls in #5850
  • fix(deps): update dependency io.netty:netty-codec-http2 to v4.1.136.final [security] by @renovate[bot] in #5831
  • Introduce MistralAiChatRequestParameters for per-request overrides by @subhashpolisetti in #5852
  • Updated opennlp-tools version to 2.5.11 by @dliubarskyi in #5857
  • fix: make tool search matching locale-independent by @thswlsqls in #5861
  • Avoid NullPointerException when an async agent returns null by @subhashpolisetti in #5864
  • Allow json deserialization of the AgenticScope only for known and registered classes by @mariofusco in #5872
  • Fixes Ickle injection issue by @karesti in #5856
  • docs(cdi): add integration page for LangChain4j CDI framework by @ehsavoie in #5873
  • fix(anthropic): apply cache_control to image and pdf content blocks by @mrzgetbetter820 in #5868
  • Handle the three distinct endpoint host formats depending on location type by @starksm64 in #5869
  • chore(deps): bump postcss from 8.5.8 to 8.5.23 in /docs by @dependabot[bot] in #5853
  • chore(deps): bump shell-quote from 1.8.4 to 1.10.0 in /docs by @dependabot[bot] in #5836
  • chore(deps): bump webpack-dev-server from 5.2.5 to 5.2.6 in /docs by @dependabot[bot] in #5834
  • Update actions/checkout digest to 3d3c42e by @renovate[bot] in #5854
  • fix(google-genai): preserve declared property order in schemas by @subhashpolisetti in #5839
  • fix: parse "reasoning" as an alias for "reasoning_content" in OpenAI chat responses by @brokenlander in #5843
  • Add Builder and configurable text extraction to DoclingDocumentParser by @edeandrea in #5818
  • fix: make metadata key collisions and skipped documents visible during document loading by @thswlsqls in #5542
  • Fix agent using a summarizedContext with scope-dependent @ChatModelSupplier by @mariofusco in #5879
  • chore(deps): update actions/setup-java digest to 03ad4de by @renovate[bot] in #5877
  • fix(deps): update dependency com.google.errorprone:error_prone_annotations to v2.50.0 by @renovate[bot] in #5245
  • fix(deps): update dependency com.microsoft.azure:msal4j to v1.25.1 by @renovate[bot] in #5246
  • fix: add null/empty choices guard in AzureOpenAiChatModel by @farzad-sedaghatbin in #4815
  • docs: fix Javadoc typo and test empty metadataCssSelectors match in HtmlToTextDocumentTransformer by @thswlsqls in #5452
  • fix(mistralai): guard against empty/null choices in MistralAiChatModel.doChat by @dong0713 in #5821
  • fix: Use configured similarity metric in CassandraEmbeddingStore search instead of hardcoded COSINE by @thswlsqls in #5507
  • fix: Strip only a single leading space from SSE data field by @thswlsqls in #5532
  • chore(deps): update dependency maven to v3.9.16 by @renovate[bot] in #5883
  • chore(deps): update dependency com.ibm.db2:jcc to v12.1.5.0 by @renovate[bot] in #5882
  • Fix parallel agent failures surfacing as RuntimeException instead of AgentInvocationException by @gnsharans in #5962
  • Complete A2A response future exceptionally on interrupted task states by @angus-guo in #5924
  • chore(deps-dev): bump org.jsoup:jsoup from 1.22.2 to 1.23.1 in /langchain4j-agentic-patterns by @dependabot[bot] in #6005
  • fix(deps): update dependency org.jsoup:jsoup to v1.23.1 [security] by @renovate[bot] in #6004
  • chore(deps): bump org.jsoup:jsoup from 1.18.3 to 1.23.1 in /langchain4j-oracle by @dependabot[bot] in #6002
  • chore(deps): bump io.micrometer:micrometer-core from 1.16.5 to 1.16.6 in /langchain4j-micrometer-metrics by @dependabot[bot] in #5998
  • chore(deps): bump js-yaml from 3.14.2 to 3.15.1 in /docs by @dependabot[bot] in #6011
  • chore(deps): bump brace-expansion from 1.1.13 to 1.1.18 in /docs by @dependabot[bot] in #6010
  • chore(deps): bump dompurify from 3.4.12 to 3.4.13 in /docs by @dependabot[bot] in #6009
  • chore(deps): bump mermaid from 11.15.0 to 11.16.1 in /docs by @dependabot[bot] in #6000
  • chore(deps): bump fast-uri from 3.1.4 to 3.1.5 in /docs by @dependabot[bot] in #5966
  • fix: Include cache token fields in AnthropicTokenUsage equals and hashCode by @thswlsqls in #5893
  • fix: Apply disableParallelToolUse when toolChoice is not set in Anthropic requests by @thswlsqls in #5892
  • fix: parse a bare JSON array in collection output parsers by @farzad-sedaghatbin in #5905
  • fix: use the exact metadata key in Coherence metadata filters by @thswlsqls in #5907
  • fix: report Amazon Bedrock provider and model name from BedrockCohereEmbeddingModel by @thswlsqls in #5909
  • fix: Handle nested Not in ChromaMetadataFilterMapper by @thswlsqls in #5912
  • fix: Accept any memoryId type in CassandraChatMemoryStore by @thswlsqls in #5919
  • fix: Validate ids/embeddings/textSegments size in ChromaEmbeddingStore.addAll by @thswlsqls in #5913
  • fix: Stop double-normalizing relevance scores in CassandraEmbeddingStore by @thswlsqls in #5920
  • Clean up AI Services doc formatting by @Abdullah8006 in #5940
  • fix: Default ElasticsearchContentRetriever maxResults to 3 as documented by @thswlsqls in #5932
  • fix: Render non-String metadata values in DefaultContentInjector by @thswlsqls in #5936
  • fix: Repair toBuilder() copy constructors in observability events by @thswlsqls in #5937
  • fix: Add missing Gemini finish reasons to prevent response deserialization failure by @thswlsqls in #5948
  • fix: Report TOOL_EXECUTION finish reason for Google GenAI tool call responses by @thswlsqls in #5950
  • fix: Correct mislabeled safeSearch field in WebSearchRequest toString by @thswlsqls in #5938
  • fix: Check HTTP status in GeminiFiles.listFiles instead of returning an empty list by @thswlsqls in #5949
  • fix: Map JsonAnyOfSchema to Google GenAI anyOf schema by @thswlsqls in #5951
  • Handle non-complex metadata field when reading Azure AI Search results by @subhashpolisetti in #5862
  • fix: Mask secret HTTP headers regardless of the JVM default locale by @thswlsqls in #5961
  • fix: Restore serialization of Hugging Face request options by @thswlsqls in #5956
  • fix: Return generated text when GPULlama3 generation stops at maxTokens by @thswlsqls in #5959
  • Override equals, hashCode and toString in BedrockChatRequestParameters by @subhashpolisetti in #5969
  • fix: return null instead of throwing NPE for URIs without a file name by @Tundesjaiyesmi in #5977
  • Fix AgentInvocationException wrapping in the DeferredResponse timeout overload by @subhashpolisetti in #5986
  • Keep generated images from every streamed chunk by @subhashpolisetti in #5972
  • fix: make Elasticsearch full text and vector search return structurally identical TextSegments by @zya1020 in #5975
  • Send tool parameters as JSON Schema when they have no typed form by @monrax in #6015
  • Fix interface-level @SystemMessage being ignored in AI Services by @subhashpolisetti in #5991
  • Support the Ollama truncate field so an over-long prompt can fail instead of being trimmed by @monrax in #6018
  • fix: only serialize responseLogprobs and enableEnhancedCivicAnswers when explicitly set by @Pahkho in #6016
  • fix: make Utils.copy return an actual copy instead of an unmodifiable view by @Tundesjaiyesmi in #6020
  • fix: Use a new Jlama session id for each request by @thswlsqls in #6027
  • Fix Bedrock default request parameters to preserve serviceTier and responseFormat by @subhashpolisetti in #6031
  • Fix Bedrock guardrail assessment handling for ConverseTrace without a guardrail by @subhashpolisetti in #6029
  • Fix Pinecone segment text being overwritten by reserved metadata key by @subhashpolisetti in #6033
  • fix: honor lateChunking in Jina multimodal embedding requests by @thswlsqls in #6026
  • Fix returnThinking being ignored by BedrockStreamingChatModel by @subhashpolisetti in #6035
  • fix: keep the sign of negative numbers in SqlFilterParser IN lists by @masiljangajji in #6037
  • fix: Reset entity-declared metadata attributes in HibernateEmbeddingStore.createEntities by @thswlsqls in #5958
  • Add generateContentConfigCustomizer to GoogleGenAiBatchChatModel by @angus-guo in #5880
  • Update dependency org.apache.httpcomponents.core5:httpcore5 to v5.4.3 [SECURITY] by @renovate[bot] in #6040
  • Fix Pinecone reserved text key being returned in metadata by @subhashpolisetti in #6043
  • fix: Read error response body as UTF-8 without reassembling line separators by @angus-guo in #6021
  • Allow to provide an agent with an external memory ID supplier by @mariofusco in #5903
  • chore(deps): bump org.apache.httpcomponents.client5:httpclient5 from 5.6.1 to 5.6.3 in /http-clients/langchain4j-http-client-apache by @dependabot[bot] in #6049
  • Fix Validate maxSegmentsPerBatch in BedrockCohereEmbeddingModel by @subhashpolisetti in #6060
  • Fix Convert a JSON null to a null Document instead of the string "null" by @subhashpolisetti in #6058
  • Fix Bedrock stop-reason mapping for AWS-added stop reasons by @subhashpolisetti in #6056
  • fix: honor the negation in SqlFilterParser NOT BETWEEN by @masiljangajji in #6063
  • fix: apply retrieval constraints to Elasticsearch full text search by @FyCode007 in #6046

New Contributors

Full Changelog: 1.18.1...1.19.0