~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

New in 8.5 version:

* Added 'postgresql-upgrade <DATADIR>' command.  This is similar to
  'postgresql-setup --upgrade', but is useful to upgrade DATADIR for
  PostgreSQL servers which were run a non-standard way (under non-standard
  user, or without systemd service).  Typical use-case can be to migrate
  database for KDE's Akonadi server;  it is running it's own PostgreSQL server
  with datadir in user's ~/.local/ directory (under user's UID process).

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

New in 8.4 version:

* Reformatted glibc collation warning after pg_upgrade.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

New in 8.3 version:

* postgresql-setup prints warning about possible glibc collation on
  successful upgrade.

* postgresql-setup creates correct 'log_directory' based on PG version
  (the default changed from $datadir/pg_log to $datadir/log in v10).

* Modular PostgreSQL builds can provide/depend on
  postgresql-server(:MODULE_COMPAT_11<some_suffix>) instead of
  postgresql-server(:MODULE_COMPAT_11) to avoid clash with non-modular
  builds.

* Fixed ExecStart= statement in systemd's service files for Software
  Collections where we need to first do `source scl_source COLLECTION ;`
  before we execute postmaster.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

New in 8.2 version:

* %postgresql_tests_* macros now use random port for the test PostgreSQL
  server.  This helps in Koji build system where multiple builds of the
  same package can happen concurrently on one host and using the same
  port would make random build failures.

* If the testing server fails, the %postgresql_tests_* macros print the
  error log out for easier debugging.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

New in 8.1 version:

* Split testing RPM macros into two files;  one is related to build-time
  _testing_ against postgresql server, second is related to building against
  postgresql server (building server modules).

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

New in 8.0 version:

* PostgreSQL on systems with systemd are now configured with
  --with-systemd, which simplifies the start/stop handling (we can
  stop shipping postgresql-ctl wrapper, e.g.).

* systemd service doesn't have the artificial timeout for PostgreSQL
  server start/stop (was 10 minutes before).

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

New in 7.0 version:

* RPM macros file works with SCLs, too.

* New convenience RPM macro %postgresql_module_requires.

* Simplified build against SCLs with --with-scl option.

* New test macro %postgresql_tests_run.

Incompatible changes in 7.0 version

* The %pgtest_init && %pgtest_start renamed to %postgresql_tests_init and
  %postgresql_tests_start.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Bugfixes in 6.0 version

* Dropped dependency on /bin/find utility.

* The postgresql-setup doesn't need root permissions.  It is better to not
  run this script as 'root' user from now.

Incompatible changes in 6.0 version

* The postgresql-setup doesn't support --new-systemd-unit option.  Please use
  postgresql-new-systemd-unit script instead (as 'root').

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Bugfixes in 5.1 version

* The rpm macro directory is automatically detected.

* the sysvinit/systemd systems are now detected

* properly generate manpage with help2man

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Bugfixes in 5.0 version

* postgresql-setup --upgrade now works with "umask & 0004 != 0"

* Fixed semantics of 'redhat_sockets_hack' configuration option.

* The RPM macros file is installed automatically, it provides now
  %postgresql_major, %pgtests_init and %pgtests_start macros.

* Fixed automatic detection of $PGMAJORVERSION.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

New in 4.0 version:

* The postgresql-upgrade package is now optional packaging feature, for the
  postgresql-setup --upgrade scenario it might/might not be needed.

* Additional check for correct postgres's $HOME permissions implemented.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Bugfixes in 3.5 version

* Fix spelling in error message regarding data-dir mountpoint.

* Fix testsuite for SCL.

* Fix documentation regarding --initdb (we require root actually).

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Bugfixes in 3.4 version

* Fix upgrade for non-standard unit names with --unit option.

New in 3.4 version

* Add --upgrade-from-unit option which allows proper selection of
  predecessor service name (when the default detection does not help).

* postgresql-setup now throws warning if the PGDATA directory (or its
  parent directory) is a mountpoint.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Bugfixes in 3.3 version

* The PGPORT/PGOPTS/.. variables should be correctly forwarded down from
  the initstcript into postgresql-ctl.

* Initscript's 'start' function again reports success if daemon is already
  running.

New in 3.3 version

* New option PGSTARTWAIT for sysvinit systems.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

New in 3.2 version

* The --new-systemd-unit option now cleans the recently created drop-in
  directory if something goes wrong.

Bugfixes in 3.2 version

* Fix regression of setting the default pgdata variable for non-default
  unit names.  This broke --new-systemd-unit option and --initdb, because
  the postgresql-setup logic tried to create the data directory on the
  same place as the _default_ unit stores data (instead of explicitly
  asking for --datadir option).

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

New in 3.1 version

* When doing --upgrade, postgresql-setup now guards against upgrading when
  the old postgresql server is still running.

Bugfixes in 3.1 version

* The 'pg_upgrade --link' option is not used for non-in-place upgrades
  scenarios.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

New in 3.0 version

* Use 'pg_upgrade --username' instead of 'pg_upgrade --user' for
  PostgreSQL >= 9.4.

* postgresql-setup now works if postgres user is /bin/nologin

* Legacy scripts are now generated from single template file, also are
  simplified a bit.

* There are now options (by upgrade configuration file) how to upgrade from an
  PG stack running in SCL (Software Collections)

* documentation README.rpm-dist is generated from docbook sources

* The sysvinit support should be OK finally, sysvinit system is now
  automatically detected without --with-sysvinit configure option.

* The starting timeout is now configurable via PGSTARTTIMEOUT.

* Service file and initscript now support running of PostgreSQL extensions
  built against specific software collections, specified by PGSCLS
  environment variable.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

New in 2.0 version

* With configre --with-sysvinit we are able to install sysvinit
  configuration instead of systemd.

* For systemd systems, the "legacy" scripts for 'service postgresql initdb'
  and 'service postgresql upgrade' are installed.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

New in 1.0 version

* The postgresql-check-db-dir is now more strict to admin's configuration
  and tries to avoid future incompatibilities by warning about the
  /etc/systemd/system/postgresql@instance.service.d/ non-existence.
  Idea by Honza Horák.

* The /etc/postgresql/* path is not used for configuration as it does not
  conform systemd's intentions, see the thread:
  http://www.spinics.net/lists/fedora-devel/msg200450.html .  We encourage
  users to configure via postgresql.service.d/ drop-in directory.

* postgresql-setup is now able to (the very ugly way, though) to read
  environment variable setup from systemd's environment files specified
  via EnvironmentFile= statement (reminded by private rhbz#1135611).

* postgresql-setup now detects whether systemd configuration changed
  while the `systemctl daemon-reload` was not done yet.  Without
  daemon-reload, running postgresql-setup could lead to unexpected results.

* When the --new-systemd-unit (together with --unit & --port & --datadir) is
  given, postgresql-setup is now able to generate very simple drop-in
  configuration file - so instantiating another PostgreSQL server may be
  done by single command.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

New in 0.9.1 version

* The postgresql-setup script does not require --port option when upgrading.

* Each service produces its own upgrade/initdb log files under postgres'
  home directory.

* The README.rpm-dist file now follows the changes in 0.9 and 0.9.1.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

New in 0.9 version

* This is inital version actually, changes are against F21 version:
  http://pkgs.fedoraproject.org/cgit/postgresql.git/tree/?id=49f074f1918a61

* Prepared for /etc/sysconfig/postgresql configuration, taking into account
  that we should make the s/postgresql.service/postgresql@.service/
  (instantiable) change.

* Allow user to specify PGPORT also by 'port' option in postgresql.conf

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
