@procedures/client 0.49.0 → 0.50.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +20 -0
- package/dist/.tsbuildinfo +1 -1
- package/dist/browser.d.ts +1 -1
- package/dist/browser.d.ts.map +1 -1
- package/dist/browser.js +1 -1
- package/dist/browser.js.map +1 -1
- package/dist/events/index.d.ts +1 -1
- package/dist/events/index.d.ts.map +1 -1
- package/dist/events/index.js +1 -1
- package/dist/events/index.js.map +1 -1
- package/dist/events/live-state.d.ts +36 -1
- package/dist/events/live-state.d.ts.map +1 -1
- package/dist/events/live-state.js +72 -11
- package/dist/events/live-state.js.map +1 -1
- package/dist/procedures/invoke.d.ts.map +1 -1
- package/dist/procedures/invoke.js +11 -1
- package/dist/procedures/invoke.js.map +1 -1
- package/package.json +2 -2
- package/src/browser.ts +1 -1
- package/src/events/index.ts +2 -0
- package/src/events/live-state.ts +89 -11
- package/src/procedures/invoke.ts +12 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,25 @@
|
|
|
1
1
|
# @procedures/client
|
|
2
2
|
|
|
3
|
+
## 0.50.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- 54cdb34: The live state has two limits of bytes: `maxTopicBytes` for each topic, and `maxBytes` for all topics.
|
|
8
|
+
|
|
9
|
+
The product of the earlier limits is more than 64 GiB, so they did not bound the memory of a host. The defaults are 1 MiB for a topic and 64 MiB for a state.
|
|
10
|
+
|
|
11
|
+
The bench `live-limits` set the defaults in run 42152574477, on hosts with a heap limit of 4,496,293,888 bytes (4.19 GiB). A full topic at 1 MiB kept 1,075,659 bytes of heap. A full state at 64 MiB kept 68,842,177 bytes, 1.53 percent of that heap. With the earlier limits, 261 full topics filled the heap. A set that adds bytes above a limit gets `FORBIDDEN` with the reason `write-not-allowed`. A set that makes a value smaller goes. The getter `bytes` gives the bytes of the values, as JSON.
|
|
12
|
+
|
|
13
|
+
A value from another host has the same limits. A value that does not fit is not kept, and the old value of its key ends with the reason `expired`.
|
|
14
|
+
|
|
15
|
+
Migration: find the hosts that keep more than 1 MiB of values on one topic, or more than 64 MiB in all. Each of them sets `maxTopicBytes` or `maxBytes` in the option `live` of `EventPublisher`.
|
|
16
|
+
|
|
17
|
+
## 0.49.1
|
|
18
|
+
|
|
19
|
+
### Patch Changes
|
|
20
|
+
|
|
21
|
+
- a11008a: A stream of `invokeProcedure` reads its items in the same time at any count of streams that share one signal. Before, each read of an item added a listener to the signal of the call and removed it again. Node examines each listener of a signal at each add, so a publish to n subscriptions with one signal cost n x n. With this change, each stream derives its own signal one time with `AbortSignal.any`. The server faces give each call its own signal, so the change helps the callers in one process that share a signal. An abort of the shared signal still ends each stream.
|
|
22
|
+
|
|
3
23
|
## 0.49.0
|
|
4
24
|
|
|
5
25
|
### Minor Changes
|