Skip to content

Finish GitHub migration: librtbit fails to build — sibling v0.1.0 tags point at AusAgentSmith-org (diamond dependency) #4

Closed

Description

@thedancingdeveloper

Context

The librtbit crate family is being migrated off the self-hosted Forgejo instance (http://100.92.54.45:3002/indexarr/…) to GitHub sources. Leaf/mid crates are done — e.g. librtbit-upnp-serve and librtbit-lsd were migrated to GitHub git deps and build green on CI. librtbit itself (the integrator) does not migrate mechanically.

Problem

Repointing librtbit's 11 internal git deps from Forgejo to GitHub leaves it unbuildable under either pinning strategy:

  • Pin to tag = "v0.1.0" (GitHub URLs): 73 compile errors from a diamond dependency. librtbit pulls librtbit-core from github.com/TheDancingDeveloper-org/librtbit-core.git?tag=v0.1.0, while sibling v0.1.0 tags still declare their deps against the older github.com/AusAgentSmith-org/... org (repos went AusAgentSmith-org → Forgejo → TheDancingDeveloper-org). Same commit SHA, two source URLs → Cargo compiles two librtbit-core crates → incompatible Id20/Id<N> types.

    source = "git+https://github.com/AusAgentSmith-org/librtbit-core.git?tag=v0.1.0#4de7c0b…"
    source = "git+https://github.com/TheDancingDeveloper-org/librtbit-core.git?tag=v0.1.0#4de7c0b…"
    

    (e.g. librtbit-dht @ v0.1.0 declares librtbit-core = { git = ".../AusAgentSmith-org/librtbit-core.git", tag = "v0.1.0" }.)

  • Track sibling main (no tag): no diamond (mains are consistently on TheDancingDeveloper-org), but sibling APIs have drifted past what librtbit's source targets — e.g. TrackerComms::start() gained udp_tracker_client and a TrackerStatusRegistry argument. librtbit's source (src/session/{mod,types,peer_sources}.rs, tracker wiring) needs updating.

Options

  1. Re-cut the v0.1.0 tags on every sibling repo so their deps reference TheDancingDeveloper-org (collapses the diamond; librtbit source unchanged). Cleanest end-state; touches release tags across ~10 repos.
  2. Track main + update librtbit source to the current sibling APIs. Keeps a single source org; real (bounded) dev work + tests.
  3. [patch] redirect AusAgentSmith-org/* → TheDancingDeveloper-org/* in librtbit as a stopgap while (1)/(2) is decided.

Blocks

  • librtbit#3 (ci: adopt org runner-policy gate) — its required Build & Test check can't pass until librtbit builds.

Done already

  • librtbit-upnp-serve and librtbit-lsd migrated to GitHub sources and merged.

Filed while working through the CI backlog.

Activity

  1. thedancingdeveloper commented on Aug 24, 2026

    @thedancingdeveloper
    CollaboratorAuthor

    Resolved by #5 (merged). Executed the re-cut-v0.1.0-tags strategy: all 8 sibling v0.1.0 tags now reference TheDancingDeveloper-org (diamond eliminated), librtbit repointed to GitHub tag=v0.1.0 with no source change, plus 7 pre-existing clippy fixes to pass Build & Test. librtbit main is now Forgejo-free and builds green.

    Also corrected this repo's branch protection required check from CI / Build & Test to Build & Test (it never matched the actual check context, blocking all merges) — same class of misconfig as TheDancingDeveloper-org/librtbit-clone-to-owned#3.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions