Releases: boringnode/transmit
Truthful transmissions
Breaking Changes
Removed subscribe/unsubscribe transport synchronization
The transport layer no longer broadcasts subscribe/unsubscribe events across instances. Previously, when a client subscribed or unsubscribed on one server instance, other instances were notified via the transport bus. This behavior has been removed as it was unused.
Default broadcast payload changed from {} to null
When calling broadcast without a payload, the default value is now null instead of an empty object {}.
// Before
transmit.broadcast('channel') // sent { payload: {} }
// After
transmit.broadcast('channel') // sends { payload: null }Bug Fixes
Preserve falsy payload values in broadcast (Breaking)
Broadcasting falsy values like 0, false, '', or null now works correctly. Previously, these values were incorrectly converted to an empty object {}.
// Before: All these would send { payload: {} }
transmit.broadcast('channel', 0)
transmit.broadcast('channel', false)
transmit.broadcast('channel', '')
// After: Values are preserved correctly
transmit.broadcast('channel', 0) // sends { payload: 0 }
transmit.broadcast('channel', false) // sends { payload: false }
transmit.broadcast('channel', '') // sends { payload: '' }Fixed onSubscribe callback behavior
The onSubscribe callback is now only called when the subscription actually succeeds. Previously, it could be called even when the stream UID didn't exist, which could lead to inconsistent state in application code.
Add an api to get subscribers' uuid for a channel
What's Changed
- Docs: Add GZip exclusion instructions for Transmit SSE by @eduwass in #1
- chore(config): migrate renovate config by @renovate in #4
- chore(deps): update all non-major dependencies by @renovate in #3
- chore(deps): update dependency del-cli to v6 by @renovate in #5
- chore(deps): update dependency @japa/assert to v4 by @renovate in #7
- fix(deps): update all non-major dependencies by @renovate in #8
- chore(deps): update dependency @japa/runner to v4 by @renovate in #12
- chore(deps): update all non-major dependencies by @renovate in #11
- chore(deps): update all non-major dependencies by @renovate in #13
- chore(deps): update dependency release-it to v18 by @renovate in #14
- feat(transports): export mqtt transport from the bus package by @MaximeMRF in #10
- fix(deps): update all non-major dependencies by @renovate in #15
- chore(deps): update all non-major dependencies by @renovate in #16
- fix(deps): update all non-major dependencies by @renovate in #17
- chore(deps): update all non-major dependencies by @renovate in #18
- fix(deps): update all non-major dependencies by @renovate in #19
- chore(deps): update all non-major dependencies by @renovate in #22
- chore(deps): update dependency release-it to v19 by @renovate in #20
- fix(deps): update all non-major dependencies by @renovate in #24
- fix(deps): update all non-major dependencies by @renovate in #25
- feat(transmit): getAllSubscribersUUIDs by @MaximeMRF in #23
New Contributors
- @eduwass made their first contribution in #1
- @renovate made their first contribution in #4
- @MaximeMRF made their first contribution in #10
Full Changelog: v0.2.2...v0.3.0
Update dependencies
Inject manually headers in the response
Improve typing of Context
In this release, we've enhanced the context typing and ensured that subscribing to a channel works smoothly when done locally (via the Bus).
Commits
- chore: ensure tests pass with new typing (e380f25)
- chore: improve typing & create "local" variant of subscribe and unsubscribe method (730c677)
Full Changelog: v0.1.3...v0.2.0
Exports the `AccessCallback` type to simplify the creation of adapters
Exports the AccessCallback type to simplify the creation of adapters
Commits
- chore: export AccessCallback type from type exports (e1c3aba)
Full Changelog: v0.1.2...v0.1.3
Release missing authorize method
Full Changelog: v0.1.1...v0.1.2
First release
First release to try to create adapter for it.
Commits
Full Changelog: https://github.com/boringnode/transmit/commits/v0.1.1