Changelog.
Every version we have shipped, newest first. Major versions land monthly, patches as needed.
Dublin standby goes live. SOC 2 reports on tap on scale. The redact step gets a deadlock fix that should not have happened, and that two of you hit.
added
- Dublin region (AWS eu-west-1) as the warm standby of Frankfurt. Failover under three seconds.
- SOC 2 Type II reports available on the scale plan, on request, no NDA.
- GitHub events source: full pull request, issue, and release coverage.
- BigQuery destination (warehouse.bq). Schema sync runs on each deploy.
- Signed DPA on the team plan, not just scale. The PDF is in the dashboard.
changed
- Entity store retention is now until-deleted on paid plans (one month on free).
- Rate limit ceiling on starter doubled to 100 rps burst, 25 rps sustained.
- p50 ingest latency lowered from 110ms to 76ms across both regions.
- YAML schema validator now reports the failing field path, not just the line.
fixed
- Rare deadlock in the redact step when two policies matched the same field path.
- SDK retry double-counted events against your monthly cap on transient 502s from intermediate proxies.
- Stripe source skipped invoice.finalized when the customer was null. It does not anymore.
PII redaction goes per-destination. The classify step gets a payload-hash cache that pays for itself in a week.
added
- Per-destination redaction policies in pipeline YAML.
- Payload-hash cache on classify, opt-in per pipeline, TTL configurable.
- Python SDK (sdk.py), feature parity with the TypeScript SDK.
- Telegram destination.
- Dead-letter queue browser in the dashboard.
changed
- Classify timeout default lowered from 10s to 4s.
- SDK now buffers events in memory across short network blips (configurable, off by default).
- Pipeline YAML rejects unknown keys instead of silently ignoring them.
deprecated
- Global redaction policy (top-level redact: in the YAML). Use per-destination policies instead. Removal scheduled for v0.6.
fixed
- Schema mismatches now dead-letter cleanly instead of dropping silently with a warning log.
- Webhook destination retry now respects Retry-After headers instead of using its own backoff.
First hosted region opens in Frankfurt. The wire format is finalized and will not change without a deprecation.
added
- Hosted region in Frankfurt (Hetzner). All ingest, processing, storage in-region.
- Stripe events source.
- Inbound HTTP webhook source.
- Postgres destination (warehouse.pg).
- Discord destination.
changed
- Pipeline YAML format frozen for v0.x. Breaking changes will ship as v1.0, not as a patch.
- Typed events with optional fields no longer fail the gate when the field is absent.
fixed
- Webhook source no longer requires a JSON body when a body is not sent.
First public draft. The pipeline runs five steps; the SDK ships. Read the RFC.
added
- TypeScript SDK (@ingestlayer/sdk).
- Five-step pipeline: ingest, classify, enrich, redact, route.
- Source: sdk.event.
- Destinations: Slack, HTTP webhook.
Older versions: nothing before v0.1 went out the door. Migration notes for breaking changes ship in the matching blog post and at docs.ingestlayer.com/migrate/<ver>.