- ensure unbuffered-stream correctly handles 204 responses with no body in the response.
- add support for multiple
Set-Cookie
headers in a response separated by newlines. - update project.clj to remove composite profiles that include maps, it is deprecated in lein 2.11.0
- PE-34843 Properly reuse connections when using a client certificate
- Update to clj-parent 5.2.11
- update to clj-parent 5.2.6 to move from bouncy-castle
15on
libraries to the18on
version - Use
OPTIONS
request method when calling the synchronous client'soptions
function.
- PE-33177 Add TLSv1.3 to ClientOptions default SSL protocols and remove TLSv1 and TLSv1.1.
- Public release of 1.2.3, no other changes.
- SERVER-3068 Conditionally allow auth headers when being redirected.
- Internal release of 1.2.1, no other changes.
- SERVER-3068 Do not copy auth headers when being redirected.
- SERVER-2780 Add reason phrase to HTTP response
- [PE-27189]((https://tickets.puppetlabs.com/browse/PE-27189) Disambiguate ambiguous type specifications
- PE-26658 Apply JVM security policy to FIPS
- Released by automation w/o content
- PDB-4357 FIPS support via bc-fips jar
- Adds
::max-connections-total
and::max-connections-per-route
to allow the Apache HTTP client values to be overridden. They default to 20 and 2 (to correlate to the Apache client behavior) respectively. - Update to clj-parent 1.7.12. This moves the library to require Java 8.
This is a feature release
- TK-443 Adds
:enable-url-metrics?
andsetEnableURLMetrics
to the clojure and java APIs respectively. This allows disabling autogenerated url based metrics. - PE-19979 & SERVER-1733 Update dependencies via clj-parent (i18n dependency specifically).
This is a feature release
- PDB-2640 Added a
:compress-request-body
request option which allows for the request body content to be gzip-compressed before forwarding it on to the server
This is a feature release
- SERVER-1556 Add puppetlabs/clj-i18n support to clj-http-client.
- Pass the global i18n locale binding in the "accept-language" header of Clojure client requests.
This is a feature and maintenance release
- TK-179 Refactor to eliminate Clojure/Java duplication
- TK-316 Add support for metrics
- TK-317 Add ability to pass a metrics-id
- TK-354 Add documentation on metrics
- TK-308 Bump Apache HttpAsyncClient library to 4.1.2
- TK-402 Allow metric namespace to be configurable
- Bump Trapperkeeper and Kitchensink dependencies from 1.1.1 to 1.5.1 (TK) and 1.2.0 to 1.3.0 (KS).
This is a feature release.
- TK-312 Unbuffered streams in Java to match clojure support released in 0.4.5.
- Add request function to clojure client protocol.
This is a maintenance release.
- TK-303 - update dependencies to use Apache httpasyncclient v4.1.1.
This is a feature release, and probably should have been 0.5.0 in order to comply with semantic versioning.
- Add support for streaming responses in the Clojure API - (ca5ad63) Scott Walker scott.walker@puppetlabs.com
This is a maintenance release.
- TK-196 - update prismatic dependencies to the latest versions.
This is a feature release.
- TK-134 - Introduced two new
optional client configuration settings:
connect-timeout-milliseconds
: maximum number of milliseconds that the client will wait for a connection to be established.socket-timeout-milliseconds
: maximum number of milliseconds that the client will allow for no data to be available on the socket before closing the underlying connection, 'SO_TIMEOUT' in socket terms.
This is a bugfix release.
- TK-145 - Fixed a bug which
caused some HTTP requests to incorrectly have
charset=UTF-8
added to theirContent-Type
headers.
This is a maintenance release.
- Add documentation for making requests using the Java and Clojure clients.
- Upgrade jvm-ssl-utils (previously known as jvm-certificate-authority) dependency to 0.7.0.
- Upgrade clj-kitchensink dependency to 1.0.0.
- Upgrade trapperkeeper dependency to 1.0.1.
This is a feature release which has some breaking changes.
- Support for non-client bound asynchronous requests has been removed from both
the Clojure and Java-layer APIs. This includes all of the request functions
that previously existed in the
client.async
Clojure namespace and the request methods in theAsyncHttpClient
Java class. - Add a Java-layer API for getting an instance of an HttpClient on which
multiple requests -- e.g.., GET, POST -- can be made. Clients are created
via the
createClient
method on the newAsync
andSync
classes, for a client that can make asynchronous or synchronous web requests, respectively. - Non-client bound synchronous requests can still be performed through the Java
API but must now be done through the
Sync
classes rather than theSyncHttpClient
class. TheSyncHttpClient
class is now used as the type of the instance that theSync.createClient()
method returns. - The Java
RequestOptions
class was refactored into newClientOptions
andRequestOptions
classes which can be used with the client-boundAsync
andSync
APIs. For non-client bound requests, options are now defined via aSimpleRequestOptions
class. - Reworked connection close behavior to more robustly handle successful and failed connections.
This is a bugfix release.
- Fix a memory leak that occurred as a result of connection failures.
This is a feature release.
- Add configuration settings for SSL Protocols and Cipher Suites to both the Java and Clojure clients.
This is a bugfix release.
- Fix a bug in the Java client API that caused a file descriptor leak each time a client was created for a new request.
This is a bugfix release.
- Fix a bug where the character encoding was always being set to ISO-8859-1 w/o a charset ever being explicitly specified in the Content-Type header. We now honor the existing charset if there is one in the header, and otherwise we use UTF-8 and explicitly add the charset to the header.
- Add :follow-redirects and :force-redirects options to the clojure client.
- Add followRedirects and forceRedirects options to the Java client.
- Add an overloaded constructor for
RequestOptions
that accepts a String uri
- Fix a bug in the Java client API that caused an NPE if a Content-Type header did not specify a charset
- No changes
- Add back in support for query-params map in Clojure API
- Upgrade to Apache HttpAsyncClient v4.0.2 (fixes a bug where headers don't get included when following redirects).
- Port the code to use the Apache HttpAsyncClient library instead of http-kit.
- The API around creating a persistent client has changed and persistent clients are explicitly managed
- The available request options have changed. Some convenience options have been removed.
- Explicitly target JDK6 when building release jars
- Add support for configuring client SSL context with a CA cert without a client cert/key
- Update to latest version of puppetlabs/kitchensink
- Use puppetlabs/certificate-authority for SSL tasks
- Fix bug in sync.clj when excluding clojure.core/get
- Added a Java API for the synchronous client