Skip to content

feat: name the platform in the User-Agent - #131

Merged
maddie merged 1 commit into
librespeed:masterfrom
BKPepe:feat/user-agent-platform
Aug 11, 2026
Merged

feat: name the platform in the User-Agent#131
maddie merged 1 commit into
librespeed:masterfrom
BKPepe:feat/user-agent-platform

Conversation

@BKPepe

@BKPepe BKPepe commented Aug 10, 2026

Copy link
Copy Markdown
Contributor

A server's telemetry stores the User-Agent header already, but the client
identifies itself only by name and version, so an operator cannot tell what kind
of machine is measuring against them. Browsers have always reported this.

runtime.GOOS and runtime.GOARCH are compile-time constants, so this costs
nothing:

librespeed-cli/1.0.12 (linux; arm64)

Verified on the wire against a local server that logs the header, and
cross-built for linux/arm64, linux/mips and linux/ppc64le.

It stays coarse on purpose — the kernel version or the hostname would identify
the machine rather than describe it.

A server's telemetry stores the User-Agent header already, but the client only
identifies itself by name and version, so an operator cannot tell which kinds
of machine are measuring against them. Browsers have always reported this.

Append the operating system and architecture, which runtime.GOOS and
runtime.GOARCH give as compile-time constants at no cost:

    librespeed-cli/1.0.12 (linux; arm64)

It stays coarse on purpose. The kernel version or the hostname would identify
the machine rather than describe it, and nothing here needs that.
Copilot AI lite review requested due to automatic review settings August 10, 2026 06:46

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

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.

3 participants