# Changelog This is the changelog for `casual` and all changes are listed in this document. ## [1.8.0] - 2025-08-27 ### Added - common: using epoll on linux for multiplexing ([#89](https://github.com/casualcore/casual/issues/89)) - common: using kqueue for 'select' on BSD plattforms ([#89](https://github.com/casualcore/casual/issues/89)) - file: introduce file reserve mechanism within xa transactions ([#13](https://github.com/casualcore/casual/issues/13)) - cli: suboption cardinality - domain: `domain --boot-strict` -> `domain --boot --strict` - gateway: normalize cli options ([#252](https://github.com/casualcore/casual/issues/252)) - transaction: normalize cli options ([#252](https://github.com/casualcore/casual/issues/252)) - domain: normalize cli options ([#252](https://github.com/casualcore/casual/issues/252)) - service: normalize cli options ([#252](https://github.com/casualcore/casual/issues/252)) - queue: normalize cli options ([#252](https://github.com/casualcore/casual/issues/252)) - service: added `--all` to `--list-instances` to show hidden services - argument: improved --help to print only one level - tools: normalized options for build-server/executable ([#567](https://github.com/casualcore/casual/issues/567)) - domain: --restart-aliases also scale-out to configured ([#215](https://github.com/casualcore/casual/issues/215)) - http: inbound forward service -> send 'raw' http data to service ([#12](https://github.com/casualcore/casual/issues/12)) - xatmi: header functionality for service and tpcall/tpacall ([#12](https://github.com/casualcore/casual/issues/12)) - common: cleanup transaction::ID, transaction::global::ID ([#573](https://github.com/casualcore/casual/issues/573)) - gateway: propagate header in service call request/reply - unittest: moved service stuff from common-unittest to service-unittest - refactoring: move service/server/transaction out of common ([#556](https://github.com/casualcore/casual/issues/556)) - documentation: enable indexing by EU Open Source Software Catalogue - log: simplified logging - removed all verbose - log: reduced the number of log-categories - build: upgrade nginx to 1.28.0 - http: removed possibility to force base64 transcoding over the wire ### Fixes - common: time_point is not logged with iso8601 utc offset in some places ([#552](https://github.com/casualcore/casual/issues/552)) ## [1.7.9] - 2025-07-13 ### Fixes - common: server-service finalize needs to wait for pending calls ([#575](https://github.com/casualcore/casual/issues/575)) ## [1.7.8] - 2025-06-18 ### Fixes - tools: build-server does not generate function name via argument ([#568](https://github.com/casualcore/casual/issues/568)) - common: transaction::global::ID istream asserts on hex <= 64B ([#570](https://github.com/casualcore/casual/issues/570)) ## [1.7.7] - 2025-05-27 ### Fixes - tools: casual-build-resource-proxy doesn't respect --keep-source ([#562](https://github.com/casualcore/casual/issues/562)) - tools: casual-build-resource-proxy fails to compile ([#561](https://github.com/casualcore/casual/issues/561)) ## [1.7.6] - 2025-05-18 ### Fixes - common: service::Lookup does not propagate (current) trid ([#557](https://github.com/casualcore/casual/issues/557)) ## [1.7.5] - 2025-04-24 ### Fixes - service: lookup with no-reply does not reserve instance ([#534](https://github.com/casualcore/casual/issues/534)) - service: call with NOREPLY should not supply current deadline ([#534](https://github.com/casualcore/casual/issues/534)) - xatmi: expose c-api to set/get execution (parent) span ([#550](https://github.com/casualcore/casual/issues/550)) - http: propagate otel span ([#546](https://github.com/casualcore/casual/issues/546)) - http: outbound generate span and propagate `traceparent` as header ([#546](https://github.com/casualcore/casual/issues/546)) - gateway: inbound fails to handle trids that is already branched ([#533](https://github.com/casualcore/casual/issues/533)) - common: execution.context.span should not be default generated ([#544](https://github.com/casualcore/casual/issues/544)) - common: otel span could be generated as value 0 - gateway: add missing messages for the binary dump protocol generator - documentation: missing documentation for domain_discovery_reply_v3 - gateway: outbound does not set otel span in metric event ([#539](https://github.com/casualcore/casual/issues/539)) ## [1.7.4] - 2025-04-07 ### Fixes - gateway: inbound removed trid branch mapping for transaction messages - transaction: used view to removed gtrid - gateway: transaction message reply with origin trid - gateway: compatibility with 1.6 (protocol 1.2) service call ([#533](https://github.com/casualcore/casual/issues/533)) ## [1.7.3] - 2025-01-28 ### Fixes - common: include rapidjson within inline ns for ABI - xatmi: build-server uses [0,1] as values for service visibility ([#506](https://github.com/casualcore/casual/issues/506)) ## [1.7.2] - 2025-01-22 ### Fixes - domain: check if file (with path) exists before spawn ## [1.7.1] - 2025-01-16 ### Fixes - service: simplify removal of reserved instances - queue: better available update during rollback ([#497](https://github.com/casualcore/casual/issues/497)) - service: send potential::Stale instead of rollback to TM - transaction: functionality to handle stale involved resources ([#440](https://github.com/casualcore/casual/issues/440)) - http: exception wrapper -> return code within C-boundary for xatmi call ([#487](https://github.com/casualcore/casual/issues/487)) - common: made header::Field case insensitive equal to key ([#487](https://github.com/casualcore/casual/issues/487)) - queue: use queue error code in api - cli: better error if lookup fails on (en|de)queue ([#463](https://github.com/casualcore/casual/issues/463)) - queue: notify discovery when new queue is created ([#479](https://github.com/casualcore/casual/issues/479)) - service: notify discovery when new service is advertised ([#479](https://github.com/casualcore/casual/issues/479)) - discovery: handle discoverable::Advertised message -> topology::Update ([#479](https://github.com/casualcore/casual/issues/479)) - transaction: reopen resource on resource error ([#476](https://github.com/casualcore/casual/issues/476)) - queue: remove memberships from forward-group - queue: fix forwards ignoring group memberships ([#465](https://github.com/casualcore/casual/issues/465)) - queue: reset queue group metric on startup ([#469](https://github.com/casualcore/casual/issues/469)) - queue: default queue-group alias missing ([#474](https://github.com/casualcore/casual/issues/474)) - queue: manager could have same instance to queue multiple times ([#466](https://github.com/casualcore/casual/issues/466)) - service: update load balancing for concurrent instances ([#468](https://github.com/casualcore/casual/issues/468)) - queue: fix runtime configuration for (en|dis)able (en|de)queue ([#464](https://github.com/casualcore/casual/issues/464)) ## [1.7.0] - 2024-11-26 ### Added - xatmi: add function to reset execution_id from public api ([#239](https://github.com/casualcore/casual/issues/239)) - queue: add --force flag to --remove-message cli ([#267](https://github.com/casualcore/casual/issues/267)) - queue: casual queue --dequeue should take 0..* queue-ids - queue: introduce configurable 'capacity' property to groups ([#232](https://github.com/casualcore/casual/issues/232)) - queue: runtime configuration - queue: local domain enable/disable enqueue/dequeue ([#253](https://github.com/casualcore/casual/issues/253)) - queue: added --list-queue-instances -> where queues reside ([#354](https://github.com/casualcore/casual/issues/354)) - queue: expand group concept to include forwards - configuration: documentation update for group.enabled - configuration: added CLI enable/disable groups - configuration: enabled on internal model server and executable - configuration: moved conf related cli from `domain` to `configuration` ([#112](https://github.com/casualcore/casual/issues/112)) - service: replace `--list-admin-services` for `--list-services -all` ([#426](https://github.com/casualcore/casual/issues/426)) - service: use random distribution for concurrent reservation ([#420](https://github.com/casualcore/casual/issues/420)) - service: service timeout includes pending lookup time - service: show description for instances (remote domain name) ([#353](https://github.com/casualcore/casual/issues/353)) - discovery: enable/disable enqueue/dequeue interdomain ([#253](https://github.com/casualcore/casual/issues/253)) - discovery: prepared new 1.4 protocol version for discovery::Reply - transaction: rename cli option for scaling proxies ([#229](https://github.com/casualcore/casual/issues/229)) - transaction: manager should wait for all spawned RM:s before on-line - transaction: runtime configuration ([#225](https://github.com/casualcore/casual/issues/225)) - transaction: show description for instances (remote domain name) ([#350](https://github.com/casualcore/casual/issues/350)) - code: conform to c++23 - domain: cli add enabled to domain --list-servers/executables - domain: assassination contract lethal or non-lethal ([#304](https://github.com/casualcore/casual/issues/304)) - gateway: honor group memberships on connections ([#323](https://github.com/casualcore/casual/issues/323)) - gateway: runtime configuration - gateway: branch transaction in inbound ([#328](https://github.com/casualcore/casual/issues/328)) - cli: improved `--legend