Skip to content

Releases: JuliaWeb/WebSockets.jl

Upgrade to HTTP 0.8 with minimal interface change.

20 Mar 19:38
187ebe9
Compare
Choose a tag to compare

Remove MBedTLS as a direct dependency.
For advanced use, there are some changes without prior deprecations. See README and examples for changes in advanced syntax.
The changes were developed in branch HTTP0.8, with most discussions in issue #141.

Remove default throttling

10 Mar 20:17
ab5b0ae
Compare
Choose a tag to compare

See issue #124 regarding the removed ratelimit! function.

Additional tests, not run by the continuous-integraction scripts

03 Mar 08:59
b694930
Compare
Choose a tag to compare

test/timeout/timeout.jl opens 14 websocket clients on a) first available browser, b) second available browser, c) Julia, in all 42 websockets with timeouts up to 8192 seconds.

This in preparation for a coming upgrade to HTTP 0.8.

Fully integrate stdlib/Logging, specialized WebSocketLogger

20 Feb 17:13
027514d
Compare
Choose a tag to compare

New exports:

  • @WSLog (which just has a slightly higher importance level than @info)
  • Wslog = Base.CoreLogging.LogLevel(50)
  • WebSocketLogger

Differences to stdlib/Logging/ConsoleLogger:

  • default timestamp on logging messages (except @info)
  • @info, @debug, @warn etc. will splat the first argument if it's a tuple argument. Also, colorful, context sensitive output is preserved in the first argument.
  • a 'shouldlog' function can be passed in. The shouldlog_default function filters
    on HTTP.Servers messages as well as on message_limits
  • :wslog => true flag which could be used for context-sensitive output
    from 'show' methods. This means a user could define 'show' methods
    which are used with this logger without affecting the behaviour
    defined in other modules.
  • :limited => true is included in the default IOContext. Keyword: show_limited
  • string_with_env_ws for easy overloading on specific types in this context

Keyword constructors, 'show' methods

23 Dec 17:56
64dfe1d
Compare
Choose a tag to compare

Previous interfaces are unchanged, but logs may be affected.
Add keyword argument methods to ServerWS and to serve.
Add concise, colorful text representation of WebSockets and of ServerWS.
Update README example to include shouldlog code for underlying package HTTP.
Track issue #128.

Add show method

10 Dec 15:53
89fb3ec
Compare
Choose a tag to compare

This outputs WebSocket objects in two readable and colorful formats, short and long depending on context.
The colors aim to please in user interfaces that don't distinguish well between yellow and green.

This is not expected to change any interface. Similar functionality from WebSockets/logutils has been deleted. We will switch to an adaption of Logging.jl.

Update to import HTTP 0.7.0-0.7.99

13 Nov 22:18
0aaca05
Compare
Choose a tag to compare

Pull request #122. Upgrade to HTTP 0.7.0-0.7.99. This may solve some dependency issues.
Rerunning tests for dependencies is recommended.
Removes the need for capping the imported HTTP.jl version to 0.6.99.
Removes preliminary fixes with regards to incomplete transactions, which are now implemented in HTTP.jl.
Imports more functionality and types from HTTP.
Removes export of 'origin'.
Update to 'README' including some upgrade help.

Bugfix for WebIO. Default HTTP logger from compat_stdout() -> stdout

25 Sep 18:55
Compare
Choose a tag to compare

A package that refers HTTP both directly, and also indirectly, erroneously referred the uncapped HTTP version in this method. This probably fixes the issue JuliaGizmos/WebIO.jl#205.

Reduce max HTTP dependency version to v0.6.14

22 Sep 11:27
Compare
Choose a tag to compare

HTTP v0.6.15 changed the API by removing the compat module, which is refererred in default keyword arguments in WebSockets.ServeWS. Previous upper limit was v0.6.99.

Quick bugfix

17 Sep 15:48
Compare
Choose a tag to compare

This bug has been present since v0.5.0. If the server side websockets sent a message immediately after accepting the connection, the client would most often miss that message.
Also reduce the number of failed imports / warnings during testing and in an example.