2001-09-20  Theodore Tso  <tytso@thunk.org>

	* Release of E2fsprogs 1.25

2001-09-02  Theodore Tso  <tytso@thunk.org>

	* Release of E2fsprogs 1.24a

2001-08-30  Theodore Tso  <tytso@thunk.org>

	* Release of E2fsprogs 1.24

2001-08-15  Theodore Tso  <tytso@valinux.com>

	* Release of E2fsprogs 1.23

2001-06-23  Theodore Tso  <tytso@valinux.com>

	* Release of E2fsprogs 1.22

2001-06-15  Theodore Tso  <tytso@valinux.com>

	* Release of E2fsprogs 1.21

2001-06-08  Theodore Tso  <tytso@valinux.com>

	* jfs.h: Synchronize with ext3 0.7a

2001-05-25  Theodore Tso  <tytso@valinux.com>

	* Release of E2fsprogs 1.20

2001-05-14  Theodore Tso  <tytso@valinux.com>

	* ext2_fs.h: Moved file to lib/ext2fs

	* ext2_fs.h: Define EXT2_RESIZE_INO and EXT2_FEATURE_COMPAT_DIR_INDEX

2001-05-12  Theodore Tso  <tytso@valinux.com>

	* jfs.h (JFS_DEBUG): Don't define JFS_DEBUG for non-kernel builds;
		if necessasry it can be set with configure --enable-jfs-debug

2001-05-01  Theodore Tso  <tytso@valinux.com>

	* ext2_fs.h: New feature assignments for
		EXT2_FEATURE_COMPAT_RESIZE_INODE for Andreas Dilger and
		EXT3_FEATURE_COMPAT_DIR_INDEX for Daniel Phillips.
		Synchronize kernel function prototypes (which don't matter
		for e2fsprogs) with Linux 2.4.4.

2001-01-14  Theodore Ts'o  <tytso@valinux.com>

	* ext2_fs.h (EXT3_FEATURE_INCOMPAT_JOURNAL_DEV): Add definition
		for use with external journal devices.

2001-01-05    <tytso@snap.thunk.org>

	* jfs.h: Move prototypes outside of the KERNEL #ifdef.  Remove
		indentation in front of #define.

	* jfs_compat.h: Add #include of netinet/in.h for htonl, and not to
		use inline functions if compiling with gcc -Wall.

2000-12-30    <tytso@snap.thunk.org>

	* ext2_fs.h (EXT3_JOURNAL_DATA_FL): Add new inode flag definition.

	* jfs.h: Update to 0.5e version

2000-12-09    <tytso@snap.thunk.org>

	* jfs.h, jfs_compat.h, list.h: New files added to support ext3.

	* jfs.h: Remove excess #include of JFS_DEBUG.  Not needed for
		e2fsprogs, since we optioanlly define it in the
		configuration file system.

2000-10-24    <tytso@valinux.com>

	* ext2_fs.h (EXT2_JOURNAL_INO): Add definition for
		EXT2_JOURNAL_INO; reserve inode #7 for EXT2_RESIZE_INO.

2000-08-14    <tytso@valinux.com>

	* ext2_fs.h: Add comment explaining when journal fields are valid.

2000-07-13    <tytso@valinux.com>

	* Release of E2fsprogs 1.19

2000-07-07  Theodore Ts'o  <tytso@valinux.com>

	* ext2_fs.h: Update ext3 extension feature #define's.

2000-07-04  Theodore Ts'o  <tytso@valinux.com>

	* ext2_fs.h: Update to include latest journalling additions to the
		superblock.

2000-04-03  Theodore Ts'o  <tytso@valinux.com>

	* ext2_fs.h (EXT2_NOCOMPR_FL): Rename EXT2_NOCOMP_FL to
		EXT2_NOCOMPR_FL.

2000-02-06  Theodore Ts'o  <tytso@valinux.com>

	* ext2_fs.h: Fix header to skip defining EXT2FS_DEBUG since blows
		out on non GCC compilers.

2000-02-02  Theodore Ts'o  <tytso@valinux.com>

	* ext2_fs.h: Update to use header file from Linux 2.3.39.
		(Changes from kernel header file: Use asm/types.h instead
		of linux/types.h, and the __GNU__ versus __hurd__ #ifdef
		change, with the FSF irrationality failsafe.  See
		1999-10-25 Changelog.)

1999-11-10    <tytso@valinux.com>

	* Release of E2fsprogs 1.18

1999-10-26    <tytso@valinux.com>

	* Release of E2fsprogs 1.17

1999-10-25    <tytso@valinux.com>

	* ext2_fs.h (i_reserved2): Use __GNU__ instead of __hurd__ to
		detect the Hurd OS.  To protect against future
		irrationality on the part of the FSF concerning whether
		Linux is GNU or not, on a system which defines both
		__linux__ and __GNU___, __linux__ takes precedence.

1999-10-22    <tytso@valinux.com>

	* Release of E2fsprogs 1.16

1999-07-18  Theodore Ts'o  <tytso@rsts-11.mit.edu>

	* Release of E2fsprogs 1.15

1999-01-09  Theodore Ts'o  <tytso@rsts-11.mit.edu>

	* Release of E2fsprogs 1.14

1998-12-15  Theodore Ts'o  <tytso@rsts-11.mit.edu>

	* Release of E2fsprogs 1.13

1998-07-09  Theodore Ts'o  <tytso@rsts-11.mit.edu>

	* Release of E2fsprogs 1.12

1998-03-30  Theodore Ts'o  <tytso@rsts-11.mit.edu>

	* types.h.in: Add a signed keyword to the __s64 definition.

1998-03-23  Theodore Ts'o  <tytso@rsts-11.mit.edu>

	* ext2_fs.h: Update to latest 2.1.90+diffs version of ext2_fs.h

Sun Oct 19 19:08:03 1997  Theodore Ts'o  <tytso@rsts-11.mit.edu>

	* ext2_fs.h: #if 0 out the EXT2_DEBUG code, since it's only needed
		for the kernel and the ... notation makes some cpp's complain.

	* types.h.in: Fix the type definitions of __s64 and __u64 if long
	 	long is used.

Tue Jun 17 01:33:20 1997  Theodore Ts'o  <tytso@rsts-11.mit.edu>

	* Release of E2fsprogs 1.11

Thu Apr 24 12:16:42 1997  Theodre Ts'o  <tytso@localhost.mit.edu>

	* Release of E2fsprogs version 1.10

Thu Apr 17 12:23:38 1997  Theodore Ts'o  <tytso@rsts-11.mit.edu>

	* Release of E2fsprogs version 1.09

Fri Apr 11 18:56:26 1997  Theodore Ts'o  <tytso@rsts-11.mit.edu>

	* Release of E2fsprogs version 1.08

Wed Mar 12 13:32:05 1997  Theodore Y. Ts'o  <tytso@mit.edu>

	* Release of E2fsprogs version 1.07

Tue Oct  8 02:02:03 1996  Theodore Ts'o  <tytso@rsts-11.mit.edu>

	* Release of E2fsprogs version 1.06

Thu Sep 12 15:23:07 1996  Theodore Ts'o  <tytso@rsts-11.mit.edu>

	* Release of E2fsprogs version 1.05

Thu May 16 11:12:30 1996  Theodore Ts'o  <tytso@rsts-11.mit.edu>

	* Release of E2fsprogs version 1.04

Wed Mar 27 00:33:40 1996    <tytso@rsts-11.mit.edu>

	* Release of E2fsprogs version 1.03

Wed Jan 31 11:06:08 1996    <tytso@rsts-11.mit.edu>

	* Release of E2fsprogs version 1.02

Mon Sep  4 21:50:12 1995  Remy Card  <card@bbj>

	* ext2_fs.h: Updated to latest version.

