You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hc.apache.org by ol...@apache.org on 2021/02/11 17:41:19 UTC

[httpcomponents-website] branch master updated (c7b1fd5 -> 01fe310)

This is an automated email from the ASF dual-hosted git repository.

olegk pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/httpcomponents-website.git.


 discard c7b1fd5  Updated project website for HttpClient 5.1-beta1 release
     new 01fe310  Updated project website for HttpClient 5.1-beta1 release

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (c7b1fd5)
            \
             N -- N -- N   refs/heads/master (01fe310)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:


[httpcomponents-website] 01/01: Updated project website for HttpClient 5.1-beta1 release

Posted by ol...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

olegk pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/httpcomponents-website.git

commit 01fe31091a41a3e8ecd3b86e67c1aff00a38d507
Author: Oleg Kalnichevski <ol...@apache.org>
AuthorDate: Thu Feb 11 18:40:49 2021 +0100

    Updated project website for HttpClient 5.1-beta1 release
---
 .../apt/httpcomponents-client-5.0.x/android.apt    |   2 +-
 src/site/apt/httpcomponents-client-5.0.x/index.apt |  44 -----
 .../android.apt                                    |   2 +-
 .../download.apt                                   |  18 +-
 .../httpcomponents-client-5.1.x/examples-async.apt |  96 ++++++++++
 .../examples-reactive.apt}                         |  15 +-
 .../apt/httpcomponents-client-5.1.x/examples.apt   | 115 ++++++++++++
 .../index.apt                                      |  59 ++----
 .../apt/httpcomponents-client-5.1.x/logging.apt    | 200 ++++++++++++++++++++
 .../apt/httpcomponents-client-5.1.x/quickstart.apt | 202 +++++++++++++++++++++
 .../related-projects.apt}                          |  34 ++--
 .../apt/httpcomponents-core-5.1.x/download.apt     |   3 +
 src/site/apt/httpcomponents-core-5.1.x/index.apt   |   2 +
 src/site/apt/news.apt                              |  16 +-
 .../documentation.links                            |   5 +
 .../httpcomponents-core-5.1.x/documentation.links  |   1 -
 src/site/site.xml                                  |  16 +-
 src/site/xdoc/downloads.xml                        |  34 +++-
 18 files changed, 736 insertions(+), 128 deletions(-)

diff --git a/src/site/apt/httpcomponents-client-5.0.x/android.apt b/src/site/apt/httpcomponents-client-5.0.x/android.apt
index 10f8bf0..70fe205 100644
--- a/src/site/apt/httpcomponents-client-5.0.x/android.apt
+++ b/src/site/apt/httpcomponents-client-5.0.x/android.apt
@@ -34,6 +34,6 @@ HttpClient for Android
     
 ----
 dependencies {
-    compile group: 'org.apache.httpcomponents.client5' , name: 'httpclient5' , version: '5.0'
+    compile group: 'org.apache.httpcomponents.client5' , name: 'httpclient5' , version: '5.0.3'
 }
 ----
diff --git a/src/site/apt/httpcomponents-client-5.0.x/index.apt b/src/site/apt/httpcomponents-client-5.0.x/index.apt
index 8f87ffc..4fcbaab 100644
--- a/src/site/apt/httpcomponents-client-5.0.x/index.apt
+++ b/src/site/apt/httpcomponents-client-5.0.x/index.apt
@@ -60,50 +60,6 @@ HttpClient Overview
    
     * {{{./httpclient5-win/project-reports.html}HttpClient Windows extensions}}
 
-{Features}
-
-    * Standards based, pure Java, implementation of HTTP versions 1.0 and 1.1
- 
-    * Full implementation of all HTTP methods (GET, POST, PUT, DELETE, HEAD, OPTIONS, and TRACE) 
-    in an extensible OO framework.
-    
-    * Supports encryption with HTTPS (HTTP over SSL) protocol.
-
-    * Transparent connections through HTTP proxies.
-
-    * Tunneled HTTPS connections through HTTP proxies, via the CONNECT method.
-
-    * Basic, Digest, NTLMv1, NTLMv2, NTLM2 Session, SNPNEGO, Kerberos authentication schemes.
-
-    * Plug-in mechanism for custom authentication schemes.
-
-    * Pluggable secure socket factories, making it easier to use third party solutions
-
-    * Connection management support for use in multi-threaded applications. Supports setting the 
-      maximum total connections as well as the maximum connections per host. Detects and closes 
-      stale connections.
-
-    * Automatic Cookie handling for reading Set-Cookie: headers from the server and sending them 
-      back out in a Cookie: header when appropriate.
-
-    * Plug-in mechanism for custom cookie policies.
-
-    * Request output streams to avoid buffering any content body by streaming directly to the socket
-      to the server.
-
-    * Response input streams to efficiently read the response body by streaming directly from the 
-      socket to the server.
-
-    * Persistent connections using KeepAlive in HTTP/1.0 and persistance in HTTP/1.1
-
-    * Direct access to the response code and headers sent by the server.
-
-    * The ability to set connection timeouts.
-
-    * Support for HTTP/1.1 response caching.
-
-    * Source code is freely available under the Apache License.
-
 {Standards Compliance}
 
     HttpClient strives to conform to the following specifications endorsed by the Internet 
diff --git a/src/site/apt/httpcomponents-client-5.0.x/android.apt b/src/site/apt/httpcomponents-client-5.1.x/android.apt
similarity index 97%
copy from src/site/apt/httpcomponents-client-5.0.x/android.apt
copy to src/site/apt/httpcomponents-client-5.1.x/android.apt
index 10f8bf0..ff348c7 100644
--- a/src/site/apt/httpcomponents-client-5.0.x/android.apt
+++ b/src/site/apt/httpcomponents-client-5.1.x/android.apt
@@ -34,6 +34,6 @@ HttpClient for Android
     
 ----
 dependencies {
-    compile group: 'org.apache.httpcomponents.client5' , name: 'httpclient5' , version: '5.0'
+    compile group: 'org.apache.httpcomponents.client5' , name: 'httpclient5' , version: '5.1-beta1'
 }
 ----
diff --git a/src/site/apt/httpcomponents-core-5.1.x/download.apt b/src/site/apt/httpcomponents-client-5.1.x/download.apt
similarity index 84%
copy from src/site/apt/httpcomponents-core-5.1.x/download.apt
copy to src/site/apt/httpcomponents-client-5.1.x/download.apt
index 64fe5d7..640b664 100644
--- a/src/site/apt/httpcomponents-core-5.1.x/download.apt
+++ b/src/site/apt/httpcomponents-client-5.1.x/download.apt
@@ -23,17 +23,17 @@
 ~~ <http://www.apache.org/>.
 
     ----------
-    HttpComponents HttpCore Download Page
+    HttpComponents HttpClient Download Page
     ----------
     ----------
     ----------
 
-HttpCore Downloads
+HttpClient Downloads
 
     The latest release available for download:
 
     {{{http://hc.apache.org/downloads.cgi}Release packages}} - 
-    {{{http://www.apache.org/dist/httpcomponents/httpcore/RELEASE_NOTES-5.1.x.txt}Release Notes}} -
+    {{{http://www.apache.org/dist/httpcomponents/httpclient/RELEASE_NOTES-5.1.x.txt}Release Notes}} -
     {{{http://www.apache.org/licenses/LICENSE-2.0.html}License}}
 
 {Dependency management}
@@ -43,8 +43,12 @@ HttpCore Downloads
     {{{http://ant.apache.org/projects/ivy.html}Apache Ivy}}, 
     you can create a dependency on HttpClient modules by using this information:
 
-    {{{https://search.maven.org/artifact/org.apache.httpcomponents.core5/httpcore5}HttpCore HTTP/1.1}}
-    {{{https://search.maven.org/artifact/org.apache.httpcomponents.core5/httpcore5-h2}HttpCore HTTP/2}}
-    {{{https://search.maven.org/artifact/org.apache.httpcomponents.core5/httpcore5-reactive}HttpCore Reactive Streams}}
-    {{{https://search.maven.org/artifact/org.apache.httpcomponents.core5/httpcore5-testing}HttpCore testing support}}
+    {{{https://search.maven.org/artifact/org.apache.httpcomponents.client5/httpclient5}HttpClient}}
+
+    {{{https://search.maven.org/artifact/org.apache.httpcomponents.client5/httpclient5-fluent}Fluent HC}}
+
+    {{{https://search.maven.org/artifact/org.apache.httpcomponents.client5/httpclient5-cache}HttpClient Cache}}
+
+    {{{https://search.maven.org/artifact/org.apache.httpcomponents.client5/httpclient5-win}HttpClient Windows
+    extensions}}
 
diff --git a/src/site/apt/httpcomponents-client-5.1.x/examples-async.apt b/src/site/apt/httpcomponents-client-5.1.x/examples-async.apt
new file mode 100644
index 0000000..1c4fa58
--- /dev/null
+++ b/src/site/apt/httpcomponents-client-5.1.x/examples-async.apt
@@ -0,0 +1,96 @@
+~~ ====================================================================
+~~ Licensed to the Apache Software Foundation (ASF) under one
+~~ or more contributor license agreements.  See the NOTICE file
+~~ distributed with this work for additional information
+~~ regarding copyright ownership.  The ASF licenses this file
+~~ to you under the Apache License, Version 2.0 (the
+~~ "License"); you may not use this file except in compliance
+~~ with the License.  You may obtain a copy of the License at
+~~ 
+~~   http://www.apache.org/licenses/LICENSE-2.0
+~~ 
+~~ Unless required by applicable law or agreed to in writing,
+~~ software distributed under the License is distributed on an
+~~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+~~ KIND, either express or implied.  See the License for the
+~~ specific language governing permissions and limitations
+~~ under the License.
+~~ ====================================================================
+~~ 
+~~ This software consists of voluntary contributions made by many
+~~ individuals on behalf of the Apache Software Foundation.  For more
+~~ information on the Apache Software Foundation, please see
+~~ <http://www.apache.org/>.
+
+    ----------
+    HttpComponents HttpClient Examples
+    ----------
+    ----------
+    ----------
+
+HttpClient Examples (Async)
+
+    * {{{./current/httpclient5/xref-test/org/apache/hc/client5/http/examples/AsyncClientHttpExchange.html}
+    Asynchronous HTTP exchange}}
+
+    This example demonstrates a basic asynchronous HTTP request / response exchange. 
+    Response content is buffered in memory for simplicity.
+
+    * {{{./current/httpclient5/xref-test/org/apache/hc/client5/http/examples/AsyncClientHttpExchangeStreaming.html}
+    Asynchronous HTTP exchange with content streaming}}
+    
+    This example demonstrates an asynchronous HTTP request / response exchange with a full content 
+    streaming.
+
+    * {{{./current/httpclient5/xref-test/org/apache/hc/client5/http/examples/AsyncClientTlsAlpn.html}
+    HTTP/2 ALPN support}}
+
+    This example demonstrates how to avoid the illegal reflective access operation warning when running
+    with Oracle JRE 9 or newer.
+
+    * {{{./current/httpclient5/xref-test/org/apache/hc/client5/http/examples/AsyncClientHttp1Pipelining.html}
+    Pipelined HTTP/1.1 exchanges}}
+
+    This example demonstrates a pipelined execution of multiple HTTP/1.1 request / response exchanges.
+    Response content is buffered in memory for simplicity.
+
+    * {{{./current/httpclient5/xref-test/org/apache/hc/client5/http/examples/AsyncClientHttp2Multiplexing.html}
+    Multiplexed HTTP/2 exchanges}}
+
+    This example demonstrates a multiplexed execution of multiple HTTP/2 request / response exchanges.
+    Response content is buffered in memory for simplicity.
+
+    * {{{./current/httpclient5/xref-test/org/apache/hc/client5/http/examples/AsyncClientInterceptors.html}
+    Request execution interceptors}}
+
+    This example demonstrates how to insert custom request interceptor and an execution interceptor to the
+    request execution chain.
+
+    * {{{./current/httpclient5/xref-test/org/apache/hc/client5/http/examples/AsyncClientMessageTrailers.html}
+    Message trailers}}
+
+    This example demonstrates how to use a custom execution interceptor to add trailers to all 
+    outgoing request enclosing an entity..
+
+    * {{{./current/httpclient5/xref-test/org/apache/hc/client5/http/examples/AsyncClientHttp2ServerPush.html}
+    Multiplexed HTTP/2 exchanges}}
+
+    This example demonstrates handling of HTTP/2 message exchanges pushed by the server.
+
+    * {{{./current/httpclient5/xref-test/org/apache/hc/client5/http/examples/AsyncClientAuthentication.html}
+    Client authentication}}
+
+    This example demonstrates execution of an HTTP request against a target site that requires user
+    authentication.  
+
+    * {{{./current/httpclient5/xref-test/org/apache/hc/client5/http/examples/AsyncClientCustomSSL.html}
+    Custom SSL context}}
+    
+    This example demonstrates how to create secure connections with a custom SSL context.
+
+    * {{{./current/httpclient5/xref-test/org/apache/hc/client5/http/examples/AsyncClientConnectionEviction.html}
+    Connection eviction}}
+    
+    This example demonstrates how to evict expired and idle connections from the connection pool.
+
+
diff --git a/src/site/apt/httpcomponents-client-5.0.x/android.apt b/src/site/apt/httpcomponents-client-5.1.x/examples-reactive.apt
similarity index 79%
copy from src/site/apt/httpcomponents-client-5.0.x/android.apt
copy to src/site/apt/httpcomponents-client-5.1.x/examples-reactive.apt
index 10f8bf0..781b7bd 100644
--- a/src/site/apt/httpcomponents-client-5.0.x/android.apt
+++ b/src/site/apt/httpcomponents-client-5.1.x/examples-reactive.apt
@@ -23,17 +23,14 @@
 ~~ <http://www.apache.org/>.
 
     ----------
-    HttpClient for Android
+    HttpComponents HttpClient Examples
     ----------
     ----------
     ----------
 
-HttpClient for Android
+HttpClient Examples (Async)
 
-    Apache HttpCLient 5.x is expected to work well with Android API 19 and newer
-    
-----
-dependencies {
-    compile group: 'org.apache.httpcomponents.client5' , name: 'httpclient5' , version: '5.0'
-}
-----
+    * {{{./current/httpclient5/xref-test/org/apache/hc/client5/http/examples/AsyncClientHttpExchange.html}
+    HTTP exchange with Reactive Streams}}
+
+    This example demonstrates a reactive, full-duplex HTTP/1.1 message exchange using RxJava.
diff --git a/src/site/apt/httpcomponents-client-5.1.x/examples.apt b/src/site/apt/httpcomponents-client-5.1.x/examples.apt
new file mode 100644
index 0000000..26c1125
--- /dev/null
+++ b/src/site/apt/httpcomponents-client-5.1.x/examples.apt
@@ -0,0 +1,115 @@
+~~ ====================================================================
+~~ Licensed to the Apache Software Foundation (ASF) under one
+~~ or more contributor license agreements.  See the NOTICE file
+~~ distributed with this work for additional information
+~~ regarding copyright ownership.  The ASF licenses this file
+~~ to you under the Apache License, Version 2.0 (the
+~~ "License"); you may not use this file except in compliance
+~~ with the License.  You may obtain a copy of the License at
+~~ 
+~~   http://www.apache.org/licenses/LICENSE-2.0
+~~ 
+~~ Unless required by applicable law or agreed to in writing,
+~~ software distributed under the License is distributed on an
+~~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+~~ KIND, either express or implied.  See the License for the
+~~ specific language governing permissions and limitations
+~~ under the License.
+~~ ====================================================================
+~~ 
+~~ This software consists of voluntary contributions made by many
+~~ individuals on behalf of the Apache Software Foundation.  For more
+~~ information on the Apache Software Foundation, please see
+~~ <http://www.apache.org/>.
+
+    ----------
+    HttpComponents HttpClient Examples
+    ----------
+    ----------
+    ----------
+
+HttpClient Examples (Classic)
+
+    * {{{./current/httpclient5/xref-test/org/apache/hc/client5/http/examples/ClientWithResponseHandler.html}Response handling}}
+
+    This example demonstrates how to process HTTP responses using a response handler. This is 
+    the recommended way of executing HTTP requests and processing HTTP responses. This approach 
+    enables the caller to concentrate on the process of digesting HTTP responses and to delegate 
+    the task of system resource deallocation to HttpClient. The use of an HTTP response handler 
+    guarantees that the underlying HTTP connection will be released back to the connection manager 
+    automatically in all cases.
+
+    * {{{./current/httpclient5/xref-test/org/apache/hc/client5/http/examples/ClientConnectionRelease.html}Manual connection release}}
+    
+    This example demonstrates how to ensure the release of the underlying HTTP connection back to 
+    the connection manager in case of a manual processing of HTTP responses.
+
+    * {{{./current/httpclient5/xref-test/org/apache/hc/client5/http/examples/ClientConfiguration.html}HttpClient configuration}}
+    
+    This example demonstrates how to customize and configure the most common aspects of HTTP request execution 
+    and connection management.
+
+    * {{{./current/httpclient5/xref-test/org/apache/hc/client5/http/examples/ClientInterceptors.html}Request execution interceptors}}
+    
+    This example demonstrates how to insert custom request interceptor and an execution interceptor to the
+    request execution chain.
+
+    * {{{./current/httpclient5/xref-test/org/apache/hc/client5/http/examples/ClientAbortMethod.html}Abort method}}
+    
+    This example demonstrates how to abort an HTTP request before its normal completion.
+
+    * {{{./current/httpclient5/xref-test/org/apache/hc/client5/http/examples/ClientAuthentication.html}Client authentication}}
+    
+    This example uses HttpClient to execute an HTTP request against a target site that requires user
+    authentication.  
+
+    * {{{./current/httpclient5/xref-test/org/apache/hc/client5/http/examples/ClientExecuteProxy.html}Request via a proxy}}
+    
+    This example demonstrates how to send an HTTP request via a proxy.
+
+    * {{{./current/httpclient5/xref-test/org/apache/hc/client5/http/examples/ClientProxyAuthentication.html}Proxy authentication}}
+    
+    A simple example showing execution of an HTTP request over a secure connection tunneled through 
+    an authenticating proxy.  
+
+    * {{{./current/httpclient5/xref-test/org/apache/hc/client5/http/examples/ClientChunkEncodedPost.html}Chunk encoded POST}}
+    
+    This example shows how to stream out a request entity using chunk encoding.
+
+    * {{{./current/httpclient5/xref-test/org/apache/hc/client5/http/examples/ClientCustomContext.html}Custom execution context}}
+    
+    This example demonstrates the use of a local HTTP context populated custom attributes.
+
+    * {{{./current/httpclient5/xref-test/org/apache/hc/client5/http/examples/ClientFormLogin.html}Form based logon}}
+    
+    This example demonstrates how HttpClient can be used to perform form-based logon.
+
+    * {{{./current/httpclient5/xref-test/org/apache/hc/client5/http/examples/ClientMultiThreadedExecution.html}Threaded request execution}}
+    
+    An example that executes HTTP requests from multiple worker threads.
+
+    * {{{./current/httpclient5/xref-test/org/apache/hc/client5/http/examples/ClientCustomSSL.html}Custom SSL context}}
+    
+    This example demonstrates how to create secure connections with a custom SSL context.
+
+    * {{{./current/httpclient5/xref-test/org/apache/hc/client5/http/examples/ClientPreemptiveBasicAuthentication.html}Preemptive BASIC authentication}}
+    
+    This example shows how HttpClient can be customized to authenticate preemptively using BASIC 
+    scheme. Generally, preemptive authentication can be considered less secure than a response to 
+    an authentication challenge and therefore discouraged.
+
+    * {{{./current/httpclient5/xref-test/org/apache/hc/client5/http/examples/ClientPreemptiveDigestAuthentication.html}Preemptive DIGEST authentication}}
+    
+    This example shows how HttpClient can be customized to authenticate preemptively using DIGEST 
+    scheme. Generally, preemptive authentication can be considered less secure than a response to 
+    an authentication challenge and therefore discouraged.
+    
+    * {{{./current/httpclient5/xref-test/org/apache/hc/client5/http/examples/ProxyTunnelDemo.html}Proxy tunnel}}
+    
+    This example shows how to use ProxyClient in order to establish a tunnel through an HTTP proxy 
+    for an arbitrary protocol.
+    
+    * {{{./current/httpclient5/xref-test/org/apache/hc/client5/http/examples/ClientMultipartFormPost.html}Multipart encoded request entity}}
+    
+    This example shows how to execute requests enclosing a multipart encoded entity. 
+
diff --git a/src/site/apt/httpcomponents-client-5.0.x/index.apt b/src/site/apt/httpcomponents-client-5.1.x/index.apt
similarity index 60%
copy from src/site/apt/httpcomponents-client-5.0.x/index.apt
copy to src/site/apt/httpcomponents-client-5.1.x/index.apt
index 8f87ffc..bc432ef 100644
--- a/src/site/apt/httpcomponents-client-5.0.x/index.apt
+++ b/src/site/apt/httpcomponents-client-5.1.x/index.apt
@@ -47,62 +47,37 @@ HttpClient Overview
 
 {Documentation}
 
-    [[1]] {{{./examples.html}HttpClient Examples}} - a set of examples demonstrating some of 
-    the more complex behavior. 
-    
-    [[1]] Project reports
-
-    * {{{./httpclient5/project-reports.html}HttpClient}}
-
-    * {{{./httpclient5-fluent/project-reports.html}HC Fluent}}
-
-    * {{{./httpclient5-cache/project-reports.html}HttpClient Cache}}
-   
-    * {{{./httpclient5-win/project-reports.html}HttpClient Windows extensions}}
-
-{Features}
-
-    * Standards based, pure Java, implementation of HTTP versions 1.0 and 1.1
- 
-    * Full implementation of all HTTP methods (GET, POST, PUT, DELETE, HEAD, OPTIONS, and TRACE) 
-    in an extensible OO framework.
-    
-    * Supports encryption with HTTPS (HTTP over SSL) protocol.
+    [[1]] Examples demonstrating some common as well as more complex use cases
 
-    * Transparent connections through HTTP proxies.
+    * {{{./examples.html}HttpClient (classic APIs)}}
 
-    * Tunneled HTTPS connections through HTTP proxies, via the CONNECT method.
+    * {{{./examples-async.html}HttpClient (async APIs)}}
 
-    * Basic, Digest, NTLMv1, NTLMv2, NTLM2 Session, SNPNEGO, Kerberos authentication schemes.
+    * {{{./examples-reactive.html}HttpClient (reactive APIs)}}
 
-    * Plug-in mechanism for custom authentication schemes.
+    []
 
-    * Pluggable secure socket factories, making it easier to use third party solutions
+    [[1]] Javadocs
 
-    * Connection management support for use in multi-threaded applications. Supports setting the 
-      maximum total connections as well as the maximum connections per host. Detects and closes 
-      stale connections.
+    * {{{./current/httpclient5/apidocs/}HttpClient}}
 
-    * Automatic Cookie handling for reading Set-Cookie: headers from the server and sending them 
-      back out in a Cookie: header when appropriate.
+    * {{{./current/httpclient5-fluent/apidocs/}HC Fluent}}
 
-    * Plug-in mechanism for custom cookie policies.
+    * {{{./current/httpclient5-cache/apidocs/}HttpClient Cache}}
 
-    * Request output streams to avoid buffering any content body by streaming directly to the socket
-      to the server.
+    * {{{./current/httpclient5-win/apidocs/}HttpClient Windows extensions}}
 
-    * Response input streams to efficiently read the response body by streaming directly from the 
-      socket to the server.
+    []
 
-    * Persistent connections using KeepAlive in HTTP/1.0 and persistance in HTTP/1.1
+    [[1]] API compatibility reports
 
-    * Direct access to the response code and headers sent by the server.
+    * {{{./current/httpclient5/clirr-report.html}HttpClient}}
 
-    * The ability to set connection timeouts.
+    * {{{./current/httpclient5-fluent/clirr-report.html}HC Fluent}}
 
-    * Support for HTTP/1.1 response caching.
+    * {{{./current/httpclient5-cache/clirr-report.html}HttpClient Cache}}
 
-    * Source code is freely available under the Apache License.
+    * {{{./current/httpclient5-win/clirr-report.html}HttpClient Windows extensions}}
 
 {Standards Compliance}
 
@@ -126,5 +101,5 @@ HttpClient Overview
     
     * {{{http://tools.ietf.org/html/rfc6265}RFC 6265}} - HTTP State Management Mechanism (Cookies)
 
-    * {{{http://tools.ietf.org/html/rfc2396}RFC 2396}} - Uniform Resource Identifiers (URI): Generic Syntax
+    * {{{http://tools.ietf.org/html/rfc3986}RFC 3986}} - Uniform Resource Identifiers (URI): Generic Syntax
 
diff --git a/src/site/apt/httpcomponents-client-5.1.x/logging.apt b/src/site/apt/httpcomponents-client-5.1.x/logging.apt
new file mode 100644
index 0000000..f693e85
--- /dev/null
+++ b/src/site/apt/httpcomponents-client-5.1.x/logging.apt
@@ -0,0 +1,200 @@
+~~ ====================================================================
+~~ Licensed to the Apache Software Foundation (ASF) under one
+~~ or more contributor license agreements.  See the NOTICE file
+~~ distributed with this work for additional information
+~~ regarding copyright ownership.  The ASF licenses this file
+~~ to you under the Apache License, Version 2.0 (the
+~~ "License"); you may not use this file except in compliance
+~~ with the License.  You may obtain a copy of the License at
+~~
+~~   http://www.apache.org/licenses/LICENSE-2.0
+~~
+~~ Unless required by applicable law or agreed to in writing,
+~~ software distributed under the License is distributed on an
+~~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+~~ KIND, either express or implied.  See the License for the
+~~ specific language governing permissions and limitations
+~~ under the License.
+~~ ====================================================================
+~~
+~~ This software consists of voluntary contributions made by many
+~~ individuals on behalf of the Apache Software Foundation.  For more
+~~ information on the Apache Software Foundation, please see
+~~ <http://www.apache.org/>.
+
+    ----------
+    HttpClient Logging Practices
+    ----------
+    ----------
+    ----------
+
+Logging Practices
+
+    Being a library HttpClient is not to dictate which logging framework the user has to use. 
+    Therefore  HttpClient utilizes the logging facade provided by the 
+    {{{https://logging.apache.org/log4j/2.x/manual/api.html}Apache Log4j 2}} package. 
+    <<<Log4j 2>>> provides a simple and generalized 
+    {{{https://logging.apache.org/log4j/2.x/log4j-api/apidocs/index.html?org/apache/logging/log4j/package-summary.html}log interface}} to 
+    various logging packages. By using <<<Log4j>>>, HttpClient can be configured for a 
+    variety of different logging behaviours. That means the user will have to make a choice which 
+    logging implementation to use. By default <<<Log4j 2>>> supports the following logging 
+    implementation:
+
+    * {{{https://logging.apache.org/log4j/2.x/}Log4J 2}}
+
+    * {{{https://logging.apache.org/log4j/2.x/log4j-to-slf4j/index.html}SLF4J}}
+
+    * {{{https://logging.apache.org/log4j/2.x/log4j-api/apidocs/org/apache/logging/log4j/simple/SimpleLogger.html}
+      SimpleLog}} (internal to <<<Log4J 2>>>)
+
+    * {{{https://logging.apache.org/log4j/2.x/log4j-jul/index.html}
+      java.util.logging}}
+      
+    By implementing some simple interfaces <<<Log4J 2>>> can be extended to support 
+    basically any other custom logging framework. <<<Log4J 2>>> tries to automatically 
+    discover the logging framework to use. If it fails to select the expected one, you must 
+    configure <<<Log4J 2>>> by hand. Please refer to the <<<Log4J 2>>> 
+    documentation for more information.
+
+    HttpClient performs three different kinds of logging: the standard context logging used within 
+    each class, HTTP header logging and full wire logging.            
+
+* {Understanding Logger Names}
+
+    Most logging implementations use a hierarchical scheme for matching logger names with logging
+    configuration. In this scheme, the logger name hierarchy is represented by <<<'.'>>> characters 
+    in the logger name, in a fashion very similar to the hierarchy used for Java package names. For example,
+    <<<org.apache.logging.appender>>> and <<<org.apache.logging.filter>>> both have 
+    <<<org.apache.logging>>> as their parent. In most cases, applications name their loggers by 
+    passing the current class's name to <<<LogManager.getLogger(...)>>>. 
+              
+* {Context Logging}
+
+    Context logging contains information about the internal operation of HttpClient as it performs 
+    HTTP requests.  Each class has its own logger named according to the class's fully qualified name. 
+    For example the class <<<DefaultHttpClient>>> has a logger named 
+    <<<org.apache.http.impl.client.DefaultHttpClient>>>. Since all classes follow this convention 
+    it is possible to configure context logging for all classes using the single logger named 
+    <<<org.apache.hc.client5.http>>>.
+
+* {Wire Logging}
+
+    The wire logger is used to log all data transmitted to and from servers when executing HTTP 
+    requests. The wire logger uses the <<<org.apache.hc.client5.http.wire>>> logger name. This logger should 
+    only be enabled to debug problems, as it will produce an extremely large amount of log data.
+    
+* {HTTP header Logging}
+
+    Because the content of HTTP requests is usually less important for debugging than the HTTP 
+    headers, use the <<<org.apache.hc.client5.http.headers>>> logger for capturing HTTP headers only.
+
+* {Configuration Examples}
+
+    <<<Log4j 2>>> can delegate to a variety of logging implementations for processing the actual output. 
+    Below are configuration examples for <<<Log4j 2>>>, <<<Commons Logging>>>, and 
+    <<<java.util.logging>>>.
+
+** {Log4j 2 Examples}
+
+    The simplest way to {{{https://logging.apache.org/log4j/2.x/manual/configuration.html}configure}} <<<Log4j 2>>> 
+    is via a <<<log4j2.xml>>> file. <<<Log4j 2>>> will 
+    {{{https://logging.apache.org/log4j/2.x/manual/configuration.html#AutomaticConfiguration}automatically}}
+    configure itself using a file named <<<log4j2.xml>>> when  it's present at the root of the  application 
+    classpath. Below are some <<<Log4j>>> configuration examples.
+
+    <<Note:>> The <<<Log4j 2>>> implementation a.k.a "core" is not included in the <<<HttpClient>>> distribution.
+    You can include it in your project using 
+    {{{https://logging.apache.org/log4j/2.x/maven-artifacts.html}Maven, Ivy, Gradle, or SBT}}.              
+    
+    * Enable header wire + context logging - <<Best for Debugging>>
+
+--------------------------------------
+<Configuration>
+  <Appenders>
+    <Console name="STDOUT">
+      <PatternLayout pattern="%d %-5level [%logger] %msg%n%xThrowable" />
+    </Console>
+  </Appenders>
+  <Loggers>
+    <Logger name="org.apache.hc.client5.http" level="DEBUG">
+      <AppenderRef ref="Console"/>
+    </Logger>
+    <Logger name="org.apache.hc.client5.http.wire" level="DEBUG">
+      <AppenderRef ref="Console"/>
+    </Logger>
+    <Root level="INFO">
+      <AppenderRef ref="STDOUT" />
+    </Root>
+  </Loggers>
+</Configuration>
+--------------------------------------
+ 
+    * Enable full wire + context logging
+
+--------------------------------------
+<Configuration>
+  <Appenders>
+    <Console name="STDOUT">
+      <PatternLayout pattern="%d %-5level [%logger] %msg%n%xThrowable" />
+    </Console>
+  </Appenders>
+  <Loggers>
+    <Logger name="org.apache.hc.client5.http" level="DEBUG">
+      <AppenderRef ref="Console"/>
+    </Logger>
+    <Root level="INFO">
+      <AppenderRef ref="STDOUT" />
+    </Root>
+  </Loggers>
+</Configuration>
+--------------------------------------
+ 
+    * Enable context logging for connection management
+
+--------------------------------------
+<Configuration>
+  <Appenders>
+    <Console name="STDOUT">
+      <PatternLayout pattern="%d %-5level [%logger] %msg%n%xThrowable" />
+    </Console>
+  </Appenders>
+  <Loggers>
+    <Logger name="org.apache.hc.client5.http.impl.io" level="DEBUG">
+      <AppenderRef ref="Console"/>
+    </Logger>
+    <Logger name="org.apache.hc.client5.http.impl.nio" level="DEBUG">
+      <AppenderRef ref="Console"/>
+    </Logger>
+    <Root level="INFO">
+      <AppenderRef ref="STDOUT" />
+    </Root>
+  </Loggers>
+</Configuration>
+--------------------------------------
+ 
+    * Enable context logging for connection management / request execution
+
+--------------------------------------
+<Configuration>
+  <Appenders>
+    <Console name="STDOUT">
+      <PatternLayout pattern="%d %-5level [%logger] %msg%n%xThrowable" />
+    </Console>
+  </Appenders>
+  <Loggers>
+    <Logger name="org.apache.hc.client5.http.impl" level="DEBUG">
+      <AppenderRef ref="Console"/>
+    </Logger>
+    <Root level="INFO">
+      <AppenderRef ref="STDOUT" />
+    </Root>
+  </Loggers>
+</Configuration>
+--------------------------------------
+
+    []
+
+    The <<<Log4J 2>>> manual is the best reference for how to configure <<<Log4J 2>>>. It is available at 
+    {{{https://logging.apache.org/log4j/2.x/manual/}
+    https://logging.apache.org/log4j/2.x/manual/}}.
+
diff --git a/src/site/apt/httpcomponents-client-5.1.x/quickstart.apt b/src/site/apt/httpcomponents-client-5.1.x/quickstart.apt
new file mode 100644
index 0000000..2ca05f8
--- /dev/null
+++ b/src/site/apt/httpcomponents-client-5.1.x/quickstart.apt
@@ -0,0 +1,202 @@
+~~ ====================================================================
+~~ Licensed to the Apache Software Foundation (ASF) under one
+~~ or more contributor license agreements.  See the NOTICE file
+~~ distributed with this work for additional information
+~~ regarding copyright ownership.  The ASF licenses this file
+~~ to you under the Apache License, Version 2.0 (the
+~~ "License"); you may not use this file except in compliance
+~~ with the License.  You may obtain a copy of the License at
+~~ 
+~~   http://www.apache.org/licenses/LICENSE-2.0
+~~ 
+~~ Unless required by applicable law or agreed to in writing,
+~~ software distributed under the License is distributed on an
+~~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+~~ KIND, either express or implied.  See the License for the
+~~ specific language governing permissions and limitations
+~~ under the License.
+~~ ====================================================================
+~~ 
+~~ This software consists of voluntary contributions made by many
+~~ individuals on behalf of the Apache Software Foundation.  For more
+~~ information on the Apache Software Foundation, please see
+~~ <http://www.apache.org/>.
+
+    ----------
+    HttpClient Quick Start
+    ----------
+    ----------
+    ----------
+
+HttpClient Quick Start
+
+    [[1]] Download 'Binary' package of the latest HttpClient 5.1 release or configure
+    dependency on HttpClient and Fluent HC modules using a dependency manager of your
+    choice as described {{{./download.html}here}}.
+
+    [[1]] HttpClient 5.1 requires Java 1.7 or newer.
+
+    [[1]] The below code fragment illustrates the execution of HTTP GET and POST requests using 
+    HttpClient classic API.
+
+-------------    
+
+try (CloseableHttpClient httpclient = HttpClients.createDefault()) {
+    HttpGet httpGet = new HttpGet("http://httpbin.org/get");
+    // The underlying HTTP connection is still held by the response object
+    // to allow the response content to be streamed directly from the network socket.
+    // In order to ensure correct deallocation of system resources
+    // the user MUST call CloseableHttpResponse#close() from a finally clause.
+    // Please note that if response content is not fully consumed the underlying
+    // connection cannot be safely re-used and will be shut down and discarded
+    // by the connection manager.
+    try (CloseableHttpResponse response1 = httpclient.execute(httpGet)) {
+        System.out.println(response1.getCode() + " " + response1.getReasonPhrase());
+        HttpEntity entity1 = response1.getEntity();
+        // do something useful with the response body
+        // and ensure it is fully consumed
+        EntityUtils.consume(entity1);
+    }
+
+    HttpPost httpPost = new HttpPost("http://httpbin.org/post");
+    List<NameValuePair> nvps = new ArrayList<>();
+    nvps.add(new BasicNameValuePair("username", "vip"));
+    nvps.add(new BasicNameValuePair("password", "secret"));
+    httpPost.setEntity(new UrlEncodedFormEntity(nvps));
+
+    try (CloseableHttpResponse response2 = httpclient.execute(httpPost)) {
+        System.out.println(response2.getCode() + " " + response2.getReasonPhrase());
+        HttpEntity entity2 = response2.getEntity();
+        // do something useful with the response body
+        // and ensure it is fully consumed
+        EntityUtils.consume(entity2);
+    }
+}
+-------------    
+
+    Source can be found here
+    {{{./current/httpclient5/xref-test/org/apache/hc/client5/http/examples/QuickStart.html}here}}
+
+    [[1]] The same requests can be executed using a simpler, albeit less flexible, fluent API.
+
+-------------    
+
+// The fluent API relieves the user from having to deal with manual deallocation of system
+// resources at the cost of having to buffer response content in memory in some cases.
+
+Request.Get("http://targethost/homepage")
+    .execute().returnContent();
+Request.Post("http://targethost/login")
+    .bodyForm(Form.form().add("username",  "vip").add("password",  "secret").build())
+    .execute().returnContent();
+
+-------------    
+    
+    Source can be downloaded 
+    {{{./current/httpclient5-fluent/xref-test/org/apache/hc/client5/http/examples/fluent/FluentQuickStart.html}here}}
+
+    [[1]] The below code fragment illustrates the execution of HTTP requests using 
+    HttpClient async API.
+
+-------------    
+
+try (CloseableHttpAsyncClient httpclient = HttpAsyncClients.createDefault()) {
+    // Start the client
+    httpclient.start();
+
+    // Execute request
+    SimpleHttpRequest request1 = SimpleHttpRequests.get("http://httpbin.org/get");
+    Future<SimpleHttpResponse> future = httpclient.execute(request1, null);
+    // and wait until response is received
+    SimpleHttpResponse response1 = future.get();
+    System.out.println(request1.getRequestUri() + "->" + response1.getCode());
+
+    // One most likely would want to use a callback for operation result
+    CountDownLatch latch1 = new CountDownLatch(1);
+    SimpleHttpRequest request2 = SimpleHttpRequests.get("http://httpbin.org/get");
+    httpclient.execute(request2, new FutureCallback<SimpleHttpResponse>() {
+
+        @Override
+        public void completed(SimpleHttpResponse response2) {
+            latch1.countDown();
+            System.out.println(request2.getRequestUri() + "->" + response2.getCode());
+        }
+
+        @Override
+        public void failed(Exception ex) {
+            latch1.countDown();
+            System.out.println(request2.getRequestUri() + "->" + ex);
+        }
+
+        @Override
+        public void cancelled() {
+            latch1.countDown();
+            System.out.println(request2.getRequestUri() + " cancelled");
+        }
+
+    });
+    latch1.await();
+
+    // In real world one most likely would want also want to stream
+    // request and response body content
+    CountDownLatch latch2 = new CountDownLatch(1);
+    AsyncRequestProducer producer3 = AsyncRequestBuilder.get("http://httpbin.org/get").build();
+    AbstractCharResponseConsumer<HttpResponse> consumer3 = new AbstractCharResponseConsumer<HttpResponse>() {
+
+        HttpResponse response;
+
+        @Override
+        protected void start(HttpResponse response, ContentType contentType) throws HttpException, IOException {
+            this.response = response;
+        }
+
+        @Override
+        protected int capacityIncrement() {
+            return Integer.MAX_VALUE;
+        }
+
+        @Override
+        protected void data(CharBuffer data, boolean endOfStream) throws IOException {
+            // Do something useful
+        }
+
+        @Override
+        protected HttpResponse buildResult() throws IOException {
+            return response;
+        }
+
+        @Override
+        public void releaseResources() {
+        }
+
+    };
+    httpclient.execute(producer3, consumer3, new FutureCallback<HttpResponse>() {
+
+        @Override
+        public void completed(HttpResponse response3) {
+            latch2.countDown();
+            System.out.println(request2.getRequestUri() + "->" + response3.getCode());
+        }
+
+        @Override
+        public void failed(Exception ex) {
+            latch2.countDown();
+            System.out.println(request2.getRequestUri() + "->" + ex);
+        }
+
+        @Override
+        public void cancelled() {
+            latch2.countDown();
+            System.out.println(request2.getRequestUri() + " cancelled");
+        }
+
+    });
+    latch2.await();
+
+}
+---
+    
+    Source can be downloaded 
+    {{{./current/org/apache/hc/client5/http/examples/AsyncQuickStart.java}here}}
+
+
diff --git a/src/site/apt/httpcomponents-core-5.1.x/download.apt b/src/site/apt/httpcomponents-client-5.1.x/related-projects.apt
similarity index 53%
copy from src/site/apt/httpcomponents-core-5.1.x/download.apt
copy to src/site/apt/httpcomponents-client-5.1.x/related-projects.apt
index 64fe5d7..9f8efa5 100644
--- a/src/site/apt/httpcomponents-core-5.1.x/download.apt
+++ b/src/site/apt/httpcomponents-client-5.1.x/related-projects.apt
@@ -23,28 +23,32 @@
 ~~ <http://www.apache.org/>.
 
     ----------
-    HttpComponents HttpCore Download Page
+    HttpComponents HttpCore Examples
     ----------
     ----------
     ----------
 
-HttpCore Downloads
+Related projects
 
-    The latest release available for download:
+* HttpClient 5.0 migration guide
 
-    {{{http://hc.apache.org/downloads.cgi}Release packages}} - 
-    {{{http://www.apache.org/dist/httpcomponents/httpcore/RELEASE_NOTES-5.1.x.txt}Release Notes}} -
-    {{{http://www.apache.org/licenses/LICENSE-2.0.html}License}}
+    {{{https://ok2c.github.io/httpclient-migration-guide/}HttpClient 5.0 migration guide}}
+    is a third party resource with recommendations about the upgrade process and
+    possible upgrade paths from Apache HttpClient 4.x to Apache HttpClient 5.0.
 
-{Dependency management}
+* Asynchronous JSON message processors
 
-    If you are using a dependency manager for your project such as 
-    {{{http://maven.apache.org}Apache Maven}} or 
-    {{{http://ant.apache.org/projects/ivy.html}Apache Ivy}}, 
-    you can create a dependency on HttpClient modules by using this information:
+    {{{https://ok2c.github.io/httpcomponents-jackson/}Asynchronous JSON message processors}}
+    library is a companion project for HttpClient 5.0 developed outside the Apache Software
+    Foundation.
 
-    {{{https://search.maven.org/artifact/org.apache.httpcomponents.core5/httpcore5}HttpCore HTTP/1.1}}
-    {{{https://search.maven.org/artifact/org.apache.httpcomponents.core5/httpcore5-h2}HttpCore HTTP/2}}
-    {{{https://search.maven.org/artifact/org.apache.httpcomponents.core5/httpcore5-reactive}HttpCore Reactive Streams}}
-    {{{https://search.maven.org/artifact/org.apache.httpcomponents.core5/httpcore5-testing}HttpCore testing support}}
+    The library provides a number of asynchronous message consumers and producers
+    for efficient, reactive processing of HTTP messages with enclosed JSON content using
+    {{{https://github.com/FasterXML/jackson}Jackson JSON processor}}.
 
+
+* Android extensions
+
+    {{{https://ok2c.github.io/httpclient-android-ext/}Android extensions for
+    Apache HttpClient 5.0}} is a third party library that provides extra functionality
+    simplifying application of Apache HttpClient on Google Android platform.
diff --git a/src/site/apt/httpcomponents-core-5.1.x/download.apt b/src/site/apt/httpcomponents-core-5.1.x/download.apt
index 64fe5d7..5c85bd9 100644
--- a/src/site/apt/httpcomponents-core-5.1.x/download.apt
+++ b/src/site/apt/httpcomponents-core-5.1.x/download.apt
@@ -44,7 +44,10 @@ HttpCore Downloads
     you can create a dependency on HttpClient modules by using this information:
 
     {{{https://search.maven.org/artifact/org.apache.httpcomponents.core5/httpcore5}HttpCore HTTP/1.1}}
+
     {{{https://search.maven.org/artifact/org.apache.httpcomponents.core5/httpcore5-h2}HttpCore HTTP/2}}
+
     {{{https://search.maven.org/artifact/org.apache.httpcomponents.core5/httpcore5-reactive}HttpCore Reactive Streams}}
+
     {{{https://search.maven.org/artifact/org.apache.httpcomponents.core5/httpcore5-testing}HttpCore testing support}}
 
diff --git a/src/site/apt/httpcomponents-core-5.1.x/index.apt b/src/site/apt/httpcomponents-core-5.1.x/index.apt
index e204f2d..fd858a2 100644
--- a/src/site/apt/httpcomponents-core-5.1.x/index.apt
+++ b/src/site/apt/httpcomponents-core-5.1.x/index.apt
@@ -49,6 +49,8 @@ HttpCore Overview
 
     * {{{./current/httpcore5-testing/apidocs/}HttpCore testing support}}
 
+    []
+
     [[1]] API compatibility reports
 
     * {{{./current/httpcore5/clirr-report.html/}HttpCore HTTP/1.1}}
diff --git a/src/site/apt/news.apt b/src/site/apt/news.apt
index 011b2b2..e1ecace 100644
--- a/src/site/apt/news.apt
+++ b/src/site/apt/news.apt
@@ -30,6 +30,20 @@
 
 HttpComponents Project News
 
+* 12 February 2021 - HttpComponents Client 5.1-beta1 released
+
+    This is the first BETA release in the 5.1 release series that includes a number of
+    new features as well performance optimizations in the classic HTTP transport.
+
+    Notable changes and features included in the 5.1 series:
+
+    * Conditional conformance with RFC 3986 (Uniform Resource Identifier (URI):
+    Generic Syntax).
+
+    * Improved support for out of sequence response message handing by the the classic
+    (blocking) HTTP transport.
+
+
 * 8 February 2021 - HttpComponents Core 5.1-beta3 released
 
     This is likely the last BETA release in the 5.1 release series. The next release is
@@ -50,7 +64,7 @@ HttpComponents Project News
     new features as well as bug fixes from the stable 5.0.x branch.
 
 
-* 3 December 2020 - HttpComponents Core 5.0.3 released
+* 3 December 2020 - HttpComponents Core 5.0.3 (GA) released
 
     This is a maintenance release that corrects a number of defects discovered since
     release 5.0.2 including a defect in the async (non-blocking) transport potentially
diff --git a/src/site/resources/httpcomponents-client-5.1.x/documentation.links b/src/site/resources/httpcomponents-client-5.1.x/documentation.links
new file mode 100644
index 0000000..b562b21
--- /dev/null
+++ b/src/site/resources/httpcomponents-client-5.1.x/documentation.links
@@ -0,0 +1,5 @@
+# links property file for Ant's symlink task in pom.xml:
+# links to components in http://hc.apache.org/components/
+
+5.1-beta1   ../components/httpcomponents-client-5.1.x/5.1-beta1
+current     ../components/httpcomponents-client-5.1.x/5.1-beta1
diff --git a/src/site/resources/httpcomponents-core-5.1.x/documentation.links b/src/site/resources/httpcomponents-core-5.1.x/documentation.links
index c974c39..17f959a 100644
--- a/src/site/resources/httpcomponents-core-5.1.x/documentation.links
+++ b/src/site/resources/httpcomponents-core-5.1.x/documentation.links
@@ -1,6 +1,5 @@
 # links property file for Ant's symlink task in pom.xml:
 # links to components in http://hc.apache.org/components/
-LATEST   ../components/httpcomponents-core-5.1.x/LATEST
 
 5.1-beta3   ../components/httpcomponents-core-5.1.x/5.1-beta3
 current     ../components/httpcomponents-core-5.1.x/5.1-beta3
diff --git a/src/site/site.xml b/src/site/site.xml
index aed9344..04cfc88 100644
--- a/src/site/site.xml
+++ b/src/site/site.xml
@@ -71,6 +71,16 @@ under the License.
       <item name="Get Involved" href="get-involved.html"/>
     </menu>
     <menu name="Components">
+      <item name="HttpClient 5.1 BETA" collapse="true" href="httpcomponents-client-5.1.x/index.html">
+        <item name="Quick Start" href="httpcomponents-client-5.1.x/quickstart.html"/>
+        <item name="Examples (Classic)" href="httpcomponents-client-5.1.x/examples.html"/>
+        <item name="Examples (Async)" href="httpcomponents-client-5.1.x/examples-async.html"/>
+        <item name="Examples (Reactive)" href="httpcomponents-client-5.1.x/examples-reactive.html"/>
+        <item name="Logging Guide" href="httpcomponents-client-5.1.x/logging.html"/>
+        <item name="Android" href="httpcomponents-client-5.1.x/android.html"/>
+        <item name="Related" href="httpcomponents-client-5.1.x/related-projects.html"/>
+        <item name="Download" href="httpcomponents-client-5.1.x/download.html"/>
+      </item>
       <item name="HttpClient 5.0" collapse="true" href="httpcomponents-client-5.0.x/index.html">
         <item name="Quick Start" href="httpcomponents-client-5.0.x/quickstart.html"/>
         <item name="Examples (Classic)" href="httpcomponents-client-5.0.x/examples.html"/>
@@ -80,19 +90,16 @@ under the License.
         <item name="Android" href="httpcomponents-client-5.0.x/android.html"/>
         <item name="Related" href="httpcomponents-client-5.0.x/related-projects.html"/>
         <item name="Download" href="httpcomponents-client-5.0.x/download.html"/>
-        <item name="Project Info" href="httpcomponents-client-5.0.x/project-info.html"/>
       </item>
       <item name="HttpCore 5.1 BETA" collapse="true" href="httpcomponents-core-5.1.x/index.html">
         <item name="Examples" href="httpcomponents-core-5.1.x/examples.html"/>
         <item name="Related" href="httpcomponents-core-5.1.x/related-projects.html"/>
         <item name="Download" href="httpcomponents-core-5.1.x/download.html"/>
-        <item name="Project Info" href="httpcomponents-core-5.1.x/project-info.html"/>
       </item>
       <item name="HttpCore 5.0" collapse="true" href="httpcomponents-core-5.0.x/index.html">
         <item name="Examples" href="httpcomponents-core-5.0.x/examples.html"/>
         <item name="Related" href="httpcomponents-core-5.0.x/related-projects.html"/>
         <item name="Download" href="httpcomponents-core-5.0.x/download.html"/>
-        <item name="Project Info" href="httpcomponents-core-5.0.x/project-info.html"/>
       </item>
       <item name="HttpClient 4.5" collapse="true" href="httpcomponents-client-4.5.x/index.html">
         <item name="Quick Start" href="httpcomponents-client-4.5.x/quickstart.html"/>
@@ -103,19 +110,16 @@ under the License.
         <item name="NTLM Guide" href="httpcomponents-client-4.5.x/ntlm.html"/>
         <item name="Logging Guide" href="httpcomponents-client-4.5.x/logging.html"/>
         <item name="Download" href="httpcomponents-client-4.5.x/download.html"/>
-        <item name="Project Info" href="httpcomponents-client-4.5.x/project-info.html"/>
       </item>
       <item name="HttpCore 4.4" collapse="true" href="httpcomponents-core-4.4.x/index.html">
         <item name="Tutorial" href="httpcomponents-core-4.4.x/tutorial/html/index.html"/>
         <item name="Examples" href="httpcomponents-core-4.4.x/examples.html"/>
         <item name="Download" href="httpcomponents-core-4.4.x/download.html"/>
-        <item name="Project Info" href="httpcomponents-core-4.4.x/project-info.html"/>
       </item>
       <item name="HttpAsyncClient 4.1" collapse="true" href="httpcomponents-asyncclient-4.1.x/index.html">
         <item name="Quick Start" href="httpcomponents-asyncclient-4.1.x/quickstart.html"/>
         <item name="Examples" href="httpcomponents-asyncclient-4.1.x/examples.html"/>
         <item name="Download" href="httpcomponents-asyncclient-4.1.x/download.html"/>
-        <item name="Project Info" href="httpcomponents-asyncclient-4.1.x/project-info.html"/>
       </item>
     </menu>
     <menu name="Legacy">
diff --git a/src/site/xdoc/downloads.xml b/src/site/xdoc/downloads.xml
index ec9d121..2c503b5 100644
--- a/src/site/xdoc/downloads.xml
+++ b/src/site/xdoc/downloads.xml
@@ -236,7 +236,39 @@
     </ul>
   </subsection>
 
-  <subsection name="HttpCore 5.1 BETA3">
+    <subsection name="HttpClient 5.1 BETA1">
+      <a href="https://downloads.apache.org/httpcomponents/httpclient/KEYS">KEYS</a>
+      <a href="https://downloads.apache.org/httpcomponents/httpclient/RELEASE_NOTES-5.1.x.txt">Release Notes</a>
+      <br/>
+      <p>Binary</p>
+      <ul>
+        <li>
+          <a href="[preferred]/httpcomponents/httpclient/binary/httpcomponents-client-5.1-beta1-bin.tar.gz">5.1-beta1.tar.gz</a>
+          [<a href="https://downloads.apache.org/httpcomponents/httpclient/binary/httpcomponents-client-5.1-beta1-bin.tar.gz.sha512">sha512</a>]
+          [<a href="https://downloads.apache.org/httpcomponents/httpclient/binary/httpcomponents-client-5.1-beta1-bin.tar.gz.asc">pgp</a>]
+        </li>
+        <li>
+          <a href="[preferred]/httpcomponents/httpclient/binary/httpcomponents-client-5.1-beta1-bin.zip">5.1-beta1.zip</a>
+          [<a href="https://downloads.apache.org/httpcomponents/httpclient/binary/httpcomponents-client-5.1-beta1-bin.zip.sha512">sha512</a>]
+          [<a href="https://downloads.apache.org/httpcomponents/httpclient/binary/httpcomponents-client-5.1-beta1-bin.zip.asc">pgp</a>]
+        </li>
+      </ul>
+      <p>Source</p>
+      <ul>
+        <li>
+          <a href="[preferred]/httpcomponents/httpclient/source/httpcomponents-client-5.1-beta1-src.tar.gz">5.1-beta1.tar.gz</a>
+          [<a href="https://downloads.apache.org/httpcomponents/httpclient/source/httpcomponents-client-5.1-beta1-src.tar.gz.sha512">sha512</a>]
+          [<a href="https://downloads.apache.org/httpcomponents/httpclient/source/httpcomponents-client-5.1-beta1-src.tar.gz.asc">pgp</a>]
+        </li>
+        <li>
+          <a href="[preferred]/httpcomponents/httpclient/source/httpcomponents-client-5.1-beta1-src.zip">5.1-beta1.zip</a>
+          [<a href="https://downloads.apache.org/httpcomponents/httpclient/source/httpcomponents-client-5.1-beta1-src.zip.sha512">sha512</a>]
+          [<a href="https://downloads.apache.org/httpcomponents/httpclient/source/httpcomponents-client-5.1-beta1-src.zip.asc">pgp</a>]
+        </li>
+      </ul>
+    </subsection>
+
+    <subsection name="HttpCore 5.1 BETA3">
     <a href="https://downloads.apache.org/httpcomponents/httpcore/KEYS">KEYS</a>
     <a href="https://downloads.apache.org/httpcomponents/httpcore/RELEASE_NOTES-5.1.x.txt">Release Notes</a>
     <br/>