[RELEASE] Released version 1.8-rc4

Released version 1.8-rc4 with the following main changes :
    - BUG/MEDIUM: cache: does not cache if no Content-Length
    - BUILD: thread/pipe: fix build without threads
    - BUG/MINOR: spoe: check buffer size before acquiring or releasing it
    - MINOR: debug/flags: Add missing flags
    - MINOR: threads: Use __decl_hathreads to declare locks
    - BUG/MINOR: buffers: Fix b_alloc_margin to be "fonctionnaly" thread-safe
    - BUG/MAJOR: ebtree/scope: fix insertion and removal of duplicates in scope-aware trees
    - BUG/MAJOR: ebtree/scope: fix lookup of next node in scope-aware trees
    - MINOR: ebtree/scope: add a function to find next node from a parent
    - MINOR: ebtree/scope: simplify the lookup functions by using eb32sc_next_with_parent()
    - BUG/MEDIUM: mworker: Fix re-exec when haproxy is started from PATH
    - BUG/MEDIUM: cache: use msg->sov to forward header
    - MINOR: cache: forward data with headers
    - MINOR: cache: disable cache if shctx_row_data_append fail
    - BUG/MINOR: threads: tid_bit must be a unsigned long
    - CLEANUP: tasks: Remove useless double test on rq_next
    - BUG/MEDIUM: standard: itao_str/idx and quote_str/idx must be thread-local
    - MINOR: tools: add a function to dump a scope-aware tree to a file
    - MINOR: tools: improve the DOT dump of the ebtree
    - MINOR: tools: emphasize the node being worked on in the tree dump
    - BUG/MAJOR: ebtree/scope: properly tag upper nodes during insertion
    - DOC: peers: Add a first version of peers protocol v2.1.
    - CONTRIB: Wireshark dissector for HAProxy Peer Protocol.
    - MINOR: mworker: display an accurate error when the reexec fail
    - BUG/MEDIUM: mworker: wait again for signals when execvp fail
    - BUG/MEDIUM: mworker: does not deinit anymore
    - BUG/MEDIUM: mworker: does not close inherited FD
    - MINOR: tests: add a python wrapper to test inherited fd
    - BUG/MINOR: Allocate the log buffers before the proxies startup
    - MINOR: tasks: Use a bitfield to track tasks activity per-thread
    - MAJOR: polling: Use active_tasks_mask instead of tasks_run_queue
    - MINOR: applets: Use a bitfield to track applets activity per-thread
    - MAJOR: polling: Use active_appels_mask instead of applets_active_queue
    - MEDIUM: applets: Don't process more than 200 active applets at once
    - MINOR: stream: Add thread-mask of tasks/FDs/applets in "show sess all" command
    - MINOR: SSL: Store the ASN1 representation of client sessions.
    - MINOR: ssl: Make sure we don't shutw the connection before the handshake.
    - BUG/MEDIUM: deviceatlas: ignore not valuable HTTP request data
diff --git a/CHANGELOG b/CHANGELOG
index 60c4ba5..35fa752 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,6 +1,46 @@
 ChangeLog :
 ===========
 
+2017/11/19 : 1.8-rc4
+    - BUG/MEDIUM: cache: does not cache if no Content-Length
+    - BUILD: thread/pipe: fix build without threads
+    - BUG/MINOR: spoe: check buffer size before acquiring or releasing it
+    - MINOR: debug/flags: Add missing flags
+    - MINOR: threads: Use __decl_hathreads to declare locks
+    - BUG/MINOR: buffers: Fix b_alloc_margin to be "fonctionnaly" thread-safe
+    - BUG/MAJOR: ebtree/scope: fix insertion and removal of duplicates in scope-aware trees
+    - BUG/MAJOR: ebtree/scope: fix lookup of next node in scope-aware trees
+    - MINOR: ebtree/scope: add a function to find next node from a parent
+    - MINOR: ebtree/scope: simplify the lookup functions by using eb32sc_next_with_parent()
+    - BUG/MEDIUM: mworker: Fix re-exec when haproxy is started from PATH
+    - BUG/MEDIUM: cache: use msg->sov to forward header
+    - MINOR: cache: forward data with headers
+    - MINOR: cache: disable cache if shctx_row_data_append fail
+    - BUG/MINOR: threads: tid_bit must be a unsigned long
+    - CLEANUP: tasks: Remove useless double test on rq_next
+    - BUG/MEDIUM: standard: itao_str/idx and quote_str/idx must be thread-local
+    - MINOR: tools: add a function to dump a scope-aware tree to a file
+    - MINOR: tools: improve the DOT dump of the ebtree
+    - MINOR: tools: emphasize the node being worked on in the tree dump
+    - BUG/MAJOR: ebtree/scope: properly tag upper nodes during insertion
+    - DOC: peers: Add a first version of peers protocol v2.1.
+    - CONTRIB: Wireshark dissector for HAProxy Peer Protocol.
+    - MINOR: mworker: display an accurate error when the reexec fail
+    - BUG/MEDIUM: mworker: wait again for signals when execvp fail
+    - BUG/MEDIUM: mworker: does not deinit anymore
+    - BUG/MEDIUM: mworker: does not close inherited FD
+    - MINOR: tests: add a python wrapper to test inherited fd
+    - BUG/MINOR: Allocate the log buffers before the proxies startup
+    - MINOR: tasks: Use a bitfield to track tasks activity per-thread
+    - MAJOR: polling: Use active_tasks_mask instead of tasks_run_queue
+    - MINOR: applets: Use a bitfield to track applets activity per-thread
+    - MAJOR: polling: Use active_appels_mask instead of applets_active_queue
+    - MEDIUM: applets: Don't process more than 200 active applets at once
+    - MINOR: stream: Add thread-mask of tasks/FDs/applets in "show sess all" command
+    - MINOR: SSL: Store the ASN1 representation of client sessions.
+    - MINOR: ssl: Make sure we don't shutw the connection before the handshake.
+    - BUG/MEDIUM: deviceatlas: ignore not valuable HTTP request data
+
 2017/11/11 : 1.8-rc3
     - BUILD: use MAXPATHLEN instead of NAME_MAX.
     - BUG/MAJOR: threads/checks: add 4 missing spin_unlock() in various functions
diff --git a/README b/README
index 5fa8a24..47a6b96 100644
--- a/README
+++ b/README
@@ -3,7 +3,7 @@
                          ----------------------
                               version 1.8
                              willy tarreau
-                               2017/11/11
+                               2017/11/19
 
 
 1) How to build it
diff --git a/VERDATE b/VERDATE
index 9631c85..4226a95 100644
--- a/VERDATE
+++ b/VERDATE
@@ -1,2 +1,2 @@
 $Format:%ci$
-2017/11/11
+2017/11/19
diff --git a/VERSION b/VERSION
index 68264cb..5eb070b 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-1.8-rc3
+1.8-rc4
diff --git a/doc/configuration.txt b/doc/configuration.txt
index cc90145..bb255be 100644
--- a/doc/configuration.txt
+++ b/doc/configuration.txt
@@ -4,7 +4,7 @@
                          ----------------------
                               version 1.8
                              willy tarreau
-                              2017/11/11
+                              2017/11/19
 
 
 This document covers the configuration language as implemented in the version
diff --git a/doc/peers.txt b/doc/peers.txt
index f31d937..8310a00 100644
--- a/doc/peers.txt
+++ b/doc/peers.txt
@@ -1,6 +1,6 @@
                                +----------------+
                                | Peers protocol |
-                               |  version 2.1   |
+                               |  version 1.8
                                +----------------+
 
 
diff --git a/examples/haproxy.spec b/examples/haproxy.spec
index ea5c086..67e6940 100644
--- a/examples/haproxy.spec
+++ b/examples/haproxy.spec
@@ -1,6 +1,6 @@
 Summary: HA-Proxy is a TCP/HTTP reverse proxy for high availability environments
 Name: haproxy
-Version: 1.8-rc3
+Version: 1.8-rc4
 Release: 1
 License: GPL
 Group: System Environment/Daemons
@@ -74,6 +74,9 @@
 %attr(0755,root,root) %config %{_sysconfdir}/rc.d/init.d/%{name}
 
 %changelog
+* Sun Nov 19 2017 Willy Tarreau <w@1wt.eu>
+- updated to 1.8-rc4
+
 * Sat Nov 11 2017 Willy Tarreau <w@1wt.eu>
 - updated to 1.8-rc3