Skip to content

chore(deps): Update spring - #446

Open
renovate[bot] wants to merge 1 commit into
developfrom
renovate/spring
Open

renovate[bot] wants to merge 1 commit into
developfrom
renovate/spring

Conversation

@renovate

@renovate renovate Bot commented Sep 13, 2026 •

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Change Age Confidence
org.springframework.ai:spring-ai-bom 2.0.0 → 2.0.1 age confidence
org.springframework.boot (source) 4.1.0 → 4.1.1 age confidence
org.springframework.boot:spring-boot-dependencies (source) 4.1.0 → 4.1.1 age confidence

Release Notes

spring-projects/spring-ai (org.springframework.ai:spring-ai-bom)

v2.0.1: Spring AI 2.0.1

Compare Source

For upgrading from 2.0.0 to 2.0.1, please refer to the upgrade notes here.

For the detailed reference documentation on 2.0.1, please refer here

⭐ New Features

  • Harden Ollama integration tests against flakiness #​6776
  • Retire deprecated Mistral AI chat models #​6772
  • Document additional 2.0.1 breaking changes #​6771
  • Support audio streaming in OpenAiAudioSpeechModel #​6733
  • Add configurable tool call limits #​6726
  • Enrich OpenAI transcription options and responses #​6697
  • Update Couchbase vector store to use Spring Boot-managed client #​6583
  • Remove explicit protobuf-java version properties #​6552
  • Add ToolChoice support for Google GenAI chat model #​6531
  • Remove fastjson2 dependency from spring-ai-azure-store #​6508
  • Refactor Media builder to use typed data overloads #​6481
  • Validate TokenTextSplitter builder arguments #​6452
  • Support page ranges in PagePdfDocumentReader #​6445
  • Revise DeepSeekApi #​6428
  • GraalVM for mcp annotations doesn't work in Spring AI 2.0.0 #​6427
  • Rename spring-ai-autoconfigure-model-chat-memory-redis #​6416
  • Restore PDF media mapping in OpenAiChatModel #​6410
  • Google Image generation support #​6408
  • Remove unused field maxResults #​6344
  • Confusing WARN log while AWS region resolving #​5108
  • SpringAI does not follow the AWS SDK's default region resolution rules #​823

🐞 Bug Fixes

  • Reserve Redis chat memory timestamps atomically #​6784
  • Fix RedisChatMemoryRepository clear() #​6783
  • Escape metadata values in Redis chat memory queries #​6765
  • Validate resolved resource path #​6764
  • Introduce maxSessions and sessionIdleTimeout #​6760
  • Fix OpenAiAudioTranscriptionModel leaking the stream on cancellation #​6759
  • Merge java-compile compilerArgs instead of overriding #​6756
  • Default OpenAI tool-calling strict mode to false #​6755
  • Use temporary directory for cache #​6754
  • Handle malformed pdf in PdfDocumentReader #​6753
  • Make tool resolution fallback configurable #​6751
  • Use full length hash #​6746
  • Correct ToolContext parameter detection #​6744
  • Return a single Generation on ToolCallLimitExceededException #​6742
  • Fix ToolCallingAdvisor streaming loop dropping doBeforeStream mutations #​6737
  • Add instructions option to OpenAiAudioSpeechModel #​6731
  • Apply MCP HTTP client request customizer beans #​6716
  • Close OpenAI stream response on cancellation #​6656
  • Validate text length to prevent StringIndexOutOfBoundsException for MarkdownCodeBlockCleaner #​6645
  • Fix AnthropicChatOptions.timeout(Duration) being ignored outside model construction #​6605
  • Close native resources in TransformersEmbeddingModel #​6572
  • Fix OllamaChatModel prompt options not inheriting configured model #​6567
  • Use Locale.ROOT for String uppercase/lowercase operations on wire/protocol values #​6566
  • Handle null fields in Mistral AI moderation Categories and CategoryScores #​6565
  • Fix Azure OpenAI authentication failure behind a TLS-inspecting proxy #​6553
  • Fix OpenSearchVectorStore document deserialization #​6550
  • Fix group precedence in MilvusFilterExpressionConverter #​6543
  • Fix strict mode payload placement in OpenAiChatModel #​6540
  • Align @McpTool exception handling with @Tool contract #​6534
  • Fix MCP stdio connections without args #​6533
  • Fix Milvus metadata integer values deserialized as Long instead of Double #​6517
  • Fix OpenAI stream handling for empty tool_calls #​6504
  • Fix shared mutable state in chat options builder clone() #​6498
  • Fix tool-search reference extraction for parallel calls #​6497
  • Fix incorrect assertions in CouchbaseSearchVectorStore.Builder #​6490
  • Fix shared mutable state in AnthropicChatOptions.Builder.clone() #​6487
  • Fix null parent for tool call observations in blocking mode #​6475
  • Fix Milvus filters with custom metadata field #​6470
  • Add tool-search advisor modules to BOM #​6464
  • Use model-independent assertions for tool-call token usage #​6461
  • Fix tool-search advisor auto-config ordering #​6458
  • There is a bug in the openai streaming mode #​6441
  • Validate PgVectorStore table schema after initialization #​6438
  • Accumulate tool calling advisor usage #​6424
  • Fix MarkdownCodeBlockCleaner discarding content of single-line fenced code blocks #​6423
  • Merge streaming tool call deltas by index in OpenAiChatModel #​6381
  • reasoningContent in metadata is always null when calling DeepSeek model via OpenAI API #​6375
  • Fix genai thinking level validation #​6339
  • Fix Microsoft Foundry URL path mode for proxy hosts #​6180
  • Perform Optional unwrapping in OpenAiChatModel#buildGeneration #​6009
  • Fix Streamable HTTP WebClient transport to accept SSE frames without event field #​5783

📔 Documentation

  • Fix inaccurate Content interface Javadoc #​6704
  • Document conversation ID scoping for chat memory #​6651
  • Fix OpenAI audio documentation title and broken link #​6606
  • Restructure structured-output documentation #​6495
  • Restore the CosmosDBChatMemoryRepository section #​6491
  • Fix typos in McpTool JavaDoc comments #​6449
  • Restructure tool calling reference docs #​6432
  • Remove ToolSearchToolCallingAdvisor for upgrade notes #​6421
  • Fix dead JavaDoc link in upgrade notes #​6419
  • Update outdated Pinecone free-tier namespace notes #​6383
  • Fix duplicate "is is" typo in openai-chat.adoc #​6037
  • Update Ollama OpenAI API compatibility example to use builder pattern #​5999

🔨 Dependency Upgrades

  • Delegate Maven plugin versions to Spring Boot BOM #​6586
  • Align gRPC version management with Spring Boot #​6585
  • Upgrade Milvus java client to 2.6.21 #​6503
  • Upgrade pinecone client to 6.2.0 #​6496
  • Upgrade qdrant client to 1.18.0 #​6494

❤️ Contributors

Thank you to all the contributors who worked on this release:

@​DragonFSKY, @​EvanYao826, @​JamesBLewis, @​MKP999, @​OneZero-Y, @​OreOreDa, @​Seol-JY, @​TimurRakhmatullin86, @​YashRL, @​ZhangDT-sky, @​angus-guo, @​chaechaepower, @​chemicL, @​dimitarproynov, @​ericbottard, @​gaoxiaolei-s59, @​gh7035, @​guanxuc, @​hutiefang76, @​ilayaperumalg, @​iuliiasobolevska, @​jewoodev, @​kamalcis, @​kezhenxu94, @​leeworms, @​liushenling2001, @​nicolaskrier, @​prachipanditrao, @​pyg410, @​quaff, @​rea9r, @​sdeleuze, @​sdudzin, @​seeun0210, @​sobychacko, @​strogiyotec, @​subhashpolisetti, @​thjanssen, @​tzolov, @​ultramancode, and @​yyyCode

spring-projects/spring-boot (org.springframework.boot)

v4.1.1


Configuration

📅 Schedule: (in timezone Asia/Seoul)

  • Branch creation
    • "before 10am on monday"
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@claude

claude Bot commented Sep 13, 2026 •

Copy link
Copy Markdown

Claude finished @renovate[bot]'s task in 1m 12s —— View job


🤖 Claude 의존성 영향도 분석

📦 변경점 요약

라이브러리 변경 타입
org.springframework.ai:spring-ai-bom 2.0.0 → 2.0.1 patch
org.springframework.boot 4.1.0 → 4.1.1 patch
org.springframework.boot:spring-boot-dependencies 4.1.0 → 4.1.1 patch

Spring AI 2.0.1 주요 변경 내용:

  • Media 빌더 API 리팩토링 — typed data 오버로드 방식으로 변경 (#6481)
  • BeanOutputConverter 내부 개선
  • GoogleGenAiChatModel의 thinking level 검증 수정 (#6339)
  • MarkdownCodeBlockCleaner 버그 수정 (단일 줄 코드 블록 내용 유실 → 해설 파싱 영향 가능)
  • Upgrade notes에 추가 breaking change 명시 (upgrade notes 참조)

Spring Boot 4.1.1: 릴리즈 노트 미제공 (patch 수준 버그픽스로 추정)

lockfile 변화: 이 PR은 libs.versions.toml 2줄만 수정, lockfile 변경 없음


🎯 Q-Asker 영향도: 🟡 MEDIUM

사용처 (modules/quiz-ai/impl):

파일 사용 중인 Spring AI API
service/ChunkedQuizGenerator.java ChatModel, ChatResponse, Prompt, Message 류, Media 생성자 (new Media(mimeType, URI))
service/essay/EssayGradingServiceImpl.java ChatModel, BeanOutputConverter, GoogleGenAiChatOptions, GoogleGenAiUsage
service/quality/QualityVerifierImpl.java ChatModel, BeanOutputConverter, GoogleGenAiChatOptions, GoogleGenAiUsage
support/GeminiContextCacheManager.java GoogleGenAiChatModel, CachedContentRequest, GoogleGenAiCachedContent
structure/GeminiResponseSchema.java 외 3개 BeanOutputConverter
metric/GeminiMetricsRecorder.java Usage, GoogleGenAiUsage
config/GeminiClientConfig.java GoogleGenAiConnectionProperties

예상 영향:

  1. Media 생성자 변경 위험 (주의 필요) — ChunkedQuizGenerator.java:133에서 new Media(mimeType, URI) 형태의 직접 생성자를 사용 중. Spring AI 2.0.1에서 Media 빌더가 typed data 오버로드 방식으로 리팩토링됨. 기존 생성자가 deprecated 되거나 시그니처가 바뀌었다면 컴파일 오류 발생 가능. CI 빌드 결과로 즉시 확인 가능.

  2. BeanOutputConverter — 여러 클래스에서 사용. release notes 상 API 변경 명시 없음, 동작 변화 가능성 낮음.

  3. GoogleGenAiChatModel / Context Cache — GeminiContextCacheManager에서 CachedContentRequest API 직접 사용 중. Google GenAI 관련 내부 API가 변경된 경우 영향 가능 (upgrade notes 확인 권장).

  4. MarkdownCodeBlockCleaner 버그 수정 — 해설 텍스트에 단일 줄 코드 블록이 있을 경우 기존(2.0.0)에서 내용이 유실되던 버그가 수정됨. q-asker의 AI 응답 파싱 품질이 소폭 개선될 수 있음.


✅ 권장 액션

  • CI 빌드 green 확인 — Media 생성자 시그니처 변경 여부는 컴파일 단계에서 즉시 드러남
  • CI 통과 시 ChunkedQuizGenerator + GeminiContextCacheManager 경로 로컬 smoke test (./gradlew :modules/quiz-ai:impl:test)
  • Spring AI 2.0.1 upgrade notes 직접 확인 — breaking change 목록에 Media / GoogleGenAi 관련 항목 있는지 검토

📋 참고

  • Release Notes: 이 PR 본문 참조
  • 분석 모델: claude-sonnet-4-6

@renovate

renovate Bot commented Sep 25, 2026

Copy link
Copy Markdown
Contributor Author

⚠️ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: gradle/libs.versions.toml
Command failed: ./gradlew -Dorg.gradle.jvmargs=-Xms512m -Xmx512m --console=plain --dependency-verification lenient -q properties

FAILURE: Build failed with an exception.

* Where:
Build file '/tmp/renovate/repos/github/q-asker/api/build.gradle' line: 3

* What went wrong:
Plugin [id: 'com.vanniktech.dependency.graph.generator', version: '0.8.0'] was not found in any of the following sources:

- Gradle Core Plugins (plugin is not in 'org.gradle' namespace)
- Included Builds (No included builds contain this plugin)
- Plugin Repositories (could not resolve plugin artifact 'com.vanniktech.dependency.graph.generator:com.vanniktech.dependency.graph.generator.gradle.plugin:0.8.0')
  Searched in the following repositories:
    Gradle Central Plugin Repository

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.
> Get more help at https://help.gradle.org.

BUILD FAILED in 20s

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants