Skip to content

relay: latest version by default, arm64-ready, build on AL2023 + OpenSSL 3#665

Open
tillkruss wants to merge 4 commits into
brefphp:masterfrom
tillkruss:relay-latest-version
Open

relay: latest version by default, arm64-ready, build on AL2023 + OpenSSL 3#665
tillkruss wants to merge 4 commits into
brefphp:masterfrom
tillkruss:relay-latest-version

Conversation

@tillkruss

@tillkruss tillkruss commented Jun 18, 2026

Copy link
Copy Markdown
Member

Modernizes and enables the Relay layer.

Changes

  • Latest version by defaultRELAY_VERSION defaults to empty and resolves the latest stable from builds.r2.relay.so/meta/latest (was pinned to 0.9.1); still overridable via --build-arg RELAY_VERSION=x.y.z.
  • arm64-ready — Relay's arch suffix is derived from uname -m (x86-64 / aarch64) instead of hard-coding x86-64.
  • Amazon Linux 2023 / OpenSSL 3 — base image bumped to :3, switched to Relay's self-contained el9 relay-pkg.so build (links system OpenSSL 3 + glibc 2.34), removing the custom OpenSSL 1.1 compile — the slowest build step.
  • Enabled the layerconfig.json was empty (so it was never built/published); now ["82", "83", "84", "85"].

Tested in Docker (PHP 8.3 & 8.5)

  • make test — extension loads, \Relay\Relay available, clean php -v.
  • Live Redis connection: plain TCP and a verified TLS handshake (exercises OpenSSL 3) — PING, SET/GET, INCR all round-trip.

@tillkruss tillkruss changed the title relay: install latest stable version by default + arm64 support relay: install latest version by default + arm64 support Jun 18, 2026
- Default RELAY_VERSION to empty; when unset, resolve the latest stable
  release from https://builds.r2.relay.so/meta/latest instead of pinning 0.9.1.
- Download the Relay build matching the host architecture by deriving the
  suffix from `uname -m` (x86_64 -> x86-64, aarch64 stays aarch64).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@tillkruss tillkruss force-pushed the relay-latest-version branch from 2568dd7 to d911b4f Compare June 18, 2026 21:02
@tillkruss tillkruss changed the title relay: install latest version by default + arm64 support relay: latest version by default, arm64-ready, build on AL2023 + OpenSSL 3 Jun 18, 2026
…uild

- Bump the base image to ":3" (Amazon Linux 2023 — glibc 2.34, OpenSSL 3) and
  enable the layer for PHP 8.2-8.5 in config.json (it was empty, so the layer
  was never built or published).
- Switch from Relay's "centos7" build to its "el9" build, which links the
  system OpenSSL 3 / glibc already shipped by the AL2023 base image and the Bref
  runtime.
- Drop the custom OpenSSL 1.1 compilation (and CA bundle). It existed only
  because the old centos7 build needed OpenSSL 1.1; the el9 build uses the
  system libssl.so.3 / libcrypto.so.3, which copy-dependencies bundles into the
  layer. This also removes the slowest step of the build.

Verified locally with `make test layer=relay php_versions=85`: the extension
loads on the bref/php-85 runtime, \Relay\Relay is available, and `php -v` is
clean.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@tillkruss tillkruss force-pushed the relay-latest-version branch from fc3e9e6 to ca5a4fc Compare June 18, 2026 21:27
@tillkruss tillkruss marked this pull request as ready for review June 18, 2026 21:57
Relay is built for PHP 8.2-8.5, so relay-php-81 doesn't exist. Use the
lowest built version (matching e.g. the Oracle oci8-php-83 row).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
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