Skip to content

chore: update references after the linear-cli-ex -> linear-cli / linear-cli -> linear-cli-rb repo renames #80

Description

@bougyman

Background

Both GitHub repos were renamed:

  • rubyists/linear-cli-ex (this repo, the Elixir port) -> rubyists/linear-cli
  • rubyists/linear-cli (the old Ruby CLI, vendored at vendor/ruby-linear-cli) -> rubyists/linear-cli-rb

Local git remotes are already fixed (this repo's origin, and
vendor/ruby-linear-cli's remote in both .gitmodules and its own
checked-out git config) - verified both actually fetch against the
renamed repos, not just relying on GitHub's redirect. This issue is the
rest: every place that still hardcodes the old name.

Verified GitHub does 301-redirect github.com/rubyists/linear-cli-ex ->
github.com/rubyists/linear-cli right now, so nothing is actually broken
today - but redirects aren't permanent (reclaimable if anyone else takes
the old name later) and everything should say what it actually is.

Every hardcoded reference found (grepped app/, this repo's own files,

and the homebrew-tap submodule; app/lib has none - every repo-name-derived
value there is computed from git remote get-url origin at CI/script
time, not hardcoded, so it already follows the remote fix with zero code
changes)

  • install.sh: repo=rubyists/linear-cli-ex (drives the release download
    URL) + state_dir=.../linear-cli-ex (a local state-dir name, not a URL)
  • uninstall.sh: same state_dir name - must change identically to
    install.sh's, since uninstall only works by finding the same manifest
    path
  • Readme.adoc: 9 occurrences - container image paths
    (ghcr.io/rubyists/linear-cli-ex), release download URLs, the git clone URL, and the install.sh/uninstall.sh curl-pipe URLs
  • .github/workflows/main.yaml: one occurrence - the container job's
    saved-image temp tarball filename ($RUNNER_TEMP/linear-cli-ex.tar) -
    purely a local temp filename, cosmetic only, no functional effect
    either way
  • vendor/rubyists-homebrew-tap/Formula/lc.rb: homepage + both release
    download URLs (separate repo - its own commit/PR)
  • vendor/rubyists-homebrew-tap/Readme.adoc: one occurrence
  • CHANGELOG.md: many historical release-please-generated links -
    deliberately excluded, see Decisions below

Decisions

  1. Leave CHANGELOG.md's historical entries alone. They're
    release-please's own generated audit trail of what was true at each
    past release - this repo's own convention (AGENTS.md: "Initial
    Plan... historical snapshot - not edited after the fact") already
    treats history like this as immutable. GitHub's redirect keeps the old
    links working regardless. Future entries release-please generates will
    automatically use the current repo (it reads github.repository from
    the Actions context, which GitHub already updated on rename) - no
    config change needed.
  2. Rename the state_dir now (~/.local/state/linear-cli-ex ->
    ~/.local/state/linear-cli), not kept for backward compat. The tool
    shipped its first real release only a day ago - real installs against
    the old name are minimal, and carrying a mismatched directory name
    forever for a near-zero-adoption compat concern isn't worth it.
  3. ghcr.io/rubyists/linear-cli-ex images stay exactly where they are -
    GHCR packages are namespaced by whatever owner/name was used at push
    time, not auto-renamed alongside a repo rename (unlike github.com repo
    pages, which do redirect). Existing tags remain retrievable at the old
    path permanently; only document/push new tags at
    ghcr.io/rubyists/linear-cli going forward. ci/publish.sh needs no
    code change - IMAGE_NAME already derives from the checkout
    directory's basename, which will already read "linear-cli" the moment
    CI checks out the renamed repo.

Sequencing

  1. install.sh + uninstall.sh (repo=/state_dir= - keep them
    consistent with each other).
  2. Readme.adoc (all 9 occurrences).
  3. .github/workflows/main.yaml's cosmetic tarball filename.
  4. vendor/rubyists-homebrew-tap (its own commit/PR, since it's a
    separate repo): Formula/lc.rb + Readme.adoc, then bump this repo's
    submodule pointer to that commit.
  5. Manually verify: ./install.sh/./uninstall.sh still round-trip with
    the renamed state_dir (same technique as Prefer Docker over Podman in container-image CI scripts #67's verification - a real
    run, not just reading the diff).

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