Files
rudder-js-sdk/CHANGELOG.md
T

49 lines
1.9 KiB
Markdown

# Changelog
## Unreleased
- Breaking: `storage.save` and `storage.delete` are removed; the server no
longer accepts client storage writes. `client.storage` is read-only; module
functions and the admin API write player storage.
## 0.2.1
- Docs only: README wording.
## 0.2.0
- `PlayerProfile.balances` (`CurrencyBalance[]`: `currency`, `balance`)
replaces `wallets`, and the `Wallet` type is renamed `CurrencyBalance`.
- `PlayerProfile.items` (`InventoryStack[]`: `item`, `quantity`) replaces
`counters`.
- Catalogs replace resources on the platform; no public type changes.
- Module clients generated by `rudder client generate` 0.3.0 list the current
kernel error codes in `RudderKernelError`.
## 0.1.0
First release as `@rudder/sdk`. Not compatible with `@rudder/js-sdk` 2.x.
- `createClient({ projectKey })` creates the client; `baseUrl` defaults to
`https://api.rudder.build`.
- Kernel surface only: `auth`, `player` (player, identities, wallets,
`counters`), `catalog`, `storage`, `modules`. Revision sync keys are
`profile`, `catalog` and `storage`.
- State objects expose `value` (was `data`), `status`, `error`, `load()`,
`reload()` and `onChange()`.
- `storage.save(type, data)` upserts the single item of a type;
`storage.delete(type)` removes it.
- `modules.call<T>(module, fn, args?, { moduleVersion? })` resolves to
`result` as `T`. It always sends `args` (`{}` when omitted), one
`Idempotency-Key` per call reused on retries, and
`X-Rudder-Module-Version: <module>@<version>` when a version is given.
Retries up to 2 times with jittered backoff on network errors, 5xx and 409
`conflict`. A 422 rejects with `RudderModuleError<C>` (`code`, `message`,
`requestId`).
- Typed module clients come from `rudder client generate --lang ts`.
- Removed: `client.resources(slug)`, `client.projectStorage` and their types.
## 2.x (@rudder/js-sdk)
Deprecated. Its history is in git before the 0.1.0 commit.