Releases: share/sharedb
Releases · share/sharedb
v1.0.0
🎉 [email protected] is here!
👉 See the upgrade guide for how to upgrade from the 1.x-beta releases:
https://github.com/share/sharedb/wiki/[email protected]
This is a summary of breaking changes from [email protected].*
to [email protected]
:
- #311 - Deprecated middleware actions have been removed (@alecgibson)
- "doc", whose functionality has been subsumed by "readSnapshots"
- "afterSubmit" and "after submit", which have been renamed to "afterWrite" with no changes to functionality
- #309 - Error codes have changed from numbers to strings (@alecgibson)
- A few overloaded codes have been fixed.
- Some other codes have been consolidated.
v1.0.0-beta.29
v1.0.0-beta.28
v1.0.0-beta.27
No changes in sharedb code
- Remove invalid assertion used in db tests: 18a038c
v1.0.0-beta.26
- #323 - Revert to using a simple shallowCopy for ops (@nateps)
- Previously, ops were copied by iterating over them in pubsub. This was changed in #316 to copy the specific properties expected on an op. This was an unintentional breaking change, because middleware could be adding additional fields to the top level of the op.
v1.0.0-beta.25
Externally-visible changes
- #321 - Delay ops sent by query subscriptions until after polling is complete. ShareDB doesn't guarantee the sequence in which these op & query result updates will be received, but currently the code sends the ops as soon as they are received, then issues the query against the database. This change makes it so that ops are consistently ordered after diffs in results by delaying sending of ops until polling is complete.
Dev and documentation changes
- #320 - Update dependencies in examples and bring corresponding example code up to date
v1.0.0-beta.24
Note - This version has been unpublished from NPM
[email protected] was unpublished from NPM as of 2019-10-19 19:57:12 UTC. We thought there was a regression, but there was not. However, there was a minor (non API breaking) timing change, where ops emitted by a query subscription are now delayed for an extra event loop tick. The timing of subscriptions is not guaranteed, and this is not considered breaking.
All changes in this version are included in 1.0.0-beta.25.
Externally-visible changes
- #215 - Allow options to be passed for
fetch
andgetOps
(@alecgibson)- Allows fetching of ops from the backend to get the metadata on them
- #314 - Rename
afterSubmit
middleware hook toafterWrite
(@alecgibson)- Continue to shim synonyms "afterSubmit" and "after submit" for backwards compatibility
- #316 - Fix support for query subscriptions on projections with a filter not in the projection fields (@ericyhwang, @nateps)
- #317 - Downgrade middleware stack dump from
warn
toinfo
(@alecgibson) - #318 - Update dependencies & node versions in travis (@nateps)
- deep-is => fast-deep-equal, since deep-is has some correctness bugs, is much slower, and isn't well maintained
- expect.js => chai for assertions
- instanbul => nyc for generating coverage reports
- Update all dev-dependency versions to current
- Add Node 12 & remove Node 6 from travis configuration to bring current with Node LTS versions
Dev and documentation changes
- #291 - Update all examples to @teamwork/websocket-json-stream (@ericyhwang)
- #292 - Fix broken status indication in textarea example (@hamoid)
- #301 - Add
Backend
documentation (@alecgibson) - #302 - Update linter (@alecgibson)
- jshint => eslint
- #319 - Add test coverage for
queryPollDoc
(@nateps)
v1.0.0-beta.23
- #290 - fix:
Uncaught TypeError: Illegal invocation
in chrome 51 (@qinyang912)- This occured in Share's default Logger implementation, and it's not an issue in newer versions of Chrome/Firefox/etc.
- Chromium issue, for reference: https://bugs.chromium.org/p/chromium/issues/detail?id=179628
v1.0.0-beta.22
v1.0.0-beta.21
- #278 - Add new "reply" middleware action (@ericyhwang)
- The "reply" middleware is called just before the backend is about to send a non-error reply to a client.
- It's the flip side of the existing "receive" middleware action.
- The middleware function gets a context with these properties:
- request
- reply
- action (always
'reply'
for this middleware) - agent
- backend