Skip to content

v0.3.7

Choose a tag to compare

@github-actions github-actions released this 09 Sep 12:59
· 198 commits to main since this release
Immutable release. Only release title and notes can be modified.
v0.3.7
d74a822
  • Publish an immutable, versioned documentation website for every release, with stable links to
    the native standalone HTML reference, release notes, source documents, and coverage. Historical
    snapshots remain available while the site root follows the latest stable release.
  • Restructure the generated reference with linked Markdown contents, clearer option groupings, a
    command-grammar overview, and dedicated output and tree-comparison guides. Console and man-page
    rendering remain compact, while HTML retains its single native navigation block.
  • Make --no-config absolute: it now consults no system, user, or explicitly named config file,
    matching the expectation set by its name regardless of other config-option ordering.
  • Clarify config-selector stacking, --explain output, and -H / -L / -P symlink traversal
    boundaries in the generated reference.
  • Test the complete suite with the same Clang, size optimization, ThinLTO, and linker settings as
    the published binaries, eliminating duplicate release builds while smoke-testing the final
    stripped artifacts.
  • Upgrade PCRE2 to 10.48, including its security fixes, Unicode 17 data, matching corrections, and
    memory-use improvements.
  • Replace the legacy Bazel setup action and implicit cache with the current opt-in setup while
    retaining XFF's explicitly partitioned and size-bounded CI caches.

Install

Run either or both install blocks: the lean binary is installed as xff, and the all-features
binary as xff_full. Ensure ${HOME}/.local/bin is in PATH; the generated manual pages are
installed below ${HOME}/.local/share/man.

Release files without an archive suffix, such as xff-linux-x86_64, are the actual stripped
platform executables and can be downloaded and installed directly. Each matching .tar.zst
contains that same stripped executable together with its separate debug-information file.

Install on Linux x86_64:

XFF_VERSION=v0.3.7
XFF_PATH_BIN="${HOME}/.local/bin"
XFF_PATH_MAN="${HOME}/.local/share/man/man1"
XFF_PATH_TEMP="$(mktemp -d "${TMPDIR:-/tmp}/xff-install.XXXXXX")"
trap 'rm -rf "${XFF_PATH_TEMP}"' EXIT
mkdir -p "${XFF_PATH_BIN}"
mkdir -p "${XFF_PATH_MAN}"
cd "${XFF_PATH_TEMP}"
curl -fLO "https://github.com/mboworks/xff/releases/download/${XFF_VERSION}/SHA256SUMS"

# Install xff.
curl -fLO "https://github.com/mboworks/xff/releases/download/${XFF_VERSION}/xff-linux-x86_64"
grep ' xff-linux-x86_64$' SHA256SUMS | sha256sum -c -
install -m 0755 xff-linux-x86_64 "${XFF_PATH_BIN}/xff"
"${XFF_PATH_BIN}/xff" --pager=never --man > "${XFF_PATH_MAN}/xff.1"

# Install xff_full.
curl -fLO "https://github.com/mboworks/xff/releases/download/${XFF_VERSION}/xff_full-linux-x86_64"
grep ' xff_full-linux-x86_64$' SHA256SUMS | sha256sum -c -
install -m 0755 xff_full-linux-x86_64 "${XFF_PATH_BIN}/xff_full"
"${XFF_PATH_BIN}/xff_full" --pager=never --man > "${XFF_PATH_MAN}/xff_full.1"

Install on macOS:

XFF_VERSION=v0.3.7
XFF_PATH_BIN="${HOME}/.local/bin"
XFF_PATH_MAN="${HOME}/.local/share/man/man1"
XFF_PATH_TEMP="$(mktemp -d "${TMPDIR:-/tmp}/xff-install.XXXXXX")"
trap 'rm -rf "${XFF_PATH_TEMP}"' EXIT
mkdir -p "${XFF_PATH_BIN}"
mkdir -p "${XFF_PATH_MAN}"
cd "${XFF_PATH_TEMP}"
curl -fLO "https://github.com/mboworks/xff/releases/download/${XFF_VERSION}/SHA256SUMS"

# Install xff.
curl -fLO "https://github.com/mboworks/xff/releases/download/${XFF_VERSION}/xff-macos-arm64"
grep ' xff-macos-arm64$' SHA256SUMS | shasum -a 256 -c -
install -m 0755 xff-macos-arm64 "${XFF_PATH_BIN}/xff"
"${XFF_PATH_BIN}/xff" --pager=never --man > "${XFF_PATH_MAN}/xff.1"

# Install xff_full.
curl -fLO "https://github.com/mboworks/xff/releases/download/${XFF_VERSION}/xff_full-macos-arm64"
grep ' xff_full-macos-arm64$' SHA256SUMS | shasum -a 256 -c -
install -m 0755 xff_full-macos-arm64 "${XFF_PATH_BIN}/xff_full"
"${XFF_PATH_BIN}/xff_full" --pager=never --man > "${XFF_PATH_MAN}/xff_full.1"

Release resources