Please read the history bottom-up. Note that the history might list some
features that were implemented in beta versions and removed later but are
still mentioned here. This history is a log of the programmer so that he
can look up what has been done/tried/modified. Things that were implemented
and removed later are marked with [VOID].

Version 2.2   (18-Sep-26)
- Change: Updated documentation
- Change: Updated inbuilt CA certificates to the latest ones from Mozilla (August 13th, 2026)
- Change [Amiga]: The Amiga version will not try to open bsdsocket.library and AmiSSL on @REQUIRE any
  longer; this initialization will only be done now once a script actually tries to use a hURL function;
  this allows you to write scripts which run on systems without bsdsocket.library or AmiSSL too even
  though they have a @REQUIRE "hurl" statement in the preprocessor commands (requested by Niels Schapke)
- New [macOS/PPC]: Upgraded the OpenSSL version in the macOS PPC build of hURL from OpenSSL 1.0 to 3.5.8  
- New [Linux]: Added alternative builds that use a statically linked version of OpenSSL instead of the
  OpenSSL version installed on the system; these alternative builds can be useful on older Linux versions
  where the system OpenSSL version is outdated; the disadvantage is that the builds of hURL containing
  a statically linked version of OpenSSL are much bigger in size than the ones that just load the system's
  OpenSSL; here are the version requirements for the system OpenSSL builds: OpenSSL 3.x for the x64 and
  arm64 builds of hURL vs. OpenSSL 1.1.1 for the x86 and arm builds vs OpenSSL 1.0 for the ppc build
- New [Windows/macOS]: Added alternative builds that use OpenSSL instead of the native SSL/TLS provider 
  in Windows and macOS; on macOS this has the advantage that it's possible to use protocols provided by
  libssh2 like SFTP now which isn't possible with the hURL build that uses the macOS native SSL provider;
  on Windows there's also an advantage because Windows' native SSL/TLS provider sometimes has problems
  with certain authentification methods; OpenSSL is more robust here; also, the OpenSSL-based version of
  hURL could be useful with older Windows or macOS versions where the native SSL/TLS provider is no longer
  up to date and thus fails to connect to most servers; the disadvantage of the OpenSSL-based builds is of
  course that they're of course much larger in size because they contain a stand-alone version of OpenSSL
  (requested by Achim Kern)
- Fix: Using Hollywood's UploadFile() function with hURL didn't always work correctly

Version 2.1   (25-Apr-26)
- Change: Updated documentation
- Change: Updated inbuilt CA certificates to the latest ones from Mozilla (February 11th, 2026)
- Change [Amiga]: The plugin will no longer install itself to an own directory but it will copy the doc
  to the Hollywood installation directory; it will also no longer create a hURL: assign during installation;
  if you're updating from a previous installation, you can safely remove the old hURL: assign
- New [Linux]: Added builds for the Linux arm64 platform; two separate flavours are available: one for
  OpenSSL 1.1.1 and one for OpenSSL 3.x
- New: Version string in the binary contains the precise CPU architecture specification now, e.g. it is
  now "x64-linux" instead of just "Linux"
- New: Added interface for other plugins wishing to use hURL functions; this makes it possible for plugins
  like HTTP Streamer to establish connections managed by the hURL plugin
- New [MorphOS]: Added support for multithreaded access to bsdsocket.library/OpenSSL  
- Fix [AROS]: Wrong initialization of AmiSSL
- Fix: Uploading files with a filesize of 0 bytes didn't work when using Hollywood's UploadFile() function
  (reported by Anbjorn Myren)
  
Version 2.0   (29-Apr-23)
- Change: Updated documentation
- Change: Updated inbuilt CA certificates to the latest ones from Mozilla (January 10th, 2023)
- New [macOS]: Added build for the macOS ARM64 platform which is supported since Hollywood 10
- New [Linux/x64]: Added separate build for OpenSSL 3 for use with more recent Linux distros
- Fix: Memory access fault when SFTP authentification failed (reported by Petteri Valli)
- Fix [Android]: curl's verbose output is now visible in LogCat
- New [Android]: libssh2 is now supported on Android as well which makes it possible to use the SCP and
  SFTP protocols (among others) with hURL
- Change [Amiga]: hURL uses the system's root CA certificates now (MOSSYS:Data/SSL/curl-ca-bundle.crt on
  MorphOS and AmiSSL:Certs on the other platforms)
- New: Added easy:Upkeep() method to perform connection upkeep checks
- New: Added support for curl's MIME interface; this supersedes the old form interface which is still
  supported by hURL; use easy:MIME() to create a new MIME object and then you can use the following
  methods to work with the MIME object: mime:AddPart(), mime:Easy(), mime:Free(), mimepart:Subparts(),
  mimepart:Data(), mimepart:FileData(), mimepart:Headers(), mimepart:Name(), mimepart:Filename(),
  mimepart:Type() mimepart:Encoder(), mimepart:Free(); after you have initialized your MIME object, you
  can pass it to #CURLOPT_MIMEPOST
- New: Added support for curl's URL interface; you can use hurl.URL() to construct a URL object and
  then use the following methods to configure the URL object: url:SetFragment(), url:SetHost()
  url:SetOptions(), url:SetPassword(), url:SetPath(), url:SetPort(), url:SetQuery(), url:SetScheme(),
  url:SetURL(), url:SetUser(), url:SetZoneID(), url:GetFragment(), url:GetHost(), url:GetOptions(),
  url:GetPassword(), url:GetPath(), url:GetPort(), url:GetQuery(), url:GetScheme(), url:GetURL(),
  url:GetUser(), url:GetZoneID(), url:Dup(), url:Free(); after you have initialized your URL object
  you can pass it to #CURLOPT_CURLU
- New: Added #CURLINFO_TOTAL_TIME_T, #CURLINFO_NAMELOOKUP_TIME_T, #CURLINFO_CONNECT_TIME_T,
  #CURLINFO_PRETRANSFER_TIME_T, #CURLINFO_STARTTRANSFER_TIME_T, #CURLINFO_REDIRECT_TIME_T, 
  #CURLINFO_APPCONNECT_TIME_T, #CURLINFO_RETRY_AFTER, #CURLINFO_EFFECTIVE_METHOD, #CURLINFO_PROXY_ERROR,
  #CURLINFO_REFERER, #CURLINFO_CAINFO, #CURLINFO_CAPATH for use with easy:GetInfo()
- New: Added support for #CURLMOPT_MAX_CONCURRENT_STREAMS for multi objects
- New: Added support for #CURLOPT_SSH_COMPRESSION, #CURLOPT_TIMEVALUE_LARGE, #CURLOPT_MAXAGE_CONN,
  #CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS, #CURLOPT_HAPROXYPROTOCOL, #CURLOPT_DNS_SHUFFLE_ADDRESSES,
  #CURLOPT_TLS13_CIPHERS, #CURLOPT_DISALLOW_USERNAME_IN_URL, #CURLOPT_DOH_URL, #CURLOPT_UPLOAD_BUFFERSIZE,
  #CURLOPT_UPKEEP_INTERVAL_MS, #CURLOPT_HTTP09_ALLOWED, #CURLOPT_ALTSVC_CTRL, #CURLOPT_ALTSVC, 
  #CURLOPT_SASL_AUTHZID, #CURLOPT_MAIL_RCPT_ALLOWFAILS, #CURLOPT_SSLCERT_BLOB, #CURLOPT_SSLKEY_BLOB,
  #CURLOPT_PROXY_SSLCERT_BLOB, #CURLOPT_PROXY_SSLKEY_BLOB, #CURLOPT_ISSUERCERT_BLOB, 
  #CURLOPT_PROXY_ISSUERCERT, #CURLOPT_PROXY_ISSUERCERT_BLOB, #CURLOPT_SSL_EC_CURVES, #CURLOPT_HSTS_CTRL,
  #CURLOPT_HSTS, #CURLOPT_AWS_SIGV4, #CURLOPT_DOH_SSL_VERIFYPEER, #CURLOPT_DOH_SSL_VERIFYHOST,
  #CURLOPT_DOH_SSL_VERIFYSTATUS, #CURLOPT_CAINFO_BLOB, #CURLOPT_PROXYINFO_CAINFO_BLOB,
  #CURLOPT_MAXLIFETIME_CONN, #CURLOPT_MIME_OPTIONS, #CURLOPT_PROTOCOLS_STR, #CURLOPT_REDIR_PROTOCOLS_STR,
  #CURLOPT_WS_OPTIONS, #CURLOPT_CA_CACHE_TIMEOUT, #CURLOPT_QUICK_EXIT, #CURLOPT_MIMEPOST, #CURLOPT_CURLU,
  #CURLOPT_RESOLVER_START_FUNCTION, #CURLOPT_TRAILERFUNCTION, #CURLOPT_HSTSREADFUNCTION, 
  #CURLOPT_HSTSWRITEFUNCTION, #CURLOPT_PREREQFUNCTION, #CURLOPT_SSH_HOSTKEYFUNCTION; you can set/unset
  these options either using the generic easy:SetOpt() and easy:UnsetOpt() methods or using the specific
  methods like easy:SetOpt_SSH_Compression() or by passing the options in the argument table when creating
  easy handles using hurl.Easy()
- New [AROS]: Added AROS version of hURL; this requires AmiSSL4 because AmiSSL5 isn't available on AROS yet
- New [OS3/OS4]: hURL uses AmiSSL 5 instead of AmiSSL 4 now
- New: Updated to curl 8.0.1 and libssh2 1.10.0
- Change [MorphOS]: hURL on MorphOS doesn't use AmiSSL any longer but MorphOS' native implementation of
  OpenSSL 3 (openssl3.library); this means that hURL requires MorphOS 3.16 or better now
- Fix: DownloadFile()'s "PostType" tag wasn't supported by hURL (reported by Petteri Valli)
- Fix: The "Encoded" tag of the DownloadFile() and UploadFile() commands wasn't handled correctly by hURL
  (reported by Petteri Valli)
- Fix: The "Fail404" tag of DownloadFile() was ignored by hURL (reported by Anbjorn Myren)

Version 1.2   (20-Nov-21)
- Change: Updated documentation
- Change: Updated inbuilt CA certificates to the latest ones from Mozilla (October 26th, 2021)
- New: Added some examples for doing some common jobs using the lowlevel interface
- New [x64-linux/arm-linux]: Added separate builds for OpenSSL 1.1.1 for use on newer Linux versions
  that don't come with OpenSSL 1.0.2 any longer (reported by Niels Schapke)
- New [Doc]: Added examples for #CURLOPT_HTTPHEADER, #CURLOPT_READFUNCTION and #CURLOPT_WRITEFUNCTION
  (requested by Michael Rupp)
- New: Added support for Hollywood 9.0's new custom protocol interface; this means that Hollywood's 
  DownloadFile() and UploadFile() commands will now support for all protocols that hURL supports as
  well; this should make things much easier for beginners who are struggling to get started with
  using hURL's functions directly
  
Version 1.1   (21-Dec-20)
- Change: Updated documentation
- Change: Amiga installer will now also copy the plugins for all platforms to Hollywood's linker plugins
  directory so that they can be easily linked to executables (suggested by kas1e)
- Change: Updated inbuilt CA certificates to the latest ones from Mozilla (December 8th, 2020)
- New: multi:InfoRead() returns a fourth value now; this return value will contain the easy handle
  that has previously been added to the multi handle (requested by Amile)
- New: Added support for SFTP and SCP; although hURL 1.0 claimed those to be supported they didn't
  work because hURL was compiled without libssh2; hURL 1.1 now contains libssh2 so SFTP and SCP will
  work as well (reported by Petteri Valli)
- Fix: All options of type CURLOPT_XXX_LARGE (e.g. CURLOPT_RESUME_FROM_LARGE) were broken on pretty
  much all platforms except 64-bit Windows (reported by Petteri Valli)
- Fix [MorphOS]: Fixed hURL to be compatible with the 68k version of AmiSSL (reported by Juan Carlos
  Herran Martin and Petteri Valli)
   
Version 1.0   (31-Mar-19)
- First Release
