pitrery 3.3
===========

  * [Bugfix] pitrery restore: could not get the ending timestamp

pitrery 3.2
===========

  * Pitrery version 3.2 is compatible with PostgreSQL version 13.

  * Add CI for local tests (see CONTRIBUTING.md).

  * Abort check if backup_timestamp is not available (#130)

pitrery 3.1
===========

  * Preserve "xlog" scripts as symlinks in debian and rpm packages #97
    Please update your "archive_command" and "restore_command" parameters to use
    the new scripts "archive_wal" and "restore_wal".

  * Report "qw" update to archive_wal and restore_wal #94, #110 (thanks pgstef)
    Please update if you are using bash version < 4.2.

  * Release process review

pitrery 3.0
===========

  * Pitrery version 3.0 is compatible with PostgreSQL version 12.
    PostgreSQL in this version has changed how recovery configuration is managed.

    There is be no more "recovery.conf" file:
      - The recovery configuration keys are read from the postgresql.conf file.
        Upon restoration, recovery.conf settings are written by pitrery at the
        end of the postgresql.conf file.
      - A "recovery.signal" or "standby.signal" will be used by the restored
        cluster to know what action to take
        A new option is declared: RESTORE_MODE (or the "-m" switch). For
        restoration, it must be set either to "recovery" or "standby".
    - Multiple conflicting recovery_target* specifications are not allowed.
      PostgreSQL will make the check on startup.
    - We now advance to the latest timeline by default.

  * Since PostgreSQL version 10, "xlog" has been renamed to "wal". Make
    this change in pitrery:
    - "archive_xlog" script is renamed to "archive_wal"
    - "restore_xlog" script is renamed to "restore_wal"
    - configuration key PGXLOG is renamed to PGWAL
    - the WAL archive directory ARCHIVE_DIR is set by default to:
      "$BACKUP_DIR/archived_wal"

pitrery 2.4
===========

  * New maintainer: Thibaut Madelaine.

  * Warn about untested major version on restore.


pitrery 2.3
===========

  * Add progress information when checking for missing archived WAL files

  * Support different WAL sizes in check, introduced in PostgreSQL 11

  * Bugfixes in check command


pitrery 2.2
===========

  * Change the command line switch used to pass a configuration file to pitrery
    from -c to -f.

  * Optionnaly encrypt tar backups and archived WAL files.

  * Store the commandline executed and the configuration file inside the backup


pitrery 2.1
===========

  * Restrict permissions of backup directories to the user that created them

  * Add options to the check action to verify backup policy and archived WAL
    files

  * Add RSYNC_WHOLEFILE and RSYNC_BWLIMIT configuration options to
    tweak the behaviour of rsync when performing base backups.



pitrery 2.0
===========

  * Regroup all action into the main script

  * Change the sed commands in the Makefile to have the script work
    without modifications

  * Command line switches and options to specify if the backup is
    local, the user, host and target directory, are now merged into a
    SSH style syntax: `[[user@]host:]/path`. Not providing a host
    tells pitrery the backups are local.

  * Rename the default configuration file from `pitr.conf` to `pitrery.conf`

  * Comment out all parameters in the configuration file so that they
    do not interfere

  * Remove the BACKUP_LABEL option, subdirectory and -l switch. They
    were not used.

  * Support for PostgreSQL 10


pitrery 1.13
============

  * Fix tablespaces links being overwritten by postmaster on 9.5 due
    to tablespace_map. This conflicted with our tablespace relocation

  * Fix the purge of WAL file that would remove all archives if the
    stop file is missing

  * Fix backups failing due to incorrect parsing of the stop time
    when iso8601 timestamps are used


pitrery 1.12
============

  * New -m option for archive_xlog to chmod the archived file to the
    specified octal permission bits

  * Fix the restore so that the backup_label is restore whan used with
    PostgreSQL 9.6

  * Remove support of deprecated compression parameters, renamed in 1.9


pitrery 1.11
============

  * New configure action to create a configuration file from the
    command line.

  * New check action to test configuration files.

  * Do not backup replication slots state files and produce an SQL
    file to recreate them after restore.

  * Add a dry run option (-N) for purge.

  * Improve the quoting and ensure unusual characters are handled
    properly.

  * Add manpages for the user facing commands, pitrery, archive_xlog
    and restore_xlog.

  * Relax restrictions on the target date format on restore. It was
    meant to have a working format common to all free unices
    platforms, but the user can just adapt the command to its
    system. So now one can do run: pitrery restore -d '1 hour ago', or
    anything the local date command can parse.

  * New ARCHIVE_OVERWRITE configuration parameter along with -O option
    (do not overwrite) for archive_xlog to check if the target files
    exists before archiving, when set to "no" or -O is on the command
    line.

  * New ARCHIVE_CHECK (-H) and ARCHIVE_FLUSH (-F) for archive_xlog. The
    first one check md5 sum of the archived WAL file, the second force
    a flush to disk.

  * Make use of the new backup API of PostgreSQL 9.6

  * Optionally name backups dir with ISO 8601 timestamps, with config
    option USE_ISO8601_TIMESTAMPS and command line switch -t for the
    backup action.

  * French translation of the documentation.

  * Bugfixes and better handling of unusual characters in paths


pitrery 1.10
============

  * Fix issue in restore_xlog not using SSH user and host found in the
    configuration file, thus preventing restore to work out of the
    box.

  * Ensure archive_xlog create the target directory on remote hosts

  * Only purge WAL files when there are some WAL files to remove


pitrery 1.9
===========

  * Do not exit without error when the server is in recovery. This is
    not a consistent behaviour.

  * Improve the speed of the purge of archives WAL files by stopping
    the purge when the limit is reached.

  * Add the -T switch along with the LOG_TIMESTAMP option to prefix
    messages of backup, restore and purge with the date and time.

  * Rename the compression configuration parameters for WAL files to
    avoid confusion :
    * `COMPRESS_BIN` -> `ARCHIVE_COMPRESS_BIN`
    * `COMPRESS_SUFFIX` -> `ARCHIVE_COMPRESS_SUFFIX`
    * `UNCOMPRESS_BIN` -> `ARCHIVE_UNCOMPRESS_BIN`

  * Add the -c and -s switch to archive_xlog and restore_xlog which
    allow to give the (un)compression command and compressed file suffix
    respectively.

  * No longer use command line switch to configure restore_xlog for
    restore_command in restore action. Give a configuration file or
    the full command to use. Thus only -r and -C (changed to give the
    configuration file) remains for archived WAL options.

  * Add the -l switch to pitrery. It lists the configuration files
    inside the default configuration directory.

  * Include all recovery parameters commented out in the recovery.conf
    generated at restore.


pitrery 1.8
===========

  * Exclude temporary locations from backup

  * Support pax to create hardlinks, for better portability. GNU cp
    stays the default, the configuration goes to the Makfile.

  * Add a -V switch to the pitrery wrapper script to show the version.

  * Add an option (-R) to overwrite target directory on restore.


pitrery 1.7
===========

  * Show the storage method and compression suffix when listing
    backups in verbose mode.

  * Allow configuration of compression tools used when storing backup
    contents using tar.

  * Remove the `pitr_mgr` symlink.

  * Have `archive_xlog` create the local target directory so that we don't
    end up archiving on the same path, when the user forget to create it.

  * Run backup hook command even if the backup fails. The exit code of the
    backup is available to the hook in the PITRERY_EXIT_CODE env variable.

  * Bugfix on sed -E vs sed -r, use the later for older GNU sed.


pitrery 1.6
===========

  * Exit without error when backup is run on a hot standby
    server. Issue a warning message when run interactively, so an
    active cron job does not send any mail.

  * Bugfixes and improvements on documentation


pitrery 1.5
===========

  * Force the checkpoint on pg_start_backup() when possible

  * Support rsync for the base backup. tar remains the default with a
    new -s option for backup_pitr and the STORAGE configuration
    variable

  * Save configuration files if they are outside of PGDATA

  * Rename `pitr_mgr` to `pitrery`, with a symlink for backward
    compatibility

  * Make the time based purge compatible with the count purge,
    allowing to purge backups based on age _and_ keeping a minimum
    number of backups

  * Make the old WAL purge better by comparing parts of the file name
    instead of the whole. Bash does not handle well the full file name
    when converted to a number (too big)

  * Safely purge old .backup files. Always keep .history files

  * Improve documentation

  * Better check the input file in archive_xlog

  * Use rsync to safely transfer to the remote host in archive_xlog

  * Document compression tools options

  * Add a verbose mode to list, with sizes and locations

  * Allow to specify the oid of a tablespace when give path for relocation:
    -t oid:/new/path or -t name:/new/path is possible


pitrery 1.4
===========

  * Merge archiving configuration with pitr_mgr configuration

  * Add search for configuration file on its basename in archive_xlog
    and restore_xlog

  * Add more options to restore to configure the restore_command

  * Fix hang on purge when all backups are removed

  * Fix on tablespace handling when no tablespaces exist

  * Add an UPGRADE documentation

  * Copy docs and configuration to the documentation directory


pitrery 1.3
===========

  * Support PostgreSQL 9.2

  * Relocation of tablespaces on restore

  * Simpler archiving script, only archive to one place

  * Support for username on SSH connections

  * Better display of the list of backups

  * Add a summary of all information needed for a restore

  * Add a dry run mode on restore

  * Lots of bug fixes


pitrery 1.2
===========

This version is buggy, do not use it.


pitrery 1.1
===========

  * Fix backup selection date. Now backups are selected based on the
    end of the base backup, a base backup is not usable until the time
    of pg_stop_backup(), written as STOP TIME in the backup label.

  * Correct the filtering of archived WAL segments when purging, to
    avoid other files to get in the way.

  * Add a cleaning of the backup directory in case the backup fails.

  * Add Debian packaging


pitrery 1.0
===========

  * First version
