{
  "version": "1.2.1",
  "released": "2026-04-19T00:00:00Z",
  "sha256": {
    "sh":  "96a7d96312f46c991d2e3a7c0e3f3ed0dceaf0a500dcc4aaffacfcb4b523ba12",
    "ps1": "3f8c8a0a92d935874326ebdc8f09cf1dbcd2bfe0680457e16f61d58f167faf35"
  },
  "changelog": {
    "1.0.0": "Initial release — myip, ip, asn, bulk, summarize, classify (v1/v2/v3), speedtest, completion, self-update. POSIX sh + PowerShell 5.1. ipinfo.io-compatible response shape; ISO alpha-2 country codes; ASN prefixes via detailsRaw.",
    "1.1.0": "Add `traceroute <host>` — shells out to system traceroute/tracert with -n/-d, annotates each hop via atlas /api/v2/hop/:ip (PTR + ASN + carrier PoP). NDJSON streaming by default; --max-hops, --no-annotate flags. Graceful fallback to raw hops when /hop/ endpoint is unavailable.",
    "1.2.0": "myip now resolves IPv4 and IPv6 in parallel via ipv4.my.ipinfo.app + ipv6.my.ipinfo.app, returns both as ipv4/ipv6 sub-objects while keeping the legacy top-level fields for drop-in compat. Fixed speedtest jq parse error caused by a shell brace-expansion landmine in the `${var:-{}}` default; speedtest now runs latency + download probes in parallel with a 'warming up edge…' stderr hint on TTY.",
    "1.2.1": "speedtest is now two-phase: a 25 MB calibration probe estimates throughput, then a parallel test runs N concurrent streams sized for the calibrated speed. Tier table picks N: 1 stream <25 Mbps, 2 at 25–50, 4 at 50–100, 6 at 100–500, 8 at 500–1000, 12 at 1–2.5 Gbps, 16 above. Fixes single-stream undersampling on residential gigabit links. New flags: --streams <N> to force parallelism, --no-calibrate to skip phase 1. Output adds streams, per_stream_mb, calibration{} fields under download. PowerShell 7+ uses ForEach-Object -Parallel with HttpClient streaming; PS 5.1 falls back to sequential and warns."
  }
}
