From cd49be7ddcb886e06519670a5de43d9491bf9ed7 Mon Sep 17 00:00:00 2001
From: Nicolas Werner <nicolas.werner@hotmail.de>
Date: Tue, 3 Dec 2019 13:52:35 +0100
Subject: [PATCH] Require boost 1.70

The bug fix for the race condition on handler execution used the new
strand interface. While it is possible to use bind_executor on every
call, that is error prone and not the suggested usage anymore.
---
 CMakeLists.txt      | 2 +-
 Dockerfile          | 4 ++--
 README.md           | 2 +-
 appveyor.yml        | 3 ++-
 deps/CMakeLists.txt | 4 ++--
 5 files changed, 8 insertions(+), 7 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index eaaaec2fd..9e19afe0b 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -92,7 +92,7 @@ set_package_properties(nlohmann_json PROPERTIES
 set(Boost_USE_STATIC_LIBS OFF)
 set(Boost_USE_STATIC_RUNTIME OFF)
 set(Boost_USE_MULTITHREADED ON)
-find_package(Boost 1.66
+find_package(Boost 1.70
              COMPONENTS atomic
                         chrono
                         date_time
diff --git a/Dockerfile b/Dockerfile
index ee3842047..1141e50d1 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -52,8 +52,8 @@ RUN \
     cmake --build build --target install && \
     # boost
     mkdir -p /build/boost && cd /build/boost && \
-    curl -L https://dl.bintray.com/boostorg/release/1.68.0/source/boost_1_68_0.tar.gz -o boost_1_68_0.tar.gz && \
-    tar xfz boost_1_68_0.tar.gz && cd /build/boost/boost_1_68_0/ && \
+    curl -L https://dl.bintray.com/boostorg/release/1.70.0/source/boost_1_70_0.tar.gz -o boost_1_70_0.tar.gz && \
+    tar xfz boost_1_70_0.tar.gz && cd /build/boost/boost_1_70_0/ && \
     ./bootstrap.sh --with-libraries=random,thread,system,iostreams,atomic,chrono,date_time,regex && \
     ./b2 -d0 cxxstd=14 variant=release link=static threading=multi --layout=system && \
     ./b2 -d0 install && \
diff --git a/README.md b/README.md
index 3a5a4b863..f2ca51296 100644
--- a/README.md
+++ b/README.md
@@ -11,7 +11,7 @@ Client API library for the Matrix protocol, built on top of Boost.Asio.
 
 ### Dependencies
 
-- Boost 1.66 (includes Boost.Beast)
+- Boost 1.70 (includes Boost.Beast and makes the strand interface usable)
 - OpenSSL
 - C++ 14 compiler
 - CMake 3.1 or greater
diff --git a/appveyor.yml b/appveyor.yml
index 780d8d772..bce5d3447 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -1,6 +1,6 @@
 ---
 
-version: 0.2.0-{build}
+version: 0.3.0-{build}
 
 configuration: Release
 image: Visual Studio 2017
@@ -30,6 +30,7 @@ install:
             openssl:%PLATFORM%-windows
             spdlog:%PLATFORM%-windows
             zlib:%PLATFORM%-windows
+    - vcpkg upgrade --no-dry-run
 
 build_script:
     - cmake --version
diff --git a/deps/CMakeLists.txt b/deps/CMakeLists.txt
index 1644d66fd..7d930075a 100644
--- a/deps/CMakeLists.txt
+++ b/deps/CMakeLists.txt
@@ -40,9 +40,9 @@ if(USE_BUNDLED_BOOST)
 endif()
 
 set(BOOST_URL
-    https://dl.bintray.com/boostorg/release/1.69.0/source/boost_1_69_0.tar.bz2)
+    https://dl.bintray.com/boostorg/release/1.70.0/source/boost_1_70_0.tar.bz2)
 set(BOOST_SHA256
-    8f32d4617390d1c2d16f26a27ab60d97807b35440d45891fa340fc2648b04406)
+    430ae8354789de4fd19ee52f3b1f739e1fba576f0aded0897c3c2bc00fb38778)
 
 set(GTEST_URL https://github.com/google/googletest/archive/release-1.8.0.tar.gz)
 set(GTEST_SHA1 e7e646a6204638fe8e87e165292b8dd9cd4c36ed)
-- 
GitLab