This project adheres to Semantic Versioning.
- Removed Node.js 16 support.
- Replaced
inMap
andinFilter
withonReceive
. - Replaced
outMap
andoutFilter
toonSend
. - Fixed synchronization.
- Added
Criteria
andReadonlyListener
types to exports (by @nichoth).
- Fixed frozen pages support (by @erictheswift).
- Fixed docs.
- Fixed disconnecting
TestPair
during connection process.
- Fixed
undefined
options (by @erictheswift).
- Removed Node.js dependencies to simplify bundling.
- Dropped Node.js 12 support.
- Add string-based time to
isFirstOlder()
. - Fixed action syncing order (by Tyler Han).
- Fixed behavior on disconnection in the middle of syncing (by Tyler Han).
- Increased ping timeout to solve Chrome background tab issue.
- Marked
meta
as read-only in non-preadd
callbacks.
- Fixed re-connection delay to avoid backoff better.
- Moved project to ESM-only type. Applications must use ESM too.
- Dropped Node.js 10 support.
- Added
Log#type()
. - Added
index
to log entries (by Eduard Aksamitov). - Added
TestLog#keepActions()
. - Allowed to specify action type in
Log#add()
call. - Made
destroy
as mandatory method ofConnection
. - Fixed types performance by replacing
type
tointerface
.
- Allow to call
MemoryStore#get()
without options (by Eduard Aksamitov).
- Fix counters comparison in
isFirstOlder
.
- Use WebSocket Protocol version 4.
- Remove
reasons: string
support. It must be always an array. - Add
parseId()
helper. - Add headers (by Ivan Menshykov).
- Add
MemoryStore#entries
. - Allow to pass
undefined
toisFirstOlder()
. - Return unbind function from
Node#catch
. - Rename
WsConnection#WS
toWsConnection#Class
. - Rename
Store
type toLogStore
. - Fix WebSocket connectivity.
- Improve types (by Nikolay Govorov).
- Fix types.
- Fix
Reconnect
atchangeUser
from Logux Client.
- Fix protocol version.
- Use WebSocket Protocol version 3.
- Change
auth
callback signature. - Rename
credentials
option totoken
. - User ID must be always a string.
- Add support for dynamic tokens.
- Fix types.
- Fix private API for Logux Server.
- Add ES modules support.
- Add TypeScript definitions.
- Move API docs from JSDoc to TypeDoc.
- Mark package as side effect free.
- Fix actions double sending to the server.
- Fix React Native and React Server-Side Rendering support (by Can Rau).
- Fix JSDoc.
- Fix read-only meta keys.
- Fix using old
added
insync
message.
- Rename project from
logux-core
to@logux/core
. - Remove Node.js 6 and 8 support.
- Merge with
logux-sync
. - Merge with
logux-store-tests
. - Use sting-based
meta.id
. - Rename
BaseSync
,ClientSync
,ServerSync
to*Node
. - Rename
SyncError
toLoguxError
. - Remove
missed-auth
error. - Rename
BrowserConnection
toWsConnection
. - Run input map before filter.
- Add
Store#clean()
(by Arthur Kushka). - Add
criteria.id
toStore#removeReason
. - Add
TestTime#lastId
. - Add
TestLog#entries
andTestLog#actions
. - Use more events for
Reconnect
. - Do not throw on
wrong-subprotocol
,wrong-protocol
, andtimeout
. - Allow to send debug before authentication.
- Move all Logux docs to singe place.
- Allow to set
meta.keepLast
inpreadd
event listener.
- Fix removing action with different
time
from memory store.
- Rename
meta.created
tometa.id
. - Rename
event
event toadd
. - Use reasons of life API to clean log.
- Return new action
meta
inLog#add
. - Deny tab symbol in Node ID.
- Add
preadd
event. - Add
TestTime
. - Add
keepLast
option toLog#add
(by Igor Deryabin). - Add
meta.time
forfixTime
feature. - Add
isFirstOlder()
helper. - Add
changeMeta
,removeReason
andbyId
to store. - Add
getLastAdded
,getLastSynced
andsetLastSynced
method to store. - Fix leap second problem.
- Move store tests to separated project (by Konstantin Mamaev).
- Fix docs (by Grigoriy Beziuk, Andrew Romanov and Alexey Gaziev).
- Initial release.