xfsdump (3.1.7) unstable; urgency=low

  * New upstream release

 -- Nathan Scott <nathans@debian.org> Fri, 18 Aug 2017 17:49:02 -0500

xfsdump (3.1.6) unstable; urgency=low

  * New upstream release

 -- Nathan Scott <nathans@debian.org> Tue, 10 Nov 2015 16:16:03 +1100

xfsdump (3.1.5) unstable; urgency=low

  * New upstream release (closes: #799201)

 -- Nathan Scott <nathans@debian.org> Wed, 14 Oct 2015 12:53:24 +1100

xfsdump (3.1.4) unstable; urgency=low

  * New upstream release (closes: #747079)
  * Add a watch file (closes: #748482)
  * Update configure files during build (closes: #746531)

 -- Nathan Scott <nathans@debian.org> Wed, 16 Jul 2014 13:26:02 +1000

xfsdump (3.1.3) unstable; urgency=low

  * New upstream release

 -- Nathan Scott <nathans@debian.org> Wed, 08 May 2013 11:53:54 -0500

xfsdump (3.1.1) unstable; urgency=low

  * New upstream release
  * Add German translation from Chris Leick (closes: #576257)

 -- Nathan Scott <nathans@debian.org>  Wed, 31 Oct 2012 12:39:11 +1100

xfsdump (3.1.0) unstable; urgency=low

  * New upstream release

 -- Nathan Scott <nathans@debian.org>  Mon, 19 Mar 2012 15:07:12 +1100

xfsdump (3.0.6) unstable; urgency=low

  * New upstream release

 -- Nathan Scott <nathans@debian.org>  Wed, 11 Oct 2011 16:46:01 +1100

xfsdump (3.0.5) unstable; urgency=low

  * New upstream release

 -- Nathan Scott <nathans@debian.org>  Wed, 31 Mar 2011 07:30:00 +1100

xfsdump (3.0.4) unstable; urgency=low

  * New bugfix release

 -- Nathan Scott <nathans@debian.org>  Wed, 13 Jan 2009 17:46:03 +1100

xfsdump (3.0.2) unstable; urgency=low

  * New bugfix release
  * Update packaging dependencies on latest xfsprogs (closes: #527651)

 -- Nathan Scott <nathans@debian.org>  Sat, 09 May 2009 04:42:48 +1000

xfsdump (3.0.0-1) unstable; urgency=low

  * New upstream release

 -- Nathan Scott <nathans@debian.org>  Wed, 28 Jan 2009 22:00:42 +1100

xfsdump (2.2.48-1) unstable; urgency=low

  * New upstream release
  * xfsdump depends on ${misc:Depends}
  * Add debian/watch
  * Add homepage control header
  * Fix the following lintian issues:
    W: xfsdump source: package-uses-deprecated-debhelper-compat-version 1
    W: xfsdump source: ancient-standards-version 3.5.9 (current is 3.7.3)

 -- Anibal Monsalve Salazar <anibal@debian.org>  Wed, 23 Apr 2008 22:06:34 +1000

xfsdump (2.2.45-1) unstable; urgency=low

  * New upstream release (closes: #417894).

 -- Nathan Scott <nathans@debian.org>  Mon, 28 May 2007 16:09:14 +1000

xfsdump (2.2.38-1) unstable; urgency=low

  * New upstream release (closes: #368423).

 -- Nathan Scott <nathans@debian.org>  Tue, 20 Jun 2006 16:50:49 +1000

xfsdump (2.2.36-1) unstable; urgency=low

  * New upstream release

 -- Nathan Scott <nathans@debian.org>  Thu, 06 Apr 2006 17:07:33 +1000

xfsdump (2.2.35-1) unstable; urgency=low

  * New upstream release
  * Switch from debmake to debhelper

 -- Nathan Scott <nathans@debian.org>  Wed, 15 Feb 2006 20:04:55 +1100

xfsdump (2.2.30-1) unstable; urgency=low

  * New upstream release (closes: #318088).

 -- Nathan Scott <nathans@debian.org>  Wed, 27 Jul 2005 16:45:42 +1000

xfsdump (2.2.27-1) unstable; urgency=low

  * New upstream release (closes: #298407).

 -- Nathan Scott <nathans@debian.org>  Tue, 08 Mar 2005 10:59:22 +1100

xfsdump (2.2.25-1) unstable; urgency=low

  * New upstream release

 -- Nathan Scott <nathans@debian.org>  Wed, 13 Oct 2004 10:17:53 +1000

xfsdump (2.2.23-1) unstable; urgency=low

  * New upstream release (closes: #271666)

 -- Nathan Scott <nathans@debian.org>  Wed, 15 Sep 2004 07:14:46 +1000

xfsdump (2.2.21-1) unstable; urgency=low

  * New upstream release (closes: #240908, #214574)

 -- Nathan Scott <nathans@debian.org>  Fri, 16 Apr 2004 11:50:56 +1000

xfsdump (2.2.18-1) unstable; urgency=low

  * New upstream release
  * Support for the security extended attributes namespace
  * Update xfsprogs and xfslibs-dev package dependency information

 -- Nathan Scott <nathans@debian.org>  Thu, 26 Feb 2004 14:44:41 +1100

xfsdump (2.2.16-1) unstable; urgency=low

  * New upstream release
  * Update xfslibs-dev package dependency information

 -- Nathan Scott <nathans@debian.org>  Tue, 27 Jan 2004 08:47:23 +1100

xfsdump (2.2.14-1) unstable; urgency=low

  * New upstream release
  * Update DMAPI package dependency information

 -- Nathan Scott <nathans@debian.org>  Sat, 18 Oct 2003 10:32:47 +1000

xfsdump (2.2.13-1) unstable; urgency=low

  * New upstream release

 -- Nathan Scott <nathans@debian.org>  Wed, 23 Jul 2003 08:31:02 +1000

xfsdump (2.2.12-1) unstable; urgency=low

  * New upstream release

 -- Nathan Scott <nathans@debian.org>  Thu, 29 May 2003 17:26:52 +1000

xfsdump (2.2.11-1) unstable; urgency=low

  * New upstream release
  * Fine-tuned shared library dependencies slightly, so we depend
    on libattr itself (rather than attr which depends on libattr).

 -- Nathan Scott <nathans@debian.org>  Sat, 26 Apr 2003 06:30:30 +1000

xfsdump (2.2.10-1) unstable; urgency=low

  * New upstream release

 -- Nathan Scott <nathans@debian.org>  Mon, 14 Apr 2003 11:11:26 +1000

xfsdump (2.2.9-1) unstable; urgency=high

  * New upstream release fixing xfsdump quota file security issues

 -- Nathan Scott <nathans@debian.org>  Thu, 27 Mar 2003 11:05:54 +1100

xfsdump (2.2.8-1) unstable; urgency=low

  * New upstream release
  * Updated policy version to which this package conforms

 -- Nathan Scott <nathans@debian.org>  Thu, 27 Mar 2003 10:30:18 +1100

xfsdump (2.2.6-1) unstable; urgency=low

  * New upstream release
  * Update build dependencies to require new XFS headers

 -- Nathan Scott <nathans@debian.org>  Thu, 19 Dec 2002 13:10:49 +1100

xfsdump (2.2.4-1) unstable; urgency=low

  * New upstream release
  * Update packaging dependencies to reflect renamed libattr1-dev
  * Switch from using curses library to ncurses library directly

 -- Nathan Scott <nathans@debian.org>  Fri,  8 Nov 2002 09:58:50 +1100

xfsdump (2.2.2-1) unstable; urgency=low

  * New upstream release (closes: #162038).

 -- Nathan Scott <nathans@debian.org>  Mon,  7 Oct 2002 05:19:51 +1000

xfsdump (2.2.0-1) unstable; urgency=low

  * New upstream release, fixing compatibility with older kernels

 -- Nathan Scott <nathans@debian.org>  Tue,  3 Sep 2002 09:22:24 +1000

xfsdump (2.1.5-1) unstable; urgency=low

  * New upstream release

 -- Nathan Scott <nathans@debian.org>  Wed, 14 Aug 2002 09:47:15 +1000

xfsdump (2.1.3-1) unstable; urgency=low

  * New upstream release

 -- Nathan Scott <nathans@debian.org>  Tue, 30 Jul 2002 14:34:17 +1000

xfsdump (2.1.2-1) unstable; urgency=low

  * New upstream release

 -- Nathan Scott <nathans@debian.org>  Mon, 29 Jul 2002 15:43:47 +1000

xfsdump (2.1.0-1) unstable; urgency=low

  * New upstream release
  * Uses updated XFS geometry ioctl (version change differentiates this).

 -- Nathan Scott <nathans@debian.org>  Thu, 20 Jun 2002 14:43:07 +1000

xfsdump (2.0.4-1) unstable; urgency=low

  * New upstream release

 -- Nathan Scott <nathans@debian.org>  Tue, 18 Jun 2002 09:48:30 +1000

xfsdump (2.0.3-1) unstable; urgency=low

  * New upstream release (closes: #146121).

 -- Nathan Scott <nathans@debian.org>  Wed,  8 May 2002 15:38:18 +1000

xfsdump (2.0.1-1) unstable; urgency=low

  * New upstream release

 -- Nathan Scott <nathans@debian.org>  Sat, 13 Apr 2002 09:45:06 +1000

xfsdump (2.0.0-1) unstable; urgency=low

  * Major new upstream release
  * Several system call changes - THIS WILL NOT WORK WITH OLD KERNELS!
  * Uses the new shared ext2/ext3/XFS extended attributes interfaces

 -- Nathan Scott <nathans@debian.org>  Thu,  7 Feb 2002 13:25:26 +1100

xfsdump (1.1.14-1) unstable; urgency=low

  * New upstream bug-fix release

 -- Nathan Scott <nathans@debian.org>  Thu, 17 Jan 2002 11:13:19 +1100

xfsdump (1.1.13-1) unstable; urgency=low

  * New upstream bug-fix release

 -- Nathan Scott <nathans@debian.org>  Mon, 14 Jan 2002 10:59:50 +1100

xfsdump (1.1.12-1) unstable; urgency=low

  * New upstream bug-fix release
  * Several xfsrestore performance improvements

 -- Nathan Scott <nathans@debian.org>  Wed,  9 Jan 2002 14:21:56 +1100

xfsdump (1.1.10-1) unstable; urgency=low

  * New upstream bug-fix release

 -- Nathan Scott <nathans@debian.org>  Wed, 12 Dec 2001 10:49:17 +1100

xfsdump (1.1.6-0) unstable; urgency=low

  * New upstream release
  * Several fixes for IA64 and 64-bit Linux platforms in general
  * FHS compliance for xfsdump inventory directory (closes: #112566)

 -- Nathan Scott <nathans@debian.org>  Wed,  3 Oct 2001 15:09:51 +1000

xfsdump (1.1.3-0) unstable; urgency=low

  * More changes to libtool build procedure (closes: #106702)

 -- Nathan Scott <nathans@debian.org>  Fri, 27 Jul 2001 07:59:49 +1000

xfsdump (1.1.2-1) unstable; urgency=low

  * Minor changes to build procedure 
  * Add missing libtool build dependency (closes: #106506)

 -- Nathan Scott <nathans@debian.org>  Wed, 25 Jul 2001 12:57:42 +1000

xfsdump (1.1.2-0) unstable; urgency=low

  * New upstream release

 -- Nathan Scott <nathans@debian.org>  Tue, 24 Jul 2001 12:15:30 +1000

xfsdump (1.1.1-0) unstable; urgency=low

  * New upstream release

 -- Nathan Scott <nathans@debian.org>  Mon, 23 Jul 2001 10:27:37 +1000

xfsdump (1.1.0-0) unstable; urgency=low

  * Reworked package slightly so that its not Debian native
  * Debian-specific changes now documented in changelog.Debian.gz
  * New upstream release (see /usr/share/doc/xfsdump/changelog.gz)
  * Checked standards compliance - update standards version to 3.5.5
  * Introduce a shlibs.local file to track package inter-dependencies

 -- Nathan Scott <nathans@debian.org>  Wed, 18 Jul 2001 15:57:04 +1000

xfsdump (1.0.9) unstable; urgency=low

  * Correctly [xfs]restore the suid and guid mode bits

 -- Nathan Scott <nathans@debian.org>  Tue, 15 May 2001 14:40:03 +1000

xfsdump (1.0.8) unstable; urgency=low

  * Add a build dependency on xfslibs-dev 1.2.5 (closes: #97097)

 -- Nathan Scott <nathans@debian.org>  Sat, 12 May 2001 08:52:27 +1000

xfsdump (1.0.7) unstable; urgency=low

  * Fix numerous warnings, remove last -Wall filter
  * Support realtime files in dump/restore
  * Cleanup arch-specific code, esp. the byteswab routines
  * Fix bug dumping to remote tape device with given user

 -- Nathan Scott <nathans@debian.org>  Wed,  9 May 2001 15:23:23 +1000

xfsdump (1.0.6) unstable; urgency=low

  * Remove spurious warnings when dumping quota information.

 -- Nathan Scott <nathans@debian.org>  Tue,  1 May 2001 15:32:24 +1000

xfsdump (1.0.5) unstable; urgency=low

  * Initial release (closes: #83832).

 -- Nathan Scott <nathans@debian.org>  Wed, 25 Apr 2001 12:19:15 +1000

Local variables:
mode: debian-changelog
End:
