Skip to content

docs: modernize HTTP/2 ALPN and h2c guidance - #1253

Merged
samueleresca merged 2 commits into
apache:mainfrom
samueleresca:docs/http2-modernize-alpn-h2c-guidance
Sep 6, 2026
Merged

docs: modernize HTTP/2 ALPN and h2c guidance#1253
samueleresca merged 2 commits into
apache:mainfrom
samueleresca:docs/http2-modernize-alpn-h2c-guidance

Conversation

@samueleresca

Copy link
Copy Markdown
Member

Motivation:
The HTTP/2 server-side doc still described ALPN as requiring separate negotiation setup and documented a JDK <= 9 fallback where curl could not determine h2 support, plus it presented the HTTP/1.1 h2c Upgrade mechanism without noting it is now obsolete per RFC 9113. Apache Pekko HTTP's minimum supported JDK has since moved to 17, where ALPN is natively part of JSSE and the RFC 7540 Upgrade path has been superseded.

Modification:
Reword the ALPN section to state it needs no extra provider or boot classpath configuration on supported JDKs, and link to RFC 7301/RFC 9113 instead of RFC 7540. Add a warning that h2c Upgrade is obsolete in RFC 9113 and should only be used for older-client compatibility, rename the "h2c with prior knowledge" section to "Cleartext HTTP/2 with prior knowledge", and drop the outdated JDK <= 9 curl fallback example that no longer applies on the project's supported JDKs.

Result:
The doc reflects the project's current JDK baseline and RFC 9113 guidance without the stale JDK <= 9 ALPN caveat or unlabeled deprecated h2c Upgrade mechanism.

Tests:
Not run - docs only

References:
None - documentation accuracy update

Motivation:
The HTTP/2 server-side doc still described ALPN as requiring separate
negotiation setup and documented a JDK <= 9 fallback where curl could not
determine h2 support, plus it presented the HTTP/1.1 h2c Upgrade mechanism
without noting it is now obsolete per RFC 9113. Apache Pekko HTTP's minimum
supported JDK has since moved to 17, where ALPN is natively part of JSSE
and the RFC 7540 Upgrade path has been superseded.

Modification:
Reword the ALPN section to state it needs no extra provider or boot
classpath configuration on supported JDKs, and link to RFC 7301/RFC 9113
instead of RFC 7540. Add a warning that h2c Upgrade is obsolete in RFC 9113
and should only be used for older-client compatibility, rename the "h2c
with prior knowledge" section to "Cleartext HTTP/2 with prior knowledge",
and drop the outdated JDK <= 9 curl fallback example that no longer applies
on the project's supported JDKs.

Result:
The doc reflects the project's current JDK baseline and RFC 9113 guidance
without the stale JDK <= 9 ALPN caveat or unlabeled deprecated h2c Upgrade
mechanism.

Tests:
Not run - docs only

References:
None - documentation accuracy update
Comment thread docs/src/main/paradox/server-side/http2.md Outdated
Comment thread docs/src/main/paradox/server-side/http2.md Outdated
Comment thread docs/src/main/paradox/server-side/http2.md Outdated
Comment thread docs/src/main/paradox/server-side/http2.md Outdated
@pjfanning pjfanning added this to the 2.0.0-M2 milestone Sep 6, 2026
@pjfanning

Copy link
Copy Markdown
Member

@samueleresca would you time to have a look at my review comments? The changes themselves are useful.

@samueleresca

Copy link
Copy Markdown
Member Author

@samueleresca would you time to have a look at my review comments? The changes themselves are useful.

Taking a look at it later

@samueleresca

Copy link
Copy Markdown
Member Author

@pjfanning This should now be updated.

@pjfanning pjfanning left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

lgtm

@samueleresca
samueleresca merged commit c7655e1 into apache:main Sep 6, 2026
6 checks passed
@samueleresca
samueleresca deleted the docs/http2-modernize-alpn-h2c-guidance branch September 6, 2026 12:38
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.

2 participants