Skip to content

Latest commit

 

History

History
90 lines (89 loc) · 3.29 KB

changelog.org

File metadata and controls

90 lines (89 loc) · 3.29 KB

Asynchronous HTTP Client - Clojure - Changelog

Release 0.3.0

Upgrade async-http-client to v1.6.3

Control over preemptive authentication

Patch provided by xeqi.

Explicit client usage

Now following functions require client as first argument:

  • GET
  • PUT
  • POST
  • DELETE
  • HEAD
  • OPTIONS
  • request-stream
  • stream-seq
  • execute-request

You still create client with create-client function.

Removed with-client macro

This didn’t really bring much value. Migration path. From:

(with-client {:key val}
  ;; client usage
  (let [resp (GET url)]))

To:

(with-open [client (create-client :key val)]
  ;; client usage
  (let [resp (GET client url)]))

Clojure 1.2.1

Fixed cyclic dependency that was preventing http.async.client from been used in Clojure 1.2.1.

Release 0.2.2

get-encoding helper works w/o Content-Type header

Upgrade async-http-client to v.1.5.0

Exposed more configuration options

Timeouts

Proxy

Authentication

Zero byte copy mode

If sending File as body, zero byte copy is used.

Allow providing your own poll

Vadim Geshel contribution.

Allow Asynchronous Connect

Vadim Geshel contribution.

Fix seq streaming API

Previous versions of seq streaming API have been holding to head, not anymore.

Lots of performance improvements

Underlying async-http-client has undergone serious optimization changes.

Release 0.2.1

Terminate body seq if errored

Canceling request

http.async.client/cancel and http.async.client/canceled?

Request timeout

Per request configuration of request timeout in ms.

(GET url :timeout 100)

Close client

http.async.client/close.

(c/close)
;; or
(c/close hac)

Upgrade to v1.3.2 of async-http-client

Release 0.2.0

Stream as seq

Response body can be seq, this allows for easy HTTP Stream handling. Documentation.

Cookies

Added cookies support. Sending and receiving.

Authentication support

Basic and Digest from rfc2617 are supported. Documentation.

Proxy per request

Proxy can be specified per request. Documentation.

Branding User-Agent

Specifying User-Agent per client. *http.async.client/create-client* and *http.async.client/with-client*.

Keyworded maps in API

Like :options in *http.async.client/GET*.