Version 0.1.27:

* Make the URL the last argument for wget, as some versions require this
  (Peter Prohaska).
 
Version 0.1.26 (changes since 0.1.25):

* Added new unittest suite (though not with many tests in it yet).

* Added new Version D-BUS method.

* Added support for D-BUS 0.22 (versions 0.20 and 0.21 are still supported).

* Fixed bug that causes validation of deeply-nested indexes to be very slow
  (reported by Peter Prohaska).

* Fixed a small memory leak when rotating the log files.

* Removed command to remove 0http and http symlinks. It's been many versions
  since we used those (requested by Peter Prohaska).

* Compile with -Wwrite-strings (no errors found).

Changes since 0.1.24:

* Stricter checking for valid site names.

* If the user rejects a request, reject duplicate requests for the next
  few seconds.

* Cancelling a request from 0refresh sends it an error, not success.

* Cancelling a request also cancels the download, if no other user is also
  trying to fetch it.

* Added support for chkconfig to the init.d script.

* Use new version of lazyfs.

Changes since 0.1.23:

* Updated the Technical file (reported by Issac Trotts).

* Use new version of lazyfs.

Changes since 0.1.22:

* Use new version of lazyfs.

* Check for libtrash and print a warning if running (reported by Tristan
  McLeay).

* Minor bugfix: don't try to close FD -1.

* Don't allow the daemon to be started as root. Apart from being a security
  risk, it tends to create directories that only root can read, which then
  prevents you from running it correctly in future...

* When running configure with --with-distcheck, don't check that the supplied
  user name and init.d directories exist (for packagers).

* Test for bzip2, tar, gzip, wget and gpg on startup.

Changes since 0.1.21:

* Use --bzip2 option to tar rather than -j to support older versions
  (agsb).

* Errors from wget are now logged.

Changes since 0.1.20:

* More helpful error message when an index is incorrectly signed (reported
  by Jeffrey Templon).

* Moved 'Linux' subdirectory to its own module, allowing for separate
  development.

* Subsites are now supported. Give the host as, eg, "my.domain#~user" to
  0build. This will fetch the index from http://my.domain/~user/...

Changes since 0.1.19:

* Give files user write permission by default (doesn't do anything, since fs is
  mounted read-only, but means that things don't end up read-only after
  copying).

* --nodaemon flag to prevent backgrounding (requested by Joachim Kupke).

* Before forking, send errors to stderr (in addition to syslog).

* Set SHELL in init.d/0install, so that it works during booting.

Changes since 0.1.18:

* Use 'su -p -c' instead of 'su -s'. Some systems don't have -s (reported by
  Sampo Vuori).

* Updated to use D-BUS 0.2 API.

* Send better error messages to ZeroProgress.

Changes since 0.1.17:

* Don't compile with -Werror (header files on some systems generate warnings).
  Get rid of compiler warning about an unsigned comparision (reported by 
  Stephen Watson).

* Allow downloads to be cancelled.

* Send errors (to ZeroProgress, etc) when a kernel request fails.

* Configure check for missing expat.h.

* Fixed some cases of using GFP_KERNEL with a spinlock held (reported by
  Tristan).

* Use new index.tar.bz2 file. Only fetch index.xml file if actually needed.

Changes since 0.1.16:

* Support for Linux 2.6 (tested with 2.6.0-pre7).

* New mirrors.xml file supplied in the initial archive.
  This will allow the index to be downloaded separately, although at present
  it is also in the main archive too.

* Unsigned sites now give an error instead of a warning (the transition
  period is over; mirrors.xml is required, so sites have to rerun 0build
  anyway).

* Brought testing framework up-to-date.

Changes since 0.1.15:

* Uses expat instead of libxml for XML parsing (smaller).

* Added version numbers to LazyFS module. Allows easier upgrading.
  (suggested by Joachim Kupke).

* The helper now runs as a daemon, with output going to syslog.

* init.d/0install script is created to start and stop the daemon.

* 0refresh and other programs now use DBUS to communicate with zero-install.

Changes since 0.1.14:

* Removed unused expat include (spotted by Stuart Langridge).

* The MD5 checksum for downloaded archives is now checked.

* Lots of fixed-sized buffers were converted to dynamically-sized ones.

* GPG signatures are verified when updating a site index (needs auditing).

* override.xml file can be used to add symlinks to the filesystem.
  (the 0divert program uses this)

Changes since 0.1.13:

* 0refresh can be given a path and a date (like 0run), and only does
  the refresh if the path isn't recent enough.

* Fixed bug in 0run where the executable was a directory.

* Removed 0show. It wasn't much use, and ZeroProgress replaces it.

* Added missing test_cases.py file to distribution.

* Mount the /uri/0install filesystem automatically at install time.

* Made zero-install slightly more verbose by default.

* Warn about processing an index file if the path attribute is wrong.


Changes since 0.1.12:

* Support compiling with older Linux 2.4.18 kernels (Joachim Kupke).

* New /bin/0run program to be used in scripts, eg:
	#!/bin/0run example.com/myprog 2003-01-01

* 0refresh can be given a hostname argument to use instead of using `pwd`.

* New --verbose option for zero-install.

* Fix crash when fetching a top-level file.

* Fixed dentry leaks in lazyfs.

* Lazyfs now notices updates to directories without needing them to be
  explicitly opened.

* When a directory has changed size or mtime, don't create a new inode.

* Lots more test cases to check each of the fixed bugs.


Changes since 0.1.11:

* The index is now fetches as '.0inst-index.tgz' rathen than as '.xml'.
  This is faster (since it's compressed) and will allow us to send the
  digital signature and key at the same time in future.

* Make /uri/0install the mount-point, rather than /uri.
  (compatibility symlinks from /uri/http and /uri/0http are created for
   the change-over).

* 0test has been updated and slightly improved.


Changes since 0.1.10:

* There is now one index file per site, not one per directory.

* Sometimes when a download finished, 0show wasn't notified.

* Added a test system.

* Use RELAX NG to validate XML files.

* Lazyfs improvements:

	- Better diagnostics.

	- Should be better at detecting incompatible kernel versions.

	- Replaced old buggy readdir routine with generic dcache version.

	- Used to BUG if the helper released a dentry that noone else was
	  using.

* Use libxml instead of libexpat for XML parsing.

* Helper doesn't pass request handles to child (wget) processes, so they
  get closed at the right time.

* Scheme name is now '0http', not 'http'.

* New 'task' abstraction handles dependancies between tasks better (eg,
  a file request depends on an index fetch followed by an archive fetch).

* Push updates to 0show-type clients at next poll, not each time something
  changes.

Changes since 0.1.9:

* Lots of changes to the build process and layout:

  - Linux subdirectory with Linux-specific bits.
  - Uses automake.
  - 'make install' target unloads old module an unmounts /uri
  - 'make uninstall' removes entry from fstab
  - 0show, 0refresh and zero-install binaries are installed
  - 0build has been moved out -- it is now provided via zero-install itself

* Zero-install now uses cached index files without refetching if they
  were downloaded less than five minutes ago.

* Fix permissions on control socket (0show and 0refresh didn't work for
  anyone except the zero install user).

Changes since 0.1.8:

* Change to the control interface: lines are now terminated by \0, not \n.

* 0show interface changed to include the path of the current download and
  its total size (if known). This is for progress indicators.

* Index files are validated more carefully.

* The code has been tidied up a great deal.

* When fetching a file, the index is updated first.

* Installation is now simpler.

* Initial (untested) support for Linux 2.5.70.

* Kernel module checks that size and mtimes are correct, and does a
  refresh if not.

Changes since 0.1.7:

* New 0refresh program to update the cache.

* Helper can read commands from clients (0refresh, 0show).

* New /uri/.lazyfs-cache/ symlink, so cache location isn't hard-coded anymore.

* A symlink with the 'magic' target '@PLATFORM@' gets the current platform
  type as its target.

* Kernel modules compile with optimisations (Dan Egnor).

* Fix typo in locking (prevented compiling on SMP machines).


Changes since 0.1.6:

* 0build script now creates the output in a different directory, and gives
  the size and MD5 sum of each archive.

* LazyFS kernel modules:

  - Sends one request per user per file, so the helper can track who wants each
    file and cancel requests on a per-user basis.

  - Fixed a potentially nasty referencing problem with mmapped files.

  - Support poll() for helper pipe.

* Helper:

  - Complete rewrite in C.

  - Now handles multiple downloads in parallel.

  - Clients can connect to helper to check on current downloads.

* New 0show connects to helper and keeps user updated on current downloads.
