All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
- Add support for streaming requests (#31, thanks @jhillacre!)
- Return a Promise from
subscription.cancel()
- Return a Promise from
subscription.cancel()
- Return a Promise from
client.close()
- Return a Promise from
client.unsubscribeAll()
- Allow custom subscription actions to be used (#24, thanks @jhillacre!)
- Optionally allow subscription callbacks to handle "create" actions, through
includeCreateEvents
option (#24, thanks @jhillacre!) - Unsubscription requests are now sent to the server! (#24, thanks @jhillacre!)
- Logging switched from loglevel to winston
- Docs: Added CHANGELOG.md
- Return a Promise from
subscription.cancel()
- Return a Promise from
client.close()
- Return a Promise from
client.unsubscribeAll()
- Upgraded TypeScript compiler to 3.7.7 (to support optional chaining and nullish coalescence)
- Prevent duplicate transmissions of subscribe requests during resubscribe (#24, thanks @jhillacre!)
- Tests: Upgrade pytest to 6.2
- Tests: Upgrade integration tests' Python from 3.7 to 3.8 to resolve
importlib_metadata
import error (#10) - Tests: Change
npm run test:integration
to invoke pytest throughpipenv run
- Docs: Change instructions on setting up env for integration tests to use
pipenv install --dev
(without--dev
, necessary deps were not being installed) - Tests: Resolve stdout buffering issue in integration test runner which resulted in process hang
- Allow custom PK fields to be used with subscriptions
- Allow generation of selector/payload objects to be controlled
- Add
client.close()
method to explicitly disconnect transport - Add
client.unsubscribeAll()
method to unsubscribe any active subscriptions (called by default inclose()
) - Docs: Add docs to README explaining how to utilize custom PK fields (and
ensurePkFieldInDeleteEvents
)
- Allow all options supported by
ReconnectingWebsocket
to be passed through client (previously, the allowed options were hardcoded) (thanks @sandro-salles) - Docs: Include docs on reconnecting-websocket options in README (thanks @sandro-salles)
- Upgraded reconnecting-websocket from 4.1.10 to 4.4.0 (thanks @sandro-salles)
- Docs: Add code example for
client.patch()
in README
- Docs: Update outdated code examples in README
- Allow request IDs to be manually specified
- Tests: Add integration tests
- Docs: Add instructions for running tests
- Update subscription request/listener to match DCRF's semantics (channels-api semantics were being used)
- Ensure a request ID is sent in resubscriptions
- Initial release: TypeScript port of channels-api