From 7eb12b9d871618d1467240130bc03c37452183b2 Mon Sep 17 00:00:00 2001 From: Anders Lindh Olsson Date: Thu, 6 Aug 2026 09:35:10 +0200 Subject: [PATCH 1/2] docs: declare the versioned surface `5ff76af` adopted Semantic Versioning by linking the spec, but never said what the public interface is (clause 1). Without that, the image published by `docker.yml` is not covered, and a path rename inside it does not look like a breaking change. The surface declared here is the module together with the image. The wire protocol is left out: it is shared with other implementations, and this repository cannot version it alone. --- CHANGELOG.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 767672d..a0e8a97 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,13 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +The versioned surface is the module together with the container image published to +`ghcr.io/channelfinder/reccaster`. It covers the databases in `db/`, the iocsh +functions the module registers, the installed headers and the library soname, and +the paths and entry point inside the image. A backwards incompatible change to any +of these is a major release. The wire protocol is left out: it is shared with other +implementations, and this repository cannot version it alone. + > The reccaster client previously lived in the `client/` directory of the > [recsync](https://github.com/ChannelFinder/recsync) repository, where > releases 1.0 through 1.9.6 were tagged. See From 025cd9b9f96e576cfa08b49c6e17291c3d4f2b6a Mon Sep 17 00:00:00 2001 From: Anders Lindh Olsson Date: Thu, 6 Aug 2026 09:35:24 +0200 Subject: [PATCH 2/2] docs: cut the 2.0.0 release section Nothing has been tagged since the split, so `ghcr.io/channelfinder/reccaster` publishes only branch tags and downstream consumers can reference nothing but a floating `:master`. Republishing that tag on 2026-08-03 carried the `/recsync` to `/reccaster` path rename from `7d12820` and stopped recsync's integration IOC from initialising. Nothing on their side had changed. The rename is backwards incompatible for image consumers, hence 2.0.0 rather than a minor release. Refs: ChannelFinder/recsync#173 --- CHANGELOG.md | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a0e8a97..ef87c23 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -23,6 +23,21 @@ implementations, and this repository cannot version it alone. > repository, in which some releases contain no reccaster changes. ## [Unreleased] + +## [2.0.0] - 2026-08-07 + +First release carrying changes made since reccaster left the recsync repository, +and the first under Semantic Versioning. The releases up to 1.9.6 describe source +from the combined repository. + +The build paths inside the container image moved from `/recsync` to `/reccaster`, +which breaks anything addressing files in the image by absolute path. A startup +script loading `/recsync/dbd/demo.dbd` has to load `/reccaster/dbd/demo.dbd` +instead, and the binaries are now under `/reccaster/bin/$EPICS_HOST_ARCH`. Nothing +in the module itself changed incompatibly; sites building from source are +unaffected. The major version reflects that rename alone. Moving the repository is +not a versioned change. + ### Added - LICENSE file @@ -131,7 +146,8 @@ No recCaster changes were included in this combined recsync release. This tag is - `SKIPDEMO=YES` build option - Default `RELEASE` configuration -[Unreleased]: https://github.com/ChannelFinder/reccaster/compare/1.9.6...HEAD +[Unreleased]: https://github.com/ChannelFinder/reccaster/compare/2.0.0...HEAD +[2.0.0]: https://github.com/ChannelFinder/reccaster/compare/1.9.6...2.0.0 [1.9.6]: https://github.com/ChannelFinder/reccaster/compare/1.9.5...1.9.6 [1.9.5]: https://github.com/ChannelFinder/reccaster/compare/1.9.4...1.9.5 [1.9.4]: https://github.com/ChannelFinder/reccaster/compare/1.9.3...1.9.4