README
1PerlDAV -- A WebDAV client library for Perl5
2 PerlDAV is a Perl library for modifying content on webservers using the
3 WebDAV protocol. Now you can LOCK, DELETE and PUT files and much more on
4 a DAV-enabled webserver.
5
6 The PerlDAV library consists of:
7
8 * HTTP::DAV - an object-oriented Web-DAV client API.
9
10 * dave - the DAV Explorer, an end-user Unix console program for
11 interacting with WebDAV servers. dave looks and feels like a
12 standard Unix ftp program.
13
14LATEST VERSION AND WHAT'S NEW
15 See the included "Changes" file for the full changelog.
16
17INSTALLING HTTP::DAV
18 The lazy way to install PerlDAV:
19
20 $ cpan HTTP::DAV
21
22 Or the normal way:
23
24 Retrieve the latest copy from CPAN:
25 https://metacpan.org/module/HTTP-DAV/
26
27 $ perl Makefile.PL # Creates the Makefile
28 $ make # Runs the makefile
29 $ make test # Optional (See Interopability below)
30 $ make install # Installs dave and HTTP::DAV
31
32 With this method you will first have to install the pre-requisites: LWP
33 and XML::DOM, see "what are the prerequisites?".
34
35 When you install PerlDAV, the HTTP::DAV library will be installed to
36 your Perl library location (usually /usr/local/lib/perl5)
37
38 "dave" will be installed to /usr/local/bin. This suits most people but
39 you can modify this by using the INSTALLBIN flag:
40
41 $ perl Makefile.PL INSTALLBIN="/home/user/bin"
42
43 What Are The Prerequisites?
44 * Perl 5.6.0+
45
46 * LWP (Have not tested lower than v5.48)
47
48 * Scalar::Util (standard library from 5.8.0+)
49
50 * XML::DOM (Have not tested lower than v1.26). Requires James Clark's
51 expat library:
52
53 * To access SSL urls you will need Crypt::SSLeay and/or
54 IO::Socket::SSL.
55
56 Optional Prerequisites.
57 * Crypt::SSLeay if you'd like to use https. Crypt::SSLeay requires the
58 openssl library as well. See Crypt::SSLeay's excellent install
59 instructions for how to get https support into LWP (and hence
60 HTTP::DAV). I've tested HTTP::DAV and Crypt::SSLeay against
61 Apache/mod_dav with the mod_ssl plugin. Works seamlessly.
62
63 * MD5 if you'd like to use LWP's Digest authentication.
64
65 To get the latest versions of these prerequisite modules you can simply
66 type this at the command prompt:
67
68 $ <install expat>
69 then:
70 $ perl -MCPAN -e shell
71 cpan> install LWP
72 cpan> install XML::DOM
73
74 or if you just 'install HTTP::DAV' the lovely CPAN module should just
75 magically install all of the prerequisites for you (you'll still need to
76 manually instal expat though).
77
78 What Systems Does It Work With?
79 HTTP::DAV and dave are pure perl so only needs Perl 5.6.0 (or later).
80 PerlDAV is known to run under Windows (although I haven't tried it
81 myself) and should run under all Unix systems.
82
83WHERE ARE THE MANUALS?
84 Once you've installed PerlDAV, you can type:
85
86 $ perldoc HTTP::DAV
87 $ man dave
88
89GETTING HELP
90 The perldav mailing list
91 There is a mailing list for PerlDAV for use by Developers and Users.
92 Please see http://mailman.webdav.org/mailman/listinfo/perldav
93
94THE TEST SUITE & INTEROPERABILITY
95 You will notice that the standard "make test" command invokes a large
96 set of test procedures, but most will be skipped. This standard test is
97 sufficient to give you a good indication that PerlDAV has installed
98 properly.
99
100 If you'd like to see how well PerlDAV performs against a particular DAV
101 server then you should set the URL (and username,password) in the test
102 suite t/TestDetails.pm. Then you can run "make test" again and watch the
103 test suite perform as many operations as the server supports. Please
104 note that the test suite will perofrm well over 200 HTTP requests to
105 your server.
106
107 I have tested PerlDAV against IIS5, mod_dav and the Xythos WFS.
108
109 Out of the box, the test suite should NOT fail on any tests.
110
111 The test suite is the best way to test interopability between PerlDAV
112 and other servers. I'd really like help with testing PerlDAV's
113 interoperability. So if one or more tests fail against your server
114 please follow the following steps:
115
116 * Determine which test is failing.
117
118 * set DEBUG to on: edit the script and change HTTP::DAV::DebugLevel(0)
119 to (3).
120
121 * Delete previous server output: rm /tmp/perldav_debug.txt
122
123 * Run that single test again:
124
125 $make test TEST_FILES=t/thetest.t TEST_VERBOSE=1 > testoutput.log
126
127 * Then gzip and mail me both testoutput.log and /tmp/perldav_debug.txt
128 with details of the test environment. (My email is at the bottom)
129
130 Alternatively, you could have a shot at solving the bug yourself :)
131
132BUGS and TODO
133 Need to convert XML::DOM to a DOM Level 2 compliant parser like
134 XML::Gdome.
135
136See TODO for what is left to be done.
137AUTHOR AND COPYRIGHT
138 This module is Copyright (C) 2001 by
139
140 Patrick Collins
141 G03 Gloucester Place, Kensington
142 Sydney, Australia
143
144 mailto:pcollins@cpan.org
145 Phone: +61 2 9663 4916
146
147 All rights reserved.
148
149MAINTAINER
150 The current maintainer of HTTP-DAV is Cosimo Streppone for Opera
151 Software ASA. You can contact us at "cosimo@cpan.org" or
152 "opera@cpan.org".
153
154LICENSE
155 You may distribute this module under the terms of either the GNU General
156 Public License or the Artistic License, as specified in the Perl README
157 file.
158
159 $Id$
160
161** This file was automatically generated from **
162** doc/Changes.pod. To edit it, see there. **
163