1999-04-12 Gisle Aas Release alpha-0.24 "LWPng patch to work with URI" from Blair Zajac . 1998-07-07 Gisle Aas Release alpha-0.23 Introduced LWP::Request->new_response method. This method is used to fabricate all new response objects. It means that a LWP::Request subclasses can now override the response class to make. LWP::Request->gen_response renamed as LWP::Request->give_response. LWP::Conn::_Connect was missing the activate() and stop() methods that the manager could invoke. 1998-07-05 Gisle Aas Release alpha-0.22 LWP::Conn::FILE now works on systems where getpwuid() and getgrgid() do not (i.e. WinNT). Patch by Blair Zajac . LWP::Conn::HTTP and LWP::Conn::FTP now use LWP::Conn::_Connect to to the connection establishment. LWP::Conn::_Connect really works now (I think!) The IO::EINPROGRESS hack is now more forgiving. This hopefully means that we work on WinNT too. 1998-06-27 Gisle Aas Release alpha-0.21 Applied patches by Blair Zajac . Use the POSIX module to obtain EINPROGRESS unless you have a IO module that already support this. Avoid some undef warnings. 1998-04-29 Gisle Aas Release alpha-0.20 LWP::Conn::FTP should work pretty well by now. We support HEAD, GET, PUT, DELETE and TRACE methods. LWP::Authen had not been updated to newest URI::Attr interface changes. LWP::EventLoop->activity can be used to avoid having a socket time out even when there isn't really any activity going on. Needed because the FTP command socket can be non-active for long periods of time. 1998-04-28 Gisle Aas Release alpha-0.19 LWP::Conn::FTP implementation started. 1998-04-24 Gisle Aas Release alpha-0.18 lib/LWP/Authen.pm had fallen out of MANIFEST Introduced LWP::Version (a single place to obtain the library version number from.) Fixed some tests that failed. 1998-04-23 Gisle Aas Release alpha-0.17 Splitting LWP::UA => LWP::UA::Cookies, LWP::UA::Proxy, LWP::Authen LWP::UA interface update - $ua->conn_param gone - $ua->response_received only collects now - $ua->request method Collecting debugging as_string() methods in LWP::Dump LWP::Request callback when sending of the request starts LWP::Server deregister itself when the last connection is gone. All persistent parameters in URI::Attr. LWP::UA now have methods to access it. URI::Attr->p_attr method changed name to 'attr_plain'. bot/* application 1998-04-20 Gisle Aas Release alpha-0.16 Getting rid of some unconditional debug printouts. LWP::EventLoop->one_event and LWP::EventLoop->run now both take an optional timeout argument. Added some documentation to a few modules: LWP::EventLoop, LWP::MainLoop, LWP::Sink, URI::Attr, LWP::Conn 1998-04-07 Gisle Aas Release alpha-0.15 LWP::Conn::HTTP: If a request have a Connection: header with the "close" token, then always make it the last request on this connection. LWP::Conn::HTTP: If the server sends a "Connection: close" header then inhibit further pipelining. Automatically retry non-first request on a connection if the server closes the connection without sending any response. Improved the scheduler. It could previously create too many connections. It now also tries to activate existing connections if we have queued requests. LWP::Conn::HTTP: will emulate IO::Handle->blocking if you use older versions of the IO modules and you have working fcntl(). This means that we now always use non-blocking sockets. 1998-04-06 Gisle Aas Release alpha-0.14 Added LWP::Authen::digest, but it still needs some tweaking. LWP::Conn::HTTP now supports dynamic request content, which is triggered by letting the request->content() be a CODE reference. LWP::Conn::HTTP now supports '101 Swithing protocol' responses. The socket connection is returned as an (unofficial) attribute of the HTTP::Response object. Updated the 'News' file some. 1998-04-01 Gisle Aas Release alpha-0.13 Moved redirect handling and authentication handling to separate modules: LWP::Redirect and LWP::Authen New interface for specific authentication handlers. Renamed LWP::Authen::BASIC to LWP::Authen::basic. Automatic setup of Authorization and Proxy-Authorization headers based on earlier logins after 401/407 responses. Set Date header in requests that have content. term-ua can ask for login information now. It prints a prompt. Command to evaluate perl code. Help command. A response handler can now abort processing of other response handlers by returning the string "ABORT". The "request" hook in the LWP::UA has been renamed "spool_request" and we have inverted the value returned to signal that the request has been handeled. More compact dumping of the URI::Attr object state. LWP::Conn::HTTP now make sure that $req->response_done() is called as the last thing in the event handler routine. This allows it to not return immediately, for instance because a handler ask the human user about how to proceed. The 'authd' test daemon. 1998-03-30 Gisle Aas Release alpha-0.12 Will now copy response_handler hooks when making a clone of a LWP::Request object. Handle "300 Multiple Choices" as 302 if a Location header is found in the response. LWP::Server will now automatically create a new connection if the last connection is closed and we still have requests to do. LWP::UA::setup_proxy returned wrong value when a proxy was already set up. LWP::Conn::HTTP always overwrite the request TE header now. LWP::Sink::_Pipe instead of LWP::Sink::_trans. push() instead of append(). LWP::Sink::identity can buffer data now. Implemented LWP::Sink::Buffer and LWP::Sink::qp. 1998-03-26 Gisle Aas Release alpha-0.11 Added the testd/* daemon that makes it easy to generate various responses in order to test HTTP client libraries. Support chained transfer encodings. deflate/base64/rot13/identity. We had an infinite loop if a chunk header happened to be divided on the wire. LWP::Sink::identity should not close its sink if it was a CODE reference. 1998-03-25 Gisle Aas Release alpha-0.10 Added LWP::Sink modules. Plan is to use them to implement stacked transfer encodings and stuff like that. LWP::Conn::HTTP beginning to support the TE header. LWP::Conn::HTTP skip all 1xx responses. 1998-03-23 Gisle Aas Release alpha-0.09 More experiments with hooks, also for LWP::Requests. New module LWP::Hooks which both LWP::UA and LWP::Request inherit from. Both redirect and authentication handled by hooks. Renamed $server->status to $server->c_status. Implemented $ua->cookie_jar 1998-03-19 Gisle Aas Release alpha-0.08 Updated documentation ('News') LWP::Request::clone also copies flags now Renamed LWP::Request::done() to LWP::Request::response_done() LWP::Server maintains 'created', 'request_count', 'last_request_time' attributes. LWP::Conn::FILE support the ETag header and corresponding If-headers. LWP::Conn::HTTP did not stop after the first successful connect to a multihomed site. LWP::Conn::HTTP would not honor the protocol version if specified in the LWP::Request. We also add a 'Connection: close' header for the last request sent on a connection. Allow LWP::Request response_data() to die in order to signal that the connection should be broken. 1998-03-18 Gisle Aas Release alpha-0.07 Introduced LWP::StdSched, LWP::Request, URI::Attr classes. Implement file:/... access. (LWP::Conn::FILE) Started to write some documentation (the 'News' file). Made $ua->spool more robust in case of bad request. Ensure that all requests get a response_done() callback. Introduced 'term-ua' LWP::EventLoop will protect timer callbacks with eval { ... } Various tweaks and additions to LWP::UA/LWP::Server LWP::Conn::HTTP: - died when gethostbyname() failed - did not set $idle_timeout on startup in Idle mode - would call pushback with 0 request on error. - changed error code (now use 591) - zap requests queue if the Connect state result in error - callbacks to Mgr when going active/idle - introduce Closed state 1998-03-13 Gisle Aas Release alpha-0.04 After a long period of ignoring it I once again started to work on LWP-ng. Made the LWP::UA and LWP::Server class working again. 1997-12-11 Gisle Aas Release alpha-0.03 Minor changes since 0.01. Some testing scripts. Renaming of connection class to LWP::Conn::HTTP. 1997-11-26 Gisle Aas Release alpha-0.01 The start of this project. Basic implementation of LWP::EventLoop and LWP::HConn finished.