@nats-io/kv 3.0.0-9 → 3.0.0-RC1

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/README.md CHANGED
@@ -1,3 +1,14 @@
1
+ [![License](https://img.shields.io/badge/Licence-Apache%202.0-blue.svg)](./LICENSE)
2
+ ![jetstream](https://github.com/nats-io/nats.js/actions/workflows/kv.yml/badge.svg)
3
+ [![JSDoc](https://img.shields.io/badge/JSDoc-reference-blue)](https://nats-io.github.io/nats.js/kv/index.html)
4
+
5
+ [![JSR](https://jsr.io/badges/@nats-io/kv)](https://jsr.io/@nats-io/kv)
6
+ [![JSR](https://jsr.io/badges/@nats-io/kv/score)](https://jsr.io/@nats-io/kv)
7
+
8
+ [![NPM Version](https://img.shields.io/npm/v/%40nats-io%2Fkv)](https://www.npmjs.com/package/@nats-io/kv)
9
+ ![NPM Downloads](https://img.shields.io/npm/dt/%40nats-io%2Fkv)
10
+ ![NPM Downloads](https://img.shields.io/npm/dm/%40nats-io%2Fkv)
11
+
1
12
  # kv
2
13
 
3
14
  The kv module implements the NATS KV functionality using JetStream for
package/lib/kv.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import type { MsgHdrs, NatsConnection, Payload, QueuedIterator } from "@nats-io/nats-core/internal";
2
2
  import { StorageType } from "@nats-io/jetstream/internal";
3
3
  import type { ConsumerConfig, JetStreamClient, JetStreamClientImpl, JetStreamManager, JsMsg, Lister, Placement, PurgeOpts, PurgeResponse, Republish, StoredMsg, StreamInfo } from "@nats-io/jetstream/internal";
4
- import type { KV, KvCodec, KvCodecs, KvDeleteOptions, KvEntry, KvOptions, KvPutOptions, KvRemove, KvStatus, KvWatchEntry, KvWatchOptions } from "./types";
4
+ import type { KV, KvCodec, KvCodecs, KvDeleteOptions, KvEntry, KvOptions, KvPutOptions, KvStatus, KvWatchEntry, KvWatchOptions } from "./types";
5
5
  import { KvWatchInclude } from "./types";
6
6
  export declare function Base64KeyCodec(): KvCodec<string>;
7
7
  export declare function NoopKvCodecs(): KvCodecs;
@@ -41,7 +41,7 @@ export declare class Kvm {
41
41
  */
42
42
  list(): Lister<KvStatus>;
43
43
  }
44
- export declare class Bucket implements KV, KvRemove {
44
+ export declare class Bucket implements KV {
45
45
  js: JetStreamClient;
46
46
  jsm: JetStreamManager;
47
47
  stream: string;
package/lib/kv.js CHANGED
@@ -232,20 +232,11 @@ class Bucket {
232
232
  this.stream = sc.name = opts.streamName ?? this.bucketName();
233
233
  sc.retention = internal_2.RetentionPolicy.Limits;
234
234
  sc.max_msgs_per_subject = bo.history;
235
- if (bo.maxBucketSize) {
236
- bo.max_bytes = bo.maxBucketSize;
237
- }
238
235
  if (bo.max_bytes) {
239
236
  sc.max_bytes = bo.max_bytes;
240
237
  }
241
238
  sc.max_msg_size = bo.maxValueSize;
242
239
  sc.storage = bo.storage;
243
- const location = opts.placementCluster ?? "";
244
- if (location) {
245
- opts.placement = {};
246
- opts.placement.cluster = location;
247
- opts.placement.tags = [];
248
- }
249
240
  if (opts.placement) {
250
241
  sc.placement = opts.placement;
251
242
  }
@@ -453,8 +444,11 @@ class Bucket {
453
444
  }
454
445
  catch (err) {
455
446
  firstErr = err;
456
- if (err?.api_error?.err_code !== 10071) {
457
- return Promise.reject(err);
447
+ if (err instanceof internal_2.JetStreamApiError) {
448
+ const jserr = err;
449
+ if (jserr.code !== internal_2.JetStreamApiCodes.StreamWrongLastSequence) {
450
+ return Promise.reject(err);
451
+ }
458
452
  }
459
453
  }
460
454
  let rev = 0;
@@ -492,12 +486,6 @@ class Bucket {
492
486
  return pa.seq;
493
487
  }
494
488
  catch (err) {
495
- const ne = err;
496
- if (ne.isJetStreamError()) {
497
- ne.message = ne.api_error?.description;
498
- ne.code = `${ne.api_error?.code}`;
499
- return Promise.reject(ne);
500
- }
501
489
  return Promise.reject(err);
502
490
  }
503
491
  }
@@ -508,7 +496,7 @@ class Bucket {
508
496
  if (opts && opts.revision > 0) {
509
497
  arg = { seq: opts.revision };
510
498
  }
511
- let sm;
499
+ let sm = null;
512
500
  try {
513
501
  if (this.direct) {
514
502
  const direct = this.jsm.direct;
@@ -517,6 +505,9 @@ class Bucket {
517
505
  else {
518
506
  sm = await this.jsm.streams.getMessage(this.bucketName(), arg);
519
507
  }
508
+ if (sm === null) {
509
+ return null;
510
+ }
520
511
  const ke = this.smToEntry(sm);
521
512
  if (ke.key !== ek) {
522
513
  return null;
@@ -524,9 +515,6 @@ class Bucket {
524
515
  return ke;
525
516
  }
526
517
  catch (err) {
527
- if (err.code === internal_1.ErrorCode.JetStream404NoMessages) {
528
- return null;
529
- }
530
518
  throw err;
531
519
  }
532
520
  }
@@ -656,6 +644,18 @@ class Bucket {
656
644
  iter.closed().then(() => {
657
645
  qi.push(fn);
658
646
  });
647
+ (async () => {
648
+ for await (const s of iter.status()) {
649
+ switch (s.type) {
650
+ // if we get a heartbeat we got all the keys
651
+ case "heartbeat":
652
+ qi.push(() => {
653
+ qi.stop();
654
+ });
655
+ break;
656
+ }
657
+ }
658
+ })().then();
659
659
  // if they break from the iterator stop the consumer
660
660
  qi.iterClosed.then(() => {
661
661
  iter.stop();
@@ -692,10 +692,12 @@ class Bucket {
692
692
  const count = info.num_pending;
693
693
  let isUpdate = content === types_1.KvWatchInclude.UpdatesOnly || count === 0;
694
694
  qi._data = oc;
695
+ let i = 0;
695
696
  const iter = await oc.consume({
696
697
  callback: (m) => {
697
698
  if (!isUpdate) {
698
- isUpdate = qi.received >= count;
699
+ i++;
700
+ isUpdate = i >= count;
699
701
  }
700
702
  const e = this.jmToWatchEntry(m, isUpdate);
701
703
  if (ignoreDeletes && e.operation === "DEL") {
@@ -739,6 +741,18 @@ class Bucket {
739
741
  }
740
742
  },
741
743
  });
744
+ (async () => {
745
+ for await (const s of iter.status()) {
746
+ switch (s.type) {
747
+ // if we get a heartbeat we got all the keys
748
+ case "heartbeat":
749
+ keys.push(() => {
750
+ keys.stop();
751
+ });
752
+ break;
753
+ }
754
+ }
755
+ })().then();
742
756
  iter.closed().then(() => {
743
757
  keys.push(() => {
744
758
  keys.stop();
package/lib/kv.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"kv.js","sourceRoot":"","sources":["../build/src/kv.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"kv.js","sourceRoot":"","sources":["../build/src/kv.ts"],"names":[],"mappings":"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"}
package/lib/types.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import type { Placement, Republish, StorageType, StreamInfo, StreamSource } from "@nats-io/jetstream";
2
2
  import type { Payload, QueuedIterator } from "@nats-io/nats-core";
3
- export interface KvEntry {
3
+ export type KvEntry = {
4
4
  bucket: string;
5
5
  key: string;
6
6
  value: Uint8Array;
@@ -19,19 +19,19 @@ export interface KvEntry {
19
19
  * may throw an exception if there's a conversion error
20
20
  */
21
21
  string(): string;
22
- }
23
- export interface KvWatchEntry extends KvEntry {
22
+ };
23
+ export type KvWatchEntry = KvEntry & {
24
24
  isUpdate: boolean;
25
- }
25
+ };
26
26
  /**
27
- * An interface for encoding and decoding values
27
+ * Generic type for encoding and decoding values
28
28
  * before they are stored or returned to the client.
29
29
  */
30
- export interface KvCodec<T> {
30
+ export type KvCodec<T> = {
31
31
  encode(k: T): T;
32
32
  decode(k: T): T;
33
- }
34
- export interface KvCodecs {
33
+ };
34
+ export type KvCodecs = {
35
35
  /**
36
36
  * Codec for Keys in the KV
37
37
  */
@@ -40,8 +40,8 @@ export interface KvCodecs {
40
40
  * Codec for Data in the KV
41
41
  */
42
42
  value: KvCodec<Uint8Array>;
43
- }
44
- export interface KvLimits {
43
+ };
44
+ export type KvLimits = {
45
45
  /**
46
46
  * Sets the specified description on the stream of the KV.
47
47
  */
@@ -58,10 +58,6 @@ export interface KvLimits {
58
58
  * The maximum number of bytes on the KV
59
59
  */
60
60
  max_bytes: number;
61
- /**
62
- * @deprecated use max_bytes
63
- */
64
- maxBucketSize: number;
65
61
  /**
66
62
  * The maximum size of a value on the KV
67
63
  */
@@ -93,22 +89,13 @@ export interface KvLimits {
93
89
  * List of Stream names to replicate into this KV
94
90
  */
95
91
  sources?: StreamSource[];
96
- /**
97
- * @deprecated: use placement
98
- */
99
- placementCluster: string;
100
- /**
101
- * deprecated: use storage
102
- * FIXME: remove this on 1.8
103
- */
104
- backingStore: StorageType;
105
92
  /**
106
93
  * Sets the compression level of the KV. This feature is only supported in
107
94
  * servers 2.10.x and better.
108
95
  */
109
96
  compression?: boolean;
110
- }
111
- export interface KvStatus extends KvLimits {
97
+ };
98
+ export type KvStatus = KvLimits & {
112
99
  /**
113
100
  * The simple name for a Kv - this name is typically prefixed by `KV_`.
114
101
  */
@@ -117,11 +104,6 @@ export interface KvStatus extends KvLimits {
117
104
  * Number of entries in the KV
118
105
  */
119
106
  values: number;
120
- /**
121
- * @deprecated
122
- * FIXME: remove this on 1.8
123
- */
124
- bucket_location: string;
125
107
  /**
126
108
  * The StreamInfo backing up the KV
127
109
  */
@@ -136,8 +118,8 @@ export interface KvStatus extends KvLimits {
136
118
  * 2.10.x and better.
137
119
  */
138
120
  metadata?: Record<string, string>;
139
- }
140
- export interface KvOptions extends KvLimits {
121
+ };
122
+ export type KvOptions = KvLimits & {
141
123
  /**
142
124
  * How long to wait in milliseconds for a response from the KV
143
125
  */
@@ -166,28 +148,23 @@ export interface KvOptions extends KvLimits {
166
148
  * 2.10.x and better.
167
149
  */
168
150
  metadata?: Record<string, string>;
169
- }
170
- /**
171
- * @deprecated use purge(k)
172
- */
173
- export interface KvRemove {
174
- remove(k: string): Promise<void>;
175
- }
176
- export declare enum KvWatchInclude {
151
+ };
152
+ export declare const KvWatchInclude: {
177
153
  /**
178
154
  * Include the last value for all the keys
179
155
  */
180
- LastValue = "",
156
+ readonly LastValue: "";
181
157
  /**
182
158
  * Include all available history for all keys
183
159
  */
184
- AllHistory = "history",
160
+ readonly AllHistory: "history";
185
161
  /**
186
162
  * Don't include history or last values, only notify
187
163
  * of updates
188
164
  */
189
- UpdatesOnly = "updates"
190
- }
165
+ readonly UpdatesOnly: "updates";
166
+ };
167
+ export type KvWatchInclude = typeof KvWatchInclude[keyof typeof KvWatchInclude];
191
168
  export type KvWatchOptions = {
192
169
  /**
193
170
  * A key or wildcarded key following keys as if they were NATS subject names.
@@ -214,7 +191,7 @@ export type KvWatchOptions = {
214
191
  */
215
192
  resumeFromRevision?: number;
216
193
  };
217
- export interface RoKV {
194
+ export type RoKV = {
218
195
  /**
219
196
  * Returns the KvEntry stored under the key if it exists or null if not.
220
197
  * Note that the entry returned could be marked with a "DEL" or "PURGE"
@@ -239,10 +216,6 @@ export interface RoKV {
239
216
  * @param opts
240
217
  */
241
218
  watch(opts?: KvWatchOptions): Promise<QueuedIterator<KvWatchEntry>>;
242
- /**
243
- * @deprecated - this api is removed.
244
- */
245
- close(): Promise<void>;
246
219
  /**
247
220
  * Returns information about the Kv
248
221
  */
@@ -253,8 +226,8 @@ export interface RoKV {
253
226
  * @param filter - default is all keys
254
227
  */
255
228
  keys(filter?: string | string[]): Promise<QueuedIterator<string>>;
256
- }
257
- export interface KV extends RoKV {
229
+ };
230
+ export type KV = RoKV & {
258
231
  /**
259
232
  * Creates a new entry ensuring that the entry does not exist (or
260
233
  * the current version is deleted or the key is purged)
@@ -303,19 +276,19 @@ export interface KV extends RoKV {
303
276
  * effectively deletes all data stored under the KV.
304
277
  */
305
278
  destroy(): Promise<boolean>;
306
- }
307
- export interface KvPutOptions {
279
+ };
280
+ export type KvPutOptions = {
308
281
  /**
309
282
  * If set the KV must be at the current sequence or the
310
283
  * put will fail.
311
284
  */
312
285
  previousSeq: number;
313
- }
314
- export interface KvDeleteOptions {
286
+ };
287
+ export type KvDeleteOptions = {
315
288
  /**
316
289
  * If set the KV must be at the current sequence or the
317
290
  * put will fail.
318
291
  */
319
292
  previousSeq: number;
320
- }
293
+ };
321
294
  export declare const kvPrefix = "KV_";
package/lib/types.js CHANGED
@@ -1,21 +1,20 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.kvPrefix = exports.KvWatchInclude = void 0;
4
- var KvWatchInclude;
5
- (function (KvWatchInclude) {
4
+ exports.KvWatchInclude = {
6
5
  /**
7
6
  * Include the last value for all the keys
8
7
  */
9
- KvWatchInclude["LastValue"] = "";
8
+ LastValue: "",
10
9
  /**
11
10
  * Include all available history for all keys
12
11
  */
13
- KvWatchInclude["AllHistory"] = "history";
12
+ AllHistory: "history",
14
13
  /**
15
14
  * Don't include history or last values, only notify
16
15
  * of updates
17
16
  */
18
- KvWatchInclude["UpdatesOnly"] = "updates";
19
- })(KvWatchInclude || (exports.KvWatchInclude = KvWatchInclude = {}));
17
+ UpdatesOnly: "updates",
18
+ };
20
19
  exports.kvPrefix = "KV_";
21
20
  //# sourceMappingURL=types.js.map
package/lib/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../build/src/types.ts"],"names":[],"mappings":";;;AAoNA,IAAY,cAcX;AAdD,WAAY,cAAc;IACxB;;OAEG;IACH,gCAAc,CAAA;IACd;;OAEG;IACH,wCAAsB,CAAA;IACtB;;;OAGG;IACH,yCAAuB,CAAA;AACzB,CAAC,EAdW,cAAc,8BAAd,cAAc,QAczB;AAuJY,QAAA,QAAQ,GAAG,KAAK,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../build/src/types.ts"],"names":[],"mappings":";;;AA0La,QAAA,cAAc,GAAG;IAC5B;;OAEG;IACH,SAAS,EAAE,EAAE;IACb;;OAEG;IACH,UAAU,EAAE,SAAS;IACrB;;;OAGG;IACH,WAAW,EAAE,SAAS;CACd,CAAC;AAmJE,QAAA,QAAQ,GAAG,KAAK,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nats-io/kv",
3
- "version": "3.0.0-9",
3
+ "version": "3.0.0-RC1",
4
4
  "files": [
5
5
  "lib/",
6
6
  "LICENSE",
@@ -23,8 +23,9 @@
23
23
  "pre-process": "npm run clean && deno run -A ../bin/cjs-fix-imports.ts -o ./build/src ./src",
24
24
  "build-cjs": "npm run pre-process && tsc",
25
25
  "build": "npm run build-cjs",
26
- "doc": "npm run build && node_modules/.bin/typedoc --out ../docs/kv && touch ../docs/kv/.nojekyll",
27
- "prepack": "npm run build"
26
+ "prepack": "npm run build",
27
+ "bump-qualifier": "npm version prerelease --no-commit-hooks --no-git-tag-version",
28
+ "bump-release": "npm version patch --no-commit-hooks --no-git-tag-version"
28
29
  },
29
30
  "keywords": [],
30
31
  "author": {
@@ -32,13 +33,12 @@
32
33
  },
33
34
  "description": "kv library - this library implements all the base functionality for NATS KV javascript clients",
34
35
  "dependencies": {
35
- "@nats-io/jetstream": "~3.0.0-11",
36
- "@nats-io/nats-core": "~3.0.0-27"
36
+ "@nats-io/jetstream": "3.0.0-RC1",
37
+ "@nats-io/nats-core": "3.0.0-RC1"
37
38
  },
38
39
  "devDependencies": {
39
- "@types/node": "^22.0.0",
40
+ "@types/node": "^22.10.10",
40
41
  "shx": "^0.3.4",
41
- "typedoc": "^0.26.5",
42
- "typescript": "^5.5.4"
42
+ "typescript": "^5.8.2"
43
43
  }
44
- }
44
+ }