Skip to content

Derive version from git tags + add ucode --version#219

Open
AarushiShah-db wants to merge 3 commits into
mainfrom
aarushi/git-derived-versioning
Open

Derive version from git tags + add ucode --version#219
AarushiShah-db wants to merge 3 commits into
mainfrom
aarushi/git-derived-versioning

Conversation

@AarushiShah-db

@AarushiShah-db AarushiShah-db commented Jul 16, 2026

Copy link
Copy Markdown
Collaborator

Replaces the static 0.1.0 in pyproject.toml — which never updated, so telemetry reported the same version forever — with a git-derived version via uv-dynamic-versioning.

On a tag the version is the plain tag (e.g. 0.1.0); between tags it carries the commit distance and short hash (e.g. 0.1.0+14.g93986a8), so a reported version maps back to an exact commit for bug reports.

Also adds ucode --version / -V, wired through the existing telemetry.ucode_version() so the CLI and the outbound User-Agent report the same string.

After merge: cut the base version once with git tag v0.1.0 && git push origin v0.1.0. Until the first v* tag exists, the base is 0.0.0.

The desktop app has no --profile/-c flags, so it only reads the root
~/.codex/config.toml. ucode codex-app backs that file up and edits it in
place (distinct provider name so it coexists with the CLI's isolated
profile), then opens the app — prompting to restart if it's already
running. ucode codex-app --restore and ucode revert both undo it.

Co-authored-by: Isaac
A GUI app launched via `open`/`start` doesn't inherit the shell's cwd, so
Codex opened its own default folder instead of where `ucode codex-app` ran.
Pass the cwd through so it opens the right repo.

Co-authored-by: Isaac
Replaces the static `0.1.0` in pyproject.toml (which never updated, so
telemetry reported the same version forever) with a git-derived version via
uv-dynamic-versioning. On a tag the version is the plain tag (e.g. `0.1.0`);
between tags it carries the commit distance and short hash (e.g.
`0.1.0+14.g93986a8`) so a reported version maps back to an exact commit.

Adds `ucode --version` / `-V`, wired through the existing
telemetry.ucode_version() so the CLI and the outbound User-Agent report the
same string.

Cut a release by tagging: `git tag v0.1.0 && git push origin v0.1.0`. Until the
first `v*` tag exists the base is `0.0.0`.

Co-authored-by: Isaac
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant