Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 20 additions & 20 deletions HISTORY.asc
Original file line number Diff line number Diff line change
@@ -1,5 +1,18 @@
STABLE
------
2.2.0
-----
== Add `check-stale-expected` to catch orphaned test/expected files
`make test` now fails if `test/expected/*.out` (or `test/build/expected/*.out`)
has no corresponding `test/sql/*.sql` (or `test/build/*.sql`). If your project
has genuinely stale expected-output files sitting around, `make test` will
newly fail until they're removed. pg_regress's alternate expected-output
files (`test_0.out` .. `test_9.out`) are recognized and not flagged as stale.

== Rename `EXTENSION_VERSION_FILES` to `EXTENSION__CURRENT_VERSION__FILES`
The old name implied it listed every version file for an extension; it
actually only ever holds the current/most-recent one per extension. If your
Makefile references `EXTENSION_VERSION_FILES` directly (e.g. to add extra
dependencies to `DATA`), update it to `EXTENSION__CURRENT_VERSION__FILES`.

== Add `make pgxntool-version` to print the embedded pgxntool version
There was no way to tell which pgxntool version a project had embedded via
`git subtree` short of digging through git history. `make pgxntool-version`
Expand All @@ -8,17 +21,16 @@ first line of `pgxntool/HISTORY.asc` -- the same line the release process
stamps with the version number. The line is rejected unless it's `STABLE`
or a plain `X.Y.Z` version (digits only, no pre-release suffixes).

== Add `PGXN_REMOTE` to override the remote used by tag/rmtag/forcetag/dist
These targets hardcoded the `origin` remote, silently re-tagging the wrong
repository for maintainers whose `origin` is a personal fork. Defaults to
`origin`, so existing behavior is unchanged unless you set it.

== Fix `make pgtle PGTLE_VERSION=X` generating all versions instead of one
`base.mk`'s `pgtle` target never passed the `PGTLE_VERSION` make variable
through to `pgtle.sh --pgtle-version`, so it silently generated all pg_tle
version ranges regardless of the value given on the command line.

== Rename `EXTENSION_VERSION_FILES` to `EXTENSION__CURRENT_VERSION__FILES`
The old name implied it listed every version file for an extension; it
actually only ever holds the current/most-recent one per extension. If your
Makefile references `EXTENSION_VERSION_FILES` directly (e.g. to add extra
dependencies to `DATA`), update it to `EXTENSION__CURRENT_VERSION__FILES`.

== Fix `pgtle.sh` rejecting non-numeric version aliases like `stable`
`extract_version_from_filename()` required every version segment to start
with a digit, so extensions using a persistent `stable` pseudo-version
Expand All @@ -32,18 +44,6 @@ by a separate `>>` append, so a rule that fired more than once (e.g.
overlapping `make` processes) doubled the file's content. Now uses a single
atomic redirect.

== Add `check-stale-expected` to catch orphaned test/expected files
`make test` now fails if `test/expected/*.out` (or `test/build/expected/*.out`)
has no corresponding `test/sql/*.sql` (or `test/build/*.sql`). If your project
has genuinely stale expected-output files sitting around, `make test` will
newly fail until they're removed. pg_regress's alternate expected-output
files (`test_0.out` .. `test_9.out`) are recognized and not flagged as stale.

== Add `PGXN_REMOTE` to override the remote used by tag/rmtag/forcetag/dist
These targets hardcoded the `origin` remote, silently re-tagging the wrong
repository for maintainers whose `origin` is a personal fork. Defaults to
`origin`, so existing behavior is unchanged unless you set it.

== Add include guard to base.mk
`base.mk` could end up included twice in one `make` run (for example, an
extension's own `.mk` module includes it in addition to the Makefile's own
Expand Down
Loading