aboutsummaryrefslogtreecommitdiff
tag namev0.1.3 (2b4759ddc3b8e30e14ef8696c5f3e80c7c94837e)
tag date2020-10-28 16:50:30 -0400
tagged byAdnan Maolood <[email protected]>
tagged objectcommit 66e4dc86d5...
downloadarchived-go-gemini-0.1.3.tar.xz
archived-go-gemini-0.1.3.zip
Version 0.1.3 is released!
Version 0.1.3 brings a lot of changes and improvements. (*Response).Body is now an io.ReadCloser, allowing you to pass it directly to Parse. Clients are responsible for closing response bodies when they are finished with them. Responses now store a reference to the Request that was sent to obtain them. NewRequest no longer accepts a URL with a scheme other than gemini://. This is to avoid misinterpreting links to content over other schemes. If you need this behavior (e.g. for making a request to a proxy), you can manually create a Request and specify the URL and Host fields. Client has a new convenience function, Get, which takes a raw URL string as an argument. No need to call NewRequest for simple requests. Clients can now automatically follow redirects. You can control this behavior in (Client).CheckRedirect. By default, the client will not follow more than 5 consecutive redirects. The function NewCertificate has been renamed to CreateCertificate. It now takes a CertificateOptions argument. The client certificate story has been improved. Client certificates are now restricted to the hostname and path they were created for. The function (Client).GetCertificate has been replaced by a new function, (Client).CreateCertificate, which is called whenever a server requests a certificate that the client does not already have stored. The client now takes care of storing the created certificate for you. A new function called (Client).GetInput has been added, which makes it easy for clients to provide input upon the request of a server. The server certificate story has also been improved. The function (Server).GetCertificate has been replaced by a new function, (Server).CreateCertificate, which is called whenever a certificate is missing or expired. The server now takes of storing the created certificate for you. You still have to write the new certificate to disk, though.