Automic VaultAutomic Vault

brew

Install h2spec with Homebrew, Nix

Conformance testing tool for HTTP/2 implementation. Version 2.6.0 via Homebrew; verified from local package data.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install h2spec

local Homebrew formula metadata

Linux

Nixverified · 92%
nix profile install nixpkgs#h2spec

nixpkgs package indexes · pkgs/by-name/h2/h2spec/package.nix · source: api.github.com

overview

Package summary

Conformance testing tool for HTTP/2 implementation

Commands and aliases

  • h2spec

history

Project history and usage

h2spec is a Go command-line conformance tester for HTTP/2 implementations. It became a standard developer tool because it translates the protocol rules in RFC 7540 and HPACK rules in RFC 7541 into runnable test cases against real servers.

Project history

The repository was created in August 2014, during the final stretch of HTTP/2 standardization. The first GitHub release, v0.0.1, was published in December 2014 as an alpha release, and rapid 0.0.x releases followed with TLS, stream-state, frame, and timeout test coverage.

Version 1.0.0 was published in May 2015, shortly after the publication of RFC 7540 and RFC 7541. Later 1.x releases added HPACK-related tests, section-specific checks, JUnit reporting, performance improvements, and more detailed error handling.

Version 2.0.0 in January 2017 refactored the test cases, added RFC 7541 HPACK tests, added HTTP/2 server tests, dry-run mode, individual test-case execution, and verbose logging. Subsequent 2.x releases tracked Go toolchain changes and fixed conformance details around GOAWAY, frame lengths, HPACK strings, path selection, and TLS cipher selection.

Adoption history

h2spec's adoption came from implementers needing an independent executable check for HTTP/2 behavior. The 2015 HTTP Workshop presentation by Moto Ishizawa described the goal as sharing test cases because HTTP/2 implementations are hard to test.

The tool appears in official and community workflows for server and library validation because it can be installed as a binary, run from Docker, or built from source. Homebrew and Nix packaging made it easy to use in local development and CI jobs.

How it is used

h2spec targets a host and port, optionally over TLS, and can run the entire suite or a single spec section such as `http2/6.3`. Its supported spec IDs include `http2`, `hpack`, and `generic`, and it offers strict mode for SHOULD-level requirements plus JUnit output for CI reporting.

Package users typically run it against a local web server, proxy, HTTP/2 library example server, or appliance endpoint to catch protocol-state, frame-format, stream, HPACK, or error-handling mistakes.

Why package nerds care

h2spec matters because it turned an RFC-reading task into a repeatable CLI check. For package maintainers, it is a small but high-leverage tool: it can validate HTTP/2 support in servers such as H2O, HAProxy, nginx builds, language libraries, and reverse proxies without embedding a full benchmark or browser stack.

Its release history is also a useful map of HTTP/2 implementation pain points: stream states, SETTINGS, GOAWAY, HPACK, TLS, headers, padding, and CI-friendly reporting all show up as packageable conformance concerns.

Timeline

  • 2014: Repository created and v0.0.1 alpha released.
  • 2015: v1.0.0 released after HTTP/2 and HPACK RFC publication.
  • 2015: HTTP Workshop presentation described h2spec as a shared conformance-test tool.
  • 2017: v2.0.0 refactored test cases and added HPACK, dry-run, and individual-test execution.
  • 2020: v2.6.0 release built with Go 1.14 and refined DATA-frame validation and reports.

Related projects

  • Related projects include H2O, nghttp2, HAProxy, HTTP/2 libraries in language ecosystems, the IETF HTTP working group specifications, RFC 7540, RFC 7541, and HPACK test-case collections.

security posture

Risk level: blue

broad file, network, media, or database tool signal.

Risk classifier

blue risk · medium confidence · tool

Why

  • broad file, network, media, or database tool signal

Signals

  • text:http

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Homebrew bottle metadata is available for 13 platform targets.
  • Build metadata lists 1 build dependencies.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

executables

Installed executables

CommandKindExposureNote
h2speccliglobal executable

freshness

Version and freshness

These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.

page generated2026-07-08
manager version2.6.0
manager updated
local dataok
upstreamnot checked
latest detectednot detected

https://github.com/summerwind/h2spec

install metadata

Package metadata

Package keybrew:h2spec
Version2.6.0
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/h2spec
Homepagehttps://github.com/summerwind/h2spec
Repositoryhttps://github.com/summerwind/h2spec
Upstream docshttps://github.com/summerwind/h2spec#readme
LicenseMIT
Source archivehttps://github.com/summerwind/h2spec.git
Build dependenciesgo
Bottleavailable (on arm64_big_sur, arm64_linux, arm64_monterey, arm64_sequoia, arm64_sonoma, arm64_tahoe, arm64_ventura, big_sur, catalina, monterey, sonoma, ventura, x86_64_linux)
Homebrew post-installnot defined
Servicenone declared

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Nameh2spec
Version Scheme0
Revision0
Head VersionHEAD
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyno
URL Keys
  • head
  • stable

source database matches

Other package-manager records

Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.

Nix95%

h2spec

nix profile install nixpkgs#h2spec
  • normalized package name match
  • Matched by: H2spec
nixpkgs package indexes · api.github.com · nixpkgs package indexes: pkgs/by-name/h2/h2spec/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Used sources

  • Geiger risk classifier
  • Nucleus package database
  • av.db category and tag curation
  • cross-ecosystem install command graph
  • curated package history
  • external package-manager database matches
  • package relationship graph
  • package version freshness
  • package-page enrichment