Skip to content

Release Notes - v0.44.0

Title: Headless notifications, safer logging, and Cardano event improvements

Version: v0.44.0

This release adds headless JSON notifications, clearer and safer operational logging, expanded Cardano event matching, more predictable configuration handling, and more resilient release workflows.

  • Added structured key/value logging across components: Adder now emits structured logs through component-scoped loggers across the application and plugins, sanitizes webhook URLs, truncates or redacts FCM tokens, and records payload and response sizes instead of message bodies.

  • Introduced headless JSON notifications: Integrations can consume versioned NDJSON status and notification records through notify-json. The adder notifications validate --config <path> [--json] command checks notification settings, startup validates the chainsync network and custom address, configurations require schemaVersion: 1, and notification dispatch no longer depends on a user interface.

  • Clarified configuration precedence and safe saves: CLI values now override YAML values, and YAML values override environment variables. Atomic configuration saves protect existing files during updates.

  • Enhanced Cardano event matching: Adder now separates Cardano matcher types, supports pool SPO voting procedure matching, and safely handles missing stake credentials.

  • Enabled independent chain rollback notifications: The Chain rollbacks preference now controls rollback notifications separately from other notification categories.

  • Expanded multi-target notifications: Adder routes notifications to multiple targets with target lists, rate limiting, and batching, and migrates legacy filters.

  • Added macOS package installation: Signed and notarized packages include the Adder command-line tool and tray application, installation scripts, and an /usr/local/bin/adder link. Local builds can remain unsigned or use ad hoc signing.

  • Simplified API serving: Adder now uses an HTTP service while preserving /events server-sent events and WebSocket behavior. API documentation uses the updated paths and base path.

  • Refined tray notification rule editing: The tray application now lets operators edit notification rules and preference checkboxes. It saves changes and applies them immediately without restarting Adder, while presenting recoverable errors more clearly.

  • Improved notification delivery: Adder now validates notification credentials and project identifiers, surfaces Firebase Cloud Messaging errors, applies 10-second timeouts, and shuts down notification and push handling cleanly.

  • Strengthened multi-platform image publishing: Container releases now publish a shared image manifest, allowing each supported platform to receive its matching image.

  • Updated DRep event names: Public event type constants now identify DRep registration, update, and retirement events as input.drep-registration, input.drep-update, and input.drep-retirement instead of the former chainsync.drep.* names. Event consumers must use the new values.
  • Outlined troubleshooting paths: A troubleshooting guide now covers connection, configuration, filter, push/FCM, and webhook diagnostics.

  • Expanded event filtering and shutdown handling: Adder now verifies event filter behavior more thoroughly and follows a revised shutdown path for cleaner process termination.

  • Trimmed comma-separated plugin options: Cardano, event, and chainsync plugin options now ignore surrounding whitespace in comma-separated values. The Go directive now targets version 1.26.0.

  • Documented governance event schemas and filters: Governance event formats and filtering behavior now have dedicated documentation, and the README example uses the same guidance.

  • Stabilized macOS and tagged release automation: Release workflows now pin the macOS runner to macos-15, allow independent matrix jobs to finish, separate packaging from signing, and finalize draft releases after partial build failures.

  • Adjusted FreeBSD packaging: FreeBSD releases no longer include the tray application, keeping published packages aligned with platform capabilities.

  • Refined system compatibility libraries: Adder now uses golang.org/x/sys v0.47.0.

  • Refreshed lint automation: The golangci-lint action now uses v9.3.0.

  • Secured container publishing login: The Docker login action now uses v4.6.0.

  • Aligned Cardano data ingestion: Adder now uses gouroboros v0.197.0.

  • Modernized artifact attestations: Release workflows now use actions/attest v4.2.2.

  • Hardened webhook delivery: Adder now handles malformed events without panicking and coordinates shutdown with retries to avoid races.

  • Corrected logger context propagation: Custom logger context now reaches emitted records consistently.

  • Extended Cardano state access: Adder now supports the GetAccountState query, handles operational certificates and Dijkstra redeemers, updates its Dijkstra era and Leios integration, and fixes handling in validation-enabled pipelines: it surfaces an error and skips blocks that did not pass validation.

  • Strengthened Cardano validation: Adder now applies stricter decoding and validation rules, uses upgraded decoding paths to tolerate duplicate pre-Conway MultiAsset map keys and Conway witness tagged-set entries more safely, reports unknown inputs explicitly, and incorporates KES and ledger fixes.

  • Preserved transaction validity bounds: Adder retains transaction validity interval limits and verifies Byron delegation certificate signatures.

  • Accelerated Plutus processing: Adder now uses hardened decoding and evaluation together with performance improvements in its Plutus integration.

  • Protected image handling: Adder now uses golang.org/x/image v0.45.0 and hardened image decoders to process image data more safely.

🧪 Testing, CI, Docs, and Release Tooling

Section titled “🧪 Testing, CI, Docs, and Release Tooling”
  • Upgraded protocol serialization support: Adder now uses protobuf v1.36.12.

  • Revised Java workflow setup: Windows signing and Java workflows now use actions/setup-java v5.7.0.

  • Renewed test and YAML libraries: Adder now uses testify v1.12.1 and yaml.v3 v3.0.5.

  • Improved Go workflow setup: Adder now uses actions/setup-go v7.0.0.

  • Hardened test tooling compatibility: Adder now uses testify v1.12.0 for test execution.

  • Strengthened artifact attestation workflows: Release workflows now use actions/attest v4.2.2.

  • Modernized repository checkout workflows: Adder now uses actions/checkout v7.0.1.

  • Switched Windows signing to Java 21: Windows signing now uses Java 21 instead of Java 17.

  • Raised Telegram integration compatibility: Adder now uses go-telegram/bot v1.23.0.

  • Refined Docker image metadata workflows: Adder now uses docker/metadata-action v6.2.0.

  • Updated Docker build workflows: Adder now uses docker/setup-buildx-action v4.3.0 for container builds.

  • Enhanced Windows artifact testing: Adder now uses actions/upload-artifact v7.0.1, and self-hosted runners require Actions Runner v2.327.1 or later.

  • Renewed Cardano test compatibility: Adder now uses ouroboros-mock v0.16.0 for protocol testing.

  • Expanded library starter examples: The Adder library starter kit now includes three runnable examples, and the README links to each one for direct access.

  • Packaged Windows installers: Adder now provides signed MSI packages for the command-line and tray applications with Start Menu and Add/Remove Programs integration. Local builds can opt out of signing, while release automation publishes the installers.


Doc Holiday logo

Docs authored by Doc Holiday

Edit page

Last updated: