streams
json
http_listener
websocket_client
Windows
iOS
Ubuntu
miscellaneous
- Deprecated the streambuf::putn API. In some cases with file streams this API makes a copy. To be more efficient and not break existing code a new function putn_nocopy has been created. This makes it clear to users they need to ensure the pointer data provided is valid until the returned task is completed.
- File streams cleanup improvements: replacing C style casts, updating some shared_ptr parameters to const reference, and removed unnecessary data structures saving heap allocations and space. Fixes #353, #126
json
- Added ability to erase elements from a json array or object. #147
- Added missing static factories for working with 64bit integers to the json::value class. #351
- Fixed improper serialization of control characters that should always be Unicode escaped.
- Fixed issue with parsing and then serializing not properly escaping necessary characters if parsed originally from a stream. #259
- Updated json::value::as_number() and json::value::as_string() to return by const reference.
- Made json::object copy constructor not private. Also removed a few unnecessary copy constructors and stick with compiler generated.
http_listener
- Fixed potential crash on Windows that could occur in some cases if the client sent and invalid URI. #267
- Fixed potential hang on Windows if running on a single core machine. #106
- Merged pull request fixing issue with listeners not being properly remove if port is in use on non-Windows. #375
websocket_client
- Added tests for Windows Runtime websockets client. #223
- Removed unnecessary extra event in Windows Runtime implementation from websocket client.
Windows
- Removed DllMain and global process exiting flag as no longer needed.
- Removed Visual Studio 2012 project files. VS2012 is no longer supported.
- Fixed problem with CasaLens sample not compiling due to std::bind with some versions of Visual Studio 2015.
- Removed a bunch of Windows specific string conversion code, replaced with C++ standard equivalent.
- Fixed a potential deadlock on Windows XP when using CPPREST_FORCE_PPLX. #374
iOS
- Updated Boost dependency to version 1.57.
- Improvements to script for building Boost, including no longer building for OS X, adding x86_64 simulator, and always using latest iOS SDK available on the machine. #196
- Removed dependency on Boost.Locale, replaced with C++ standard equivalent.
Ubuntu
- Fixed remaining warning with GCC and removed all warning suppression in CMakeLists.txt. #253
miscellaneous
- Updated some code documentation comments to improve reference documentation.
- Merged pull request qualifying web::credentials namespace in http_client authentication_tests.cpp to avoid collisions with OpenSSL.
- Fixed locale based test cases to silently pass if the necessary locale isn't installed on the machine. #354
- Removed a bunch of unnecessary MSBuild properties from test vcxproj files. #264