Conversation
Signed-off-by: Adrian Cole <adrian@tetrate.io>
mathetake
approved these changes
Jul 15, 2025
codefromthecrypt
added a commit
that referenced
this pull request
Apr 30, 2026
Replacing urfave/cli with Kong makes the command surface a typed model instead of a set of mutable command builders. That keeps command parsing separate from the run path and gives tests direct entry points for globals and command behavior. The version bump moves func-e onto Go 1.26.2 and Envoy 1.38.0 while updating the lint, site and packaging tools that gate releases. Most of the remaining changes are the cleanup required by the newer stack and stricter analyzers. This preserves Envoy flag passthrough with Kong, handles --flag=value forms when detecting config and admin arguments, keeps process command-line parsing on argv slices, adopts os.Root for tar extraction, adds the small in-memory HTTP seam used for synctest coverage of the admin/install/startup paths, and records the Go 1.24-1.26 stdlib audit notes. A `-version` shim in cmd/func-e/main coerces the legacy single-dash flag to Kong's `--version` so old shell scripts keep working. CI workflows pin every OS label and action version explicitly. Hosted runners move to ubuntu-24.04, ubuntu-24.04-arm (free for public repos since 2025-08-07) and macos-26 (GA since 2026-02-26); container parents move to ubuntu:24.04 and quay.io/centos/centos:stream10 (GA since 2024-12-12). Action references stay at major-version tags. The Dockerfile comment is rewritten now that arm64 is available natively on GitHub-hosted runners. CLI decruft on top of the Kong migration inlines the four single-call *Action wrappers (RunAction, UseAction, VersionsAction, WhichAction) into their cmd*.Run methods, replaces the nopExit panic dance with an *ExitError sentinel returned through DoMain, and compresses the six identical override blocks in initOpts into a slice walker. The transient go-stdlib-audit-1.24-1.26.md checklist is removed once its findings landed in code. RATIONALE.md loses the "Why do we use Travis" section. Travis config was removed in d79511b (#469) and arm64 hosted runners are now GA on GitHub Actions, so the section's premise no longer holds. Signed-off-by: Adrian Cole <adrian@tetrate.io>
codefromthecrypt
added a commit
that referenced
this pull request
Apr 30, 2026
Replacing urfave/cli with Kong makes the command surface a typed model instead of a set of mutable command builders. That keeps command parsing separate from the run path and gives tests direct entry points for globals and command behavior. The version bump moves func-e onto Go 1.26.2 and Envoy 1.38.0 while updating the lint, site and packaging tools that gate releases. Most of the remaining changes are the cleanup required by the newer stack and stricter analyzers. This preserves Envoy flag passthrough with Kong, handles --flag=value forms when detecting config and admin arguments, keeps process command-line parsing on argv slices, adopts os.Root for tar extraction, adds the small in-memory HTTP seam used for synctest coverage of the admin/install/startup paths, and records the Go 1.24-1.26 stdlib audit notes. A `-version` shim in cmd/func-e/main coerces the legacy single-dash flag to Kong's `--version` so old shell scripts keep working. CI workflows pin every OS label and action version explicitly. Hosted runners move to ubuntu-24.04, ubuntu-24.04-arm (free for public repos since 2025-08-07) and macos-26 (GA since 2026-02-26). The internal-images Ubuntu parent moves to ubuntu:24.04 to match its runs-on label, fixing a long-standing inconsistency where parent_image was ubuntu:20.04 while image_tag was already ubuntu-24.04. The CentOS parent stays on quay.io/centos/centos:stream9 (supported through 2027-05-31) since the centos-9 image is already published on ghcr.io and bumping the tag would require dispatching internal-images.yml before any PR could pass. Action references stay at major-version tags. The Dockerfile comment is rewritten now that arm64 is available natively on GitHub-hosted runners. CLI decruft on top of the Kong migration inlines the four single-call *Action wrappers (RunAction, UseAction, VersionsAction, WhichAction) into their cmd*.Run methods, replaces the nopExit panic dance with an *ExitError sentinel returned through DoMain, and compresses the six identical override blocks in initOpts into a slice walker. The transient go-stdlib-audit-1.24-1.26.md checklist is removed once its findings landed in code. RATIONALE.md loses the "Why do we use Travis" section. Travis config was removed in d79511b (#469) and arm64 hosted runners are now GA on GitHub Actions, so the section's premise no longer holds. Signed-off-by: Adrian Cole <adrian@tetrate.io>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.