# Changelog

All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]

## [0.43.2](https://github.com/cdviz-dev/cdviz-collector/compare/0.43.1...0.43.2) - 2026-06-25

### Added

- *(http)* return 4xx with detail when a webhook event is rejected by

### Fixed

- *(deps)* update cdevents-sdk,...

### Other

- allow explicit version bump by commit message

## [0.43.1](https://github.com/cdviz-dev/cdviz-collector/compare/0.43.0...0.43.1) - 2026-06-21

### Added

- *(http_polling)* add on_status policy to stop loop on definitive

## [0.43.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.42.0...0.43.0) - 2026-06-21

### Added

- *(security)* add prefix/suffix to header value rules

### Other

- *(deps)* update rust crate bytes to v1.12.0 ([#370](https://github.com/cdviz-dev/cdviz-collector/pull/370))
- *(deps)* update actions/checkout action to v7 ([#371](https://github.com/cdviz-dev/cdviz-collector/pull/371))

## [0.42.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.41.0...0.42.0) - 2026-06-17

### Added

- *(http_polling)* [**breaking**] replace request_vrl with VRL request driver

### Fixed

- *(deps)* update
- *(deps)* update rust crate tower-http to 0.7 ([#367](https://github.com/cdviz-dev/cdviz-collector/pull/367))

## [0.41.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.40.0...0.41.0) - 2026-06-12

### Added

- *(skill)* add Claude Code / agent skill for cdviz-collector

### Fixed

- *(Dockerfile)* fix build multiplatform ([#365](https://github.com/cdviz-dev/cdviz-collector/pull/365))
- *(deps)* update rust crate cdevents-sdk to 0.4 ([#364](https://github.com/cdviz-dev/cdviz-collector/pull/364))

### Other

- *(deps)* update rust crate insta to v1.48.0 ([#366](https://github.com/cdviz-dev/cdviz-collector/pull/366))
- gitignore AGENTS, CLAUDE,...
- *(deps)* update rust crate serde_with to v3.21.0 ([#363](https://github.com/cdviz-dev/cdviz-collector/pull/363))
- fix the workflows/release modified without `dist` cli
- [**breaking**] remove transformers submodule and bundled VRL files

## [0.40.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.39.1...0.40.0) - 2026-06-03

### Added

- *(http_polling)* add pagination and Retry-After middleware

### Fixed

- *(deps)* update
- *(deps)* update rust crate opendal to 0.57 ([#360](https://github.com/cdviz-dev/cdviz-collector/pull/360))
- *(sources,config,send)* security hardening and TextLine consistency

### Other

- replace mermaid diagram (failed on GitHub) by an animated gif
- fix syntax README
- update README

## [0.39.1](https://github.com/cdviz-dev/cdviz-collector/compare/0.39.0...0.39.1) - 2026-05-31

### Fixed

- *(deps)* update
- *(config)* accept raw TOML fragments in --set
- *(config)* support opendal 0.56 github service in remote_file_adapter

## [0.39.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.38.0...0.39.0) - 2026-05-31

### Added

- *(sources)* unify parsers and add jsonl/csv_row to CLI source ([#358](https://github.com/cdviz-dev/cdviz-collector/pull/358))

### Fixed

- *(deps)* update rust crate vrl to 0.33 ([#357](https://github.com/cdviz-dev/cdviz-collector/pull/357))
- *(deps)* update rust crate async-nats to 0.49 ([#354](https://github.com/cdviz-dev/cdviz-collector/pull/354))

### Other

- *(deps)* update dependency rust to v1.96.0 ([#356](https://github.com/cdviz-dev/cdviz-collector/pull/356))

## [0.38.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.37.0...0.38.0) - 2026-05-24

### Fixed

- *(deps)* update opentelemetry
- *(deps)* update opendal to 0.56
- *(deps)* update sqlx to 0.9
- *(deps)* update rust crate async-nats to 0.48 ([#348](https://github.com/cdviz-dev/cdviz-collector/pull/348))

### Other

- [**breaking**] disable mega-linter
- *(deps)* update rust crate serde_with to v3.20.0 ([#351](https://github.com/cdviz-dev/cdviz-collector/pull/351))
- *(deps)* update rust crate serde_with to v3.19.0 ([#347](https://github.com/cdviz-dev/cdviz-collector/pull/347))

## [0.37.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.36.0...0.37.0) - 2026-04-28

### Added

- added a deduplicate transformer pipe with FIFO key memory and JSON Pointer path config

## [0.36.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.35.4...0.36.0) - 2026-04-27

### Added

- add support for transformers chain on http sink
- add support for transformers chain on sink debug

### Fixed

- *(deps)* update

### Other

- merge pipes module into transformers
- prepare to use transformers chain on sink like on source
- move `Event` out of `sources` to be shared with `sinks`

## [0.35.4](https://github.com/cdviz-dev/cdviz-collector/compare/0.35.3...0.35.4) - 2026-04-17

### Fixed

- *(deps)* update rust crate vrl to 0.32 ([#340](https://github.com/cdviz-dev/cdviz-collector/pull/340))

### Other

- *(deps)* update dependency rust to v1.95.0 ([#339](https://github.com/cdviz-dev/cdviz-collector/pull/339))

## [0.35.3](https://github.com/cdviz-dev/cdviz-collector/compare/0.35.2...0.35.3) - 2026-04-16

### Other

- update Cargo.lock dependencies

## [0.35.2](https://github.com/cdviz-dev/cdviz-collector/compare/0.35.1...0.35.2) - 2026-04-13

### Fixed

- *(send)* use job's url as subject_id for testsuiterun, taskrun ([#334](https://github.com/cdviz-dev/cdviz-collector/pull/334))

### Other

- *(deps)* update rust crate similar to v3.1.0 ([#336](https://github.com/cdviz-dev/cdviz-collector/pull/336))

## [0.35.1](https://github.com/cdviz-dev/cdviz-collector/compare/0.35.0...0.35.1) - 2026-04-09

### Fixed

- timestamp of the finished event on `send --run` ([#333](https://github.com/cdviz-dev/cdviz-collector/pull/333))
- *(deps)* update ([#332](https://github.com/cdviz-dev/cdviz-collector/pull/332))
- *(deps)* update rust crate similar to v3 ([#329](https://github.com/cdviz-dev/cdviz-collector/pull/329))
- *(deps)* update rust crate async-nats to 0.47 ([#327](https://github.com/cdviz-dev/cdviz-collector/pull/327))

### Other

- *(deps)* update rust crate tokio to v1.51.0 ([#330](https://github.com/cdviz-dev/cdviz-collector/pull/330))

## [0.35.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.34.0...0.35.0) - 2026-03-30

### Added

- `config --check` also compile template (vrl) and can use the base config of every other subcommands ([#326](https://github.com/cdviz-dev/cdviz-collector/pull/326))

### Fixed

- *(send)* enrich testSuiteRun CDEvents with global suite id, uri, and name ([#325](https://github.com/cdviz-dev/cdviz-collector/pull/325))
- *(deps)* update rust crate nom to 0.8 ([#324](https://github.com/cdviz-dev/cdviz-collector/pull/324))
- *(deps)* update rust crate hmac to 0.13 ([#323](https://github.com/cdviz-dev/cdviz-collector/pull/323))
- *(deps)* update rust crate quick-xml-to-json to 0.2 ([#322](https://github.com/cdviz-dev/cdviz-collector/pull/322))

## [0.34.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.33.2...0.34.0) - 2026-03-26

### Added

- *(config)* allow to define config override via `--set` ([#317](https://github.com/cdviz-dev/cdviz-collector/pull/317))

## [0.33.2](https://github.com/cdviz-dev/cdviz-collector/compare/0.33.1...0.33.2) - 2026-03-26

### Other

- [**breaking**] disable `kafka` by default, generate a cdviz-collector version

## [0.33.1](https://github.com/cdviz-dev/cdviz-collector/compare/0.33.0...0.33.1) - 2026-03-25

### Fixed

- *(deps)* update

### Other

- generate linux binary compatible with glibc 2.28 ([#314](https://github.com/cdviz-dev/cdviz-collector/pull/314))
- format

## [0.33.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.32.0...0.33.0) - 2026-03-22

### Added

- add user-agent to http request (default `cdviz-collector/x.y.z`) overridable by config
- allow to log full response on http sink to ease debug
- *(send)* derive context.source from CI env instead of config-time default ([#308](https://github.com/cdviz-dev/cdviz-collector/pull/308))

### Fixed

- normalize customData.testsuiterun.summary

## [0.32.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.31.0...0.32.0) - 2026-03-20

### Added

- support multiple --metadata tested_artifact_id values
- add `send --run testsuiterun_sarif` built-in configuration

### Fixed

- *(sink/http)* compute HMAC signature over the actual wire body
- *(deps)* update

### Other

- eat our own dog-food, use `cdviz-collector send` as part of its own ci

## [0.31.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.30.1...0.31.0) - 2026-03-20

### Added

- `send --run` can be combined with `--data` to override the data_glob (aka) filepattern to process
- `send run` can automaticaly sent `testoutput.published` if testresult_url is defined
- add links from CI env when send run
- *(source)* add http_polling source ([#303](https://github.com/cdviz-dev/cdviz-collector/pull/303))

### Fixed

- use `task_name` metadata to define the name for build-in `send` config
- *(deps)* built-in send transformers emit cdevent v0.5

### Other

- split integration_send_command.rs
- disable `cargo sort` (conflict with some editor formater like tombi)
- add integration tests for `send --run testsuiterun_xxx`
- restructure send.base.toml to allow override of transformer chain + format

## [0.30.1](https://github.com/cdviz-dev/cdviz-collector/compare/0.30.0...0.30.1) - 2026-03-19

### Fixed

- *(deps)* update dependencies & security alert on dependencies ([#302](https://github.com/cdviz-dev/cdviz-collector/pull/302))

### Other

- *(deps)* update rust crate serde_with to v3.18.0 ([#298](https://github.com/cdviz-dev/cdviz-collector/pull/298))
- *(deps)* update actions/create-github-app-token action to v3 ([#299](https://github.com/cdviz-dev/cdviz-collector/pull/299))
- *(deps)* update jdx/mise-action action to v4 ([#300](https://github.com/cdviz-dev/cdviz-collector/pull/300))

## [0.30.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.29.0...0.30.0) - 2026-03-12

### Added

- *(sink/db)* add lazy_connection option, default to eager ([#295](https://github.com/cdviz-dev/cdviz-collector/pull/295))

### Fixed

- building of PURL for oci without namespace (direct or percent encoded) in the name ([#294](https://github.com/cdviz-dev/cdviz-collector/pull/294))

## [0.29.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.28.0...0.29.0) - 2026-03-10

### Added

- accept config file defined with http(s) url
- add `--run` to subcommand `send` to wrap an external process (like running test)
- sources can persist state (eg. latest pull)

## [0.28.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.27.0...0.28.0) - 2026-03-06

### Added

- *(pipeline)* add global transformer chain applied to all sources

### Other

- move transformers module from sources to crate top level
- update README with NATS support

## [0.27.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.26.0...0.27.0) - 2026-03-06

### Added

- transform compare json as "normalized json" ([#286](https://github.com/cdviz-dev/cdviz-collector/pull/286))

### Fixed

- *(deps)* update rust crate vrl to 0.31 ([#284](https://github.com/cdviz-dev/cdviz-collector/pull/284))
- *(deps)* update rust crate cliclack to 0.4 ([#278](https://github.com/cdviz-dev/cdviz-collector/pull/278))

### Other

- *(deps)* update dependency rust to v1.94.0 ([#282](https://github.com/cdviz-dev/cdviz-collector/pull/282))
- *(deps)* update docker/setup-buildx-action action to v4 ([#285](https://github.com/cdviz-dev/cdviz-collector/pull/285))
- *(deps)* update rust crate uuid to v1.22.0 ([#283](https://github.com/cdviz-dev/cdviz-collector/pull/283))
- enhance output of subcommand `config` ([#281](https://github.com/cdviz-dev/cdviz-collector/pull/281))
- *(deps)* update docker/login-action action to v4 ([#279](https://github.com/cdviz-dev/cdviz-collector/pull/279))

## [0.26.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.25.1...0.26.0) - 2026-03-04

### Added

- *(db, clickhouse)* add basic retry with exponential backoff on transient error (eg: network)
- *(db)* add parameters to configure db pool, and default `pool_connections_min` to `0`

### Other

- disable check of formatting from task `lint` and `ci`
- *(header)* add test to check http headers are processed "case insensitive"

## [0.25.1](https://github.com/cdviz-dev/cdviz-collector/compare/0.25.0...0.25.1) - 2026-03-02

### Other

- add test to opendal's parsers
- add edge-cases on vrl
- add unit tests for security/rule.rs and security/signature.rs
- move & rename `filter_http_headers`
- remove deprecated "TODO" comments

## [0.25.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.24.0...0.25.0) - 2026-02-27

### Added

- default `context.source` when not set with value of `metadata.context.source` ([#272](https://github.com/cdviz-dev/cdviz-collector/pull/272))

### Other

- *(deps)* update actions/upload-artifact action to v7 ([#270](https://github.com/cdviz-dev/cdviz-collector/pull/270))

## [0.24.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.23.0...0.24.0) - 2026-02-26

### Added

- add `config` subcommand to help debug
- *(transformer)* improve error reporting for VRL transformer

### Fixed

- *(deps)* update
- change the error message on duplicate error from database sink

### Other

- small improvements
- update cli help
- *(deps)* update rust crate assert2 to 0.4 ([#263](https://github.com/cdviz-dev/cdviz-collector/pull/263))

## [0.23.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.22.0...0.23.0) - 2026-02-17

### Added

- add NATS as source and sink ([#261](https://github.com/cdviz-dev/cdviz-collector/pull/261))

## [0.22.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.21.0...0.22.0) - 2026-02-17

### Added

- allow to configure the capacity if the internal queue (default 1024)
- *(deps)* add support of CDEvents 0.5

### Fixed

- sink drops message on lag instead of stopping
- *(deps)* update usage of assert2

### Other

- update `CLAUDE.md`
- *(deps)* update (cargo) `dist`

## [0.21.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.20.0...0.21.0) - 2026-02-15

### Added

- *(sink)* add a sink for ClickHouse
- *(parsers)* add raw `text` and `text_line` parser support

### Fixed

- *(deps)* update
- *(deps)* update rust crate toml to v1 ([#252](https://github.com/cdviz-dev/cdviz-collector/pull/252))

### Other

- document `autofix` task
- *(deps)* update rust crate uuid to v1.21.0 ([#255](https://github.com/cdviz-dev/cdviz-collector/pull/255))
- *(deps)* update renovatebot/github-action action to v46.1.0 ([#254](https://github.com/cdviz-dev/cdviz-collector/pull/254))
- *(deps)* update rust crate tempfile to v3.25.0 ([#251](https://github.com/cdviz-dev/cdviz-collector/pull/251))

## [0.20.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.19.9...0.20.0) - 2026-02-06

### Added

- add parsers support for `send` subcommand
- add parsers support for `transform` subcommand
- add `tap` and `yaml` (and converter to json) for cli and opendal source
- add `xml` parser (and converter to json) for cli and opendal source

### Fixed

- *(deps)* update dependencies (include security vulnerabilities)

### Other

- *(deps)* update renovatebot/github-action action to v46 ([#246](https://github.com/cdviz-dev/cdviz-collector/pull/246))

## [0.19.9](https://github.com/cdviz-dev/cdviz-collector/compare/0.19.8...0.19.9) - 2026-01-26

### Fixed

- *(deps)* vendor a fork of `reqwest-eventsource`
- *(deps)* update reqwest
- *(deps)* update to rust 1.93
- *(deps)* update rust crate vrl to 0.30
- *(deps)* update rust crate rdkafka to 0.39
- *(deps)* `cargo update`
- *(deps)* update opentelemetry ([#239](https://github.com/cdviz-dev/cdviz-collector/pull/239))

### Other

- add `autofix` task

## [0.19.8](https://github.com/cdviz-dev/cdviz-collector/compare/0.19.7...0.19.8) - 2025-12-20

### Other

- *(deps)* update renovatebot/github-action action to v44.2.0 ([#228](https://github.com/cdviz-dev/cdviz-collector/pull/228))

## [0.19.7](https://github.com/cdviz-dev/cdviz-collector/compare/0.19.6...0.19.7) - 2025-12-16

### Fixed

- *(deps)* update rust crate packageurl to 0.6
- *(deps)* update rust crate vrl to 0.29

### Other

- *(cargo)* reformat (with LSP) and remove deprecated `package.authors`
- *(deps)* update dependency rust to v1.92
- *(deps)* update actions/upload-artifact action to v6 ([#225](https://github.com/cdviz-dev/cdviz-collector/pull/225))
- *(deps)* update renovatebot/github-action action to v44.1.0 ([#224](https://github.com/cdviz-dev/cdviz-collector/pull/224))

## [0.19.6](https://github.com/cdviz-dev/cdviz-collector/compare/0.19.5...0.19.6) - 2025-12-10

### Other

- *(README)* Update and reword (with AI assistance) ([#219](https://github.com/cdviz-dev/cdviz-collector/pull/219))

## [0.19.5](https://github.com/cdviz-dev/cdviz-collector/compare/0.19.4...0.19.5) - 2025-12-10

### Fixed

- speed up e2e test by using `tokio::test(flavor = "multi_thread")`
- use a non static CancelToken to request/notify shutdown

### Other

- *(testkit)* add `testkit::shared_async_resource` macro
- *(deps)* vendor testcontainers-redpanda and upgrade testcontainers version
- *(deps)* upgrade
- *(README)* append download-history charts
- *(deps)* update rust crate derive_more to v2.1.0 ([#216](https://github.com/cdviz-dev/cdviz-collector/pull/216))
- *(deps)* update peter-evans/create-pull-request action to v8 ([#217](https://github.com/cdviz-dev/cdviz-collector/pull/217))

## [0.19.4](https://github.com/cdviz-dev/cdviz-collector/compare/0.19.3...0.19.4) - 2025-12-01

### Fixed

- *(deps)* update rust crate reqwest-retry to 0.8
- *(deps)* update rust crate opendal to 0.55
- *(deps)* update dependencies and related code
- *(deps)* update rust crate cloudevents-sdk to 0.9
- adapt code after deps update
- *(deps)* update rust crate init-tracing-opentelemetry to 0.34

### Other

- by default ignore flakky and too long test
- *(deps)* update actions/checkout action to v6 ([#208](https://github.com/cdviz-dev/cdviz-collector/pull/208))
- *(deps)* update rust crate bytes to v1.11.0 ([#204](https://github.com/cdviz-dev/cdviz-collector/pull/204))
- *(deps)* update rust crate serde_with to v3.16.0 ([#205](https://github.com/cdviz-dev/cdviz-collector/pull/205))
- *(deps)* update renovatebot/github-action action to v44 ([#202](https://github.com/cdviz-dev/cdviz-collector/pull/202))

## [0.19.3](https://github.com/cdviz-dev/cdviz-collector/compare/0.19.2...0.19.3) - 2025-11-05

### Fixed

- *(deps)* update rust crate vrl to 0.28 ([#200](https://github.com/cdviz-dev/cdviz-collector/pull/200))
- *(deps)* update rust crate init-tracing-opentelemetry to 0.33 ([#199](https://github.com/cdviz-dev/cdviz-collector/pull/199))
- *(deps)* update rust to 1.91 & dependencies

### Other

- *(deps)* update actions/upload-artifact action to v5

## [0.19.2](https://github.com/cdviz-dev/cdviz-collector/compare/0.19.1...0.19.2) - 2025-10-17

### Fixed

- generate id & timestamp when defined as `null`
- provide more information on error when parsing json

## [0.19.1](https://github.com/cdviz-dev/cdviz-collector/compare/0.19.0...0.19.1) - 2025-10-16

### Fixed

- use `metadata` from config to initialize extractors

### Other

- add a example for `transform`

## [0.19.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.18.1...0.19.0) - 2025-10-15

### Added

- allow to define metadata as part of extractor (and default `metadata.context.source`)

### Fixed

- *(deps)* update rust crate regex to v1.12.1

### Other

- remove test & task related to transformers (as extracted into an other repository)
- *(deps)* update
- add configuration `http.root_url`
- *(deps)* update rust crate tokio to v1.48.0
- *(deps)* update stefanzweifel/git-auto-commit-action action to v7
- *(deps)* update dependency ubi:mozilla/grcov to v0.10.5
- *(deps)* update renovatebot/github-action action to v43
- *(deps)* update peter-evans/create-pull-request action to v7
- *(deps)* update stefanzweifel/git-auto-commit-action action to v6
- enable release on git tag
- *(deps)* update oxsecurity/megalinter action to v9
- *(deps)* update jdx/mise-action action to v3
- *(deps)* update actions/create-github-app-token action to v2
- *(deps)* update actions/checkout action to v5

## [0.18.1](https://github.com/cdviz-dev/cdviz-collector/compare/0.18.0...0.18.1) - 2025-10-06

### Other

- re-enable transformers as git submodules
- remove transformers
- try to fixe the submodules setup on ci
- Update release-after.yml
- restore transformers as a git submodules (keep the test)

## [0.18.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.17.0...0.18.0) - 2025-10-05

### Added

- [**breaking**] use `/github` as default source for github transformer
- add transformer for argocd event
- *(transform)* support multiple output files per input
- *(vrl)* add PURL helper functions for transformers

### Fixed

- *(deps)* update rust crate vrl to 0.27
- disable the workaround about compilation issue between `time` & `domain`
- *(deps)* update opentelemetry stack
- computation of artifactId PURL for ArgoCD 's application source

### Other

- *(deps)* update dependency rust to v1.90.0
- disable semver_check in release-plz and support for gitmoji

## [0.17.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.16.0...0.17.0) - 2025-09-15

### Other

- extract testkit framework into a local crate
- reduce duplicate code for handling of feature `config_remote`
- embed toml provider for figment
- reformat toml
- [**breaking**] stop building & packaging for musl (issue with rdkafka)

## [0.16.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.15.0...0.16.0) - 2025-09-11

### Other

- [**breaking**] stop building & packaging for musl (issue with rdkafka)
- fix the license of built-in transformer in the README
- replace value of license in the samples of github event

## [0.15.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.14.2...0.15.0) - 2025-09-10

### Added

- *(http)* http sink retries on error
- *(kafka)* add Kafka source and sink

### Fixed

- *(opendal)* filter with 1s delay to avoid missing due to concurrent scan/write
- [**breaking**] sanitize event's id after source's processing

### Other

- update info about kafka support
- *(deps)* update
- [**breaking**] move to from AGPLv3 to ASL 2.0 (Apache License)
- remove opendal's filter from log (unreadable)
- add a framework (testkit) to test chain of 2 connector sink -> source
- format & fix lint
- avoid useless testcase (-10s)
- migrate from rustainers to testcontainers

## [0.14.2](https://github.com/cdviz-dev/cdviz-collector/compare/0.14.1...0.14.2) - 2025-09-06

### Fixed

- metadata in the container image

### Other

- centralize static shutdown hook
- *(deps)* update

## [0.14.1](https://github.com/cdviz-dev/cdviz-collector/compare/0.14.0...0.14.1) - 2025-09-03

### Other

- *(deps)* update
- update license & CLA information

## [0.14.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.13.0...0.14.0) - 2025-08-28

### Added

- [**breaking**] the sink `debug` can log on stdout (new default) or logging. And `json` is new default format
- allow sink `debug` to output event as json

### Fixed

- [**breaking**] the default logging level filter is `error`, support `--quiet`, `-v`
- *(config)* allow to use same feature to configure `send` & `connect`

## [0.13.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.12.1...0.13.0) - 2025-08-27

### Added

- create `context.id` and `context.timestamp` if missing

## [0.12.1](https://github.com/cdviz-dev/cdviz-collector/compare/0.12.0...0.12.1) - 2025-08-27

### Other

- update cli's help

## [0.12.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.11.2...0.12.0) - 2025-08-26

### Added

- add `send` subcommand to push event without curl, openssl,...
- add `--disable-otel` option on cli

### Fixed

- *(deps)* update opentelemetry to 0.30

### Other

- *(deps)* update
- update documentation / sample of `connect.rs` and ``send.rs`
- share pipeline code between `send` and `connect`
- make `-C` option a common global option

## [0.11.2](https://github.com/cdviz-dev/cdviz-collector/compare/0.11.1...0.11.2) - 2025-08-20

### Other

- update Cargo.lock dependencies

## [0.11.1](https://github.com/cdviz-dev/cdviz-collector/compare/0.11.0...0.11.1) - 2025-08-15

### Fixed

- *(deps)* update rust crate vrl to 0.26 ([#134](https://github.com/cdviz-dev/cdviz-collector/pull/134))

### Other

- migrate to dprint to format json, yaml, md
- ignore automatic update on release.yml
- apply clippy suggestion following rust 1.89 upgrade
- switch megalinter to flavor documentation (faster ci)
- *(deps)* update dependencies
- *(deps)* update dependency rust to v1.89.0

## [0.11.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.10.0...0.11.0) - 2025-08-06

### Other

- *(config)* add integration tests for remote file adapter
- [**breaking**] rename the default sink `cdviz_db` to `database`
- disable linter editorconfig-checker

## [0.10.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.9.1...0.10.0) - 2025-08-05

### Added

- [**breaking**] remove the hbs transformer
- *(config)* allow to read "template" from remote file
- propagate opentelemetry trace 

### Other

- build cli instead of "cargo run" for test
- group per transformer
- *(deps)* update and lint
- [**breaking**] change the format of `headers` configuration from array to table
- convert the crate into a library to accelerate integration test
- fix biome's config to not format output

## [0.9.1](https://github.com/cdviz-dev/cdviz-collector/compare/0.9.0...0.9.1) - 2025-07-28

### Fixed

- *(deps)* update rust crate tokio to v1.47.0

### Other

- *(deps)* update rust crate rstest to 0.26

## [0.9.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.8.1...0.9.0) - 2025-07-22

### Added

- allow Sinks to transfert headers from source to destination
- add Server-Sent Event (SSE) as source/extractor
- [**breaking**] add `headers` configuration to validate incoming http request and generate some outgoing request
- add Server-Sent Event (SSE) as sink

### Fixed

- *(deps)* update rust crate init-tracing-opentelemetry to 0.30
- *(deps)* update rust crate opendal to 0.54
- *(deps)* update rust crate tokio to v1.46.0
- *(deps)* update rust crate serde_with to v3.14.0
- *(deps)* update rust crate vrl to 0.25

### Other

- update biome config
- disable some linter
- add AI assitant configuration
- format examples
- add some test
- use `cdviz` schema with sink db (to be aligned with cdviz-db)
- *(deps)* update dependency rust to v1.88.0

## [0.8.1](https://github.com/cdviz-dev/cdviz-collector/compare/0.8.0...0.8.1) - 2025-06-10

### Fixed

- *(deps)* update opentelemetry to 0.29

### Other

- *(deps)* update rust crate proptest to v1.7.0

## [0.8.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.7.6...0.8.0) - 2025-05-28

### Added

- allow opendal extractor & transform command to read headers from sibling file with extension `.headers.json`
- feat!(transform): `transform`'s output is splitted into 3 files `.json`, `.headers.json`, `.metadata.json` (2 latests are optional)
- feat!(github): change the computation of `subject.id`, `context.source`, `customData`,...
- convert github's pull_request events into cdevents changes
- convert some github's branch events into cdevents `branch.created`
- convert github's issue event into cdevents' ticket

### Fixed

- *(kubewatch)* encode_percent of `tag` in `packageId`
- workaround to compile transitive dependency 'oniguruma' with gcc >= 15
- *(deps)* update rust crate vrl to 0.24

### Other

- *(github)* convert sample `xxxx.headers.txt` into `xxxx.headers.json` (ready to be used by transformer)
- [**breaking**] rename `EventSource.header` into `EventSource.headers`
- *(vrl)* rename `base_body` into `body` and avoid reference rename
- reindent vrl
- add sample for github events
- automate obfuscation of sample
- format json samples
- mute warning about duplicate versions of dependencies
- import README into apidoc
- remove concurrency on releasz-plz to fix pre-mature cancellation
- tune trigger of workflow
- tune mise & rust configuration
- *(deps)* update
- replace task `install:rustcomponents` by experimental setting `tools.rust.components`
- format json
- *(github)* allow 1 github event to generate 0-n cdevents
- update mega-linter workflow
- *(deps)* update dependency rust to v1.87.0

## [0.7.6](https://github.com/cdviz-dev/cdviz-collector/compare/0.7.5...0.7.6) - 2025-04-16

### Fixed

- *(deps)* update of cdevents-sdk

## [0.7.5](https://github.com/cdviz-dev/cdviz-collector/compare/0.7.4...0.7.5) - 2025-04-16

### Other

- *(deps)* update dependencies

## [0.7.4](https://github.com/cdviz-dev/cdviz-collector/compare/0.7.3...0.7.4) - 2025-04-08

### Fixed

- add missing header in CORS response

### Other

- use scratch for docker (missing lib seems to be resolved)

## [0.7.3](https://github.com/cdviz-dev/cdviz-collector/compare/0.7.2...0.7.3) - 2025-04-08

### Other

- continue fix/update on release
- try to fix the build/segfault in container
- *(deps)* update deps
- add complementary test about cors

## [0.7.2](https://github.com/cdviz-dev/cdviz-collector/compare/0.7.1...0.7.2) - 2025-04-07

### Other

- try a workaround to build on x86_64 (2)

## [0.7.1](https://github.com/cdviz-dev/cdviz-collector/compare/0.7.0...0.7.1) - 2025-04-07

### Other

- try a workaround to build on x86_64
- *(deps)* update rust crate opendal to 0.53

## [0.7.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.6.4...0.7.0) - 2025-04-07

### Added

- allow CORS on http endpoint

### Fixed

- *(deps)* update rust crate vrl to 0.23

### Other

- update deny rules following update of dependencies `vrl`
- [**breaking**] move to from ApacheLicense v2.0 to AGPLv3

## [0.6.4](https://github.com/cdviz-dev/cdviz-collector/compare/0.6.3...0.6.4) - 2025-04-03

### Fixed

- kubewatch failed to generate valid cdevent (on webhook)

### Other

- try to reduce the "ci" time & re-compilation by using same
- *(deps)* upgrade rust to 1.86.0

## [0.6.3](https://github.com/cdviz-dev/cdviz-collector/compare/0.6.2...0.6.3) - 2025-04-02

### Other

- workaround to avoid expension in cat

## [0.6.2](https://github.com/cdviz-dev/cdviz-collector/compare/0.6.1...0.6.2) - 2025-04-02

### Fixed

- use `RUST_LOG` or `OTEL_LOG_LEVEL` to define log level (default to `info`) when no cli flags is defined

## [0.6.1](https://github.com/cdviz-dev/cdviz-collector/compare/0.6.0...0.6.1) - 2025-04-01

### Other

- upgrade sccache-action to fix the build of release

## [0.6.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.5.1...0.6.0) - 2025-04-01

### Added

- add basic vrl template to transform cloudevent from kubewatch
- add a parser for jsonl
- allow http sink to sign request (same configuration as source)
- feat!(github): change the computation of workflow_xxx ids & name

### Fixed

- MegaLinter apply linters fixes
- pin version of transitive dependency 'time' to allow compilation of domain
- conistency of configuration for  `signature_on`
- *(deps)* update opentelemetry to 0.28

### Other

- update sccache-action (fix error or cache ?)
- use `docker bake` to build & push container
- move `signature` to module `security`
- *(deps)* update to rust 1.85.1
- Add link to documentation site
- *(renovate)* try to disable update of  just lock file
- *(deps)* update dependencies

## [0.5.1](https://github.com/cdviz-dev/cdviz-collector/compare/0.5.0...0.5.1) - 2025-03-07

### Fixed

- *(deps)* update rust crate opendal to 0.52
- *(deps)* update rust crate vrl to 0.22
- *(deps)* update opentelemetry to 0.26
- misconfiguration of the github webhook example

### Other

- *(deps)* update
- *(deps)* update rust crate rstest to 0.25
- *(deps)* update rust crate uuid to v1.15.0
- *(deps)* upgrade to rust 1.85 (edition 2024)
- format code (using rust 1.85)
- *(deps)* update rust crate uuid to v1.14.0
- *(deps)* update rust crate tempfile to v3.17.1
- try to speed-up ci workflow ([#52](https://github.com/cdviz-dev/cdviz-collector/pull/52))

## [0.5.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.4.0...0.5.0) - 2025-02-09

### Added

- `transform`  command check by if a valid cdevent is generated
- include transformer files (vrl) into container

### Fixed

- transformer github_events
- apply `--directory` before loading config files
- *(deps)* update rust crates
- *(deps)* update rust crates
- *(deps)* update rust crate miette to v7.5.0

### Other

- document the task `build:container`
- *(deps)* update crates dependencies
- *(deps)* complete upgrade to rustainers 0.15

## [0.4.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.3.0...0.4.0) - 2025-01-28

### Added

- *(transform)* tool transform support multi-level of folder
- *(config)* allow field of configuration to read from a file

### Fixed

- wrong secret leak

### Other

- start example to convert github events
- try to better format error reported by vrl (in log,...)
- include transformation as part of the test flow
- store examples of github_events (for examples & test)
- release & package on git tag
- *(deps)* update rust crate rustainers to 0.15

## [0.3.0](https://github.com/cdviz-dev/cdviz-collector/compare/0.2.3...0.3.0) - 2025-01-24

### Added

- [**breaking**] transformer template/script should return an array or none/null/nil
- *(webhook)* trace_id reported in json error
- *(security, webhook)* allow to verify (or reject) request against a signature
- *(webhook)* forward http's headers into the pipe
- *(webhook)* enable compression, timeout (3s) and bodylimit (1MB)
- [**breaking**] replace the single http extractor by a webhook

### Fixed

- return UNAUTHORIZE (and not FORBIDDEN) on invalid signature
- gracefull shutdown to close sources & sink on kill/ctrl-c
- content_length was zero for every resources / entry
- use Secret<T> for sensitive configuration
- *(deps)* update rust crate vrl to 0.21
- *(deps)* update rust crate handlebars to v6.3.0
- *(deps)* update rust crate serde_with to v3.12.0
- *(deps)* update rust crate init-tracing-opentelemetry to 0.25

### Other

- [MegaLinter] Apply linters fixes
- add basic test for hbs transformer
- add basic test for base pipe
- add a basic test for sink http
- add a task to estimate "test coverage"
- *(deps)* upgrade to opendal 0.51
- configure rust cli to align with rust-analyzer
- *(webhook)* enable support for multiple compression (gzip, broli, zstd, flat)
- *(deps)* upgrade cloudevents-sdk to 0.8
- *(deps)* upgrade to axum 0.8
- format import/use
- integrate `miette` for error reporting (to cont.)
- *(deps)* pin only major for version >=1.0.0
- fix configuration of release-plz
- complete the rust upgrade to 1.84
- upgrade cargo-dist
- use INTBOT app instead of the pat RELEASE_PLZ_TOKEN
- *(deps)* update dependency rust to v1.84.0
- *(deps)* update rust crate rstest to 0.24
- *(deps)* update rust crate rustainers to 0.13
- *(deps)* commit the Cargo.lock of executable
- capture samples of kubewatch events
- enable renovate as github-action

## [0.2.3](https://github.com/cdviz-dev/cdviz-collector/compare/0.2.2...0.2.3) - 2024-12-12

### Other

- fix release-after
- ci; build container by downloading pre-built binaries (vs build from source)
- try to build rust with the same toolchain
- switch to manual release (for tuning,...)
- reduce the number of call of megalinter (avoid trigger on tag)
- tune dist/release to focus on what is needed (and reduce cost)

## [0.2.2](https://github.com/cdviz-dev/cdviz-collector/compare/0.2.1...0.2.2) - 2024-12-12

### Other

- build & push container after the release
- try to trigger `release.yml` from `release-plz.yml`

## [0.2.1](https://github.com/cdviz-dev/cdviz-collector/compare/0.2.0...0.2.1) - 2024-12-12

### Other

- try to fix concurrent update of rustup
- use a non default GITHUB_TOKEN to trigger workflow
- release v0.2.0

## [0.2.0](https://github.com/cdviz-dev/cdviz-collector/releases/tag/0.2.0) - 2024-12-12

### Added

- add the transformer [Vector Remap Language (VRL)](https://vector.dev/docs/reference/vrl/)
- introduce the special `Pipe` collect_to_vec to use for test
- run transformers from cli on local fs with 3 modes
- support to exclude path_pattern when starts with '!'
- [**breaking**] introduce subcommand into the cli of cdviz-collector
- *(cdviz-collector)* allow to define transformers by reference (name)
- feat!(cdviz-db): use the stored procedure `store_cdevent` instead of direct sql insert
- *(cdviz-collector)* replace "0" by a CID in `context.id`
- add cli options to change the current working directory
- add a sink `folder` to write event into a folder (local, S3, ...)
- *(cdviz-collector)* allow to override configuration's entry with environment variable
- *(cdiz-collector)* allow to embed a defautl configuration with `disabled` sinks and sources

### Fixed

- configuration of deny
- configuration of test db
- minor upgrade and fix of warning
- usage of init_tracing_opentelemetry following upgrade
- *(deps)* update rust crate clap-verbosity-flag to v3
- *(deps)* update opentelemetry to 0.23
- hbs transformer and example
- *(deps)* align version of handlebars and handlebars_misc_helpers
- *(deps)* update rust crate tracing-opentelemetry-instrumentation-sdk to 0.21
- *(deps)* update rust crate opendal to 0.50
- *(deps)* update rust crate init-tracing-opentelemetry to 0.21
- *(deps)* update rust crate axum-tracing-opentelemetry to 0.21
- *(deps)* update rust crate init-tracing-opentelemetry to 0.20
- *(deps)* update rust crate opendal to 0.49 (#101)
- *(deps)* update rust crate handlebars to v6
- *(deps)* update rust crate sqlx to 0.8
- rename 'cargo-binstall' into 'binstall' to use the plugin and not the spcial behavior of mise

### Other

- configure to release for "aarch64-unknown-linux-musl"
- fix linter warning
- update README
- try to fix build
- prepare workflow to release with release-plz + cargo-dist
- import ci, and various shared config from cdviz
- publish container & chart to oci registry with version from from git
- build a multi-platform (x86_64 & arm64) container for cdviz-collector
- migrate from taskfile to `mise run`
- use `"` in `.mise.toml` & switch to `aqua:...task`
- replace home made asdf plugin by aqua and download from github
- rebrand reference from `davidB` by `cdviz-dev` & bump to 0.2.0
- group transformer under dedicated module and features flags for dependencies
- *(ui)* replace `println` by better output with cliclack
- introduce PathExt, to avoid duplication of small function about Path
- add vscode configuration to launch debugger
- rename folder `opendal_fs` into `inputs`  under `examples/assets`
- extract `resolve_transformer_refs`
- Add subcommant "transform" (nothing done)
- *(deps)* update dependency rust to v1.83.0
- replace `this_error` by `derive_more`
- update configuration of cargo-deny (for `all-features`)
- configure clippy more stricly
- *(deps)* update dependencies
- fix alignement of rust version (else break ci)
- *(deps)* update dependency rust to v1.82.0
- format
- *(deps)* bump `serde_with` and the description
- add a default configuration for sink `cdevents_local_json`
- move the sink `http` behind a feature `sink_http`
- *(deps)* update serde_with
- fix typo
- format
- fix security/linter warning
- fix security/linter warning
- use `docker buildx` and explicit platform
- switch to container from scratch
- fix build of container with chainguard
- *(deps)* update rust crate rstest to 0.23.0
- source flow with extractor and transformer (#131)
- add rules about dependencies version, licenses
- *(deps)* downgrade rustainer to avoid dependencies version conflict with opentelemetry.
- avoid conflict between sccache from mise and from github workflow
- *(deps)* update rust crate rustainers to 0.13
- reformat code
- add custom configuration for clippy and rustfmt
- build(deps) upgrade to cdevents-sdk 0.1
- upgrade rust version into container (align with the build stack)
- change the license from AGPL-3.0-or-later to Apache-2.0
- *(cdviz-collector)* use reqwest-middleware with cloudevents
- *(deps)* update rust crate rstest to 0.22.0
- disable run of `check'
- update test to reflect change in  transformer
- *(deps)* upgrade to rust 1.80.1
- 🚧 (cdviz-collector) enhance transformer/executor
- 👷 format build task
- 👷 try to build faster (linker + cache)
- ⬆️ (cdviz-collector) upgrade openetelemetry stack
- ✅ ignore files from demos
- Update Rust crate rstest to 0.21.0
- Update Rust crate handlebars_misc_helpers to 0.16
- ✨  cdviz-collector introduce transformers for opendal source ([#60](https://github.com/cdviz-dev/cdviz-collector/pull/60))
- 💚 fix upgrade to opendal 0.46
- ⬆️  update opendal to 0.46
- 🚧 fix compilation issue on cdviz-collector (2)
- 🚧 fix compilation issue on cdviz-collector
- Update Rust crate rstest to 0.19.0 ([#61](https://github.com/cdviz-dev/cdviz-collector/pull/61))
- Update Rust crate serde_with to 3.8.1 ([#66](https://github.com/cdviz-dev/cdviz-collector/pull/66))
- ✨ (cdviz-collectopr) http sink sends cloudevents [#21](https://github.com/cdviz-dev/cdviz-collector/pull/21) ([#57](https://github.com/cdviz-dev/cdviz-collector/pull/57))
- ✨ (cdviz-collector) opendal source support path's pattern and recursive
- 🔊 (cdviz-collector) add debug log
- Update Rust crate rustainers to 0.12
- Update Rust crate tokio to 1.37
- Update Rust crate clap-verbosity-flag to 2.2.0
- Update Rust crate serde_with to 3.7
- Update Rust crate tokio to 1.36
- 🚨 apply clippy suggestions
- 👷 update ci  to use taskfile and reflect the project split
- ✅ add basic test to write into db
- ⬆️ use rust 1.77.0
- ♻️ migrate froim justfile to taskfile
- ♻️ move all kubernetes/docker code from top level to sub folders
- ♻️ cdviz-collector: move all (rust) code under cdviz-collector folder
- Update Rust crate serde_with to 3.7
- Update Rust crate clap-verbosity-flag to 2.2.0
- Update Rust crate axum-tracing-opentelemetry to 0.18
- Update axum-tracing-opentelemetry requirement from 0.16 to 0.17
- ✨ cdviz-collector use logfmt as logging format
- 🚨 fix scope of rust's feature flag
- 🚨 apply clippy' suggestions
- 💥 merge cdviz-sensors into cdviz-collector
- 🎨 add missing info, reorder key,...
- 🚧 cdviz-watcher watch local folder
- 🗃️  define a cdevents lake table to store incoming cdevents as json
- ✅ update test for parallele execution
- 📦 deploy postgresql as part of helm chart + setup cdviz-collector to connect to DB
- 🗃️ introduce storage with postgresql in rust code (with sqlx)
- 👷 add kubernetes setup (tools, helm chart, skaffold)
- 🚧 introduce tracing & rebrand `cdviz-svc` into `cdviz-collector`
