Releases: taoensso/sente
v1.21.0-RC3 (2025-10-11)
- Dependency: on Clojars
- Versioning: Break Versioning
Since v1.21.0-RC2 (2025-09-05)
- [fix] [#475] [#476] Fix bad WebSocket close call args [2120b13]
- [new] [#477] Add gzip-wrapping packer [956268c]
- [new] [#476] Make it easier to test server restarts [f292180]
- [new] [#474] Add UUID support to Msgpack packer (@jrgvf) [2fdd8f8]
- [doc] Add packer info to wiki [08dc349]
- [mod] Drop Clojure v1.10 testing [648ac31]
v1.21.0-RC2 (2025-09-05)
- Dependency: on Clojars
- Versioning: Break Versioning
Like v1.21.0-RC1 but adds some performance improvements and fixes to Sente's new experimental binary serialization.
v1.21.0-RC1 (2025-09-02)
- Dependency: on Clojars
- Versioning: Break Versioning
Sente v1.21 is a major release with many improvements! It includes breaking changes for some users. Please report any unexpected problems to the Slack channel or GitHub π
Quick highlights:
- Adds support for high-speed binary serialization
- Adds support for compression (WebSockets + Ajax) [f8a3fad]
- Smaller dependency [4864926] [6a7a609]
- Improved reliability under load [173652d] [49000db] [71e7bb0]
- Pluggable logging via Trove [4864926]
- Many small fixes and improvements
As always thank you to any contributors! In particular thank you to @rosejn, @edma2, and @pkcsecurity on whose work Sente's new MessagePack implementation is based π
Since v1.21.0-beta2 (2025-07-04)
- [mod] Increase default
:ws-ping-timeout-ms(5->10 secs) [147fbdd] - [new] [#470] Add new binary MessagePack packer [757ebd2]
- [new] Add MessagePack packer to example project [e88a17f]
- [fix] Trace-level Trove logs shouldn't show by default in JS console
- [fix] Improve async packer error handling [3292847]
- [doc] Clarify client-side send-fn args [1feca6f]
Since v1.20.0 (2024-12-31)
Changes
- β€ [mod] [BREAKING] [#472] Switch logging: Timbre -> Trove [4864926]
- β€ [mod] [BREAKING] Make packers more flexible [f8a3fad]
- β€ [mod] [BREAKING] Increase default
:ws-ping-timeout-ms(5->10 secs) [147fbdd] - [mod] [#455] Halve given
ws-kalive-ms[49000db] - [mod] Make Java WS client optional [6a7a609]
- [mod] [#462] Don't throw by default on Ajax read timeouts [fb30404]
- [mod] Enable WebSocket ping timeout by default [71e7bb0]
- [mod] Change default WebSocket binary type (blob->arraybuffer) [02da98e]
- [mod] Remove experimental, undocumented
cb-chan-as-fn[71db112] - [mod] Remove long-vestigial legacy pack code [cf2a149]
Fixes
- [fix] [#471] Switch to custom lightweight timer implementation [173652d]
- [fix] [#466] Fix support for Jetty 12 community adapter (@aiba) [d16bb6c]
- [fix] [#464] [#325] Fix option to use custom WebSocket constructor (@iarenaza) [07a9bd9]
New
- [new] [#470] Add new binary MessagePack packer [757ebd2]
- [new] Add MessagePack packer to example project [e88a17f]
- [new] [#467] Allow
:csrf-token-fnto return:sente/skip-CSRF-check[8aae3d0] - [new] [#467] Make
cb-error?,cb-success?available to Clj code [08e8b3e] - [new] [#462] Keep Ring request in Ajax channel [01a41a3]
- [new] Update ref example to add dynamic packer [cd98db7]
- [new] Update ref example logging [85b3e8a]
- [doc] Document limitations on event ordering [532064d]
- [doc] Clarify client-side send-fn args [1feca6f]
v1.21.0-beta2 (2025-07-04)
- Dependency: on Clojars
- Versioning: Break Versioning
This is a major release with many improvements! It includes breaking changes for some users. It's intended for early testing, and may not yet be suitable for production.
Please report any unexpected problems to the Slack channel or GitHub π
Quick highlights:
- Adds support for upcoming high-speed binary serialization (WebSockets + Ajax) [f8a3fad]
- Adds support for compression (WebSockets + Ajax) [f8a3fad]
- Smaller dependency [4864926] [6a7a609]
- Improved reliability under load [173652d] [49000db] [71e7bb0]
- Pluggable logging via Trove [4864926]
- Many small fixes and improvements
As always thank you to any contributors! π
Since v1.20.0 (2024-12-31)
See linked commit messages for more info
Changes
- β€ [mod] [BREAKING] [#472] Switch logging: Timbre -> Trove [4864926]
- β€ [mod] [BREAKING] Make packers more flexible [f8a3fad]
- [mod] [#455] Halve given
ws-kalive-ms[49000db] - [mod] Make Java WS client optional [6a7a609]
- [mod] [#462] Don't throw by default on Ajax read timeouts [fb30404]
- [mod] Enable WebSocket ping timeout by default [71e7bb0]
- [mod] Change default WebSocket binary type (blob->arraybuffer) [02da98e]
- [mod] Remove experimental, undocumented
cb-chan-as-fn[71db112] - [mod] Remove long-vestigial legacy pack code [cf2a149]
Fixes
- [fix] [#471] Switch to custom lightweight timer implementation [173652d]
- [fix] [#466] Fix support for Jetty 12 community adapter (@aiba) [d16bb6c]
- [fix] [#464] [#325] Fix option to use custom WebSocket constructor (@iarenaza) [07a9bd9]
New
- [new] [#467] Allow
:csrf-token-fnto return:sente/skip-CSRF-check[8aae3d0] - [new] [#467] Make
cb-error?,cb-success?available to Clj code [08e8b3e] - [new] [#462] Keep Ring request in Ajax channel [01a41a3]
- [new] Update ref example to add dynamic packer [cd98db7]
- [new] Update ref example logging [85b3e8a]
- [doc] Document limitations on event ordering [532064d]
v1.21.0-beta1 (2025-07-01)
- Dependency: on Clojars
- Versioning: Break Versioning
This is a major release with many improvements! It includes breaking changes for some users. It's intended for early testing, and may not yet be suitable for production.
Please report any unexpected problems to the Slack channel or GitHub π
Quick highlights:
- Adds support for upcoming high-speed binary serialization (WebSockets + Ajax) [f8a3fad]
- Adds support for compression (WebSockets + Ajax) [f8a3fad]
- Smaller dependency [4864926] [6a7a609]
- Improved reliability under load [173652d] [49000db] [71e7bb0]
- Pluggable logging via Trove [4864926]
- Many small fixes and improvements
As always thank you to any contributors! π
Since v1.20.0 (2024-12-31)
π See linked commit messages for more info!
Changes
- β€ [mod] [BREAKING] [#472] Switch logging: Timbre -> Trove [4864926]
- β€ [mod] [BREAKING] Make packers more flexible [f8a3fad]
- [mod] [#455] Halve given
ws-kalive-ms[49000db] - [mod] Make Java WS client optional [6a7a609]
- [mod] [#462] Don't throw by default on Ajax read timeouts [fb30404]
- [mod] Enable WebSocket ping timeout by default [71e7bb0]
- [mod] Change default WebSocket binary type (blob->arraybuffer) [02da98e]
- [mod] Remove experimental, undocumented
cb-chan-as-fn[71db112] - [mod] Remove long-vestigial legacy pack code [cf2a149]
Fixes
- [fix] [#471] Switch to custom lightweight timer implementation [173652d]
- [fix] [#466] Fix support for Jetty 12 community adapter (@aiba) [d16bb6c]
- [fix] [#464] [#325] Fix option to use custom WebSocket constructor (@iarenaza) [07a9bd9]
New
- [new] [#467] Allow
:csrf-token-fnto return:sente/skip-CSRF-check[8aae3d0] - [new] [#467] Make
cb-error?,cb-success?available to Clj code [08e8b3e] - [new] [#462] Keep Ring request in Ajax channel [01a41a3]
- [new] Update ref example to add dynamic packer [cd98db7]
- [new] Update ref example logging [85b3e8a]
- [doc] Document limitations on event ordering [532064d]
v1.20.0 (2024-12-31)
- Dependency: on Clojars
- Versioning: Break Versioning
This is a major non-breaking maintenance and feature release. As always, please report any unexpected problems π - Peter Taoussanis
Happy holidays everyone! ππ«Ά
Since v1.20.0-RC1 (2024-10-28)
No breaking changes intended
- [fix] [#458] Fix React Native build: catch invalid call [4e3f16c]
- [new] [#447] [Community adapters] Support both Jetty 11 and 12 (@stefanroex) [79c784d]
- [new] [#447] [Community adapters] Improve error message on Ajax read timeouts [9da662c]
- [doc] [Community adapters] Improve constructor docstrings [1c7a93c]
Since v1.19.2 (2023-08-30)
No breaking changes intended
Changes
- [mod] [#440] Decrease log level of noisy ws-ping events (@jwr) [4241e6c]
- [mod] Tune send backoff time [84e8b2a]
Fixes
- [fix] [#448] [#453] Fix NodeJS build: don't add
beforeunloadevent listener (@theasp) [dc6b34e] - [fix] [#458] Fix React Native build: catch invalid call [4e3f16c]
- [fix] [#445] [#444] [Community adapters] Undertow: remove invalid option (@danielsz) [55167f5]
New
v1.20.0-RC1 (2024-10-28)
- Dependency: on Clojars
- Versioning: Break Versioning
This is a major non-breaking maintenance and feature release. As always, please report any unexpected problems π - Peter Taoussanis
Changes since v1.19.2 (2023-08-30)
- [mod] [#440] Decrease log level of noisy ws-ping events (@jwr) [4241e6c]
- [mod] Tune send backoff time [84e8b2a]
Fixes since v1.19.2 (2023-08-30)
- [fix] [#448] [#453] Don't add
beforeunloadevent listener when running inside NodeJS (@theasp) [dc6b34e] - [fix] [#445] [#444] [Community adapters] Undertow: remove invalid option (@danielsz) [55167f5]
New since v1.19.2 (2023-08-30)
- [new] [#447] [Community adapters] Add Jetty 11 adapter (@alexandergunnarson) [8ecb2d9]
- [doc] [#439] Add guidance on large transfers [513a42d]
- Update several dependencies
1.19.2 (2023-08-30)
π¦ Available on Clojars
Identical to 1.19.1, but includes a hotfix (dbb798a) for [#434] to remove the unnecessary logging of potentially sensitive Ring request info when connecting to a server without a client id.
This should be a safe update for users of 1.19.x.
1.19.1 (2023-07-18)
π¦ Available on Clojars
Identical to 1.19.0, but synchronizes Encore dependency with my recent library releases (Timbre, Tufte, Sente, Carmine, etc.) to prevent confusion caused by dependency conflicts.
This is a safe update for users of 1.19.0.
1.19.0 (2023-07-13)
π¦ Available on Clojars
This is intended as a non-breaking maintenance release, but it touches a lot of code so please keep an eye out for (and let me know about) any unexpected problems - thank you! π
Tip: the reference example includes a number of tools to help test Sente in your environment.
Fixes since 1.18.1
- 0dc8a12 [fix] [#431] Some disconnected user-ids not removed from
connected-uids(big thanks to @krajj7 for the report and assistance debugging!)