Skip to content

KTOR-9512 Docs for sending session data only when modified#802

Open
vnikolova wants to merge 1 commit into3.5.0from
vnikolova/KTOR-9512
Open

KTOR-9512 Docs for sending session data only when modified#802
vnikolova wants to merge 1 commit into3.5.0from
vnikolova/KTOR-9512

Conversation

@vnikolova
Copy link
Copy Markdown
Collaborator

Description:

Add documentation for sending session data only when modified:

  • add a "what's new" entry
  • add a new section in server-sessions

Related issue:

KTOR-9512

@vnikolova vnikolova changed the base branch from main to 3.5.0 April 29, 2026 09:03
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Apr 29, 2026

Caution

Review failed

Failed to post review comments

Walkthrough

This update enhances digest authentication to support RFC 7616 compliance with dynamic credential computation and algorithm selection. The example application refactors from precomputed MD5 lookups to runtime hash derivation, and documentation is expanded to cover SHA-512-256, QoP configuration, and custom authentication provider patterns alongside new session optimization guidance.

Changes

Cohort / File(s) Summary
Digest Authentication Code Example
codeSnippets/snippets/auth-digest/src/main/kotlin/authdigest/Application.kt
Replaced MD5-only credential lookup table with plaintext password storage and dynamic hash computation via computeHash() function. Updated digestProvider signature to receive algorithm parameter and generate digests for both SHA-512-256 and MD5 algorithms.
Digest Authentication Documentation
topics/server-digest-auth.md
Restructured guidance for RFC 7616 compliance with expanded coverage of algorithm selection, QoP configuration, hash computation steps supporting both qop=auth and qop=auth-int, username hashing, and strict RFC mode. Added advanced sections for security recommendations and UTF-8 charset configuration.
Authentication & Sessions Documentation
topics/server-auth.md, topics/server-sessions.md
Restructured custom authentication guidance with explicit paths for providers and authorization plugins. Added documentation for sendOnlyIfModified session optimization flag to reduce redundant Set-Cookie headers.
What's New & Navigation
topics/whats-new-350.md, ktor.tree
Introduced new "What's new in Ktor 3.5.0" chapter documenting digest auth RFC 7616 updates, suspending custom provider variant, and sessions improvements. Updated documentation TOC to reference new 3.5.0 page.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Possibly related PRs

  • KTOR-9336 Digest Auth Docs. Document RFC 7616 #768: Implements the same digest authentication refactoring in Application.kt, replacing MD5 lookup with dynamic computeHash, converting userTable to userPasswords, and updating digestProvider signature to accept algorithm parameter.

Suggested reviewers

  • bjhham
🚥 Pre-merge checks | ✅ 2 | ❌ 3

❌ Failed checks (3 warnings)

Check name Status Explanation Resolution
Title check ⚠️ Warning The title accurately describes the main focus of the PR, which is documentation for the sendOnlyIfModified session feature. However, the PR also includes significant unrelated changes to digest authentication, authentication provider documentation, and a What's New chapter. The title should reflect all major changes in the PR, or the unrelated digest/auth documentation changes should be moved to separate PRs to match the stated objective.
Description check ⚠️ Warning The description accurately documents the stated objective (session data documentation), but the PR contains substantial additional changes not mentioned: digest authentication updates, custom authentication provider documentation, and a comprehensive What's New 3.5.0 chapter. Update the description to mention all significant changes included in the PR, particularly the digest authentication and authentication provider documentation updates.
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (2 passed)
Check name Status Explanation
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch vnikolova/KTOR-9512

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
Review rate limit: 7/8 reviews remaining, refill in 7 minutes and 30 seconds.

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

@vnikolova vnikolova requested a review from bjhham April 29, 2026 09:03
@vnikolova vnikolova self-assigned this Apr 29, 2026
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.

1 participant