Skip to content

feat(datasource/hex): Add V2 registry protocol support#40983

Open
zharinov wants to merge 3 commits intorenovatebot:mainfrom
zharinov:feat/hex-v2-protocol
Open

feat(datasource/hex): Add V2 registry protocol support#40983
zharinov wants to merge 3 commits intorenovatebot:mainfrom
zharinov:feat/hex-v2-protocol

Conversation

@zharinov
Copy link
Collaborator

@zharinov zharinov commented Feb 6, 2026

Changes

Add Hex V2 registry protocol support as a secondary code path alongside the existing JSON API. This enables Renovate to fetch package data from third-party Hex registries (like Oban Pro, corporate registries) that only implement the Hex V2 registry protocol and have no JSON API.

Dispatch logic: hex.pm (default registry) → JSON API (unchanged), any other registry URL → V2 protocol.

The V2 decode pipeline: getBuffer()gunzipSyncSigned.decodePackage.decode → map to ReleaseResult. Packages fetched via V2 have versions and deprecation status but no timestamps, sourceUrl, or homepage (this metadata doesn't exist in V2 or on custom registries).

This PR adds the decoding capability only. A follow-up PR will add end-to-end custom registry support (parsing repo: in mix.exs, mix hex.repo add in artifacts, wiring registry URLs through config).

Context

Please select one of the following:

  • This doesn't close an Issue, but I accept the risk that this PR may be closed if maintainers disagree with its opening or implementation

AI assistance disclosure

Did you use AI tools to create any part of this pull request?

  • No — I did not use AI for this contribution.
  • Yes — minimal assistance (e.g., IDE autocomplete, small code completions, grammar fixes).
  • Yes — substantive assistance (AI-generated non‑trivial portions of code, tests, or documentation).
  • Yes — other (please describe):

Documentation (please check one with an [x])

  • I have updated the documentation, or
  • No documentation update is required

How I've tested my work (please select one)

I have verified these changes via:

  • Code inspection only, or
  • Newly added/modified unit tests, or
  • No unit tests, but ran on a real repository, or
  • Both unit tests + ran on a real repository

@github-actions github-actions bot requested a review from viceice February 6, 2026 15:17
@zharinov zharinov force-pushed the feat/hex-v2-protocol branch 2 times, most recently from 02a0425 to 2b2b8bb Compare February 6, 2026 22:18
@zharinov zharinov force-pushed the feat/hex-v2-protocol branch from 2b2b8bb to 2cd8362 Compare February 6, 2026 23:28
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