
\begin{DoxyItemize}
\item Add {\ttfamily timeout} option to set a minimum transport timeout. Fixes \#403
\item Update dev deps to fix security warnings from {\ttfamily npm audit}
\item Guard against null {\ttfamily this.\+\_\+transport} in {\ttfamily debug} statement. Fixes \#448
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27949}{}\doxysection{1.\+3.\+0}\label{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27949}

\begin{DoxyItemize}
\item Revert {\ttfamily debug} to {\ttfamily $^\wedge$3} because v4 starts using ES6. Fixes \#457
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27950}{}\doxysection{1.\+2.\+0}\label{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27950}

\begin{DoxyItemize}
\item Update all outdated dependencies
\item Switch to karma and browserstack for running automated browser tests
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27951}{}\doxysection{1.\+1.\+5}\label{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27951}

\begin{DoxyItemize}
\item Wrap the the content\+Window access in a try/catch block when in set\+Timeout \#363
\item Revised example in README \#356
\item Fix connection close when Transport timeout \#358
\item Fixed crash with \href{mailto:react-native@0.45}{\texttt{ react-\/native@0.\+45}}.1 on Android \#386
\item Update js\+Delivr link \#404, \#405
\item Remove Sauce Labs unsupported browsers
\item Add link to rust server implementation \#411
\item location.\+protocol should include final {\ttfamily \+:} \#396
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27952}{}\doxysection{1.\+1.\+4}\label{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27952}

\begin{DoxyItemize}
\item Upgrade {\ttfamily debug} and fix object key literal mangling, fixes regression in Opera 11.\+10 \#359
\item Trim descriptions in package.\+json and bower.\+json -\/ \#372
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27953}{}\doxysection{1.\+1.\+3}\label{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27953}

\begin{DoxyItemize}
\item Bad publish to NPM (removed)
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27954}{}\doxysection{1.\+1.\+2}\label{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27954}

\begin{DoxyItemize}
\item Ensure both sender and receiver are cleaned upon close -\/ \#342
\item Remove event listeners before calling {\ttfamily close} -\/ \#344
\item Update documentation links -\/ \#351, \#339, \#316
\item Explicitly export {\ttfamily undefined} when {\ttfamily Web\+Socket} does not exist. Fixes Webpack. \#321
\item Include {\ttfamily dist} folder on npm -\/ \#265
\item Simplify build setup
\item Update to Node.\+js 6.\+9
\item Add sourcemap for minified version
\item Remove unused String.\+trim shim
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27955}{}\doxysection{1.\+1.\+1}\label{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27955}

\begin{DoxyItemize}
\item Do not pass {\ttfamily protocols} or {\ttfamily options} arguments to browser Web\+Socket constructor -\/ \#309
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27956}{}\doxysection{1.\+1.\+0}\label{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27956}

\begin{DoxyItemize}
\item Fix IE7/8 usage of {\ttfamily console.\+log} which does not have {\ttfamily apply} -\/ \#279
\item Remove {\ttfamily dbg} global variable -\/ \#282
\item Bump {\ttfamily faye-\/websocket} version to {\ttfamily 0.\+11.\+0} -\/ \#267
\item Optimize {\ttfamily arguments} usage -\/ \#263
\item Add sourcemap file to dist folder -\/ \#237
\item Add way to transparently pass transport-\/specific options -\/ \#272
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27957}{}\doxysection{1.\+0.\+3}\label{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27957}

\begin{DoxyItemize}
\item Use {\ttfamily https} module for xhr requests in node when url uses https -\/ \#254
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27958}{}\doxysection{1.\+0.\+2}\label{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27958}

\begin{DoxyItemize}
\item Fix iframe info receiver url
\item Move iframe.\+content\+Window check inside set\+Timeout -\/ \#246
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27959}{}\doxysection{1.\+0.\+1}\label{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27959}

\begin{DoxyItemize}
\item Use proper base url for iframe-\/based info receiver -\/ \#249
\item Don\textquotesingle{}t register unload event in chrome packaged app -\/ \#223
\item Allow custom session ids -\/ \#250
\item Remove version property from bower.\+json -\/ \#247
\item Update example CDN url -\/ \#244
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27960}{}\doxysection{1.\+0.\+0}\label{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27960}

\begin{DoxyItemize}
\item Simplify url handling by delegating to {\ttfamily url-\/parse} -\/ \#242
\item Upgrade to {\ttfamily url-\/parse} 1.\+0.\+1 to fix colon issue if auth has no password
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27961}{}\doxysection{1.\+0.\+0-\/beta.\+13}\label{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27961}

\begin{DoxyItemize}
\item Transport timeout on connection should fallback -\/ \#238
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27962}{}\doxysection{1.\+0.\+0-\/beta.\+12}\label{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27962}

\begin{DoxyItemize}
\item Upgrade {\ttfamily url-\/parse} to 1.\+0.\+0 to fix \#218 again
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27963}{}\doxysection{1.\+0.\+0-\/beta.\+10}\label{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27963}

\begin{DoxyItemize}
\item Upgrade {\ttfamily url-\/parse} to 0.\+2.\+3 to fix \#222
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27964}{}\doxysection{1.\+0.\+0-\/beta.\+9}\label{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27964}

\begin{DoxyItemize}
\item Upgrade {\ttfamily url-\/parse} to 0.\+2.\+1 to fix \textquotesingle{}too much recursion\textquotesingle{} errors
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27965}{}\doxysection{1.\+0.\+0-\/beta.\+8}\label{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27965}

\begin{DoxyItemize}
\item Upgrade {\ttfamily url-\/parse} to 0.\+2.\+0 to fix inheritance issues
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27966}{}\doxysection{1.\+0.\+0-\/beta.\+7}\label{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27966}

\begin{DoxyItemize}
\item Upgrade {\ttfamily url-\/parse} to 0.\+1.\+5 to fix \#218
\item Don\textquotesingle{}t strip basic auth from url -\/ \#219
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27967}{}\doxysection{1.\+0.\+0-\/beta.\+6}\label{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27967}

\begin{DoxyItemize}
\item Upgrade {\ttfamily url-\/parse} to 0.\+1.\+3 to avoid CSP issues
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27968}{}\doxysection{1.\+0.\+0-\/beta.\+5}\label{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27968}

\begin{DoxyItemize}
\item Upgrade {\ttfamily url-\/parse} to 0.\+1.\+1 to fix \#214
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27969}{}\doxysection{1.\+0.\+0-\/beta.\+4}\label{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27969}

\begin{DoxyItemize}
\item Upgrade {\ttfamily url-\/parse} to 0.\+1.\+0 and {\ttfamily sockjs} to 0.\+3.\+11
\item Update .npmignore
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27970}{}\doxysection{1.\+0.\+0-\/beta.\+3}\label{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27970}

\begin{DoxyItemize}
\item Move {\ttfamily debug} from dev\+Dependencies to dependencies
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27971}{}\doxysection{1.\+0.\+0-\/beta.\+2}\label{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27971}

\begin{DoxyItemize}
\item Relax requirements when using same origin XHR -\/ \#80
\item Upgrade to JSON3 from JSON2 -\/ \#123
\item Package library with browserify supporting the UMD pattern -\/ \#184
\item Move tests to Java\+Script
\item Add Gulp.\+js build script
\item Fix get\+Origin for \href{file:///}{\texttt{ file\+:///}} urls and standard ports -\/ \#173
\item Add onerror event handlers to Websockets -\/ \#169
\item Increase RTO lower bound to prevent spurious timeouts on IE8/9 -\/ \#161
\item Use window.\+crypto for random values when available -\/ \#128
\item Fix handling of listeners added and removed mid-\/dispatch -\/ \#127
\item Fix XHR Streaming for IE8 -\/ \#83
\item Remove explicit AMD name -\/ \#107
\item Check for an empty response from /info request -\/ \#143
\item Add Content-\/\+Type to XHR requests to fix issue over HTTPS on Galaxy S4 -\/ \#164
\item Fix iframe fallback when message is sent from a popup in IE7/8 -\/ \#166
\item Add support for query strings on the url -\/ \#72
\item Now works inside of Web Workers -\/ \#181
\item Support Event\+Source / Server Sent Events outside of iframes -\/ \#201
\item Rename protocols to transports -\/ \#65
\item Allow transports which need the body to trigger on \textquotesingle{}interactive\textquotesingle{} ready\+State -\/ \#175
\item try/catch access to document.\+domain -\/ \#187
\item Use {\ttfamily window.\+location} instead of {\ttfamily document.\+location} -\/ \#195
\item Allow usage from node.\+js with same API
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27972}{}\doxysection{0.\+3.\+4}\label{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27972}

\begin{DoxyItemize}
\item Mentioned njoyce\textquotesingle{}s fork of sockjs-\/gevent.
\item \#90 -\/ Don\textquotesingle{}t catch onbeforeunload event -\/ it breaks javascript\+:// links in IE.
\item IE mangles 204 response code for 1223 on ajax, see\+: \href{http://bugs.jquery.com/ticket/1450}{\texttt{ http\+://bugs.\+jquery.\+com/ticket/1450}}
\item Make {\ttfamily new} optional for Sock\+JS constructor (via substack).
\item It is impossible to cancel JSONP polling request -\/ compensate for that.
\item Refactored Event\+Emitter prototype (used only internally)
\item \#66 -\/ Failure to post data to /xhr\+\_\+send should kill the session
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27973}{}\doxysection{0.\+3.\+2}\label{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27973}

\begin{DoxyItemize}
\item \#77 -\/ Getting /info on modern browsers when html is served from \href{file://}{\texttt{ file\+://}} urls was broken.
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27974}{}\doxysection{0.\+3.\+1}\label{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27974}

\begin{DoxyItemize}
\item \#61 -\/ Meteor guys found that we unintentionally catch \char`\"{}onopen\char`\"{} errors.
\item \#63 -\/ Meteorjs guys found that xhr-\/streaming on Safari sometimes left busy cursor running.
\item Increased allowed time for websocket transport (from 1 rtt to 2), this should make ws transport more reliable over SSL, at the cost of slightly longer connection time for users with blocked ws.
\item \#57 -\/ previous fix didn\textquotesingle{}t really work, sockjs-\/client still left a mess in browsers history when using iframe transports. This is fixed now.
\item \#60 -\/ Opera 12 (next) claims to do AJAX2 / CORS, but can\textquotesingle{}t do xhr-\/streaming.
\item \#58 -\/ onunload test sometimes failed on Safari on windows
\item Updated readme WRT websocket protocols
\item Updated readme WRT deployments on heroku
\item Add minimalistic license block to every source file.
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27975}{}\doxysection{0.\+3.\+0}\label{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27975}

\begin{DoxyItemize}
\item Temporarily disabled iframe tests -\/ they are failing unpredictably.
\item \#57 -\/ pointing an iframe to \char`\"{}about\+:blank\char`\"{} during cleanup caused Opera to messup history.
\item \#55 -\/ Improved iframe abstraction (reduced a possible mem leak)
\item Refactored AJAX abstractions, for better CORS handing -\/ again.
\item Add additional parent origin security check to an iframe.
\item Urls with hashes or query strings can\textquotesingle{}t be passed to Sock\+JS.
\item \#18 -\/ Mention workaround for Firefox ESC key issue
\item \#53 -\/ AMD compliance
\item sockjs/sockjs-\/protocol\#28 -\/ always use square brackets for websocket frames
\item \#51 -\/ initial support for IE10 -\/ try XHR before XDR
\item \#28 -\/ handle onunload / onbeforeunload in a more robust fashion
\item \#49 -\/ support Sock\+JS-\/client being used from files served from \href{file://}{\texttt{ file\+://}} urls.
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27976}{}\doxysection{0.\+2.\+1}\label{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27976}

\begin{DoxyItemize}
\item \char`\"{}smoke-\/latency.\+html\char`\"{} test was unnecesairly sending too much data.
\item Bumped core dependencies (coffee-\/script and uglify-\/js)
\item Minor updates to the README, few cosmetic changes in the code.
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27977}{}\doxysection{0.\+2.\+0}\label{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27977}

\begin{DoxyItemize}
\item The API had changed -\/ use {\ttfamily protocols\+\_\+whitelist} option instead of passing an array of protocols as a second argument to Sock\+JS constructor.
\item Dropped \textquotesingle{}chunking-\/test\textquotesingle{} functionality and replace it with \textquotesingle{}info\textquotesingle{}.
\item Rewritten protocol-\/choosing alogirthm, see \char`\"{}utils.\+detect\+Protocols\char`\"{} method.
\item Use dynamic protocol timeouts based on RTT, not hardcoded 5 seconds
\item \#34 -\/ Don\textquotesingle{}t ever reuse {\ttfamily session\+\_\+id}, especially when trying fallback protocols.
\item The test server got moved from Sock\+JS-\/client to Sock\+JS-\/node.
\item Don\textquotesingle{}t test unicode surrogates -\/ it can\textquotesingle{}t work in some environments.
\item XHR/\+XDR helpers were rewritten, ajax transports were simplified.
\item Added a domain check in the iframe to improve security.
\item Sock\+JS will now trigger 1002 error if there is a problem during handshake instead of 2000 error.
\item Smoke-\/throughput test is renamed to smoke-\/latency.
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27978}{}\doxysection{0.\+1.\+2}\label{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27978}

\begin{DoxyItemize}
\item \#29 -\/ Allow all unicode characters to be send over Sock\+JS.
\item \#15 -\/ Sock\+JS should now work fine even if the connection is started in HEAD, before BODY is loaded.
\item \#28 -\/ In rare circumstances Web\+Socket connection can be left intact after the page is unloaded in Fire\+Fox.
\item Updated scripts to work with Node 0.\+6.
\item Initial work to do better QUnit testing.
\item Updated the minifying script (always escape unicode chars, remove trailing comment).
\item Use string instead of array of chars (utils.\+js\+:random\+\_\+number\+\_\+string).
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27979}{}\doxysection{0.\+1.\+1}\label{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27979}

\begin{DoxyItemize}
\item \#21 Get JsonP transport working on IE9 (Vladimir Dronnikov).
\item \#26 Emit heartbeat event.
\item \#27 Include license inline.
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27980}{}\doxysection{0.\+1.\+0}\label{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27980}

\begin{DoxyItemize}
\item Sock\+JS-\/client can only send UTF-\/8 encodable strings. Previously we took advantage of rich data structures and automatically json-\/encoded them, but this got removed. Now, all data passed to {\ttfamily send} will be converted to string. This is also how native
\item {\ttfamily status} property on {\ttfamily Event\+Close} is renamed to {\ttfamily code} as per Websocket API Web\+Sockets behave.
\item The test server was updated to new {\ttfamily sockjs-\/node} API
\item Fixed problem with Jsonp-\/polling transport on IE9
\item Repository was moved -\/ updated links.
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27981}{}\doxysection{0.\+0.\+4}\label{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27981}

\begin{DoxyItemize}
\item All transports were refactored, some transports were introduced\+: htmlfile and separate xhr-\/streaming.
\item Added logic to detect support for http chunking, and thus a possibility to rule out streaming transports before running them.
\item Added \textquotesingle{}cookie\textquotesingle{} option, useful for cookie-\/based load balancing (currently, it make a difference only for IE).
\item Added hack to prevent Event\+Source from crashing Safari and Chrome.
\item Loads and loads of other small and medium changes.
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27982}{}\doxysection{0.\+0.\+2}\label{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27982}

\begin{DoxyItemize}
\item Initial support for JSESSIONID based load balancing. Currently doesn\textquotesingle{}t play nicely with IE XDomain\+Request transport.
\end{DoxyItemize}\hypertarget{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27983}{}\doxysection{0.\+0.\+1}\label{md_sfcode_node_modules_sockjs_client_Changelog_autotoc_md27983}

\begin{DoxyItemize}
\item Initial release. 
\end{DoxyItemize}