Repository navigation
Fix make test failing when test/sql/ does not exist - #133
Merged
jnasbyupgrade merged 1 commit intoOct 7, 2026
Merged
jnasbyupgrade merged 1 commit into
jnasbyupgrade merged 1 commit into
Conversation
`installcheck` has an order-only prerequisite on `$(TESTDIR)/sql/`, but the rule that creates it was spelled `$(TESTDIR)/sql`. Make treats the two as different targets, so a project without a test/sql/ directory failed with "No rule to make target 'test/sql/', needed by 'installcheck'". setup.sh normally creates the directory, which hid this. The rule now uses the same trailing-slash spelling as the prerequisite and as its `test/expected/` and `results/` siblings. Related changes in pgxntool-test: - Add a `make -n installcheck` check against a TESTDIR with no sql/, expected/ or results/ directory Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Important Review skippedAuto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the ⚙️ Run configuration
You can disable this status message by setting the Use the checkbox below for a quick retry:
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. Comment |
Code reviewNo issues found. Checked for bugs and CLAUDE.md compliance. |
jnasbyupgrade
merged commit Oct 7, 2026
51062d3
into
Postgres-Extensions:master
12 of 13 checks passed
jnasbyupgrade
added a commit
to Postgres-Extensions/pgxntool-test
that referenced
this pull request
Oct 7, 2026
Adds coverage for Postgres-Extensions/pgxntool#133. That PR fixes `make test` failing with `No rule to make target 'test/sql/', needed by 'installcheck'` in a project with no `test/sql/` directory.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
make testfailed withNo rule to make target 'test/sql/', needed by 'installcheck'in a project with notest/sql/directory. The rule that creates the directory was spelled$(TESTDIR)/sqlwhileinstallcheck's order-only prerequisite is$(TESTDIR)/sql/, and make treats those as different targets. The rule now targets$(TESTDIR)/sql/, matching itsexpected/andresults/siblings;test-buildis fixed too, since it runsinstallcheckrecursively.setup.shnormally createstest/sql/, which hid this.Merge this first, then Postgres-Extensions/pgxntool-test#100, which tests it.
HISTORY.asc gets a STABLE entry (no issue, so no
Fixesline).Audit
Every spelling of these directories in
base.mkand the.mk/.shscripts was checked. This rule target was the only mismatch. The other slash-less spellings are shell commands in recipes (mkdir -p), variables (TEST_BUILD_SQL_DIR,EXTRA_CLEAN), or script-created directories, not make targets. README.asc and CLAUDE.md mentiontest/sql/only as where tests live; nothing documents the missing-directory case.Testing
pgxntool-test#100 adds a
make -n installcheck TESTDIR=<nonexistent>check totest/standard/base-mk-misc.bats. It fails without this fix; with it, the full suite passes, 316/316, 0 skipped.🤖 Generated with Claude Code