From 3fdc90839853de8b02480dabe8959003cf056644 Mon Sep 17 00:00:00 2001 From: jnasbyupgrade Date: Mon, 10 Aug 2026 17:07:14 -0500 Subject: [PATCH] Add repo-specific RELEASE.md: tag is a branch here, no stable/verify-results This repo vendors a much older, subtree-vendored pgxntool whose make tag creates a git branch (not a tag) and predates the stable pseudo-version and verify-results mechanisms the org's shared ../ai/RELEASE.md assumes. Following that doc verbatim here would be actively wrong, so document the concrete deviations locally and point to the shared doc for everything else. --- RELEASE.md | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 RELEASE.md diff --git a/RELEASE.md b/RELEASE.md new file mode 100644 index 0000000..c94739d --- /dev/null +++ b/RELEASE.md @@ -0,0 +1,50 @@ +# RELEASE.md (trunklet-specific notes) + +See [`../ai/RELEASE.md`](https://github.com/Postgres-Extensions/ai/blob/main/RELEASE.md) +for the org's shared release process. It does **not** apply verbatim here: +this repo vendors a much older, subtree-vendored copy of `pgxntool` +(squashed in via `git subtree`, not the submodule other repos use) whose +`make tag`/`make dist` predate several assumptions that doc makes. + +## `make tag` creates a git branch, not a tag + +In this repo's vendored `pgxntool/base.mk`, `tag` is: + +``` +tag: + git branch $(PGXNVERSION) + git push --set-upstream origin $(PGXNVERSION) +``` + +This is a real, current behavior here, not just outdated wording in +`pgxntool/README.asc` (which also still describes it this way — the org +doc's "Notes / gotchas" section anticipates exactly this situation). Every +past release (`0.0.1` through `0.3.3`) is a branch on `origin`, matching the +version number exactly. **There are no git tags in this repo at all** — +`git tag -l` and `git ls-remote --tags` are both empty. `rmtag`/`forcetag` +operate on branches the same way. `make dist` still works as documented +upstream (`git archive` of that ref), since `git archive` accepts a branch +name just as well as a tag. + +Do not expect `git tag ` to find anything, and do not "fix" this +by hand-creating a real tag — that would silently diverge from every prior +release's convention in this repo. + +## No `stable` pseudo-version + +This repo's vintage of `pgxntool` predates the `stable` pseudo-version +mechanism described in `../ai/RELEASE.md`. `default_version` in +`trunklet.control` and `version` in `META.in.json` are always a real +released version number (currently `0.3.3`), never the literal string +`stable`. Skip every step in the shared doc that references `stable` +(the versioned-install-script/`sql/--*--stable.sql` workflow, and +step 8's "return master to stable"). + +## No `verify-results` target + +This vendored `pgxntool` predates `verify-results` too — it only has +`results` (regenerates expected test output) and `installcheck`, which is +marked `.IGNORE` in `base.mk`. A green `make test`/`make installcheck` here +does **not** guarantee `pg_regress` actually passed — inspect +`test/regression.diffs` directly, or diff `results/` output by hand, rather +than trusting the Make exit code.