1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239
|
$Id: README.pod,v 1.9 2002/04/13 12:20:37 pcollins Exp $
=for html
<div id="content">
<H1>PerlDAV -- A WebDAV client library for Perl5</H1>
</div><div id="content">
=begin text
=head1 PerlDAV -- A WebDAV client library for Perl5
=end text
PerlDAV is a Perl library for modifying content on webservers using the WebDAV protocol. Now you can LOCK, DELETE and PUT files and much more on a DAV-enabled webserver.
The PerlDAV library consists of:
=over 4
=item *
B<HTTP::DAV> - an object-oriented Web-DAV client API.
=item *
B<dave> - the DAV Explorer, an end-user Unix console program for interacting with WebDAV servers. dave looks and feels like a standard Unix ftp program.
=back
Learn more about WebDAV at http://www.webdav.org/
=head1 LATEST VERSION AND WHAT'S NEW
The latest version is: v0.30 (released 2002/04/06 17:42:51)
Download: http://www.cpan.org/authors/id/P/PC/PCOLLINS/
=over 4
=item *
B<Windows support>
- Multiple people have confirmed that PerlDAV install and runs under Windows (subject to fixing the binmode bug below).
=item *
B<Apache 2 mod_dav support>
- Now works with mod_dav under Apache 2.
=item *
B<bug fixes>
- Fixed bug to correctly handle the put/get of filenames with spaces in them.
- Fixed bug to allow the PUT of empty files.
- put() now uses binmode so that it works under Windows.
- HTTP redirect code added in the previous release was incorrectly returning a HTTP::Response instead of a HTTP::DAV::Response
- Fixed bug to allow https for copy and move (http:// was hardcoded).
- Fixed strange copy/move bug for Apache2.0's mod_dav.
=back
=for html
<P>See the <A HREF="Changes.html">Changes file</A> for previous releases.</P>
=for text
See the Changes file for previous releases.
=head1 INSTALLING PERLDAV
The lazy way to install PerlDAV:
$ perl -MCPAN -e shell
cpan> install HTTP::DAV
Or the normal way:
Retrieve the latest copy from CPAN: http://www.cpan.org/authors/id/P/PC/PCOLLINS/
$ perl Makefile.PL # Creates the Makefile
$ make # Runs the makefile
$ make test # Optional (See Interopability below)
$ make install # Installs dave and HTTP::DAV
With this method you will first have to install the pre-requisites: LWP and XML::DOM, see L<what are the prerequisites?>.
When you install PerlDAV, the HTTP::DAV library will be installed to your Perl library location (usually /usr/local/lib/perl5)
C<dave> will be installed to /usr/local/bin. This suits most people but you can modify this by using the INSTALLBIN flag:
$ perl Makefile.PL INSTALLBIN="/home/pcollins/bin"
=head2 What Are The Prerequisites?
=over 4
=item *
LWP (Have not tested lower than v5.48)
=item *
XML::DOM (Have not tested lower than v1.26).
Requires James Clark's expat library:
=item *
Perl5 (Have not tested lower than v5.005)
=back
=head2 Optional Prerequisites.
=over 4
=item *
Crypt::SSLeay if you'd like to use https. Crypt::SSLeay requires the openssl library as well. See Crypt::SSLeay's excellent install instructions for how to get https support into LWP (and hence HTTP::DAV). I've tested HTTP::DAV and Crypt::SSLeay against Apache/mod_dav with the mod_ssl plugin. Works seamlessly.
=item *
MD5 if you'd like to use LWP's Digest authentication.
=back
To get the latest versions of these prerequisite modules you can simply type this at the command prompt:
$ <install expat>
then:
$ perl -MCPAN -e shell
cpan> install LWP
cpan> install XML::DOM
or if you just 'install HTTP::DAV' the lovely CPAN module should just magically install all of the prerequisites for you (you'll still need to manually instal expat though).
=head2 What Systems Does It Work With?
HTTP::DAV and dave are pure perl so only needs Perl5.003 (or later). PerlDAV is known to run under Windows (although I haven't tried it myself) and should run under all Unix systems.
=head1 WHERE ARE THE MANUALS?
Once you've installed PerlDAV, you can type:
$ perldoc HTTP::DAV
$ man dave
=for html
<P>Or you can view them here:
<A HREF="HTTP-DAV.html">HTTP::DAV</A>,
<A HREF="dave.html">dave</A>.</P>
=head1 GETTING HELP
=head2 The perldav mailing list
There is a mailing list for PerlDAV for use by Developers and Users. Please see http://mailman.webdav.org/mailman/listinfo/perldav
=head1 THE TEST SUITE & INTEROPERABILITY
You will notice that the standard C<make test> command invokes a large set of test procedures, but most will be skipped. This standard test is sufficient to give you a good indication that PerlDAV has installed properly.
If you'd like to see how well PerlDAV performs against a particular DAV server then you should set the URL (and username,password) in the test suite t/TestDetails.pm. Then you can run C<make test> again and watch the test suite perform as many operations as the server supports. Please note that the test suite will perofrm well over 200 HTTP requests to your server.
I have tested PerlDAV against IIS5, mod_dav and the Xythos WFS.
Out of the box, the test suite should NOT fail on any tests.
The test suite is the best way to test interopability between PerlDAV and other servers. I'd really like help with testing PerlDAV's interoperability. So if one or more tests fail against your server please follow the following steps:
=over 4
=item *
Determine which test is failing.
=item *
set DEBUG to on: edit the script and change HTTP::DAV::DebugLevel(0) to (3).
=item *
Delete previous server output: rm /tmp/perldav_debug.txt
=item *
Run that single test again:
$make test TEST_FILES=t/thetest.t TEST_VERBOSE=1 > testoutput.log
=item *
Then gzip and mail me both testoutput.log and /tmp/perldav_debug.txt with details of the test environment. (My email is at the bottom)
=back
Alternatively, you could have a shot at solving the bug yourself :)
=head1 BUGS and TODO
Need to convert XML::DOM to a DOM Level 2 compliant parser like XML::Gdome.
=for html
<P>See <A HREF="TODO.html">TODO</A> for what is left to be done.</P>
=for text
See TODO for what is left to be done.
=head1 AUTHOR AND COPYRIGHT
This module is Copyright (C) 2001 by
Patrick Collins
G03 Gloucester Place, Kensington
Sydney, Australia
mailto:pcollins@cpan.org
Phone: +61 2 9663 4916
All rights reserved.
You may distribute this module under the terms of either the GNU General Public License or the Artistic License, as specified in the Perl README file.
$Id: README.pod,v 1.9 2002/04/13 12:20:37 pcollins Exp $
=cut
=for text
** This file was automatically generated from **
** doc/Changes.pod. To edit it, see there. **
=for html
</div>
|