diff --git a/CMakeLists.txt b/CMakeLists.txt
index 8badd6b0da63fa666509f05da49deeb780108e13..7909c3f6d2d4c8cac4fce39be0b3079142e339dc 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -9,12 +9,12 @@ project(libwebsockets C)
 set(PACKAGE "libwebsockets")
 set(CPACK_PACKAGE_NAME "${PACKAGE}")
 set(CPACK_PACKAGE_VERSION_MAJOR "2")
-set(CPACK_PACKAGE_VERSION_MINOR "0")
+set(CPACK_PACKAGE_VERSION_MINOR "1")
 set(CPACK_PACKAGE_VERSION_PATCH "0")
 set(CPACK_PACKAGE_VERSION "${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}")
 set(CPACK_PACKAGE_VENDOR "andy@warmcat.com")
 set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "${PACKAGE} ${PACKAGE_VERSION}")
-set(SOVERSION "8")
+set(SOVERSION "9")
 set(CPACK_SOURCE_GENERATOR "TGZ")
 set(CPACK_SOURCE_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}")
 set(VERSION "${CPACK_PACKAGE_VERSION}")
diff --git a/changelog b/changelog
index d48a7bea3e7c739158800b529679c19f23149223..ceeb27ffada7e94f1d7197319d176f8f25667e9f 100644
--- a/changelog
+++ b/changelog
@@ -1,39 +1,47 @@
 Changelog
 ---------
 
-Fixes
------
+v2.1.0
+======
+
+Major new features
+
+ - Support POST arguments, including multipart and file attachment
+
+ - Move most of lwsws into lws, make the stub CC0
+
+ - Add loopback test plugin to confirm client ws / http coexistence
+
+ - Integrate lwsws testing on Appveyor (ie, windows)
 
-1) OpenSSL version tests not needed on LibreSSL and BoringSSL
+ - Introduce helpers for sql, urlencode and urldecode sanitation
 
-2) Fix IPV6 build breakage
+ - Introduce LWS_CALLBACK_HTTP_BIND_PROTOCOL / DROP_PROTOCOL that
+ are compatible with http:/1.1 pipelining and different plugins
+ owning different parts of the URL space
 
-3) Some fixes for WinCE build
+ - lwsgs - Generic Sessions plugin supports serverside sessions,
+ cookies, hashed logins, forgot password etc
 
-4) Additional canned mimetypes for mounts, the full list is
+ - Added APIs for sending email to SMTP servers
 
-	.ico    image/x-icon
-	.gif    image/gif
-	.js     text/javascript
-	.png    image/png
-	.jpg    image/jpeg
-	.gz     application/gzip
-	.JPG    image/jpeg
-	.html   text/html
-	.css    text/css
-	.txt    text/plain
-	.ttf    application/x-font-ttf
-	.woff   application/font-woff
-	.xml    application/xml
+ - Messageboard example plugin for lwsgs
 
-5) Allow per-vhost setting of which protocol should get used
-when the protocol: header is not sent by the client
+ - Automatic PING sending at fixed intervals and close if no response
+
+ - Change default header limit in ah to 4096 (from 1024)
+
+ - Add SNI matching for wildcards if no specific wildcard vhost name match
+
+ - Convert docs to Doxygen
+
+ - ESP8266 support ^^
+
+Fixes
+-----
 
-New APIs
---------
+See git log v2.0.0..
 
-1) lws_init_vhost_client_ssl() lets you also enable client SSL context on a
-vhost.
 
 
 v2.0.0
diff --git a/libwebsockets.spec b/libwebsockets.spec
index 355caa53232af8eb69ffca31c6f2bc0fbf901ca1..3244c52e03dfec434362bf035189d60a44b6484e 100644
--- a/libwebsockets.spec
+++ b/libwebsockets.spec
@@ -1,5 +1,5 @@
 Name: libwebsockets
-Version: 2.0.0
+Version: 2.1.0
 Release: 1%{?dist}
 Summary: Websocket Server and Client Library
 
@@ -70,6 +70,9 @@ rm -rf $RPM_BUILD_ROOT
 /%{_libdir}/pkgconfig/libwebsockets.pc
 
 %changelog
+* Thu Oct 06 2016 Andy Green <andy@warmcat.com> 2.1.0-1
+- MAJOR SONAMEBUMP APICHANGES Upstream 2.1.0 release
+
 * Thu May 05 2016 Andy Green <andy@warmcat.com> 2.0.0-1
 - MAJOR SONAMEBUMP APICHANGES Upstream 2.0.0 release