Skip to content

Cut a release from main (Apache HttpComponents 5) #59

@joewiz

Description

@joewiz

[This issue was co-authored with Claude Code. -Joe]

Proposal

Cut a new release from main, which has been on Apache HttpComponents 5 since #49 (merged 2024-06) but has not yet been published.

Why

The latest published artifact — http-client-1.5.2 — is still on HttpComponents 4. It was cut from a hotfix/http-client-1.5.x branch off the pre-HC5 line, so main's HC5 work (plus the later header fix #51 and the integration tests) hasn't reached Maven. Downstream consumers pulling the newest release therefore still drag in Apache HttpClient 4.

This matters concretely for eXist-db: we've just migrated the rest of the code base to HttpClient 5, and the only thing forcing us to keep HC4 on the classpath is this library (our EXistTreeBuilder iterates HeaderSet, whose element type is org.apache.http.Header in the published 1.5.2).

I built main locally (as 1.5.1-SNAPSHOT) and pointed eXist at it: HeaderSet correctly exposes org.apache.hc.core5.http.Header, our http:send-request integration test passes against it, and eXist drops Apache HttpClient 4 entirely with a ~5-line change. So main is in good shape — it just needs releasing.

Version

main is currently 1.5.1-SNAPSHOT, but 1.5.2 is already published, so the release needs a version above that. Since the public HeaderSet API changed (HC4 → HC5 Header is source-incompatible for consumers), I'd suggest 2.0.0 (or at minimum 1.6.0 with a clear breaking-change note in the release notes).

Offer

Happy to help — testing against eXist is already done, and I can assist with the release itself if useful.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions