* Makefile.in (XEMACS_FILES): Remove test/*.el.
(check): New target.
(.PHONY): Add check.
(clean): No special handling of test directory.
(tags): Add test/*.el.

* configure.ac: Bump version.
Version 2.2.9 released.
Version 2.2.9 released.

* test/tramp-tests.el (password-cache-expiry): Set to nil.
(tramp-test28-shell-command): Make a while loop when waiting for
process exit.
Version 2.2.9 released.

* texi/trampinst.texi (Testing): Use "make check".
* tramp-tests.el (tramp-test28-shell-command): Perform an initial
`sit-for' prior the while loop.
* tramp.el (tramp-handle-make-symbolic-link): New defun.
(tramp-check-cached-permissions): Call `file-attributes' if the
cache is empty.

* tramp-adb.el (tramp-adb-file-name-handler-alist)
[make-symbolic-link]: Use `tramp-handle-make-symbolic-link'.

* tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
[make-symbolic-link]: Use `tramp-handle-make-symbolic-link'.
(tramp-gvfs-maybe-open-connection): Set always connection
properties, even if target is mounted already.

* tramp-sh.el (tramp-color-escape-sequence-regexp):
Set tramp-autoload cookie.
(tramp-get-remote-touch): New defun.
(tramp-sh-handle-set-file-times): Use it.
(tramp-sh-handle-directory-files-and-attributes):
Use `tramp-handle-directory-files-and-attributes' if neither stat
nor perl are available on the remote host.

* tramp-smb.el (tramp-smb-handle-insert-directory): Mark trailing
"/".  Write long listing only when "l" belongs to the switches.
* tramp-tests.el (tramp-test17-insert-directory): Make first line
"total 123" optional.
(tramp-test20-file-modes, tramp-test22-file-times)
(tramp-test26-process-file, tramp-test27-start-file-process)
(tramp-test28-shell-command): Skip for tramp-gvfs.el and
tramp-smb.el.
(tramp-test20-file-modes): Check for "root" only when there is an
explicit user name.
(tramp-test21-file-links): Handle "... not supported" error.
(tramp-test22-file-times): Skip for "don't know" return values.
(tramp-test26-process-file, tramp-test28-shell-command):
Remove color escape sequences.
(tramp-test28-shell-command): Use `accept-process-output' rather
than `sit-for'.
(tramp-test30-utf8): Set coding system `utf-8'.
* configure.ac: Bump version (to 2.2.10-pre).  Update merge
version to 2.2.9.
* tramp-tests.el (tramp--instrument-test-case): New macro.
(tramp-test17-insert-directory): First line could contain more
text, when produced by `ls-lisp'.
(tramp-test19-directory-files-and-attributes): Instrument failed
test case.
* tramp.el (ls-lisp-use-insert-directory-program): Declare.
(tramp-handle-insert-directory): New defun, taken from tramp-gvfs.el.

* tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
[insert-directory]: Use `tramp-handle-insert-directory.
(tramp-gvfs-handle-insert-directory): Remove function.

* tramp-sh.el (tramp-sh-handle-insert-directory):
Call `tramp-handle-insert-directory'.
* tramp.el (tramp-check-cached-permissions):
Call `file-attributes' with `suffix' being a symbol but a string.
ChangeLog fix

It's "<foo>" to indicate a change related to foo.
[foo] is for a change conditional on foo being defined.

See info node `(standards)Indicating the Part Changed'.
* tramp.texi (External packages): Grammar fix.
Reword for default sentinel not being nil any more.
* tramp-tests.el (tramp-test19-directory-files-and-attributes):
Do not include directories in comparison; they might have changed
their timestamps already.