Starting in v1.9.0 there are many defines that can be used to disable a feature. These defines can be combined, even all can be set. Disabled features will not compile, so build size can be reduced by disabling unused features.
These defines are the following:
-BESTHTTP_DISABLE_COOKIES: With this define all cookie releated code can be disabled. No cookie parsing, saving and sending will occur.
-BESTHTTP_DISABLE_CACHING: With this define all cache releated code can be disabled. No caching, or cache validation will be done.
-BESTHTTP_DISABLE_SERVERSENT_EVENTS: Server-Sent Events can be disabled with this. SignalR will not fallback to this.
-BESTHTTP_DISABLE_WEBSOCKET: Websocket can be disable with this. SignalR and Socket.IO will not use this protocol.
-BESTHTTP_DISABLE_SIGNALR: The entire SignalR implementation will be disabled.
-BESTHTTP_DISABLE_SOCKETIO: The entire Socket.IO implementation will be disabled.
-BESTHTTP_DISABLE_ALTERNATE_SSL: If you are not using HTTPS or WSS for WebSocket, or you are happy with the default implementation, you can disable the alretnate ssl handler.
-BESTHTTP_DISABLE_UNITY_FORM: You can remove the dependency on Unity's WWWForm.
Upgrading to 1.9.x:
In v1.9.0 all DLL dependencies are removed, and some of the files from the source too. So a clean install is advised: Before you install v1.9.x you have to remove the /Assets/Best HTTP (Pro)/ folder and TcpClientImplementation.dll from the /Assets/Plugins/, /Assets/Plugins/Metro and /Assets/Plugins/WP8 folders.
1.9.15 (2016.09.22)
General
-[Improvement] When ConnectTimeout of the HTTPManager or HTTPRequest is set to TimeSpan.Zero, no timeout logic is executed.
-[Bugfix] Removed read&write timeouts as it caused issues in some cases
-[Bugfix] Fixed a compile error when BESTHTTP_DISABLE_CACHING was defined
1.9.14 (2016.09.13)
General
-[Improvement] Added Read and Write timeouts
-[Improvement] Added diagnostic logging. They will be logged when LogLevels.All is used
-[Improvement] Removed a frightening warning about lock acquisition
-[Improvement] Removed an additonal BinaryWriter instantiation when sending out a request
-[Bugfix] Fixed a case where uris without a leading / would fail
-[Bugfix] [WebGL] Fixed url lowercase converting
-[Bugfix] No exceptions should be thrown now when quitting
-[Bugfix] Fixed a case where a cache entity deleted unintentionally on startup
Server-Sent Event
-[Bugfix] Content-Type header check was too strict
1.9.13 (2016.07.20)
General
-[Improvement] Default Connection idle time lowered to 20 seconds
-[Bugfix] Made workaround for mono bugs around Uri encodings
-[Bugfix] Cached content wasnt refreshed (thanks goes to Jeff Mrochuk)
Server-Sent Events
-[Bugfix] Fixed a case where it would produce an exception when no On function is used to subscribe to an event
1.9.12 (2016.06.21)
General
-[Improvement] Reading a file with the file:// protocol will not result in an Access Denied exception on PS4 (Thanks goes to Dong-Geun Oh for reporting and sending a patch)
-[Improvement] ThreadPools are used again instead of raw Threads
-[Improvement] Content-Length headers value will be used even with chunked encoding for download progress report
-[Improvement] Improved thread locking
-[Bugfix] Automatic retry will be done only for GET request on erro
-[Bugfix] TCP connection will be closed when the requests IsKeepAlive set to false
-[Bugfix] [WebGL] OnBeforeHeaderSend will be called now properly
-[Bugfix] [WebGL] Callbacks will be called now when an error occur in the XHR_Send function
-[Bugfix] HTTPRequest.AddField with null encoding will work now
-[Bugfix] Callback called with requests State Processing on application quit
WebSocket
-[Improvement] Documentation and code changes to emphasize that WebSocket instance cant be reused
-[Improvement] Text frames will be decoded on the read thread to further minimize cpu burden on the main Unity thread
SignalR
-[Improvement] New BESTHTTP_SIGNALR_WITH_JSONDOTNET compile-time directive to use Newtonsofts JSon.NET. Using this the plugin will default to the JsonDotnetEncoder.
SocketIO
-[Bugfix] Fixed a case where calling Off on an event caused an exception when the server sent that event again
1.9.11 (2016.04.04)
General
-[Bugfix][WebGL] Fixed a case where http requests truncated under Microsoft Edge
-[Bugfix] The plugin will work again in editor windows
-[Bugfix] Multiple fixes around request abortion
Server-Sent Events
-[Bugfix] [WebGL] Newly created event sources will not use the same id(1) over and over
Socket.IO
-[Improvement] Rewrote handshake processing to be able to skip the polling transport
-[Improvement] Now its possible to inform the plugin what transport it should use to connect with through the SocketOptions ConnectWith property
-[Improvement][PollingTransport] Will not force the server to send textual packets
-[Improvement][PollingTransport] Greatly improved packet parsing speed
-[Bugfix] The plugin will process messages sent with the handshake data
1.9.10 (2016.03.14)
General
-[New Feature] Apple TvOS support added.
-[New Feature] Keep-Alive header support added
-[New Feature] New OnBeforeHeaderSend event added to the HTTPRequest class to be able to access and modify headers just before they are sent out.
-[Improvement] Decreased memory allocations when no encoding is used in the response
-[Improvement] Updated link.xml
-[Improvement] The default value for UserAlternateSSL is changed to true
-[Improvement] [WebGL] The WebGL connection will use the loggers level
-[Improvement] [WebGL] The plugin will handle correctly UTF16 strings (Thanks goes to Eugen and Zorrendor)
-[Bugfix] [UWP] Because of a missing Flush() call, body-less requests are not sent out
SignalR
-[Improvement] Connections PingInterval is now set to public
-[Bugfix] PrepareRequest doesnt called for Ping requests
WebSocket
-[Bugfix] [WebGL] Fixed a bug where checking the websockets IsOpen status caused an error
-[Bugfix] Fixed a case where assembled frames decoded with extensions twice
1.9.9 (2016.02.16)
General
-[Bugfix] On redirection the plugin tried to load from the cache for the wrong uri
-[Bugfix] On application exit HTTPUpdateDelegator will now shut down the update thread if its used
-[Bugfix] Cookies will be sent for protocols other than http too
-[Bugfix] Empty headers will no longer sent out
-[Bugfix] Null values in headers will no longer cause an exception
-[Improvement] Added some missing documentation.
-[Improvement] Exception logging now will include inner exceptions too
WebSockets
-[New Feature] Support for extensions added
-[New Feature] Per-Message Deflate compression extension added
Socket.IO
-[Improvement] Custom errors by middlewares are now supported
-[Improvement] Socket.Options AdditionalQueryParams changed from Dictionary to ObservableDictionary to automatically delete the cached value when its changed
-[Bugfix] The plugin will not decode the payload for Emit callbacks
SignalR
-[Improvement] AdditionalQueryParams changed from Dictionary to ObservableDictionary to automatically delete the cached value when its changed
1.9.8 (2016.01.04)
General
-[Improvement] Download progress report will be more frequent now with Chunked encoding
WebSockets
-[Bugfix] Sending pings will not be capped on 100ms now
-[Bugfix] [WebGL] Binary data sending and receiving will be handled correctly now
1.9.7 (2015.12.13)
General
-[Bugfix] Improved compatibility with 5.3 coroutine changes
-[Improvement] Example scripts are in a namespace too
1.9.6 (2015.12.08)
General
-[Improvement] Changes made to greatly improve compatibility for Windows Store builds targeting IL2CPP scripting backend
Socket.IO
-[Improvement] The WebSocketTransport will send and Update packet to the server without any other payload to improve compatibility
1.9.5 (2015.11.30)
General
-[Fix] The plugin will choose the Content-L