Skip to content

Fix CI for HTTP v2 migration: julia compat, x86/1.0 matrix, and verify+cacrt bug - #2

Merged
hhaensel merged 1 commit into
hhaensel:hh-http-v2from
tanmaykm:http-v2-fixes
Jun 12, 2026
Merged

Fix CI for HTTP v2 migration: julia compat, x86/1.0 matrix, and verify+cacrt bug#2
hhaensel merged 1 commit into
hhaensel:hh-http-v2from
tanmaykm:http-v2-fixes

Conversation

@tanmaykm

Copy link
Copy Markdown

Follow-up to the HTTP v2 migration (tanmaykm#27), targeting your hh-http-v2 branch so the fixes land in that PR.

CI failures addressed

1. Julia 1.0 jobs (EnumX unsatisfiable) — the PR pinned HTTP = "2.1.1" but left julia = "1". HTTP 2.1.1 and Reseau 1.2.1 both declare julia = "1.10", so 1.0 can never resolve. Raised [compat] julia to 1.10 and dropped 1.0 from the CI matrix.

2. All x86 jobs — Reseau (HTTP v2 TLS backend) has no 32-bit support. Linux x86 fails precompiling with TLS precompile workload observed an unexpected resumed state; Windows x86 fails with ReadOnlyMemoryError(). Removed all x86 rows. This makes dropping 32-bit support explicit — flagging it as a maintainer-visible consequence of the migration.

Correctness fix

OIDCCtx(...; verify=false, cacrt=<file>) threw ArgumentError: require_ssl_verification overrides are not supported when passing an explicit Client. When a custom CA is supplied the code builds an explicit HTTP.Client, and HTTP v2 rejects a require_ssl_verification override alongside that client. Fix: carry the verify intent through the TLS.Config (verify_peer/verify_hostname) and only set require_ssl_verification in the no-custom-CA path.

Other

  • Bumped version 0.1.80.2.0 (the cacrt change is breaking: PEM string contents and MbedTLS.CRT are no longer accepted, file path only).
  • Updated the README.md cacrt docs to the file-path-only contract.
  • Added a Custom CA certificate testset covering the cacrt path, the verify=false regression, and the bad-path error.

Tests pass locally (x64 / Julia 1.12): OpenIDConnect | 34 34 pass. Note the new cacrt tests make real network calls to accounts.google.com, consistent with the existing suite.

- Raise julia compat to 1.10 (required by HTTP 2.1.1 / Reseau 1.2.1) and
  drop Julia 1.0 plus all x86 CI jobs (Reseau has no 32-bit support).
- Fix OIDCCtx construction throwing when verify=false is combined with a
  custom cacrt: HTTP v2 rejects require_ssl_verification overrides on an
  explicit Client, so carry the verify intent via the TLS.Config instead.
- Document the narrowed cacrt contract (file path only) and bump version
  to 0.2.0 for the breaking API change.
- Add a Custom CA certificate testset covering the cacrt path, the
  verify=false regression, and the bad-path error.
@hhaensel
hhaensel merged commit 6b35a9b into hhaensel:hh-http-v2 Jun 12, 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.

2 participants