All Versions
89
Latest Version
Avg Release Cycle
36 days
Latest Release
-

Changelog History
Page 2

  • v3.0.5 Changes

    No backwards incompatible changes here.

    ๐Ÿ›  Fixes:

    • ๐Ÿ›  Fix subscription cleanup on client close. Addresses one more problem found in this report.
  • v3.0.4 Changes

    No backwards incompatible changes here.

    ๐Ÿ›  Fixes:

    • ๐Ÿ›  Fix deadlock during PUB/SUB sync in channels with recovery. Addresses this report.
    • ๐Ÿ›  Fix redis_db option: was ignored previously โ€“ #487.
  • v3.0.3 Changes

    No backwards incompatible changes here.

    ๐Ÿ›  Fixes:

    • ๐Ÿ›  Fix passing data from subscribe proxy result towards client connection.

    ๐Ÿš€ This release is built with Go 1.17.2.

  • v3.0.2 Changes

    No backwards incompatible changes here.

    ๐Ÿ›  Fixes:

    • ๐Ÿ›  Fix SockJS data escaping on EventSource fallback. See igm/sockjs-go#100 for more information. In short โ€“ this bug could prevent a message with % symbol inside be properly parsed by a SockJS Javascript client โ€“ thus not processed by a frontend at all.
    • ๐Ÿ›  Fix panic on concurrent subscribe to the same channels with recovery feature on. More details in centrifugal/centrifuge#207
  • v3.0.1 Changes

    No backwards incompatible changes here.

    ๐Ÿ›  Fixes:

    • ๐Ÿ›  Fix proxy behavior for disconnected clients, should be now consistent between HTTP and GRPC proxy types.
    • ๐Ÿ›  Fix bufio: buffer full error when unmarshalling large client protocol JSON messages.
    • ๐Ÿ›  Fix unexpected end of JSON input errors in Javascript client with Centrifugo v3.0.0 when publishing formatted JSON (with new lines).

    ๐Ÿš€ This release uses Go 1.17.1. We also added more tests for proxy package, thanks to @silischev.

  • v3.0.0 Changes

    ๐Ÿ“š Centrifugo v3 release is targeting to improve Centrifugo adoption for basic real-time application cases, improves server performance and extends existing features with new functionality. It comes with unidirectional real-time transports, protocol speedups, super-fast engine implementation based on Tarantool, new documentation site (centrifugal.dev), GRPC proxy, API extensions and PRO version which provides unique possibilities for business adopters.

    Centrifugo v3 introductory blog post describes the most notable aspects of v3.

    ๐Ÿš€ The release has backward incompatible changes. Centrifugo v3 migration guide aims to help with v2 to v3 migration. Migration guide contains a best-effort configuration converter to adapt the existing configuration file for v3.

    ๐Ÿš€ Release summary:

    • License changed from MIT to Apache 2.0.
    • ๐Ÿ‘Œ Support for unidirectional transports (Eventsource, GRPC, HTTP-streaming, WebSocket). Docs and introductory blog post provide more information.
    • ๐Ÿ‘ Better performance:
      • Drastically improved JSON client protocol performance, addresses #460
      • Sharded in-memory connections hub to reduce lock contention
      • Less memory allocations during message broadcast
      • 5% overall additional performance boost due to using Go 1.17
      • More details in the introductory blog post
    • Enhanced client history API (iteration support, docs), breaking change in client history call behavior โ€“ history now does not return all existing publications in a channel by default. Migration guide covers this.
    • ๐Ÿ”ง Configuration options cleanups and changes (breaking changes described in details in migration guide).
      • Channel options changes
      • Time intervals now set as human-readable durations
      • Client transport endpoint requests with Origin header set should now explicitly match patterns in allowed_origins
      • Improved Redis Engine configuration
      • SockJS disabled by default
      • Some options renamed, and some removed
      • history_max_publication_limit and recovery_max_publication_limit options added
      • proxy_binary_encoding option to give a tip to proxy that data should be encoded into base64.
      • HTTP proxy does not have default headers โ€“ should be set explicitly now
    • JWT improvements and changes:
      • Possibility to pass a list of server-side subscriptions with channel options
      • Better control on token and connection expiration
      • See docs
    • 0๏ธโƒฃ Redis Engine uses Redis Streams by default. Migration guide covers this.
    • ๐Ÿ“„ GRPC proxy in addition to the existing HTTP proxy. Docs.
    • ๐Ÿ“„ Experimental Tarantool Engine. Docs.
    • โœจ Enhanced server API functionality:
      • publish API now returns offset and epoch for channels with history, fixes #446
      • Refactor channels API call to work in all cases (was unavailable for Redis Cluster and Nats broker before, fixes #382)
      • b64data and skip_history added to Publish API
      • Enhanced history API (iteration)
      • Extended disconnect API
      • Extended unsubscribe API
      • New subscribe API call, fixes #367
      • Refer to the docs.
    • โœจ Enhanced proxy functionality
      • Add custom data in subscribe response to a client
      • skip_history for publish proxy
      • More control over disconnect
      • Possibility to override subscription related channel options
      • Possibility to attach custom connection meta information which won't be visible by clients, addresses #457
      • Refer to the docs.
    • ๐ŸŒฒ trace log level added
    • ๐Ÿ‘ Better clustering โ€“ handle node shutdown
    • ๐Ÿ‘ Better GRPC API package name โ€“ fixes #379
    • ๐Ÿ’ป Show total number of different subscriptions on Centrifugo node in Web UI
    • ๐Ÿ›  Check user ID to be the same as the current user ID during a client-side refresh, fixes #456
    • โฌ‡๏ธ Drop support for POSTing Protobuf to HTTP API endpoint
    • ๐Ÿณ Using Alpine 3.13 as Docker image base
    • Various client connector libraries improvements
    • ๐Ÿ’ป Various admin web UI improvements
    • ๐Ÿ“„ Introducing Centrifugo PRO
  • v2.8.6 Changes

    No backwards incompatible changes here.

    ๐Ÿ‘Œ Improvements:

    • ๐Ÿš€ RPM and DEB packages now additionally added to release assets

    ๐Ÿ›  Fixes:

    • ๐Ÿ›  Fixes accidentally pushed Docker latest tag from Centrifugo v3 PRO beta.

    โœ… Centrifugo v2.8.6 based on latest Go 1.16.6

  • v2.8.5 Changes

    No backwards incompatible changes here.

    ๐Ÿ‘Œ Improvements:

    ๐Ÿ›  Fixes:

    • 0๏ธโƒฃ Use default timeouts for subscribe and publish proxy (1 second). Previously these proxy had no default timeout at all.

    Centrifugo v2.8.5 based on Go 1.16.4

  • v2.8.4 Changes

    No backwards incompatible changes here.

    ๐Ÿ‘Œ Improvements:

    • ๐Ÿ†• New subcommand serve to quickly run a static file server

    ๐Ÿ›  Fixes:

    • ๐Ÿ›  Fix panic when using connect proxy with a personal channel feature on. See #436

    Centrifugo v2.8.4 based on Go 1.16.3

  • v2.8.3 Changes

    ๐Ÿ”’ Security warning: take a closer look at new option allowed_origins if you are using connect proxy feature.

    No backwards incompatible changes here.

    ๐Ÿ‘Œ Improvements:

    • Possibility to set allowed_origins option (#431). This option allows setting an array of allowed origin patterns (array of strings) for WebSocket and SockJS endpoints to prevent Cross site request forgery attack. This can be especially important when using connect proxy feature. If you are using JWT authentication then you should be safe. Note, that since you get an origin header as part of proxy request from Centrifugo it's possible to check allowed origins without upgrading to Centrifugo v2.8.3. See docs for more details about this new option
    • ๐Ÿง Multi-arch Docker build support - at the moment for linux/amd64 and linux/arm64. See #433

    โœ… Centrifugo v2.8.3 based on latest Go 1.16.2, Centrifugo does not vendor its dependencies anymore.