libwww-perl: Distribution Information
Copyright (c) 1994 Regents of the University of California.
libwww-perl is a library of Perl4 packages which
provides a simple and consistent programming interface to the
World-Wide Web. This library is being developed as a collaborative
effort to assist the further development of useful WWW clients and
tools. The library is based on version 4.036 of the Perl Programming Language.
libwww-perl is freely available as described in
the Artistic License which accompanies the
standard distribution. The libwww-perl software
architecture and standard distribution package are copyrighted by the
University of California for the sole purpose of retaining consistency
and coherence in the distribution of the library. Contributions to the
library are strongly encouraged and will be included in the standard
distribution with full citation to the developers.
See below for the list of past and current contributors.
A mailing list has been
established for technical discussion about libwww-perl,
including problem reports, interim fixes, suggestions for features,
and contributions. The mailing list address is
libwww-perl@ics.uci.edu
and administrivia (including subscribe requests) should be sent to
libwww-perl-request@ics.uci.edu
A Hypermail
Archive of the mailing list is also available.
A contrib
directory has been established for perl source that is not (yet)
part of the libwww-perl package, but which may be useful to current
implementors.
Support for the initial development and distribution of libwww-perl
has been provided by the
Arcadia Project at UCI, part of the larger
Arcadia Consortium for
research in software engineering environments.
WWW Requests Currently Supported
-
Proxies
- Full support is provided for redirecting WWW requests
by protocol scheme to a proxy server via the HTTP protocol.
- HTTP/1.0
- All requests and responses for the
Hypertext Transfer Protocol are supported.
- FILE
- Support for GET and HEAD requests on file://localhost URLs
is provided, with results translated to HTTP responses as if they were
handled by an HTTP gateway.
Tools based on libwww-perl
The following tools use libwww-perl and are available at their
own distribution sites:
- MOMspider
- The Multi-Owner Maintenance spider created by Roy Fielding.
-
w3new
- Extract a list of URL's from either your mosaic hotlist or from a
HTML document, retrieve their Last-modified dates, and output a HTML
file with the URL's sorted by their last modification time.
Contributors
Developing code to handle all the request formats and protocols present
on the World-Wide Web is too big a task for any one person or organization.
For that reason, the future of this library is dependent on the contributions
of those who make use of it. Please send in your extensions so that we can
all benefit from the effort required to make distributed information systems
work.
The following developers have contributed (either directly or indirectly)
to the libwww-perl distribution:
- Alberto Accomazzi, Harvard-Smithsonian Center for Astrophysics, USA
- Suggestions for hostname.pl
- James Casey, CERN, Switzerland
- Routines for processing HTML anchors
- Brooks
Cutter, STUFF.com, USA
- Contributed wwwbot.pl, testbot, code for escaping and unescaping URLs,
www'stat(), wwwmailcap.pl, and many suggestions and bug fixes.
- Roy
Fielding, University of California, Irvine, USA
- Architect and primary developer of the library.
- Martijn Koster,
NEXOR Ltd., UK
- Many bug fixes and part of Oscar's http.
- Mel Melchner, AT&T Research, USA
- Suggested changes to get to support the POST method.
- Oscar
Nierstrasz, University of Berne, Switzerland
- Oscar's collection of useful perl scripts formed the basis on
which the wwwhttp.pl and wwwhtml.pl packages were built.
- Gertjan van Oosten, West Consulting bv, NL
- Code for parsing WWW date formats (used in wwwdates.pl)
- Jared Rhine,
Harvey Mudd College, USA
- Makefile/config suggestions.
- Jack Shirazi, BIU, UK
- Many good suggestions regarding alarms and sockets.
- Gene Spafford, Purdue University, USA
- MailStuff package for parsing rfc822 headers.
-
Marc VanHeyningen, Indiana University, USA
- HTML entity stuff and part of Oscar's http.
- Others
- These people contributed to prior packages which influenced the
development of libwww-perl: Steven E. Brenner (cgi-lib),
Marion Hakanson (ctime),
Waldemar Kebsch (ctime), Tony Sanders (Plexus), and Larry Wall (Perl).
The Distribution
For easy distribution, libwww-perl is available as a
gzip'd tar file or as a
compress'd tar file. It is also available via
anonymous
ftp from liege.ics.uci.edu in the directory
/pub/arcadia/libwww-perl
The distribution consists of the following files:
- Artistic.txt
- the Artistic License.
- INSTALL.txt
- Installation instructions and usage information.
- LWP_Changes.pl
- the complete list of changes and version information.
- Makefile
- a Makefile for automating the initial configuration.
- README.html
- this document.
- get
- a simple program for performing WWW GET requests from the
command-line. The name of the program determines what request method
to be used (i.e. create a link to it called "HEAD" and you have a
program that does HEAD requests). This program demonstrates the power
and simplicity of the libwww-perl interface.
- hostname.pl
- a library for determining the fully qualified domain
name for the host running libwww-perl.
- mime.types
- the standard MIME content-types
and default filename extensions in the same format as that used by
NCSA httpd_1.3 and many WWW clients.
- sys_socket_ph.c
- A simple C program for displaying your system's
symbolic values normally found in sys/socket.ph.
- testbot
- a simple program for testing the wwwbot.pl package.
- testdates
- a simple program for testing the wwwdates.pl package.
- testescapes
- a simple program for testing the wwwurl'escape and unescape routines.
- testlinks
- a simple program for testing HTML link extraction and
combinations of GET and HEAD requests.
- www.pl
- the primary entry point for WWW requests -- give it any absolute
URL and a request method and it will try to perform the method using
the URL's protocol scheme (or a proxy).
- wwwbot.pl
- a package for implementing the
robot exclusion protocol.
- wwwdates.pl
- a package of library utilities for reading, manipulating, and
writing dates as they are formatted by most World-Wide Web software
and protocols.
- wwwerror.pl
- a package for defining and generating error messages for requests
which did not make it outside the client program.
- wwwfile.pl
- a package for performing local file requests (URLs of the form
file://localhost/*
) and returning a response as if it
came from an HTTP server.
- wwwhtml.pl
- a package of library utilities for reading and manipulating HTML
documents.
- wwwhttp.pl
- a package for performing HTTP requests (URLs of the form
http:*
).
- wwwmailcap.pl
- a package of library utilities for handling MIME mailcap files
and executing viewers by content-type.
- wwwmime.pl
- a package of library utilities for handling MIME content-types
and message headers.
- wwwurl.pl
- a package of library utilities for parsing, composing,
manipulating, and canonicalizing Uniform Resource Locators (URLs) as
they are used by the World-Wide Web software and protocols.
Current version is 0.40.
If you have any suggestions, bug reports, fixes, or enhancements, send
them to
Roy Fielding at (fielding@ics.uci.edu) or, preferably, join the
libwww-perl mailing list as described above.
Also, we would like to ask anyone who uses libwww-perl on a
regular basis, or intends to include it as part of their own tool, to
please send us an e-mail message which indicates how
and where it is being used. This is, of course, only voluntary and we
don't want anyone to divulge private information, but please
understand that such acknowledgements allow free-software authors like
us to justify the time and effort needed to build quality tools and
development environments.
Please see the file Artistic.txt for complete
licensing and redistribution information.
IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY
FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION
(INCLUDING, BUT NOT LIMITED TO, LOST PROFITS) EVEN IF THE UNIVERSITY
OF CALIFORNIA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
This work was sponsored in part by the Advanced Research Projects
Agency under Grant Number MDA972-91-J-1010. This software does not
necessarily reflect the position or policy of the U.S. Government and no
official endorsement should be inferred. Their support is appreciated.
Roy Fielding <fielding@ics.uci.edu>
Department of Information and Computer Science,
University of California, Irvine, CA 92717-3425
Last modified: Tue Sep 20 18:13:06 1994