Skip to content

Conversation

@vnikolova
Copy link
Collaborator

KTOR-8574

  • update examples in client-requests and server-responses to include .appendAll()
  • add an entry in "What's new in Ktor 3.2.0"
  • add API links

@coderabbitai
Copy link

coderabbitai bot commented Dec 23, 2025

Walkthrough

The pull request introduces and documents the new appendAll() utility function for Ktor, enabling simplified configuration of multiple HTTP headers and parameters. Code examples and documentation are updated across multiple files to demonstrate and explain this feature.

Changes

Cohort / File(s) Summary
Code Examples
codeSnippets/snippets/client-configure-request/src/main/kotlin/com/example/Application.kt
Adds appendAll() import and new code block demonstrating multiple header configuration patterns: vararg Pairs, Maps, and multi-valued headers.
Documentation Updates
topics/client-requests.md
Updates snippet reference line numbers throughout; inserts new documentation content in Headers section describing appendAll() usage with Maps and vararg Pairs; adjusts subsequent snippet line ranges.
Documentation Updates
topics/server-responses.md
Updates code example to demonstrate appending multiple header values using appendAll().
Release Notes
topics/whats-new-320.md
Changes "Unix domain sockets" heading level from ## to ###; adds new section documenting appendAll() overloads with Kotlin example in two locations.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~22 minutes

Suggested reviewers

  • Stexxe
  • osipxd
  • marychatte

Pre-merge checks and finishing touches

❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. You can run @coderabbitai generate docstrings to improve docstring coverage.
✅ Passed checks (2 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately describes the main purpose of the PR - adding documentation for new StringValuesBuilder.appendAll overloads, which aligns with the actual changes across multiple documentation files.
Description check ✅ Passed The description is directly related to the changeset, listing the specific updates made: examples updated, new entry added, and API links added.
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch vnikolova/KTOR-8574

📜 Recent review details

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 1d5b928 and b17c760.

📒 Files selected for processing (4)
  • codeSnippets/snippets/client-configure-request/src/main/kotlin/com/example/Application.kt
  • topics/client-requests.md
  • topics/server-responses.md
  • topics/whats-new-320.md
🔇 Additional comments (6)
topics/server-responses.md (1)

119-125: LGTM! Clear documentation of the new appendAll overload.

The example clearly demonstrates how to use appendAll to add multiple values for the same header, which is a common use case. The code is correct and the comment provides helpful context.

topics/whats-new-320.md (1)

444-463: LGTM! Comprehensive documentation of the new feature.

The section clearly documents the new appendAll() overloads with:

  • Clear explanation of the functionality
  • Link to API documentation
  • Comprehensive examples showing Map and vararg Pair usage
  • Examples of both single values and list values

The examples are correct and demonstrate the various use cases effectively.

codeSnippets/snippets/client-configure-request/src/main/kotlin/com/example/Application.kt (2)

9-9: LGTM! Necessary import for the new functionality.

The import of io.ktor.util.appendAll is correctly added to support the new overloads demonstrated in the code examples below.


55-71: LGTM! Comprehensive demonstration of the new appendAll overloads.

The code examples effectively demonstrate all the new ways to use appendAll:

  • Using vararg Pairs with HttpHeaders constants
  • Using a Map<String, String> for simple key-value pairs
  • Using a Map<String, List<String>> for headers with multiple values
  • Using a custom header name with a list of values

The examples are clear, well-commented, and cover the main use cases for the new functionality.

topics/client-requests.md (2)

75-75: LGTM! Line references correctly updated.

All the include-lines references have been properly updated to reflect the new code added to Application.kt. The line numbers correctly point to the intended code examples.

Also applies to: 89-89, 96-96, 112-112, 124-124, 139-139, 210-210


182-189: LGTM! Clear documentation of the new appendAll functionality.

The new section clearly explains how to use appendAll() with Map or vararg Pair to add multiple headers conveniently. The documentation is well-placed within the Headers section and references the correct code example.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@vnikolova vnikolova requested a review from osipxd December 23, 2025 15:24
@vnikolova vnikolova self-assigned this Dec 23, 2025
Copy link
Member

@osipxd osipxd left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

@vnikolova vnikolova merged commit daf0e35 into main Jan 20, 2026
1 check passed
@vnikolova vnikolova deleted the vnikolova/KTOR-8574 branch January 20, 2026 12:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants