Skip to content

Use the _PGXNTOOL_/_ prefix for internal test-gate variables and targets - #130

Merged
jnasbyupgrade merged 7 commits into
Postgres-Extensions:masterfrom
jnasbyupgrade:rename-check-test-install-error-stop-script
Oct 7, 2026
Merged

jnasbyupgrade merged 7 commits into
Postgres-Extensions:masterfrom
jnasbyupgrade:rename-check-test-install-error-stop-script

Conversation

@jnasbyupgrade

@jnasbyupgrade jnasbyupgrade commented Oct 7, 2026 •

Copy link
Copy Markdown
Contributor

Rename the internal pieces of the test/install and stale-expected gates so their names mark them as internal, matching the _PGXNTOOL_ convention:

  • _CHECK_TEST_INSTALL_ERROR_STOP_SCRIPT -> _PGXNTOOL_CHECK_TEST_INSTALL_ERROR_STOP_SCRIPT (new this cycle, so no HISTORY.asc entry)
  • pgxntool_validate_choice (new this cycle) -> _pgxntool_validate_choice
  • check-stale-expected -> _check-stale-expected and check-test-install-error-stop -> _check-test-install-error-stop. Both are wired into TEST_DEPS and never meant to be invoked directly, and the _ prefix also keeps them out of make list. check-stale-expected shipped in 2.3.0, so the existing STABLE _PGXNTOOL_ rename entry in HISTORY.asc now mentions it.

.claude/CLAUDE.md now spells out the convention:

  • PGXNTOOL_ is a user-facing override point.
  • _PGXNTOOL_ (and _-prefixed targets) is internal-only.
  • Older unprefixed internal variables stay as they are, because consumers may reference them.

README.html is regenerated. It was also missing the check-duplicate-docs section.

Merge order: this renames names that pgxntool-test's existing tests reference, so no single merge order is safe. Land it back-to-back with the paired pgxntool-test PR, and ideally before the next release so the misnamed variable never ships.

Related pgxntool-test PR: Postgres-Extensions/pgxntool-test#97

🤖 Generated with Claude Code

jnasbyupgrade and others added 3 commits October 7, 2026 15:39
…INSTALL_ERROR_STOP_SCRIPT

Internal plumbing variables are named _PGXNTOOL_*, so the name itself
marks them as outside the user-facing surface while staying namespaced.
This one is new in the current unreleased cycle, so no HISTORY.asc entry.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
check-stale-expected and check-test-install-error-stop are wired into
TEST_DEPS and never meant to be invoked directly, so rename them to
_check-stale-expected and _check-test-install-error-stop. The _ prefix
also keeps them out of `make list`.

.claude/CLAUDE.md now spells out the naming convention: PGXNTOOL_ is a
user-facing override point, _PGXNTOOL_ (and _-prefixed targets) is
internal-only, and the older unprefixed internal variables stay as they
are because consumers may reference them.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Oct 7, 2026 •

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration
  • Configuration used: Organization UI
  • Review profile: ASSERTIVE
  • Plan: Advanced
  • Run ID: e3285db0-0767-46ee-8de1-9e4410dd88c7

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

…-install-error-stop-script

# Conflicts:
#	README.html
Comment thread .claude/CLAUDE.md Outdated
Comment on lines +36 to +40
- Older unprefixed internal variables (`TEST_DEPS`, `TEST_SQL_FILES`,
`TEST_BUILD_*`, `REGRESS_DBNAME`, `MAJORVER`, `GE91`, `PGXNTOOL_DIR`,
`PGXNTOOL_distclean`, ...) stay as they are, since consumers may
reference them. Don't rename them; give every new internal variable the
`_PGXNTOOL_` prefix.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PGXNTOOL_distclean is miscategorized here. This bullet calls it an "older unprefixed internal variable," but it's neither unprefixed nor internal: it's PGXNTOOL_-prefixed, and README.asc documents it as a supported user-facing extension point (PGXNTOOL_distclean += my_generated_config.mk). That makes it API per this same section's first bullet ("PGXNTOOL_* variables are user-facing override points: document them in README.asc"), not internal plumbing.

Suggest dropping PGXNTOOL_distclean (and likely PGXNTOOL_DIR, which has the same prefix mismatch with "unprefixed") from this list, or rewording the bullet so it doesn't assert these are internal.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 (Claude) Agreed, fixed in acfee29: PGXNTOOL_distclean is removed from the internal list (it is a documented += extension point). PGXNTOOL_DIR stays, since it is genuinely internal; the bullet now says it keeps its bare prefix rather than calling it unprefixed. The paired variable inventory (pgxntool-test#97, aff5fda) now classifies PGXNTOOL_distclean as api.

@github-actions

github-actions Bot commented Oct 7, 2026

Copy link
Copy Markdown

Code review

Found 1 issue:

  • .claude/CLAUDE.md: The new "Naming" section misclassifies PGXNTOOL_distclean as an internal variable, but it's documented in README.asc as a user-facing override point — contradicting the section's own first bullet. (see inline comment)

Everything else checked out: the _PGXNTOOL_/_-prefix renames are applied consistently across base.mk, README.asc, and README.html with no dangling old-name references, and no other CLAUDE.md compliance issues were found.

jnasbyupgrade and others added 3 commits October 7, 2026 17:45
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…-install-error-stop-script

# Conflicts:
#	README.html
It's internal plumbing, so it follows the _pgxntool_ convention.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@jnasbyupgrade
jnasbyupgrade merged commit cca6885 into Postgres-Extensions:master Oct 7, 2026
4 checks passed
@jnasbyupgrade
jnasbyupgrade deleted the rename-check-test-install-error-stop-script branch October 7, 2026 23:15
jnasbyupgrade added a commit to Postgres-Extensions/pgxntool-test that referenced this pull request Oct 7, 2026
)

Related pgxntool PR: Postgres-Extensions/pgxntool#130

Add `test/standard/make-variables.bats`, which lists every make variable
pgxntool's `*.mk` files define (from make's own `-p` database, so no
regex over base.mk) and checks it against
`test/lib/pgxntool-variables.txt`.
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