Skip to content

Commit

Permalink
Timestamp v1.2.0
Browse files Browse the repository at this point in the history
And update release instructions.
  • Loading branch information
theory committed Dec 5, 2021
1 parent c72a59e commit 6ca7aec
Show file tree
Hide file tree
Showing 7 changed files with 39 additions and 25 deletions.
2 changes: 1 addition & 1 deletion Changes
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Revision history for pgTAP
==========================

1.2.0
1.2.0 2021-12-05T18:08:13Z
--------------------------
* Made the description field optional in `has_view()` and `hasnt_view()` when
specifying schema (#230). Thanks to Godwottery for the patch!
Expand Down
8 changes: 4 additions & 4 deletions META.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"name": "pgTAP",
"abstract": "Unit testing for PostgreSQL",
"description": "pgTAP is a suite of database functions that make it easy to write TAP-emitting unit tests in psql scripts or xUnit-style test functions.",
"version": "1.1.0",
"version": "1.2.0",
"maintainer": [
"David E. Wheeler <david@justatheory.com>",
"pgTAP List <pgtap-users@pgfoundry.org>"
Expand All @@ -25,17 +25,17 @@
"pgtap": {
"abstract": "Unit testing for PostgreSQL",
"file": "sql/pgtap.sql",
"version": "1.1.0"
"version": "1.2.0"
},
"pgtap-core": {
"abstract": "Unit testing for PostgreSQL",
"file": "sql/pgtap-core.sql",
"version": "1.1.0"
"version": "1.2.0"
},
"pgtap-schema": {
"abstract": "Schema unit testing for PostgreSQL",
"file": "sql/pgtap-schema.sql",
"version": "1.1.0"
"version": "1.2.0"
}
},
"resources": {
Expand Down
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -271,7 +271,7 @@ sql/uninstall_pgtap.sql: sql/pgtap.sql test/setup.sql
# TODO: the sed command needs the equivalent of bash's PIPEFAIL; should just replace this with some perl magic
sql/pgtap-static.sql: sql/pgtap.sql.in
cp $< $@.tmp
for p in `ls compat/install-*.patch | sort -rn`; do \
@for p in `ls compat/install-*.patch | sort -rn`; do \
echo; echo '***' "Patching pgtap-static.sql with $$p"; \
sed -e 's#sql/pgtap.sql#sql/pgtap-static.sql.tmp#g' "$$p" | patch -p0; \
done
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
pgTAP 1.1.0
pgTAP 1.2.0
============

[pgTAP](https://pgtap.org) is a unit testing framework for PostgreSQL written
Expand Down
7 changes: 5 additions & 2 deletions contrib/pgtap.spec
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Summary: Unit testing suite for PostgreSQL
Name: pgtap
Version: 1.1.0
Release: 2%{?dist}
Version: 1.2.0
Release: 1%{?dist}
Group: Applications/Databases
License: PostgreSQL
URL: https://pgtap.org/
Expand Down Expand Up @@ -41,6 +41,9 @@ make install USE_PGXS=1 DESTDIR=%{buildroot}
%{_docdir}/pgsql/contrib/README.pgtap

%changelog
* Sun Dec 5 2021 David E. Wheeler <david@justatheory.com> 1.2.0-1
- Update to 1.2.0

* Sat Oct 24 2020 Jim Nasby <nasbyj@amazon.com> 1.1.0-2
- Remove last vestiges of pre-PostgreSQL 9.1
- Use https for URLs
Expand Down
9 changes: 7 additions & 2 deletions doc/pgtap.mmd
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
pgTAP 1.1.0
pgTAP 1.2.0
============

pgTAP is a unit testing framework for PostgreSQL written in PL/pgSQL and
Expand Down Expand Up @@ -8683,11 +8683,16 @@ PostgreSQL. This helps you to understand any side-effects. To see the specifics
for each version of PostgreSQL, consult the files in the `compat/` directory in
the pgTAP distribution.

10 and Up
11 and Up
---------

No changes. Everything should just work.

10 and Down
-----------
* The stored procedure-testing funtions are not available, because stored
procedures were not introduced until 11.

9.6 and Down
------------
* The partition-testing functions are not available, because partitions were
Expand Down
34 changes: 20 additions & 14 deletions release.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,11 @@ Here are the steps to take to make a release of pgTAP:
* Review and merge any appropriate
[pull requests](https://github.com/theory/pgtap/pulls).

* Test on all supported PostgreSQL versions, starting with the latest version
(12) and moving backward in order (9.6, 9.5, 9.4, etc.).
[pgenv](https://github.com/theory/pgenv/) is a handy tool for installing and
switching between versions. For each version, ensure that:
* Make sure that [all tests](https://github.com/theory/pgtap/actions) pass on
all supported versions of Postgres. If you want to run the tests manually,
you can use the [pgxn-utils Docker image](https://github.com/pgxn/docker-pgxn-tools)
or [pgenv](https://github.com/theory/pgenv/) to install and
switch between versions. For each version, ensure that:

+ Patches apply cleanly (try to eliminate Hunk warnings for patches to
`pgtap.sql` itself, usually by fixing line numbers)
Expand Down Expand Up @@ -69,7 +70,7 @@ Here are the steps to take to make a release of pgTAP:
`DOC SANS pgTAP x.xx` section, and then remove the first `<li>` element that
says "pgTAP x.xx".

+ Sanity-check that everything looks right; use `git diff` to make sure
+ Review to ensure that everything looks right; use `git diff` to make sure
nothing important was lost. It should mainly be additions.

+ Commit the changes, but don't push them yet.
Expand All @@ -85,21 +86,26 @@ Here are the steps to take to make a release of pgTAP:
Paste that into the line with the new version, maybe increment by a minute
to account for the time you'll need to actually do the release.

* Commit the timestamp and tag it:
* Commit the timestamp and push it:

git ci -m 'Timestamp v0.98.0.'
git tag -sm 'Tag v0.98.0.' v0.98.0
git ci -m 'Timestamp v0.98.0.'
git push

* Once again make sure [all tests](https://github.com/theory/pgtap/actions)
pass. Fix any that fail.

* Package the source and submit to [PGXN](https://manager.pgxn.org/).
* Once all tests pass, tag the release with its semantic version (including
the leading `v`) and push the tag.

gem install pgxn_utils
git archive --format zip --prefix=pgtap-1.0.0/ \
--output pgtap-1.0.0.zip master
git tag -sm 'Tag v0.98.0.' v0.98.0
git push --tags

* Push all the changes to GitHub.
* Monitor the [release workflow](https://github.com/theory/pgtap/actions/workflows/release.yml)
to make sure the new version is released on both PGXN and GitHub.

* Push the `gh-pages` branch:

git push
git push --tags
git push origin up/gh-pages:gh-pages

* Increment the minor version to kick off development for the next release.
Expand Down

0 comments on commit 6ca7aec

Please sign in to comment.