<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
  <body>
    netcurl 6.1.0 just released! But the package has been up and tested
    for a few weeks already and sould be entirely backward-compatible
    with the 6.0-branch. <br>
    <br>
    However, to be sure that the compatibility breaks are prevented (if
    you still uses old classes and calls anywhere), you should consider
    including tornevall/tornelib-php-netcurl-deprecate-60 into your
    installation packages as the choice has been made to not include the
    old name standards at all in the new release.<br>
    <br>
    <b>What's new?</b><br>
    <br>
    The entire structure actually. All drivers are separated into their
    own PSR-4 based modules and can be called separately. To use the old
    way to auto discover available drivers, MODULE_CURL has been
    replaced with NetWrapper, so that's what you're looking for in that
    case. If you are totally sure that you want to use specific drivers
    you can choose to do so.<br>
    <br>
    Another thing that is new, is the way how you configure the drivers.
    There are a bunch of defaults that can be used by setting up a new
    WrapperConfig. This will be covered in the documentation soon. Also,
    the curl driver has been upgraded to support multiple calls in the
    same request (curl_multi). This has not been possible before. Also,
    mentioned below, the SOAP support has been upgraded. Amongst many
    features, WSDL-requests can now be done with or without cache (and
    keep the ability to detect authentication failures in both states).<br>
    <br>
    With the above SOAP support, it was also decided to give
    WrapperConfig to set production/staging mode, where - if you
    initialize wrappers in staging mode - cached requests will be the
    default state for production requests. This will speed up things a
    bit.<br>
    <br>
    Netcurl has also been divided into two separate packages, where the
    old network module is it's own package as of version 6.1.0 - to make
    sure both packages are included in your projects it's sometimes (to
    avoid redundant inclusions with composer) to just load
    tornelib-php-network as netcurl is included as a requirement in that
    package.<br>
    <br>
    Most of the old drivers are from 6.1.0 removed, except for curl,
    streams and SOAP. As stream-drivers are included by default (with
    the binary-ready file_get_contents) I realize that nothing else are
    actually required. However, drivers can be built manually by the
    register functions if they are really necessary. In this release,
    however, an extra RSS parser are included that will use SimpleXML as
    long as Laminas RSS-parser isn't included in the package.<br>
    <br>
    <br>
    <i>Any questions or support related requests can be sent via the
      e-mail list or via <a class="moz-txt-link-abbreviated" href="mailto:support@tornevall.net">support@tornevall.net</a></i><br>
    <br>
    Good luck!<br>
    <br>
    <br>
    <b>For full release notes, you can take a look at the list below.</b><br>
    <br>
        * [NETCURL-225] - NetCURL 6.1.0 EPIC<br>
        * [NETCURL-226] - PSR4 NetCURL+Network (Phase 1)<br>
        * [NETCURL-230] - Wordpress driver in prior netcurl is lacking
    authentication mechanisms<br>
        * [NETCURL-246] - Pipeline errors for PHP 7.3-7.4<br>
        * [NETCURL-272] - getSoapEmbeddedRequest() - PHP 5.6+PHP 7.0<br>
        * [NETCURL-274] - Cached wsdl requests and unauthorized
    exceptions<br>
        * [NETCURL-200] - Confirm (by driver) that a driver is really
    available (update interface with requirements)<br>
        * [NETCURL-209] - Support stream, when curl is not an option<br>
        * [NETCURL-227] - Migrate: getHttpHost()<br>
        * [NETCURL-231] - Move out MODULE_NETWORK to own repo<br>
        * [NETCURL-232] - Make exceptions global<br>
        * [NETCURL-234] - Support immediate inclusions of network
    libraries<br>
        * [NETCURL-238] - Make setTimeout support ms
    (curlopt_timeout_ms)<br>
        * [NETCURL-242] - Disengage from constructor usage<br>
        * [NETCURL-243] - Reimport SSL helper<br>
        * [NETCURL-244] - Reimport curl module<br>
        * [NETCURL-245] - Reimport soapclient<br>
        * [NETCURL-247] - The way we set user agent in the SSL module
    must be able to set in parents<br>
        * [NETCURL-249] - setAuth for curl<br>
        * [NETCURL-251] - setAuth for soap<br>
        * [NETCURL-255] - Add static list of browsers for user-agent <br>
        * [NETCURL-258] - NetWrapper MultiRequest<br>
        * [NETCURL-259] - High focus on curl (rebuild from 6.0)<br>
        * [NETCURL-260] - Current curl implementation is only using GET
    and no advantage of Config<br>
        * [NETCURL-261] - Make sure setAuthentication is a required
    standard in the wrapper interface<br>
        * [NETCURL-263] - Add errorhandler for multicurl<br>
        * [NETCURL-264] - Avoid static constants inside core functions<br>
        * [NETCURL-265] - getCurlException($curlHandle, $httpCode) -
    httpCode is unused. Throw on >400<br>
        * [NETCURL-267] - On http head errors (>400) and non empty
    bodies<br>
        * [NETCURL-268] - Add Timeouts<br>
        * [NETCURL-269] - Proxy support for stream_context<br>
        * [NETCURL-271] - Synchronize with netcurl 6.0 test suites<br>
        * [NETCURL-273] - Support driverless environment<br>
        * [NETCURL-276] - Use a natural soapcall with
    call_user_func_array<br>
        * [NETCURL-277] - Netwrapper Compatibility Service<br>
        * [NETCURL-278] - setChain in 6.1 should throw errors when
    requested true<br>
        * [NETCURL-279] - Make sure setOption is useful in NetWrapper
    and MODULE_CURL or work has been useless<br>
        * [NETCURL-280] - proxy support for curlwrapper and wrappers
    that is not stream wrappers<br>
        * [NETCURL-283] - Use setSignature (?) to make requesting
    clients set internal clientname/version as userAgent automatically
    instead of Mozilla<br>
        * [NETCURL-285] - Reinstate Environment but in ConfigWrapper to
    make wsdl transfers go non-cache vs cache, etc<br>
        * [NETCURL-286] - Move driver handler into own class<br>
        * [NETCURL-287] - Initialize simplified streamSupport<br>
        * [NETCURL-288] - Output support for XML in simpler wrappers<br>
        * [NETCURL-289] - Open for third party identification rather
    than standard browser agent<br>
        * [NETCURL-291] - SoapClient must be reinitialized each time it
    is called<br>
        * [NETCURL-292] - Support basic rss+xml via GenericParser<br>
        * [NETCURL-293] - Try fix proper rss parsing without garbage<br>
        * [NETCURL-294] - Make it possible to initialize an empty
    curlwrapper (without url)<br>
        * [NETCURL-295] - MultiNetwrapper (+Soap)<br>
    <br>
  </body>
</html>