Changelog

v7.2.1 Release

Security dependency patches and refreshed runtime, tooling, and provider SDK dependencies.

  • security - bump high-severity dependencies (0fde27d, #683)

  • depend on axios ^1.20.0 (ebe2d0b, #684)

  • security - bump follow-redirects and undici (38d8c14, #685)

  • security - bump zod to 4.6.7 (fdaf00b, #686)

  • security - bump markdown-it to 15.0.3 (37b3117, #687)

  • add Drydock review badges to package READMEs (4bffbe8, #681)

Read more →
v7.2.0 Release

Add a retries option on send and refresh runtime and tooling dependencies.

  • add a retries option to send (c22bd58, #678)

    import { Airhorn } from "airhorn";
    
    const airhorn = new Airhorn();
    const template = { content: "Hello <%= name %>" };
    
    // Two extra attempts after a failed provider send. Default is 0.
    const result = await airhorn.sendSMS("+1234567890", template, { name: "Ada" }, {
      retries: 2,
    });
    
    // Or decide the limit from the provider that...
    
Read more →
v7.1.3 Release

Supply-chain hardening and dependency-maintenance patch across all packages. No API or behavior changes.

  • override axios to 1.19.0 to remediate CVE-2025-62718, CVE-2026-42043, and CVE-2026-42044 (4be207b, #634)

  • add SECURITY.md and DEFENSE_IN_DEPTH.md (9fc9c71, #635)

  • record repository lockdown (62f1e25, #650)

  • record lockdown checklist complete (8109d90, #651)

  • record completed npm publishing manuals (7c24d2e, #652)

Read more →
v7.1.2 Release

Dependency-maintenance patch across all packages: refreshes runtime and dev dependencies and makes the release workflow's publish steps uniform. No API or behavior changes.

  • upgrade code quality dependencies: @biomejs/biome 2.5.1→2.5.6, vitest & @vitest/coverage-v8 4.1.9→4.1.10 (140fa0e, #624)
  • upgrade tsdown 0.22.3→0.22.14 and tsx 4.22.4→4.23.1 build tooling (945ab57, #625)
  • upgrade docula 2.1.0→2.2.0 (5ef1297, #626)
Read more →
v7.1.1 Release

Adds the new @airhornjs/pingram provider (SMS, Email, Mobile Push) and refreshes runtime and build dependencies across the workspace. No breaking changes.

  • New provider @airhornjs/pingram — send SMS, Email, and Mobile Push through Pingram with a single API key, plus typed provider-level sendDefaults (templateId, parameters, schedule, and channel content defaults) that merge beneath message-derived values (#618)

    import { Airhorn, AirhornSendType } from...
    
Read more →
v7.0.0 Release

Major release: airhorn requires Node >=22.18.0 and moves to hookified v3; the Twilio provider moves to twilio v6.

  • airhorn now requires Node.js >=22.18.0 (was >=20) and upgrades hookified to v3 (#605, #588) Migration: upgrade your runtime to Node 22.18.0+. Airhorn extends Hookified, so if you rely on its hook/event API surface, review the hookified v3 release notes.
Read more →
v6.0.1 Release
Read more →
v6.0.0 Release
Read more →
v5.2.0 Release
Read more →
v5.1.2 Release
Read more →
v5.1.1 Release
Read more →
v5.1.0 Release
Read more →
v5.0.12 Release
Read more →
v5.0.11 Release
Read more →
v5.0.0 Release
Read more →
v4.1.9 Release
Read more →
v4.1.8 Release
Read more →
v4.1.7 Release
Read more →
v4.1.6 Release
Read more →
v4.1.5 Release
Read more →