Skip to content

Adopt standalone CatHub as an optional QsoRipper dependency #541

Description

@rtreit

Parent: #540
Standalone implementation: treitforge/cathub#2

Convert QsoRipper from owning and building CatHub source to consuming CatHub as an optional standalone dependency.

Scope:

  • Remove the in-tree qsoripper-cathub crate from the Rust workspace and normal build output.
  • Remove CatHub-owned configuration samples, implementation documents, and duplicated runtime source.
  • Preserve the unified [cat_hub] compatibility mode while supporting CatHub's standalone configuration path.
  • Resolve CatHub from CATHUB_EXECUTABLE, an explicitly bundled artifact, or PATH.
  • Validate the supported CatHub 0.1.x executable version before launch.
  • Derive readiness from configured Hamlib NET or WinKeyer endpoints.
  • Preserve normal QsoRipper logging when CatHub is absent.
  • Record the external repository and supported protocol version.
  • Retain and verify the temporary WinKeyer protobuf snapshot until both engines consume published CatHub protocol packages.
  • Update integration scripts and documentation.

Acceptance:

  • QsoRipper no longer compiles or publishes CatHub.
  • Normal builds do not require a sibling CatHub checkout or network access.
  • Managed unified and externally managed CatHub configurations are documented and supported.
  • Launcher discovery, version validation, readiness selection, and missing-executable behavior are tested.
  • Rust, .NET, Buf, dependency, coverage, and workflow-lint gates pass.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions