Oleg Kalnichevski [Sun, 7 Feb 2021 14:19:34 +0000 (15:19 +0100)]
HttpClient 5.1-beta1 release
Oleg Kalnichevski [Sun, 7 Feb 2021 11:16:39 +0000 (12:16 +0100)]
Updated copyright statement in NOTICE.txt
Oleg Kalnichevski [Sat, 6 Feb 2021 17:05:01 +0000 (18:05 +0100)]
Deprecated some URIUtils methods in favor of URIBuilder
Oleg Kalnichevski [Sat, 6 Feb 2021 16:36:24 +0000 (17:36 +0100)]
Request message copy optimization
Oleg Kalnichevski [Sat, 6 Feb 2021 13:13:47 +0000 (14:13 +0100)]
Updated release notes for HttpClient 5.1-beta1 release
Oleg Kalnichevski [Sat, 6 Feb 2021 12:28:08 +0000 (13:28 +0100)]
Upgraded project version to 5.1-beta1-SNAPSHOT
Oleg Kalnichevski [Sat, 6 Feb 2021 12:26:05 +0000 (13:26 +0100)]
RFC 3986 conformance: re-use URIBuilder new functionality in URIUtils#normalizeSyntax
Oleg Kalnichevski [Fri, 5 Feb 2021 21:24:08 +0000 (22:24 +0100)]
Upgraded HttpCore to version 5.1-beta3
Arturo Bernal [Fri, 5 Feb 2021 13:00:06 +0000 (14:00 +0100)]
Minor Improvement:
* Avoid duplicate code
* Simplify if else
* Inline variables
Hervé Boutemy [Fri, 29 Jan 2021 07:05:33 +0000 (08:05 +0100)]
scm-publish to /components/httpcomponents-client-5.0.x/LATEST
Arturo Bernal [Mon, 25 Jan 2021 19:12:15 +0000 (20:12 +0100)]
Minor Improvements:
* Use Empty collections
* Unnecessary toString
Oleg Kalnichevski [Sun, 17 Jan 2021 10:12:33 +0000 (11:12 +0100)]
No need to copy example sources as resources when generating site content
Hervé Boutemy [Sun, 10 Jan 2021 17:07:02 +0000 (18:07 +0100)]
activate SCM publish to /httpcomponents-client-5.0.x/doc/
Hervé Boutemy [Sat, 9 Jan 2021 20:51:14 +0000 (21:51 +0100)]
improve documentation format
Arturo Bernal [Mon, 4 Jan 2021 20:16:34 +0000 (21:16 +0100)]
Minor Improvements:
* Remove redundant initialization
Oleg Kalnichevski [Sun, 20 Dec 2020 13:00:19 +0000 (14:00 +0100)]
Improved context and wire logging
Oleg Kalnichevski [Sat, 19 Dec 2020 11:12:15 +0000 (12:12 +0100)]
Improved I/O session logging
Marcono1234 [Wed, 23 Dec 2020 23:36:35 +0000 (00:36 +0100)]
Fix incorrect logger API dependency in README
Marcono1234 [Wed, 23 Dec 2020 18:06:54 +0000 (19:06 +0100)]
Convert README to markdown
Arturo Bernal [Thu, 31 Dec 2020 07:39:22 +0000 (08:39 +0100)]
Minor Improvements:
* Add final to variable
* Unnecessary semicolon
* Use Standard Charset object
* Unnecessary conversion to String
* Simplifiable conditional expression
* Replace 'Arrays.asList()' with Collections.singletonList
* Redundant local variable. Simplify
Rob Spoor [Wed, 9 Dec 2020 10:54:58 +0000 (11:54 +0100)]
Add interceptors before MAIN_TRANSPORT so they won't be ignored (#272)
Carter Kozak [Sun, 6 Dec 2020 21:38:16 +0000 (16:38 -0500)]
HTTPCLIENT-2104: ManagedHttpClientConnectionFactory supports ResponseOutOfOrderStrategy configuration
Oleg Kalnichevski [Wed, 2 Dec 2020 15:11:30 +0000 (16:11 +0100)]
Fixed generics
Oleg Kalnichevski [Wed, 2 Dec 2020 15:11:14 +0000 (16:11 +0100)]
Upgraded HttpCore to version 5.1-beta2
Oleg Kalnichevski [Sun, 29 Nov 2020 13:33:32 +0000 (14:33 +0100)]
External compatibility tests to use HTTP protocol negotiation settings
Gary Gregory [Tue, 24 Nov 2020 14:26:26 +0000 (09:26 -0500)]
Document PR #270: Master try w res and more.
Gary Gregory [Mon, 23 Nov 2020 17:14:22 +0000 (12:14 -0500)]
Remove redundant returns.
Gary Gregory [Mon, 23 Nov 2020 16:43:24 +0000 (11:43 -0500)]
Remove redundant modifiers.
- All methods in a final class are already final.
- All members of an interface are public.
- All inner enums are static.
Gary Gregory [Mon, 23 Nov 2020 16:26:22 +0000 (11:26 -0500)]
Simplify if/else.
Gary Gregory [Mon, 23 Nov 2020 16:17:54 +0000 (11:17 -0500)]
Add missing @Override.
Gary Gregory [Mon, 23 Nov 2020 15:54:36 +0000 (10:54 -0500)]
Use Arrays.fill().
Gary Gregory [Mon, 23 Nov 2020 15:43:21 +0000 (10:43 -0500)]
Use try-with-resources.
Koji Lin [Fri, 6 Nov 2020 08:49:55 +0000 (17:49 +0900)]
Fix NPE when H2/Async client interceptors are added using first/last (#268)
Oleg Kalnichevski [Fri, 6 Nov 2020 08:37:25 +0000 (09:37 +0100)]
HTTPCLIENT-2126: `InternalAbstractHttpAsyncClient` incorrectly handles response messages with no enclosed entity
Martin Tzvetanov Grigorov [Tue, 3 Nov 2020 14:13:54 +0000 (16:13 +0200)]
Build and test on both AMD64 and ARM64
Use 'arm64' instead of 'arm64-graviton2'
The Graviton2 builder is available only on travis-ci.com. Apache uses travis-ci.org
Install Maven explicitly because it is not pre-installed on the ARM64 image for Trusty
Oleg Kalnichevski [Thu, 5 Nov 2020 14:09:31 +0000 (15:09 +0100)]
HTTPCLIENT-2126: `AsyncCachingExec` throws NPE when response body is null
Artem Smotrakov [Fri, 30 Oct 2020 13:03:29 +0000 (14:03 +0100)]
Set up CodeQL scans
Artem Smotrakov [Fri, 30 Oct 2020 12:47:00 +0000 (13:47 +0100)]
Added a security policy
Artem Smotrakov [Thu, 29 Oct 2020 16:30:54 +0000 (17:30 +0100)]
Fixed several findings from LGTM.com
- Fixed a few possible null dereferences
- Fixed a few possible out-of-bound array ops
- Added a couple of test cases
Gary Gregory [Sun, 25 Oct 2020 20:29:31 +0000 (16:29 -0400)]
[HTTPCLIENT-2124] NullPointerException in MinimalHttpClient.doExecute(HttpHost, ClassicHttpRequest, HttpContext) (#261)
Oleg Kalnichevski [Thu, 22 Oct 2020 15:38:43 +0000 (17:38 +0200)]
HTTPCLIENT-2122: async client to throw `HTTP/2 tunneling not supported` protocol exception in case of `force HTTP/2` version policy used along with request proxy routing
Oleg Kalnichevski [Wed, 21 Oct 2020 17:39:05 +0000 (19:39 +0200)]
HTTPCLIENT-2123: H2AsyncClientBuilder incorrectly adds last request interceptors to the head of the interceptor list
Oleg Kalnichevski [Sat, 17 Oct 2020 10:07:36 +0000 (12:07 +0200)]
HTTPCLIENT-2119: added missing system properties to HttpClientBuilder javadocs
Varun Sivapalan [Tue, 6 Oct 2020 08:09:44 +0000 (10:09 +0200)]
Fix typo in enum
Oleg Kalnichevski [Sat, 3 Oct 2020 10:12:58 +0000 (12:12 +0200)]
HTTPCLIENT-2118: Corrected PoolingHttpClientConnectionManager javadocs
Oleg Kalnichevski [Sat, 19 Sep 2020 10:56:23 +0000 (12:56 +0200)]
RFC 3986 conformance: corrected handling of path segments by `URIUtils#normalizeSyntax`; optimized path segment operations
Oleg Kalnichevski [Thu, 17 Sep 2020 09:21:09 +0000 (11:21 +0200)]
RFC 3986 conformance: revised and optimized `URIUtils#extractHost`
Oleg Kalnichevski [Wed, 16 Sep 2020 15:17:44 +0000 (17:17 +0200)]
Replaced deprecated URLEncodedUtils
Oleg Kalnichevski [Wed, 16 Sep 2020 15:14:11 +0000 (17:14 +0200)]
Replaced deprecated TokenParser
Oleg Kalnichevski [Wed, 16 Sep 2020 14:58:52 +0000 (16:58 +0200)]
Upgraded HttpCore dependency to version 5.1-beta1
Michael Osipov [Tue, 18 Aug 2020 10:16:46 +0000 (12:16 +0200)]
Use decimal numbers for endpoint/execution IDs
This closes #249
Oleg Kalnichevski [Mon, 10 Aug 2020 13:28:44 +0000 (15:28 +0200)]
HTTPCLIENT-2106: Added charset parameter for DigestScheme
Carter Kozak [Tue, 4 Aug 2020 19:06:34 +0000 (15:06 -0400)]
HTTPCLIENT-2103: ManagedHttpClientConnectionFactory provides a fluent builder
Oleg Kalnichevski [Sat, 19 Sep 2020 11:06:32 +0000 (13:06 +0200)]
Fixed 'JdbcRowSetImpl is internal proprietary API and may be removed in a future release' warning
Oleg Kalnichevski [Sun, 27 Sep 2020 10:12:59 +0000 (12:12 +0200)]
Upgraded HttpClient version to 5.0.3-SNAPSHOT
Oleg Kalnichevski [Tue, 22 Sep 2020 09:00:46 +0000 (11:00 +0200)]
Updated release notes for HttpClient 5.0.2 release
Michael Osipov [Mon, 21 Sep 2020 09:43:02 +0000 (11:43 +0200)]
Move public suffix list to generate-resources and apache-release profile
Michael Osipov [Mon, 21 Sep 2020 09:34:44 +0000 (11:34 +0200)]
Add project modules to dependency management
Michael Osipov [Mon, 21 Sep 2020 09:22:24 +0000 (11:22 +0200)]
Unify JXR and Surefire report config
Michael Osipov [Mon, 21 Sep 2020 09:15:47 +0000 (11:15 +0200)]
Unify Javadoc report config
Michael Osipov [Mon, 21 Sep 2020 09:07:50 +0000 (11:07 +0200)]
Remove plugin executions run by release already
Michael Osipov [Mon, 21 Sep 2020 09:03:08 +0000 (11:03 +0200)]
Remove default config
Michael Osipov [Mon, 21 Sep 2020 08:58:51 +0000 (10:58 +0200)]
Update SCM URLs
Michael Osipov [Mon, 21 Sep 2020 08:56:49 +0000 (10:56 +0200)]
Upgrade Parent to 12
Massively remove everything already present in the parent POM.
Michael Osipov [Mon, 21 Sep 2020 08:51:10 +0000 (10:51 +0200)]
Replace HTTP with HTTPS
Oleg Kalnichevski [Wed, 16 Sep 2020 09:23:09 +0000 (11:23 +0200)]
HTTPCLIENT-2116: Incorrect request message composition when routing requests via a proxy
滕杰1 [Mon, 14 Sep 2020 12:12:41 +0000 (20:12 +0800)]
PoolingAsyncClientConnectionManager incorrectly emits Ping commands to HTTP/1.1 endpoints #255
Oleg Kalnichevski [Mon, 14 Sep 2020 09:31:39 +0000 (11:31 +0200)]
Upgraded HttpCore dependency to version 5.0.2
Oleg Kalnichevski [Tue, 8 Sep 2020 14:30:08 +0000 (16:30 +0200)]
HTTPCLIENT-2115: HttpAsyncClientBuilder and H2AsyncClientBuilder fail to take `replaceExecInterceptor()` into account
Carter Kozak [Fri, 28 Aug 2020 12:05:32 +0000 (08:05 -0400)]
HTTPCLIENT-2112: AbstractMultipartFormat respects ByteBuffer.arrayOffset (#253)
Carter Kozak [Sun, 23 Aug 2020 15:50:21 +0000 (11:50 -0400)]
HTTPCLIENT-2109: Fix RequestConfig.Builder#setConnectionKeepAlive javadoc (#252)
Michael Osipov [Tue, 18 Aug 2020 19:31:25 +0000 (21:31 +0200)]
HTTPCLIENT-2078: Log debug message when no credentials for given auth scope are found
This closes #251
dirkhenselin [Tue, 18 Aug 2020 10:24:22 +0000 (12:24 +0200)]
Avoid updating Content-Length header in a 304 response.
I observed the following problem: `Transfer-Encoding` and
`Content-Length` headers should be mutually exclusive and because I use
chunked transfer, the `Transfer-Encoding` header is set in the response
while the `Content-Length` header is not. In case of a 304 during a
revalidation, the header contains Content-Length=0. Probably a proxy is
responsible for this, just like the comment "Some well-known proxies
respond with Content-Length=0, when returning 304" in the method
CachedHttpResponseGenerator::addMissingContentLengthHeader is saying. In
CacheEntryUpdater::mergeHeaders the Content-Length=0 is merged into the
cached entry, but the cached entry contains also a `Transfer-Encoding`
header, so in the cached entry these headers aren't mutually exclusive
anymore. Because of the `Transfer-Encoding` header the method
CachedHttpResponseGenerator::addMissingContentLengthHeader isn't fixing
the `Content-Length` header and Content-Length=0 causes returning null
instead of the cached content. IMHO the `Content-Length` header should
not be merged into the cached response in case of a 304, at least if the
cached entry contains a `Transfer-Encoding` header.
Carter Kozak [Mon, 10 Aug 2020 15:34:24 +0000 (11:34 -0400)]
HTTPCLIENT-2107: Threadsafe PoolingHttpClientConnectionManager field volatile access
Oleg Kalnichevski [Sun, 9 Aug 2020 17:13:18 +0000 (19:13 +0200)]
HTTPCLIENT-2105: async clients incorrectly handle redirects of requests with enclosed entity
Oleg Kalnichevski [Sat, 18 Jul 2020 13:50:01 +0000 (15:50 +0200)]
Upgraded maven-download-plugin to version 1.6.0
Oleg Kalnichevski [Wed, 15 Jul 2020 09:47:57 +0000 (11:47 +0200)]
HTTPCLIENT-2100: incorrect handling of EXTENDED mode by MultipartEntityBuilder
Carter Kozak [Sat, 11 Jul 2020 15:18:42 +0000 (11:18 -0400)]
HTTPCLIENT-2099, HTTPCLIENT-2091: SSLConnectionSocketFactory connect timeout fix (#241)
SSLConnectionSocketFactory no longer overrides the socket timeout
with the connect timeout when an unlimited socket timeout is
configured. This matches behavior of HTTPCLIENT-2091.
Note that in scenarios where SocketConfig sets an infinite timeout
and the RequestConfig sets a bounded timeout, this change results
in the connect-timeout no longer applying to the TLS handshake.
This behavior can be retained by setting the expected timeout in
the SocketConfig.
Gary Gregory [Fri, 10 Jul 2020 13:01:05 +0000 (09:01 -0400)]
Document: Bug fix: BasicExpiresHandler is annotated as immutable but is
not. #240.
Gary Gregory [Fri, 10 Jul 2020 12:57:24 +0000 (08:57 -0400)]
BasicExpiresHandler is annotated as immutable but is not. (#240)
Carter Kozak [Sun, 5 Jul 2020 17:28:48 +0000 (13:28 -0400)]
HTTPCLIENT-2096: Migrate instance loggers to static fields
Note that this may change the origin of logging when classes
have been subclassed, as the logger origin will use the class
name that defined the logger where previously the subclass type
would be used. In scenarios where external libraries subclass
httpclient utilities this allows httpclient logging to maintain
the `org.apache.hc` prefix instead of inheriting arbitrary
subclass names.
Using some logging frameworks this may result in reduced churn
when httpclient components are created (new connections, for example)
because loggers are looked up once per class.
Niels Basjes [Sat, 4 Jul 2020 13:38:27 +0000 (15:38 +0200)]
Add Automatic-Module-Name in manifest so Java9 modular applications can depend on this library
Carter Kozak [Sun, 5 Jul 2020 17:10:25 +0000 (13:10 -0400)]
HTTPCLIENT-2097: Fix PoolingAsyncClientConnectionManager boxed primitive reference equality
slisaasquatch [Sat, 4 Jul 2020 07:49:07 +0000 (00:49 -0700)]
MultipartEntityBuilder#generateBoundary optimization (#233)
Carter Kozak [Thu, 2 Jul 2020 15:51:43 +0000 (11:51 -0400)]
HTTPCLIENT-2095: Use slf4j interpolation instead of string concatenation where possible (#232)
Carter Kozak [Wed, 1 Jul 2020 17:47:01 +0000 (13:47 -0400)]
HTTPCLIENT-2094: ConnectionManager validateAfterInactivity zero duration agreement
Both connection managers agree on the meaning of a zero-duration
validateAfterInactivity value. Previously the documentation for
both suggested that zero resulted in no validation, however
the classic client would validate prior to each request and
the async client would never validate.
This commit standardizes behavior on the classic client, which
is consistent with hc4.x, allowing zero to force validation prior
to every request.
Oleg Kalnichevski [Wed, 24 Jun 2020 18:52:50 +0000 (20:52 +0200)]
RFC 7235 compliance, HTTPCLIENT-2086: fixed parsing of token68 based (base64-encoded) auth schemes.
Oleg Kalnichevski [Tue, 30 Jun 2020 10:23:24 +0000 (12:23 +0200)]
HTTPCLIENT-2091: Connect timeout is used instead of socket timeout after a tls upgrade
Oleg Kalnichevski [Wed, 17 Jun 2020 10:44:04 +0000 (12:44 +0200)]
HTTPCLIENT-2084: client builders incorrectly add message interceptors with LAST position to the head of the list
Carter Kozak [Tue, 9 Jun 2020 17:25:34 +0000 (13:25 -0400)]
HTTPCLIENT-2083: Fix NPE when classic client interceptors are added
Previously HttpClientBuilder methods addExecInterceptorFirst and
addExecInterceptorLast resulted in NullPointerExceptions because
the execInterceptors list had not been initialized yet.
Oleg Kalnichevski [Fri, 12 Jun 2020 07:48:10 +0000 (09:48 +0200)]
Upgraded HttpClient version to 5.0.2-SNAPSHOT
Oleg Kalnichevski [Thu, 4 Jun 2020 12:37:19 +0000 (14:37 +0200)]
Updated release notes for HttpClient 5.0.1 release
Oleg Kalnichevski [Mon, 8 Jun 2020 17:13:29 +0000 (19:13 +0200)]
Upgraded HttpCore to version 5.0.1
smashtakov [Wed, 3 Jun 2020 09:10:00 +0000 (12:10 +0300)]
fix typo log debug messages
Oleg Kalnichevski [Wed, 27 May 2020 10:11:49 +0000 (12:11 +0200)]
Bug fix: classic connection managers fail to take #isConsistent() flag into account when re-using persistent connections
vonahok [Sun, 26 Apr 2020 15:08:15 +0000 (17:08 +0200)]
HTTPCLIENT-2077: Authentication failure due to incorrect NTLM auth value check (#223)
Oleg Kalnichevski [Thu, 23 Apr 2020 15:14:56 +0000 (17:14 +0200)]
HTTPCLIENT-2051: corrected handling of 303 redirects
Oleg Kalnichevski [Sat, 18 Apr 2020 10:08:10 +0000 (12:08 +0200)]
HTTPASYNC-160: HttpAsyncClient in INACTIVE or STOPPED state throws a IllegalStateException causing the current thread to terminate
heejeongkim [Fri, 17 Apr 2020 09:14:21 +0000 (18:14 +0900)]
HTTPCLIENT-2076: fix NPE in LaxExpiresHandler (#222)
Oleg Kalnichevski [Mon, 6 Apr 2020 15:42:36 +0000 (17:42 +0200)]
HTTPCLIENT-2074: disallow direct execution of CONNECT methods by standard client implementations