๐ Features
- Add EnvironmentVersions resource
- Raise a clear error when a MySQL adapter is configured
- Add tri-state log_otel_enabled configuration
- Add OpenTelemetry log appender setup
- Add trace-aware JSON log formatter
- Wire OTel appender and trace-aware JSON formatter into config
- Add endpoint to get versions released or deployed
๐ Bug Fixes
- Require stringio in the configuration docs generator
- Use semantic_logger JSON helper for trace-enriched log output
- Defer debug log string interpolation in pact publish
- (matrix) Honour use_case_sensitive_resource_names when resolving selectors
- Escaping for the XSS findings, regex safety for the ReDoS findings
- SQL injection vulnerability
๐ Refactor
- Remove MySQL strict-mode handling from DB connection setup
- Remove MySQL-specific query and upsert branches
โก๏ธ Performance
- (matrix) Flatten selector union to prevent quadratic query nesting
- (matrix) Filter matrix rows by the already-resolved version ids
๐จ Styling
- (matrix) Build the baseline name lists the idiomatic way
๐ Documentation
- Remove MySQL references
- Document log_otel_enabled configuration
- Describe the pull request release process
๐งช Testing
- Unskip MySQL-only pending tests and drop MySQL comments
- Fix idempotency spec to avoid loading absent OTel gem
- (matrix) Add query-profiling baseline tooling
- (matrix) Make the query baseline reproducible enough to diff
- (matrix) Add a baseline shape for can-i-deploy at integration scale
- (matrix) Pin the resolved and SQL-derived version ids as equivalent
- Cover the tag name as a literal string when deleting a tag
๐ฆ Other
- Remove unused triage board workflow
๐ ๏ธ Miscellaneous Tasks
- Remove mysql2 gem
- (ci) Remove MySQL job, tooling, and config
- Remove remaining MySQL references from Dockerfile, comment, and backwards-compat Gemfile
- Reject blank pacticipant names in pact publish validation
- Require Ruby 3.2+ for semantic_logger v5
- Delete stale branches first
- Select the local Postgres version with a single variable
- Align changelog heading levels with git-cliff's
- Add git-cliff config and the release script
- (ci) Release the gem by merging a pull request
- (ci) Reduce CI on draft PRs
- (ci) Rebase when conflicted only