1:tocdepth: 1 2 3.. _changelog: 4 5Changelog 6========= 7 819.5.1 9------ 10 11* fix: authextra merging (#1191) 12* fix: set default retry_delay_jitter (#1190) 13* new: add rawsocket + twisted example (#1189) 14* new: WebSocket testing support, via Agent-style interface (#1186) 15* new: decorator for on_connectfailure 16* fix: delayed call leakage (#1152) 17* new: CLI client (#1150) 18* fix: set up TLS over proxy properly (#1149) 19* new: expose ser modules (#1148) 20* fix: base64 encodings, add hex encoding (#1146) 21* new: onConnecting callback (with TransportDetails and 22 ConnectingRequest). **Note**: if you've implemented a pure 23 `IWebSocketChannel` without inheriting from Autobahn base classes, 24 you'll need to add an `onConnecting()` method that just does `return 25 None`. 26 2719.3.3 28------ 29 30* fix: RegisterOptions should have details|bool parameter (#1143) 31* new: WAMP callee disclosure 32* new: WAMP forward_for in more message types; expose forward_for in options/details types 33* new: expose underlying serializer modules on WAMP object serializers 34* fix: WAMP-cryptosign fix base64 encodings, add hex encoding (#1146) 35 3619.3.2 37------ 38 39* fix: import guards for flatbuffers (missed in CI as we run with "all deps installed" there) 40 4119.3.1 42------ 43 44* new: add experimental support for WAMP-FlatBuffers serializer: EVENT and PUBLISH messages for now only 45* new: add FlatBuffers schema for WAMP messages 46* fix: improve serializer package preference behavior depending on CPy vs PyPy 47* fix: relax protocol violations: ignore unknown INTERRUPT and GOODBYE already sent; reduce log noise 48* fix: skipping Yield message if transport gets closed before success callback is called (#1119) 49* fix: integer division in logging in py3 (#1120) 50* fix: Await tasks after they've been cancelled in `autobahn.asycio.component.nicely_exit` (#1116) 51 5219.2.1 53------ 54 55* fix: set announced roles on appsession object (#1109) 56* new: lower log noise on ApplicationErrors (#1107) 57* new: allow explicit passing of tx endpoint and reactor (#1103) 58* new: add attribute to forward applicationrunner to applicationsession via componentconfig 59 6019.1.1 61------ 62 63* new: adding marshal on SessionDetails 64 6518.12.1 66------- 67 68* fix: return the wrapped function from component decorators (#1093) 69* new: add proxy= support for Component transports (#1091) 70* fix: Ticket1077 stop start (#1090) 71* fix: cleanup cancel handling (#1087) 72 7318.11.2 74------- 75 76* fix: asyncio unregisterProducer raises exception (#1079) 77* fix: URL is not required in RawSocket configuration items with WAMP component API 78* fix: revert PR https://github.com/crossbario/autobahn-python/pull/1075 79 8018.11.1 81------- 82 83* new: forward_for WAMP message attribute (for Crossbar.io Router-to-Router federation) 84* new: support RawSocket URLs (eg "rs://localhost:5000" or "rs://unix:/tmp/file.sock") 85* new: support WAMP-over-Unix sockets for WAMP components ("new API") 86* fix: use same WAMP serializer construction code for WAMP components ("new API") and ApplicationSession/Runner 87* fix: memory leak with Twisted/WebSocket, dropConnection and producer 88 8918.10.1 90------- 91 92* Don't eat Component.stop() request when crossbar not connected (#1066) 93* handle async on_progress callbacks properly (#1061) 94* fix attribute error when ConnectionResetError does not contain "reason" attribute (#1059) 95* infer rawsocket host, port from URL (#1056) 96* fix error on connection lost if no reason (reason = None) (#1055) 97* fixed typo on class name (#1054) 98 9918.9.2 100------ 101 102* fix: TLS error logging (#1052) 103 104 10518.9.1 106------ 107 108* new: Interrupt has Options.reason to signal detailed origin of call cancelation (active cancel vs passive timeout) 109* fix: Cancel and Interrupt gets ``"killnowait"`` mode 110* new: Cancel and Interrupt no longer have ``ABORT/"abort"`` 111 112 11318.8.2 114------ 115 116* new: WAMP call cancel support 117* fix: getting started documentation and general docs improvements 118* fix: WebSocket auto-reconnect on opening handshake failure 119* fix: more Python 3.7 compatibility and CI 120* fix: Docker image building using multi-arch, size optimizations and more 121* fix: asyncio failed to re-connect under some circumstances (#1040, 122 #1041, #1010, #1030) 123 124 12518.8.1 126------ 127 128* fix: Python 3.7 compatibility 129* fix: remove Python 2.6 support leftovers 130* new: getting started docker-based examples in matching with docs 131 132 13318.7.1 134------ 135 136* new: Python 3.7 supported and integrated into CI 137* new: WAMP-SCRAM examples 138* fix: glitches in WAMP-SCRAM 139 140 14118.6.1 142------ 143 144* fix: implement abort argument for asyncio in WebSocketAdapterProtocol._closeConnection (#1012) 145 146 14718.5.2 148------ 149 150* fix: security (DoS amplification): a WebSocket server with 151 permessage-deflate turned on could be induced to waste extra memory 152 through a "zip-bomb" style attack. Setting a max-message-size will 153 now stop deflating compressed data when the max is reached (instead 154 of consuming all compressed data first). This could be used by a 155 malicious client to make the server waste much more memory than the 156 bandwidth the client uses. 157 158 15918.5.1 160------ 161 162* fix: asyncio/rawsocket buffer processing 163* fix: example failures due to pypy longer startup time (#996) 164* fix: add on_welcome for AuthWampCra (#992) 165* fix: make run() of multiple components work on Windows (#986) 166* new: `max_retries` now defaults to -1 ("try forever") 167 168 16918.4.1 170------ 171 172* new: WAMP-SCRAM authentication 173* new: native vector extensions (NVX) 174* fix: improve choosereactor (#965, #963) 175* new: lots of new and improved documentation, component API and more 176* new: Docker image tooling now in this repo 177* fix: "fatal errors" in Component (#977) 178* fix: AIO/Component: create a new loop if already closed 179* fix: kwarg keys sometimes are bytes on Python2 (#980) 180* fix: various improvements to new component API 181 182 18318.3.1 184------ 185 186* fix: endpoint configuration error messages (#942) 187* fix: various improvements to the new components API (including retries) 188* fix: pass `unregisterProducer` through to twisted to complement `WebSocketAdapterProtocol.registerProducer` (#875) 189 190 19117.10.1 192------- 193 194* fix: proxy support (#918) 195* fix: ensure that a future is not done before rejecting it (#919) 196* fix: don't try to reject cancelled futures within pending requests when closing the session 197 198 19917.9.3 200------ 201 202`Published 2017-09-23 <https://pypi.python.org/pypi/autobahn/17.9.3>`__ 203 204* new: user configurable backoff policy 205* fix: close aio loop on exit 206* fix: some component API cleanups 207* fix: cryptosign on py2 208* new: allow setting correlation_is_last message marker in WAMP messages from user code 209 210 21117.9.2 212------ 213 214`Published 2017-09-12 <https://pypi.python.org/pypi/autobahn/17.9.2>`__ 215 216* new: allow setting correlation URI and anchor flag in WAMP messages from user code 217* fix: WebSocket proxy connect on Python 3 (unicode vs bytes bug) 218 21917.9.1 220------ 221 222`Published 2017-09-04 <https://pypi.python.org/pypi/autobahn/17.9.1>`__ 223 224* new: allow setting correlation ID in WAMP messages from user code 225* fix: distribute LICENSE file in all distribution formats (using setup.cfg metadata) 226 22717.8.1 228------ 229 230`Published 2017-08-15 <https://pypi.python.org/pypi/autobahn/17.8.1>`__ 231 232* new: prefix= kwarg now available on ApplicationSession.register for runtime method names 233* new: @wamp.register(None) will use the function-name as the URI 234* new: correlation and uri attributes for WAMP message tracing 235 23617.7.1 237------ 238 239`Published 2017-07-21 <https://pypi.python.org/pypi/autobahn/17.7.1>`__ 240 241* new: lots of improvements of components API, including asyncio support 242 24317.6.2 244------ 245 246`Published 2017-06-24 <https://pypi.python.org/pypi/autobahn/17.6.2>`__ 247 248* new: force register option when joining realms 249* fix: TLS options in components API 250 25117.6.1 252------ 253 254`Published 2017-06-07 <https://pypi.python.org/pypi/autobahn/17.6.1>`__ 255 256* new: allow components to pass WebSocket/RawSocket options 257* fix: register/subscribe decorators support different URI syntax from what session.register and session.subscribe support 258* new: allow for standard Crossbar a.c..d style pattern URIs to be used with Pattern 259* new: dynamic authorizer example 260* new: configurable log level in `ApplicationRunner.run` for asyncio 261* fix: forward reason of hard dropping WebSocket connection in `wasNotCleanReason` 262 26317.5.1 264------ 265 266`Published 2017-05-01 <https://pypi.python.org/pypi/autobahn/17.5.1>`__ 267 268* new: switched to calendar-based release/version numbering 269* new: WAMP event retention example and docs 270* new: WAMP subscribe/register options on WAMP decorators 271* fix: require all TLS dependencies on extra_require_encryption setuptools 272* new: support for X-Forwarded-For HTTP header 273* fix: ABC interface definitions where missing "self" 274 2750.18.2 276------ 277 278`Published 2017-04-14 <https://pypi.python.org/pypi/autobahn/0.18.2>`__ 279 280* new: payload codec API 281* fix: make WAMP-cryptobox use new payload codec API 282* fix: automatic binary conversation for JSON 283* new: improvements to experimental component API 284 2850.18.1 286------ 287 288`Published 2017-03-28 <https://pypi.python.org/pypi/autobahn/0.18.1>`__ 289 290* fix: errback all user handlers for all WAMP requests still outstanding when session/transport is closed/lost 291* fix: allow WebSocketServerProtocol.onConnect to return a Future/Deferred 292* new: allow configuration of RawSocket serializer 293* new: test all examples on both WebSocket and RawSocket 294* fix: revert to default arg for Deny reason 295* new: WAMP-RawSocket and WebSocket default settings for asyncio 296* new: experimental component based API and new WAMP Session class 297 2980.18.0 299------ 300 301`Published 2017-03-26 <https://pypi.python.org/pypi/autobahn/0.18.0>`__ 302 303* fix: big docs cleanup and polish 304* fix: docs for publisher black-/whitelisting based on authid/authrole 305* fix: serialization for publisher black-/whitelisting based on authid/authrole 306* new: allow to stop auto-reconnecting for Twisted ApplicationRunner 307* fix: allow empty realms (router decides) for asyncio ApplicationRunner 308 3090.17.2 310------ 311 312`Published 2017-02-25 <https://pypi.python.org/pypi/autobahn/0.17.2>`__ 313 314* new: WAMP-cryptosign elliptic curve based authentication support for asyncio 315* new: CI testing on Twisted 17.1 316* new: controller/shared attributes on ComponentConfig 317 3180.17.1 319------ 320 321`Published 2016-12-29 <https://pypi.python.org/pypi/autobahn/0.17.1>`__ 322 323* new: demo MQTT and WAMP clients interoperating via Crossbar.io 324* new: WAMP message attributes for message resumption 325* new: improvements to experimental WAMP components API 326* fix: Python 3.4.4+ when using asyncio 327 3280.17.0 329------ 330 331`Published 2016-11-30 <https://pypi.python.org/pypi/autobahn/0.17.0>`__ 332 333* new: WAMP PubSub event retention 334* new: WAMP PubSub last will / testament 335* new: WAMP PubSub acknowledged delivery 336* fix: WAMP Session lifecycle - properly handle asynchronous `ApplicationSession.onConnect` for asyncio 337 3380.16.1 339------ 340 341`Published 2016-11-07 <https://pypi.python.org/pypi/autobahn/0.16.1>`__ 342 343* fix: inconsistency between `PublishOptions` and `Publish` message 344* new: improve logging with dropped connections (eg due to timeouts) 345* fix: various smaller asyncio fixes 346* new: rewrite all examples for new Python 3.5 async/await syntax 347* fix: copyrights transferred from Tavendo GmbH to Crossbar.io Technologies GmbH 348 3490.16.0 350------ 351 352`Published 2016-08-14 <https://pypi.python.org/pypi/autobahn/0.16.0>`__ 353 354* new: new `autobahn.wamp.component` API in experimental stage 355* new: Ed25519 OpenSSH and OpenBSD signify key support 356* fix: allow Py2 and async user code in `onConnect` callback of asyncio 357 3580.15.0 359------ 360 361`Published 2016-07-19 <https://pypi.python.org/pypi/autobahn/0.15.0>`__ 362 363* new: WAMP AP option: register with maximum concurrency 364* new: automatic reconnect for WAMP clients ApplicationRunner on Twisted 365* new: RawSocket support in WAMP clients using ApplicationRunner on Twisted 366* new: Set WebSocket production settings on WAMP clients using ApplicationRunner on Twisted 367* fix: `#715 <https://github.com/crossbario/autobahn-python/issues/715>`_ Py2/Py3 issue with WebSocket traffic logging 368* new: allow WAMP factories to take classes OR instances of ApplicationSession 369* fix: make WebSocketResource working on Twisted 16.3 370* fix: remove some minified AutobahnJS from examples (makes distro packagers happy) 371* new: WAMP-RawSocket transport for asyncio 372* fix: `#691 <https://github.com/crossbario/autobahn-python/issues/691>`_ (**security**) If the `allowedOrigins` websocket option was set, the resulting matching was insufficient and would allow more origins than intended 373 3740.14.1 375------ 376 377`Published 2016-05-26 <https://pypi.python.org/pypi/autobahn/0.14.1>`__ 378 379* fix: unpinned Twisted version again 380* fix: remove X-Powered-By header 381* fix: removed decrecated args to ApplicationRunner 382 3830.14.0 384------ 385 386`Published 2016-05-01 <https://pypi.python.org/pypi/autobahn/0.14.0>`__ 387 388* new: use of batched/chunked timers to massively reduce CPU load with WebSocket auto-ping/pong 389* new: support new UBJSON WAMP serialization format 390* new: publish universal wheels 391* fix: replaced `msgpack-python` with `u-msgpack-python` 392* fix: some glitches with `eligible / exlude` when used with `authid / authrole` 393* fix: some logging glitches 394* fix: pin Twisted at 16.1.1 (for now) 395 3960.13.1 397------ 398 399`Published 2016-04-09 <https://pypi.python.org/pypi/autobahn/0.13.1>`__ 400 401* moved helper funs for WebSocket URL handling to ``autobahn.websocket.util`` 402* fix: marshal WAMP options only when needed 403* fix: various smallish examples fixes 404 4050.13.0 406------ 407 408`Published 2016-03-15 <https://pypi.python.org/pypi/autobahn/0.13.0>`__ 409 410* fix: better traceback logging (`#613 <https://github.com/crossbario/autobahn-python/pull/613>`_) 411* fix: unicode handling in debug messages (`#606 <https://github.com/crossbario/autobahn-python/pull/606>`_) 412* fix: return Deferred from ``run()`` (`#603 <https://github.com/crossbario/autobahn-python/pull/603>`_). 413* fix: more debug logging improvements 414* fix: more `Pattern` tests, fix edge case (`#592 <https://github.com/crossbario/autobahn-python/pull/592>`_). 415* fix: better logging from ``asyncio`` ApplicationRunner 416* new: ``disclose`` becomes a strict router-side feature (`#586 <https://github.com/crossbario/autobahn-python/issues/586>`_). 417* new: subscriber black/whitelisting using authid/authrole 418* new: asyncio websocket testee 419* new: refine Observable API (`#593 <https://github.com/crossbario/autobahn-python/pull/593>`_). 420 421 4220.12.1 423------ 424 425`Published 2016-01-30 <https://pypi.python.org/pypi/autobahn/0.12.0>`__ 426 427* new: support CBOR serialization in WAMP 428* new: support WAMP payload transparency 429* new: beta version of WAMP-cryptosign authentication method 430* new: alpha version of WAMP-cryptobox end-to-end encryption 431* new: support user provided authextra data in WAMP authentication 432* new: support WAMP channel binding 433* new: WAMP authentication util functions for TOTP 434* fix: support skewed time leniency for TOTP 435* fix: use the new logging system in WAMP implementation 436* fix: some remaining Python 3 issues 437* fix: allow WAMP prefix matching register/subscribe with dot at end of URI 438 4390.11.0 440------ 441 442`Published 2015-12-09 <https://pypi.python.org/pypi/autobahn/0.11.0>`__ 443 4440.10.9 445------ 446 447`Published 2015-09-15 <https://pypi.python.org/pypi/autobahn/0.10.8>`__ 448 449* fixes regression #500 introduced with commit 9f68749 450 4510.10.8 452------ 453 454`Published 2015-09-13 <https://pypi.python.org/pypi/autobahn/0.10.8>`__ 455 456* maintenance release with some issues fixed 457 4580.10.7 459------ 460 461`Published 2015-09-06 <https://pypi.python.org/pypi/autobahn/0.10.7>`__ 462 463* fixes a regression in 0.10.6 464 4650.10.6 466------ 467 468`Published 2015-09-05 <https://pypi.python.org/pypi/autobahn/0.10.6>`__ 469 470* maintenance release with nearly two dozen fixes 471* improved Python 3, error logging, WAMP connection mgmt, .. 472 4730.10.5 474------ 475 476`Published 2015-08-06 <https://pypi.python.org/pypi/autobahn/0.10.5>`__ 477 478* maintenance release with lots of smaller bug fixes 479 4800.10.4 481------ 482 483`Published 2015-05-08 <https://pypi.python.org/pypi/autobahn/0.10.4>`__ 484 485* maintenance release with some smaller bug fixes 486 4870.10.3 488------ 489 490`Published 2015-04-14 <https://pypi.python.org/pypi/autobahn/0.10.3>`__ 491 492* new: using txaio package 493* new: revised WAMP-over-RawSocket specification implemented 494* fix: ignore unknown attributes in WAMP Options/Details 495 4960.10.2 497------ 498 499`Published 2015-03-19 <https://pypi.python.org/pypi/autobahn/0.10.2>`__ 500 501* fix: Twisted 11 lacks IPv6 address class 502* new: various improvements handling errors from user code 503* new: add parameter to limit max connections on WebSocket servers 504* new: use new-style classes everywhere 505* new: moved package content to repo root 506* new: implement router revocation signaling for registrations/subscriptions 507* new: a whole bunch of more unit tests / coverage 508* new: provide reason/message when transport is lost 509* fix: send WAMP errors upon serialization errors 510 5110.10.1 512------ 513 514`Published 2015-03-01 <https://pypi.python.org/pypi/autobahn/0.10.1>`__ 515 516* support for pattern-based subscriptions and registrations 517* support for shared registrations 518* fix: HEARTBEAT removed 519 5200.10.0 521------ 522 523`Published 2015-02-19 <https://pypi.python.org/pypi/autobahn/0.10.0>`__ 524 525* Change license from Apache 2.0 to MIT 526* fix file line endings 527* add setuptools test target 528* fix Python 2.6 529 5300.9.6 531----- 532 533`Published 2015-02-13 <https://pypi.python.org/pypi/autobahn/0.9.6>`__ 534 535* PEP8 code conformance 536* PyFlakes code quality 537* fix: warning for xrange on Python 3 538* fix: parsing of IPv6 host headers 539* add WAMP/Twisted service 540* fix: handle connect error in ApplicationRunner (on Twisted) 541 5420.9.5 543----- 544 545`Published 2015-01-11 <https://pypi.python.org/pypi/autobahn/0.9.5>`__ 546 547* do not try to fire onClose on a session that never existed in the first place (fixes #316) 548* various doc fixes 549* fix URI decorator component handling (PR #309) 550* fix "standalone" argument to ApplicationRunner 551 5520.9.4 553----- 554 555`Published 2014-12-15 <https://pypi.python.org/pypi/autobahn/0.9.4>`__ 556 557* refactor router code to Crossbar.io 558* fix: catch error when Nagle cannot be set on stream transport (UDS) 559* fix: spelling in doc strings / docs 560* fix: WAMP JSON serialization of Unicode for ujson 561* fix: Twisted plugins issue 562 5630.9.3-2 564------- 565 566`Published 2014-11-15 <https://pypi.python.org/pypi/autobahn/0.9.3-2>`__ 567 568* maintenance release with some smaller bug fixes 569* use ujson for WAMP when available 570* reduce WAMP ID space to [0, 2**31-1] 571* deactivate Twisted plugin cache recaching in `setup.py` 572 5730.9.3 574------ 575`Published 2014-11-10 <https://pypi.python.org/pypi/autobahn/0.9.3>`__ 576 577* feature: WebSocket origin checking 578* feature: allow to disclose caller transport level info 579* fix: Python 2.6 compatibility 580* fix: handling of WebSocket close frame in a corner-case 581 5820.9.2 583------ 584`Published 2014-10-17 <https://pypi.python.org/pypi/autobahn/0.9.2>`__ 585 586* fix: permessage-deflate "client_max_window_bits" parameter handling 587* fix: cancel opening handshake timeouts also for WebSocket clients 588* feature: add more control parameters to Flash policy file factory 589* feature: update AutobahnJS in examples 590* feature: allow to set WebSocket HTTP headers via dict 591* fix: ayncio imports for Python 3.4.2 592* feature: added reconnecting WebSocket client example 593 5940.9.1 595------ 596`Published 2014-09-22 <https://pypi.python.org/pypi/autobahn/0.9.1>`__ 597 598* maintenance release with some smaller bug fixes 599 6000.9.0 601------ 602`Published 2014-09-02 <https://pypi.python.org/pypi/autobahn/0.9.0>`__ 603 604* all WAMP v1 code removed 605* migrated various WAMP examples to WAMP v2 606* improved unicode/bytes handling 607* lots of code quality polishment 608* more unit test coverage 609 6100.8.15 611------ 612`Published 2014-08-23 <https://pypi.python.org/pypi/autobahn/0.8.15>`__ 613 614* docs polishing 615* small fixes (unicode handling and such) 616 6170.8.14 618------ 619`Published 2014-08-14 <https://pypi.python.org/pypi/autobahn/0.8.14>`__ 620 621* add automatic WebSocket ping/pong (#24) 622* WAMP-CRA client side (beta!) 623 6240.8.13 625-------- 626`Published 2014-08-05 <https://pypi.python.org/pypi/autobahn/0.8.13>`__ 627 628* fix Application class (#240) 629* support WSS for Application class 630* remove implicit dependency on bzip2 (#244) 631 6320.8.12 633------ 634`Published 2014-07-23 <https://pypi.python.org/pypi/autobahn/0.8.12>`__ 635 636* WAMP application payload validation hooks 637* added Tox based testing for multiple platforms 638* code quality fixes 639 6400.8.11 641------ 642`Published <https://pypi.python.org/pypi/autobahn/0.8.11>`__ 643 644* hooks and infrastructure for WAMP2 authorization 645* new examples: Twisted Klein, Crochet, wxPython 646* improved WAMP long-poll transport 647* improved stats tracker 648 6490.8.10 650------ 651`Published <https://pypi.python.org/pypi/autobahn/0.8.10>`__ 652 653* WAMP-over-Long-poll (preliminary) 654* WAMP Authentication methods CR, Ticket, TOTP (preliminary) 655* WAMP App object (preliminary) 656* various fixes 657 6580.8.9 659----- 660`Published <https://pypi.python.org/pypi/autobahn/0.8.9>`__ 661 662* maintenance release 663 6640.8.8 665----- 666`Published <https://pypi.python.org/pypi/autobahn/0.8.8>`__ 667 668* initial support for WAMP on asyncio 669* new WAMP examples 670* WAMP ApplicationRunner 671 6720.8.7 673----- 674`Published <https://pypi.python.org/pypi/autobahn/0.8.7>`__ 675 676* maintenance release 677 6780.8.6 679----- 680`Published <https://pypi.python.org/pypi/autobahn/0.8.6>`__ 681 682* started reworking docs 683* allow factories to operate without WS URL 684* fix behavior on second protocol violation 685 6860.8.5 687----- 688`Published <https://pypi.python.org/pypi/autobahn/0.8.5>`__ 689 690* support WAMP endpoint/handler decorators 691* new examples for endpoint/handler decorators 692* fix excludeMe pubsub option 693 6940.8.4 695----- 696`Published <https://pypi.python.org/pypi/autobahn/0.8.4>`__ 697 698* initial support for WAMP v2 authentication 699* various fixes/improvements to WAMP v2 implementation 700* new example: WebSocket authentication with Mozilla Persona 701* polish up documentation 702 7030.8.3 704----- 705`Published <https://pypi.python.org/pypi/autobahn/0.8.3>`__ 706 707* fix bug with closing router app sessions 708 7090.8.2 710----- 711`Published <https://pypi.python.org/pypi/autobahn/0.8.2>`__ 712 713* compatibility with latest WAMP v2 spec ("RC-2, 2014/02/22") 714* various smaller fixes 715 7160.8.1 717----- 718`Published <https://pypi.python.org/pypi/autobahn/0.8.1>`__ 719 720* WAMP v2 basic router (broker + dealer) implementation 721* WAMP v2 example set 722* WAMP v2: decouple transports, sessions and routers 723* support explicit (binary) subprotocol name for wrapping WebSocket factory 724* fix dependency on MsgPack 725 7260.8.0 727----- 728`Published <https://pypi.python.org/pypi/autobahn/0.8.0>`__ 729 730* new: complete WAMP v2 protocol implementation and API layer 731* new: basic WAMP v2 router implementation 732* existing WAMP v1 implementation renamed 733 7340.7.4 735----- 736`Published <https://pypi.python.org/pypi/autobahn/0.7.4>`__ 737 738* fix WebSocket server HTML status page 739* fix close reason string handling 740* new "slowsquare" example 741* Python 2.6 fixes 742 7430.7.3 744----- 745`Published <https://pypi.python.org/pypi/autobahn/0.7.3>`__ 746 747* support asyncio on Python 2 (via "Trollius" backport) 748 7490.7.2 750----- 751`Published <https://pypi.python.org/pypi/autobahn/0.7.2>`__ 752 753* really fix setup/packaging 754 7550.7.1 756----- 757`Published <https://pypi.python.org/pypi/autobahn/0.7.1>`__ 758 759* setup fixes 760* fixes for Python2.6 761 7620.7.0 763----- 764`Published <https://pypi.python.org/pypi/autobahn/0.7.0>`__ 765 766* asyncio support 767* Python 3 support 768* support WebSocket (and WAMP) over Twisted stream endpoints 769* support Twisted stream endpoints over WebSocket 770* twistd stream endpoint forwarding plugin 771* various new examples 772* fix Flash policy factory 773 7740.6.5 775----- 776`Published <https://pypi.python.org/pypi/autobahn/0.6.5>`__ 777 778* Twisted reactor is no longer imported on module level (but lazy) 779* optimize pure Python UTF8 validator (10-20% speedup on PyPy) 780* opening handshake traffic stats (per-open stats) 781* add multi-core echo example 782* fixes with examples of streaming mode 783* fix zero payload in streaming mode 784 7850.6.4 786----- 787`Published <https://pypi.python.org/pypi/autobahn/0.6.4>`__ 788 789* support latest `permessage-deflate` draft 790* allow controlling memory level for `zlib` / `permessage-deflate` 791* updated reference, moved docs to "Read the Docs" 792* fixes #157 (a WAMP-CRA timing attack very, very unlikely to be exploitable, but anyway) 793 7940.6.3 795----- 796`Published <https://pypi.python.org/pypi/autobahn/0.6.3>`__ 797 798* symmetric RPCs 799* WebSocket compression: client and server, `permessage-deflate`, `permessage-bzip2` and `permessage-snappy` 800* `onConnect` is allowed to return Deferreds now 801* custom publication and subscription handler are allowed to return Deferreds now 802* support for explicit proxies 803* default protocol version now is RFC6455 804* option to use salted passwords for authentication with WAMP-CRA 805* automatically use `ultrajson` acceleration package for JSON processing when available 806* automatically use `wsaccel` acceleration package for WebSocket masking and UTF8 validation when available 807* allow setting and getting of custom HTTP headers in WebSocket opening handshake 808* various new code examples 809* various documentation fixes and improvements 810 8110.5.14 812------ 813`Published <https://pypi.python.org/pypi/autobahn/0.5.14>`__ 814 815* base version when we started to maintain a changelog 816