@peerbit/log 1.0.15 → 2.0.1
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/lib/esm/clock.d.ts +1 -1
- package/lib/esm/clock.js +11 -13
- package/lib/esm/clock.js.map +1 -1
- package/lib/esm/encoding.js +1 -1
- package/lib/esm/entry-index.d.ts +5 -2
- package/lib/esm/entry-index.js +9 -3
- package/lib/esm/entry-index.js.map +1 -1
- package/lib/esm/entry.d.ts +40 -27
- package/lib/esm/entry.js +115 -115
- package/lib/esm/entry.js.map +1 -1
- package/lib/esm/heads-cache.js +1 -1
- package/lib/esm/heads.d.ts +13 -8
- package/lib/esm/heads.js +52 -44
- package/lib/esm/heads.js.map +1 -1
- package/lib/esm/log-sorting.d.ts +3 -3
- package/lib/esm/log-sorting.js +2 -2
- package/lib/esm/log-sorting.js.map +1 -1
- package/lib/esm/log.d.ts +10 -6
- package/lib/esm/log.js +40 -52
- package/lib/esm/log.js.map +1 -1
- package/lib/esm/trim.d.ts +2 -2
- package/lib/esm/trim.js +10 -9
- package/lib/esm/trim.js.map +1 -1
- package/lib/esm/values.d.ts +5 -11
- package/lib/esm/values.js +17 -17
- package/lib/esm/values.js.map +1 -1
- package/package.json +5 -5
- package/src/clock.ts +11 -13
- package/src/encoding.ts +1 -1
- package/src/entry-index.ts +13 -6
- package/src/entry.ts +139 -138
- package/src/heads-cache.ts +1 -1
- package/src/heads.ts +76 -57
- package/src/log-sorting.ts +20 -16
- package/src/log.ts +61 -59
- package/src/trim.ts +14 -12
- package/src/values.ts +24 -32
- package/lib/esm/is-defined.d.ts +0 -1
- package/lib/esm/is-defined.js +0 -2
- package/lib/esm/is-defined.js.map +0 -1
- package/src/is-defined.ts +0 -1
package/lib/esm/log.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"log.js","sourceRoot":"","sources":["../../src/log.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"log.js","sourceRoot":"","sources":["../../src/log.ts"],"names":[],"mappings":"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"}
|
package/lib/esm/trim.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Entry } from "./entry.js";
|
|
1
|
+
import { Entry, ShallowEntry } from "./entry.js";
|
|
2
2
|
import { EntryNode, Values } from "./values.js";
|
|
3
3
|
export type TrimToLengthOption = {
|
|
4
4
|
type: "length";
|
|
@@ -17,7 +17,7 @@ export type TrimToTime = {
|
|
|
17
17
|
export type TrimCondition = TrimToByteLengthOption | TrimToLengthOption | TrimToTime;
|
|
18
18
|
export type TrimCanAppendOption = {
|
|
19
19
|
filter?: {
|
|
20
|
-
canTrim: (
|
|
20
|
+
canTrim: (entry: ShallowEntry) => Promise<boolean> | boolean;
|
|
21
21
|
cacheId?: () => string | number;
|
|
22
22
|
};
|
|
23
23
|
};
|
package/lib/esm/trim.js
CHANGED
|
@@ -56,7 +56,7 @@ export class Trim {
|
|
|
56
56
|
this._queue = new PQueue({ concurrency: 1 });
|
|
57
57
|
}
|
|
58
58
|
deleteFromCache(entry) {
|
|
59
|
-
if (this._canTrimCacheLastNode?.value
|
|
59
|
+
if (this._canTrimCacheLastNode?.value === entry.hash) {
|
|
60
60
|
this._canTrimCacheLastNode = this._canTrimCacheLastNode.prev;
|
|
61
61
|
}
|
|
62
62
|
}
|
|
@@ -90,15 +90,15 @@ export class Trim {
|
|
|
90
90
|
else if (option.type == "time") {
|
|
91
91
|
const s0 = BigInt(+new Date() * 1e6);
|
|
92
92
|
const maxAge = option.maxAge * 1e6;
|
|
93
|
-
done =
|
|
93
|
+
done = () => {
|
|
94
94
|
if (!values.tail) {
|
|
95
95
|
return true;
|
|
96
96
|
}
|
|
97
|
-
const nodeValue =
|
|
97
|
+
const nodeValue = values.entryIndex.getShallow(values.tail.value);
|
|
98
98
|
if (!nodeValue) {
|
|
99
99
|
return true;
|
|
100
100
|
}
|
|
101
|
-
return s0 - nodeValue.
|
|
101
|
+
return s0 - nodeValue.meta.clock.timestamp.wallTime < maxAge;
|
|
102
102
|
};
|
|
103
103
|
}
|
|
104
104
|
else {
|
|
@@ -135,21 +135,22 @@ export class Trim {
|
|
|
135
135
|
let canTrimByGid = undefined;
|
|
136
136
|
// TODO only go through heads?
|
|
137
137
|
while (node &&
|
|
138
|
-
!
|
|
138
|
+
!done() &&
|
|
139
139
|
values.length > 0 &&
|
|
140
140
|
node &&
|
|
141
141
|
(!looped || node !== startNode)) {
|
|
142
142
|
let deleteAble = true;
|
|
143
143
|
if (option.filter?.canTrim) {
|
|
144
144
|
canTrimByGid = canTrimByGid || new Map();
|
|
145
|
-
|
|
145
|
+
const indexedEntry = values.entryIndex.getShallow(node.value); // TODO check undefined
|
|
146
|
+
deleteAble = canTrimByGid.get(indexedEntry.meta.gid);
|
|
146
147
|
if (deleteAble === undefined) {
|
|
147
|
-
deleteAble = await option.filter?.canTrim(
|
|
148
|
-
canTrimByGid.set(
|
|
148
|
+
deleteAble = await option.filter?.canTrim(indexedEntry);
|
|
149
|
+
canTrimByGid.set(indexedEntry.meta.gid, deleteAble);
|
|
149
150
|
}
|
|
150
151
|
if (!deleteAble && cacheProgress) {
|
|
151
152
|
// ignore it
|
|
152
|
-
this._canTrimCacheHashBreakpoint.add(node.value
|
|
153
|
+
this._canTrimCacheHashBreakpoint.add(node.value, true);
|
|
153
154
|
}
|
|
154
155
|
}
|
|
155
156
|
// Delete, and update current node
|
package/lib/esm/trim.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trim.js","sourceRoot":"","sources":["../../src/trim.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,MAAM,MAAM,SAAS,CAAC;AAI7B,MAAM,gBAAgB,GAAG,CAAC,CAAc,EAAE,CAAc,EAAE,EAAE;IAC3D,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,EAAE;QACtB,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,EAAE;YAC/C,OAAO,CACN,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI;gBACjB,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE;gBACb,CAAC,CAAC,MAAM,EAAE,OAAO,KAAK,CAAC,CAAC,MAAM,EAAE,OAAO,CACvC,CAAC;SACF;QACD,IAAI,CAAC,CAAC,IAAI,KAAK,YAAY,IAAI,CAAC,CAAC,IAAI,KAAK,YAAY,EAAE;YACvD,OAAO,CACN,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI;gBACjB,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE;gBACb,CAAC,CAAC,MAAM,EAAE,OAAO,KAAK,CAAC,CAAC,MAAM,EAAE,OAAO,CACvC,CAAC;SACF;QAED,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,EAAE;YAC3C,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,EAAE,OAAO,KAAK,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC;SACxE;KACD;IACD,OAAO,KAAK,CAAC;AACd,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAAC,IAAiB,EAAE,EAAe,EAAE,EAAE;IAClE,IAAI,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,EAAE,OAAO,KAAK,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE;QACzE,uBAAuB;QACvB,OAAO,IAAI,CAAC,CAAC,uBAAuB;KACpC;IAED,IACC,CAAC,IAAI,CAAC,IAAI,KAAK,YAAY,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC;QACtD,CAAC,EAAE,CAAC,IAAI,KAAK,YAAY,IAAI,EAAE,CAAC,IAAI,KAAK,QAAQ,CAAC,EACjD;QACD,IAAI,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE;YACpB,OAAO,IAAI,CAAC;SACZ;QACD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC;QACtC,MAAM,MAAM,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,CAAC;QAChC,OAAO,QAAQ,GAAG,MAAM,CAAC;KACzB;SAAM;QACN,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,EAAE,CAAC,IAAI,KAAK,MAAM,EAAE;YAC/C,OAAO,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,MAAM,CAAC;SAC/B;KACD;IAED,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;AAC/B,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"trim.js","sourceRoot":"","sources":["../../src/trim.ts"],"names":[],"mappings":"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"}
|
package/lib/esm/values.d.ts
CHANGED
|
@@ -2,12 +2,7 @@ import { Entry } from "./entry";
|
|
|
2
2
|
import { ISortFunction } from "./log-sorting";
|
|
3
3
|
import yallist from "yallist";
|
|
4
4
|
import { EntryIndex } from "./entry-index";
|
|
5
|
-
|
|
6
|
-
hash: string;
|
|
7
|
-
gid: string;
|
|
8
|
-
byteLength: number;
|
|
9
|
-
}
|
|
10
|
-
export type EntryNode = yallist.Node<Value>;
|
|
5
|
+
export type EntryNode = yallist.Node<string>;
|
|
11
6
|
export declare class Values<T> {
|
|
12
7
|
/**
|
|
13
8
|
* Keep track of sorted elements in descending sort order (i.e. newest elements)
|
|
@@ -18,16 +13,15 @@ export declare class Values<T> {
|
|
|
18
13
|
private _entryIndex;
|
|
19
14
|
constructor(entryIndex: EntryIndex<T>, sortFn: ISortFunction, entries?: Entry<T>[]);
|
|
20
15
|
toArray(): Promise<Entry<T>[]>;
|
|
21
|
-
get head(): yallist.Node<
|
|
22
|
-
get tail(): yallist.Node<
|
|
16
|
+
get head(): yallist.Node<string> | null;
|
|
17
|
+
get tail(): yallist.Node<string> | null;
|
|
23
18
|
get length(): number;
|
|
24
19
|
private _putPromise;
|
|
20
|
+
get entryIndex(): EntryIndex<T>;
|
|
25
21
|
put(value: Entry<T>): Promise<any>;
|
|
26
22
|
_put(value: Entry<T>): Promise<void>;
|
|
27
23
|
delete(value: Entry<T> | string): Promise<void>;
|
|
28
24
|
deleteNode(node: EntryNode): void;
|
|
29
|
-
pop():
|
|
25
|
+
pop(): string | undefined;
|
|
30
26
|
get byteLength(): number;
|
|
31
|
-
getEntry(node: EntryNode): Promise<Entry<T> | undefined>;
|
|
32
27
|
}
|
|
33
|
-
export {};
|
package/lib/esm/values.js
CHANGED
|
@@ -15,11 +15,15 @@ export class Values {
|
|
|
15
15
|
.map((x) => {
|
|
16
16
|
if (!x.hash)
|
|
17
17
|
throw new Error("Unexpected");
|
|
18
|
-
return {
|
|
18
|
+
return x.hash; /* {
|
|
19
19
|
hash: x.hash,
|
|
20
20
|
byteLength: x._payload.byteLength,
|
|
21
|
-
|
|
22
|
-
|
|
21
|
+
meta: {
|
|
22
|
+
gids: x.gids,
|
|
23
|
+
gid: x.gid,
|
|
24
|
+
data: x.meta.data,
|
|
25
|
+
},
|
|
26
|
+
}; */
|
|
23
27
|
}));
|
|
24
28
|
this._byteLength = 0;
|
|
25
29
|
entries.forEach((entry) => {
|
|
@@ -29,7 +33,7 @@ export class Values {
|
|
|
29
33
|
this._entryIndex = entryIndex;
|
|
30
34
|
}
|
|
31
35
|
toArray() {
|
|
32
|
-
return Promise.all(this._values.toArrayReverse().map((x) => this._entryIndex.get(x
|
|
36
|
+
return Promise.all(this._values.toArrayReverse().map((x) => this._entryIndex.get(x))).then((arr) => arr.filter((x) => !!x)); // we do reverse because we assume the log is only meaningful if we read it from start to end
|
|
33
37
|
}
|
|
34
38
|
get head() {
|
|
35
39
|
return this._values.head;
|
|
@@ -41,6 +45,9 @@ export class Values {
|
|
|
41
45
|
return this._values.length;
|
|
42
46
|
}
|
|
43
47
|
_putPromise = new Map();
|
|
48
|
+
get entryIndex() {
|
|
49
|
+
return this._entryIndex;
|
|
50
|
+
}
|
|
44
51
|
async put(value) {
|
|
45
52
|
let promise = this._putPromise.get(value.hash);
|
|
46
53
|
if (promise) {
|
|
@@ -58,7 +65,7 @@ export class Values {
|
|
|
58
65
|
let walker = this._values.head;
|
|
59
66
|
let last = undefined;
|
|
60
67
|
while (walker) {
|
|
61
|
-
const walkerValue = await this.
|
|
68
|
+
const walkerValue = await this._entryIndex.getShallow(walker.value);
|
|
62
69
|
if (!walkerValue) {
|
|
63
70
|
throw new Error("Missing walker value");
|
|
64
71
|
}
|
|
@@ -76,24 +83,20 @@ export class Values {
|
|
|
76
83
|
if (!value.hash) {
|
|
77
84
|
throw new Error("Unexpected");
|
|
78
85
|
}
|
|
79
|
-
_insertAfter(this._values, last,
|
|
80
|
-
byteLength: value._payload.byteLength,
|
|
81
|
-
gid: value.gid,
|
|
82
|
-
hash: value.hash,
|
|
83
|
-
});
|
|
86
|
+
_insertAfter(this._values, last, value.hash);
|
|
84
87
|
}
|
|
85
88
|
async delete(value) {
|
|
86
89
|
const hash = typeof value === "string" ? value : value.hash;
|
|
87
90
|
// Assume we want to delete at tail (or somwhere close)
|
|
88
91
|
let walker = this._values.tail;
|
|
89
92
|
while (walker) {
|
|
90
|
-
const walkerValue =
|
|
93
|
+
const walkerValue = this._entryIndex.getShallow(walker.value);
|
|
91
94
|
if (!walkerValue) {
|
|
92
95
|
throw new Error("Missing walker value");
|
|
93
96
|
}
|
|
94
97
|
if (walkerValue.hash === hash) {
|
|
95
98
|
this._values.removeNode(walker);
|
|
96
|
-
this._byteLength -= walkerValue.
|
|
99
|
+
this._byteLength -= walkerValue.payloadByteLength;
|
|
97
100
|
return;
|
|
98
101
|
}
|
|
99
102
|
walker = walker.prev; // prev will be undefined if you do removeNode(walker)
|
|
@@ -106,22 +109,19 @@ export class Values {
|
|
|
106
109
|
}
|
|
107
110
|
deleteNode(node) {
|
|
108
111
|
this._values.removeNode(node);
|
|
109
|
-
this._byteLength -= node.value.
|
|
112
|
+
this._byteLength -= this._entryIndex.getShallow(node.value).payloadByteLength;
|
|
110
113
|
return;
|
|
111
114
|
}
|
|
112
115
|
pop() {
|
|
113
116
|
const value = this._values.pop();
|
|
114
117
|
if (value) {
|
|
115
|
-
this._byteLength -= value.
|
|
118
|
+
this._byteLength -= this._entryIndex.getShallow(value).payloadByteLength;
|
|
116
119
|
}
|
|
117
120
|
return value;
|
|
118
121
|
}
|
|
119
122
|
get byteLength() {
|
|
120
123
|
return this._byteLength;
|
|
121
124
|
}
|
|
122
|
-
async getEntry(node) {
|
|
123
|
-
return this._entryIndex.get(node.value.hash);
|
|
124
|
-
}
|
|
125
125
|
}
|
|
126
126
|
function _insertAfter(self, node, value) {
|
|
127
127
|
const inserted = !node
|
package/lib/esm/values.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"values.js","sourceRoot":"","sources":["../../src/values.ts"],"names":[],"mappings":"AAEA,OAAO,OAAO,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"values.js","sourceRoot":"","sources":["../../src/values.ts"],"names":[],"mappings":"AAEA,OAAO,OAAO,MAAM,SAAS,CAAC;AAK9B,MAAM,OAAO,MAAM;IAClB;;OAEG;IACK,OAAO,CAAkB;IACzB,OAAO,CAAgB;IACvB,WAAW,CAAS;IACpB,WAAW,CAAgB;IAEnC,YACC,UAAyB,EACzB,MAAqB,EACrB,UAAsB,EAAE;QAExB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,MAAM,CAC5B,OAAO;aACL,KAAK,EAAE;aACP,IAAI,CAAC,MAAM,CAAC;aACZ,OAAO,EAAE;aACT,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACV,IAAI,CAAC,CAAC,CAAC,IAAI;gBAAE,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;YAC3C,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC;;;;;;;;iBAQV;QACN,CAAC,CAAC,CACH,CAAC;QACF,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;QACrB,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACzB,IAAI,CAAC,WAAW,IAAI,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC;QAC/C,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED,OAAO;QACN,OAAO,OAAO,CAAC,GAAG,CACjB,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CACjE,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAwB,CAAC,CAAC,6FAA6F;IAC9J,CAAC;IAED,IAAI,IAAI;QACP,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;IAC1B,CAAC;IACD,IAAI,IAAI;QACP,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;IAC1B,CAAC;IACD,IAAI,MAAM;QACT,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;IAC5B,CAAC;IAEO,WAAW,GAA8B,IAAI,GAAG,EAAE,CAAC;IAE3D,IAAI,UAAU;QACb,OAAO,IAAI,CAAC,WAAW,CAAC;IACzB,CAAC;IACD,KAAK,CAAC,GAAG,CAAC,KAAe;QACxB,IAAI,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,OAAO,EAAE;YACZ,OAAO,OAAO,CAAC;SACf;QACD,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;YACrC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACpC,OAAO,CAAC,CAAC;QACV,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC1C,OAAO,OAAO,CAAC;IAChB,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,KAAe;QACzB,uDAAuD;QACvD,IAAI,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;QAC/B,IAAI,IAAI,GAA0B,SAAS,CAAC;QAC5C,OAAO,MAAM,EAAE;YACd,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACpE,IAAI,CAAC,WAAW,EAAE;gBACjB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;aACxC;YACD,IAAI,WAAW,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,EAAE;gBACpC,OAAO,CAAC,iBAAiB;aACzB;YAED,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE;gBACzC,MAAM;aACN;YACD,IAAI,GAAG,MAAM,CAAC;YACd,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC;YACrB,SAAS;SACT;QAED,IAAI,CAAC,WAAW,IAAI,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC;QAC9C,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;SAC9B;QAED,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAwB;QACpC,MAAM,IAAI,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;QAC5D,uDAAuD;QAEvD,IAAI,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;QAC/B,OAAO,MAAM,EAAE;YACd,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAE9D,IAAI,CAAC,WAAW,EAAE;gBACjB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;aACxC;YAED,IAAI,WAAW,CAAC,IAAI,KAAK,IAAI,EAAE;gBAC9B,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;gBAChC,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,iBAAiB,CAAC;gBAClD,OAAO;aACP;YACD,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,sDAAsD;SAC5E;QACD,MAAM,IAAI,KAAK,CACd,wCAAwC;YACvC,OAAO;YACP,IAAI,CAAC,MAAM;YACX,OAAO;YACP,IAAI,CACL,CAAC;IACH,CAAC;IAED,UAAU,CAAC,IAAe;QACzB,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC,UAAU,CAC9C,IAAI,CAAC,KAAK,CACT,CAAC,iBAAiB,CAAC;QACrB,OAAO;IACR,CAAC;IAED,GAAG;QACF,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;QACjC,IAAI,KAAK,EAAE;YACV,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,KAAK,CAAE,CAAC,iBAAiB,CAAC;SAC1E;QACD,OAAO,KAAK,CAAC;IACd,CAAC;IAED,IAAI,UAAU;QACb,OAAO,IAAI,CAAC,WAAW,CAAC;IACzB,CAAC;CACD;AAED,SAAS,YAAY,CACpB,IAAkB,EAClB,IAA2B,EAC3B,KAAa;IAEb,MAAM,QAAQ,GAAG,CAAC,IAAI;QACrB,CAAC,CAAC,IAAI,OAAO,CAAC,IAAI,CAChB,KAAK,EACL,IAAW,EACX,IAAI,CAAC,IAA6B,EAClC,IAAI,CACH;QACH,CAAC,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAA6B,EAAE,IAAI,CAAC,CAAC;IAE3E,UAAU;IACV,IAAI,QAAQ,CAAC,IAAI,KAAK,IAAI,EAAE;QAC3B,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC;KACrB;IAED,UAAU;IACV,IAAI,QAAQ,CAAC,IAAI,KAAK,IAAI,EAAE;QAC3B,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC;KACrB;IAED,IAAI,CAAC,MAAM,EAAE,CAAC;IACd,OAAO,QAAQ,CAAC;AACjB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@peerbit/log",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "2.0.1",
|
|
4
4
|
"description": "Append-only log CRDT",
|
|
5
5
|
"author": "dao.xyz",
|
|
6
6
|
"license": "MIT",
|
|
@@ -32,9 +32,9 @@
|
|
|
32
32
|
],
|
|
33
33
|
"dependencies": {
|
|
34
34
|
"@dao-xyz/borsh": "^5.1.5",
|
|
35
|
-
"@peerbit/blocks-interface": "^1.0.
|
|
35
|
+
"@peerbit/blocks-interface": "^1.0.6",
|
|
36
36
|
"@peerbit/cache": "1.0.2",
|
|
37
|
-
"@peerbit/crypto": "1.0.
|
|
37
|
+
"@peerbit/crypto": "1.0.5",
|
|
38
38
|
"@peerbit/logger": "1.0.1",
|
|
39
39
|
"libp2p": "^0.45.9",
|
|
40
40
|
"p-queue": "^7.3.3",
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
"yallist": "^4.0.0"
|
|
44
44
|
},
|
|
45
45
|
"devDependencies": {
|
|
46
|
-
"@peerbit/test-utils": "1.0.
|
|
46
|
+
"@peerbit/test-utils": "1.0.17",
|
|
47
47
|
"@types/yallist": "^4.0.1",
|
|
48
48
|
"assert": "^2.0.0",
|
|
49
49
|
"json-stringify-deterministic": "^1.0.7"
|
|
@@ -75,5 +75,5 @@
|
|
|
75
75
|
"localMaintainers": [
|
|
76
76
|
"dao.xyz"
|
|
77
77
|
],
|
|
78
|
-
"gitHead": "
|
|
78
|
+
"gitHead": "06d341c4ea81b70c76018899b029f4419c311500"
|
|
79
79
|
}
|
package/src/clock.ts
CHANGED
|
@@ -223,23 +223,21 @@ export class LamportClock {
|
|
|
223
223
|
@field({ type: Timestamp })
|
|
224
224
|
timestamp: Timestamp;
|
|
225
225
|
|
|
226
|
-
constructor(properties
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
226
|
+
constructor(properties: { id: Uint8Array; timestamp?: Timestamp | number }) {
|
|
227
|
+
this.id = properties.id;
|
|
228
|
+
if (!properties.timestamp) {
|
|
229
|
+
this.timestamp = new Timestamp({
|
|
230
|
+
wallTime: bigintTime(),
|
|
231
|
+
logical: 0,
|
|
232
|
+
});
|
|
233
|
+
} else {
|
|
234
|
+
if (typeof properties.timestamp === "number") {
|
|
230
235
|
this.timestamp = new Timestamp({
|
|
231
236
|
wallTime: bigintTime(),
|
|
232
|
-
logical:
|
|
237
|
+
logical: properties.timestamp,
|
|
233
238
|
});
|
|
234
239
|
} else {
|
|
235
|
-
|
|
236
|
-
this.timestamp = new Timestamp({
|
|
237
|
-
wallTime: bigintTime(),
|
|
238
|
-
logical: properties.timestamp,
|
|
239
|
-
});
|
|
240
|
-
} else {
|
|
241
|
-
this.timestamp = properties.timestamp;
|
|
242
|
-
}
|
|
240
|
+
this.timestamp = properties.timestamp;
|
|
243
241
|
}
|
|
244
242
|
}
|
|
245
243
|
}
|
package/src/encoding.ts
CHANGED
|
@@ -8,7 +8,7 @@ export const NO_ENCODING: Encoding<any> = {
|
|
|
8
8
|
encoder: (obj: Uint8Array) => {
|
|
9
9
|
if (obj instanceof Uint8Array === false) {
|
|
10
10
|
throw new Error(
|
|
11
|
-
"With NO_ENCODING only Uint8arrays are allowed,
|
|
11
|
+
"With NO_ENCODING only Uint8arrays are allowed, received: " +
|
|
12
12
|
(typeof obj === "object" ? obj.constructor.name : typeof obj)
|
|
13
13
|
);
|
|
14
14
|
}
|
package/src/entry-index.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Cache } from "@peerbit/cache";
|
|
2
|
-
import { Entry } from "./entry.js";
|
|
2
|
+
import { Entry, ShallowEntry } from "./entry.js";
|
|
3
3
|
import { deserialize } from "@dao-xyz/borsh";
|
|
4
4
|
import { logger } from "./logger.js";
|
|
5
5
|
import { Blocks } from "@peerbit/blocks-interface";
|
|
@@ -8,7 +8,7 @@ export class EntryIndex<T> {
|
|
|
8
8
|
_cache: Cache<Entry<T> | null>;
|
|
9
9
|
_store: Blocks;
|
|
10
10
|
_init: (entry: Entry<T>) => void;
|
|
11
|
-
_index:
|
|
11
|
+
_index: Map<string, ShallowEntry>;
|
|
12
12
|
|
|
13
13
|
constructor(properties: {
|
|
14
14
|
store: Blocks;
|
|
@@ -18,7 +18,7 @@ export class EntryIndex<T> {
|
|
|
18
18
|
this._cache = properties.cache;
|
|
19
19
|
this._store = properties.store;
|
|
20
20
|
this._init = properties.init;
|
|
21
|
-
this._index = new
|
|
21
|
+
this._index = new Map();
|
|
22
22
|
}
|
|
23
23
|
|
|
24
24
|
async set(v: Entry<T>, toMultihash = true) {
|
|
@@ -40,14 +40,17 @@ export class EntryIndex<T> {
|
|
|
40
40
|
}
|
|
41
41
|
}
|
|
42
42
|
this._cache.add(v.hash, v);
|
|
43
|
-
this._index.
|
|
43
|
+
this._index.set(v.hash, v.toShallow());
|
|
44
|
+
}
|
|
45
|
+
has(k: string) {
|
|
46
|
+
return this._index.has(k);
|
|
44
47
|
}
|
|
45
48
|
|
|
46
49
|
async get(
|
|
47
50
|
k: string,
|
|
48
|
-
options?: { replicate?: boolean; timeout?: number }
|
|
51
|
+
options?: { load?: boolean; replicate?: boolean; timeout?: number }
|
|
49
52
|
): Promise<Entry<T> | undefined> {
|
|
50
|
-
if (this._index.has(k)) {
|
|
53
|
+
if (this._index.has(k) || options?.load) {
|
|
51
54
|
let mem = this._cache.get(k);
|
|
52
55
|
if (mem === undefined) {
|
|
53
56
|
mem = await this.getFromStore(k, options);
|
|
@@ -62,6 +65,10 @@ export class EntryIndex<T> {
|
|
|
62
65
|
return undefined;
|
|
63
66
|
}
|
|
64
67
|
|
|
68
|
+
getShallow(k: string) {
|
|
69
|
+
return this._index.get(k);
|
|
70
|
+
}
|
|
71
|
+
|
|
65
72
|
private async getFromStore(
|
|
66
73
|
k: string,
|
|
67
74
|
options?: { replicate?: boolean; timeout?: number }
|