@dxos/echo-pipeline 0.1.56-main.e47dfd1 → 0.1.56-main.ed2f871
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/dist/lib/browser/{chunk-7U2NXI2P.mjs → chunk-3OTHGQEY.mjs} +531 -251
- package/dist/lib/browser/chunk-3OTHGQEY.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +1 -1
- package/dist/lib/browser/index.mjs.map +1 -1
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/testing/index.mjs +14 -18
- package/dist/lib/browser/testing/index.mjs.map +3 -3
- package/dist/lib/node/index.cjs +530 -250
- package/dist/lib/node/index.cjs.map +3 -3
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/testing/index.cjs +527 -251
- package/dist/lib/node/testing/index.cjs.map +3 -3
- package/dist/types/src/common/feeds.d.ts.map +1 -1
- package/dist/types/src/db-host/data-service-host.d.ts.map +1 -1
- package/dist/types/src/db-host/data-service.d.ts.map +1 -1
- package/dist/types/src/db-host/snapshot-manager.d.ts.map +1 -1
- package/dist/types/src/metadata/metadata-store.d.ts.map +1 -1
- package/dist/types/src/pipeline/message-selector.d.ts.map +1 -1
- package/dist/types/src/pipeline/pipeline.d.ts.map +1 -1
- package/dist/types/src/space/auth.d.ts.map +1 -1
- package/dist/types/src/space/data-pipeline.d.ts.map +1 -1
- package/dist/types/src/space/space.d.ts +2 -1
- package/dist/types/src/space/space.d.ts.map +1 -1
- package/dist/types/src/testing/test-agent-builder.d.ts.map +1 -1
- package/package.json +32 -31
- package/src/common/feeds.ts +1 -2
- package/src/db-host/data-service-host.ts +1 -2
- package/src/db-host/data-service.ts +1 -2
- package/src/db-host/snapshot-manager.ts +0 -2
- package/src/metadata/metadata-store.ts +2 -2
- package/src/pipeline/message-selector.ts +1 -2
- package/src/pipeline/pipeline.test.ts +37 -1
- package/src/pipeline/pipeline.ts +3 -2
- package/src/space/auth.ts +1 -2
- package/src/space/data-pipeline.ts +1 -2
- package/src/space/space.test.ts +18 -17
- package/src/space/space.ts +6 -3
- package/src/testing/test-agent-builder.ts +2 -1
- package/dist/lib/browser/chunk-7U2NXI2P.mjs.map +0 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feeds.d.ts","sourceRoot":"","sources":["../../../../src/common/feeds.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"feeds.d.ts","sourceRoot":"","sources":["../../../../src/common/feeds.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C;;GAEG;AACH,eAAO,MAAM,sBAAsB,yIAUlC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-service-host.d.ts","sourceRoot":"","sources":["../../../../src/db-host/data-service-host.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"data-service-host.d.ts","sourceRoot":"","sources":["../../../../src/db-host/data-service-host.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAE9C,OAAO,EAAuB,WAAW,EAAE,WAAW,EAAuB,MAAM,eAAe,CAAC;AACnG,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAI9C,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AAEnE,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AAGnG;;;GAGG;AAEH,qBAAa,eAAe;IAQxB,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC;IAThC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAiB;IAEtC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAE5B;gBAGiB,YAAY,EAAE,WAAW,EACzB,YAAY,EAAE,WAAW,EACzB,YAAY,CAAC,qCAAyB;IAGnD,IAAI;IAEJ,KAAK;IAIX;;OAEG;IACH,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC;IA2CxB,KAAK,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,eAAe,CAAC;CAqB7D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-service.d.ts","sourceRoot":"","sources":["../../../../src/db-host/data-service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"data-service.d.ts","sourceRoot":"","sources":["../../../../src/db-host/data-service.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAG9C,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC,OAAO,EACL,WAAW,EACX,eAAe,EACf,gBAAgB,EAChB,SAAS,EACT,YAAY,EACb,MAAM,yCAAyC,CAAC;AAGjD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAGtD,qBAAa,wBAAwB;IACnC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA8D;IAEtF,KAAK;IAIC,aAAa,CAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe;IAOxD,eAAe,CAAC,QAAQ,EAAE,SAAS;IAOzC,cAAc,CAAC,QAAQ,EAAE,SAAS;CAGnC;AAED;;GAEG;AAEH,qBAAa,eAAgB,YAAW,WAAW;IACrC,OAAO,CAAC,QAAQ,CAAC,cAAc;gBAAd,cAAc,EAAE,wBAAwB;IAErE,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM,CAAC,SAAS,CAAC;IAOvD,KAAK,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,eAAe,CAAC;CAOvD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snapshot-manager.d.ts","sourceRoot":"","sources":["../../../../src/db-host/snapshot-manager.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,OAAO,EAAqB,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"snapshot-manager.d.ts","sourceRoot":"","sources":["../../../../src/db-host/snapshot-manager.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,OAAO,EAAqB,MAAM,eAAe,CAAC;AAI3D,OAAO,EAAE,aAAa,EAAE,MAAM,0CAA0C,CAAC;AACzE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,sCAAsC,CAAC;AAE3E,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,QAAA,MAAM,aAAa,0DAA6D,CAAC;AAEjF;;GAEG;AACH,qBACa,eAAe;IAGxB,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,SAAS;gBAFT,cAAc,EAAE,aAAa,EAC7B,UAAU,EAAE,SAAS,EACrB,SAAS,EAAE,QAAQ;YAIxB,QAAQ;IAKhB,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAkBtD,KAAK,CAAC,QAAQ,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC;CAKtD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metadata-store.d.ts","sourceRoot":"","sources":["../../../../src/metadata/metadata-store.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"metadata-store.d.ts","sourceRoot":"","sources":["../../../../src/metadata/metadata-store.ts"],"names":[],"mappings":"AAMA,OAAO,EAAgB,KAAK,EAAE,MAAM,aAAa,CAAC;AAGlD,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAGvC,OAAO,EAAE,UAAU,EAAE,MAAM,4CAA4C,CAAC;AACxE,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,0CAA0C,CAAC;AACnH,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5C,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,SAAS,CAAC;IACf,WAAW,EAAE,SAAS,CAAC;CACxB;AASD,QAAA,MAAM,YAAY,yDAA4D,CAAC;AAE/E,qBAAa,aAAa;IAMtB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAL7B,OAAO,CAAC,SAAS,CAAqC;IACtD,SAAgB,MAAM,sBAA6B;gBAIhC,UAAU,EAAE,SAAS;IAGxC,IAAI,QAAQ,IAAI,YAAY,CAE3B;IAED,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED;;;OAGG;IACH,IAAI,MAAM,IAAI,aAAa,EAAE,CAE5B;IAED;;OAEG;IAEG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;YAsCb,KAAK;IA8BnB,SAAS,CAAC,QAAQ,EAAE,SAAS,GAAG,aAAa;IAW7C;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAM5B,iBAAiB,IAAI,cAAc,GAAG,SAAS;IAIzC,iBAAiB,CAAC,MAAM,EAAE,cAAc;IAOxC,QAAQ,CAAC,MAAM,EAAE,aAAa;IAU9B,2BAA2B,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS;IAKrE,8BAA8B,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS;IAKxE,QAAQ,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU;IAK/C,mBAAmB,CAAC,QAAQ,EAAE,SAAS,EAAE,cAAc,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS;IAO1F,aAAa,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU;CAI3D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message-selector.d.ts","sourceRoot":"","sources":["../../../../src/pipeline/message-selector.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"message-selector.d.ts","sourceRoot":"","sources":["../../../../src/pipeline/message-selector.ts"],"names":[],"mappings":"AAIA,OAAO,EAAa,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAGhE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AAExE,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,mBAAoB,cAAc,KAAG,kBAAkB,WAAW,CAiBnG,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline.d.ts","sourceRoot":"","sources":["../../../../src/pipeline/pipeline.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"pipeline.d.ts","sourceRoot":"","sources":["../../../../src/pipeline/pipeline.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../../src/space/auth.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../../src/space/auth.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEhE,MAAM,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,UAAU,KAAK,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,CAAC;AAElF,MAAM,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AAE3F,MAAM,MAAM,mBAAmB,GAAG;IAChC,QAAQ,EAAE,YAAY,CAAC;IACvB,QAAQ,EAAE,YAAY,CAAC;IACvB,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,aAAa,EAAE,MAAM,IAAI,CAAC;CAC3B,CAAC;AAEF,qBAAa,aAAc,SAAQ,YAAY,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAOrD,OAAO,CAAC,QAAQ,CAAC,WAAW;IANxC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAIlB;gBAE0B,WAAW,EAAE,mBAAmB;cAY7C,WAAW,IAAI,OAAO,CAAC,QAAQ,CAAC;IAmBjC,MAAM,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBhD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAIxC;AAED,KAAK,QAAQ,GAAG;IAAE,WAAW,EAAE,WAAW,CAAA;CAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-pipeline.d.ts","sourceRoot":"","sources":["../../../../src/space/data-pipeline.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"data-pipeline.d.ts","sourceRoot":"","sources":["../../../../src/space/data-pipeline.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAA0C,MAAM,aAAa,CAAC;AAE5E,OAAO,EAAE,mBAAmB,EAAE,QAAQ,EAAE,kBAAkB,EAAuB,MAAM,mBAAmB,CAAC;AAC3G,OAAO,EAA2B,WAAW,EAAE,MAAM,eAAe,CAAC;AAIrE,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvC,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAMnD,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,6CAA6C,CAAC;AAChF,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5C,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,MAAM,WAAW,eAAe;IAC9B,YAAY,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;CACvD;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,YAAY,EAAE,YAAY,CAAC;IAC3B,eAAe,EAAE,eAAe,CAAC;IACjC,aAAa,EAAE,aAAa,CAAC;IAC7B,SAAS,EAAE,SAAS,CAAC;IACrB,QAAQ,EAAE,SAAS,CAAC;IACpB,gBAAgB,EAAE,CAAC,OAAO,EAAE,SAAS,KAAK,QAAQ,GAAG,SAAS,CAAC;IAC/D,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAE/B;;OAEG;IACH,iBAAiB,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1D,CAAC;AAiBF;;;;GAIG;AACH,qBACa,YAAa,YAAW,mBAAmB;IAa1C,OAAO,CAAC,QAAQ,CAAC,OAAO;IAZpC,OAAO,CAAC,IAAI,CAAiB;IAC7B,OAAO,CAAC,SAAS,CAAC,CAAuB;IACzC,OAAO,CAAC,gBAAgB,CAAC,CAAwB;IAEjD,OAAO,CAAC,+BAA+B,CAAmB;IAC1D,OAAO,CAAC,OAAO,CAAS;IAExB,OAAO,CAAC,sBAAsB,CAAK;IACnC,OAAO,CAAC,qBAAqB,CAAK;IAClC,OAAO,CAAC,mBAAmB,CAAM;IACjC,OAAO,CAAC,SAAS,CAAC,CAAU;gBAEC,OAAO,EAAE,kBAAkB;IAEjD,WAAW,EAAG,WAAW,CAAC;IAC1B,YAAY,CAAC,EAAE,YAAY,CAAC;IAEnC;;OAEG;IACI,YAAY,CAAC,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAa;IAE5D;;OAEG;IACI,YAAY,CAAC,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAa;IAE5D,SAAgB,UAAU,oBAA2B;IAErD,IAAI,MAAM,YAET;IAED,IAAI,QAAQ,yBAEX;IAED,IAAI,aAAa,6DAEhB;IAED,kBAAkB,CAAC,SAAS,EAAE,SAAS;IAKjC,iBAAiB,CAAC,UAAU,EAAE,UAAU;IAaxC,IAAI;IAsCJ,KAAK;YAiCG,gBAAgB;IAgD9B,OAAO,CAAC,eAAe;YAST,oBAAoB;YAMpB,UAAU;YAsBV,wBAAwB;YAiBxB,2BAA2B;YA6B3B,aAAa;IAoBrB,kBAAkB,CAAC,SAAS,EAAE,SAAS;IAMvC,WAAW,IAAI,OAAO,CAAC,KAAK,CAAC;IAqB7B,sBAAsB;CAG7B"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Event } from '@dxos/async';
|
|
2
|
+
import { Context } from '@dxos/context';
|
|
2
3
|
import { FeedInfo } from '@dxos/credentials';
|
|
3
4
|
import { FeedOptions, FeedWrapper } from '@dxos/feed-store';
|
|
4
5
|
import { PublicKey } from '@dxos/keys';
|
|
@@ -66,7 +67,7 @@ export declare class Space {
|
|
|
66
67
|
/**
|
|
67
68
|
* Use for diagnostics.
|
|
68
69
|
*/
|
|
69
|
-
open(): Promise<void>;
|
|
70
|
+
open(ctx: Context): Promise<void>;
|
|
70
71
|
close(): Promise<void>;
|
|
71
72
|
initializeDataPipeline(): Promise<void>;
|
|
72
73
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"space.d.ts","sourceRoot":"","sources":["../../../../src/space/space.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"space.d.ts","sourceRoot":"","sources":["../../../../src/space/space.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-agent-builder.d.ts","sourceRoot":"","sources":["../../../../src/testing/test-agent-builder.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"test-agent-builder.d.ts","sourceRoot":"","sources":["../../../../src/testing/test-agent-builder.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dxos/echo-pipeline",
|
|
3
|
-
"version": "0.1.56-main.
|
|
3
|
+
"version": "0.1.56-main.ed2f871",
|
|
4
4
|
"description": "ECHO database.",
|
|
5
5
|
"homepage": "https://dxos.org",
|
|
6
6
|
"bugs": "https://github.com/dxos/dxos/issues",
|
|
@@ -20,42 +20,43 @@
|
|
|
20
20
|
],
|
|
21
21
|
"dependencies": {
|
|
22
22
|
"crc-32": "^1.2.2",
|
|
23
|
-
"
|
|
24
|
-
"@dxos/
|
|
25
|
-
"@dxos/
|
|
26
|
-
"@dxos/
|
|
27
|
-
"@dxos/
|
|
28
|
-
"@dxos/
|
|
29
|
-
"@dxos/
|
|
30
|
-
"@dxos/
|
|
31
|
-
"@dxos/
|
|
32
|
-
"@dxos/
|
|
33
|
-
"@dxos/
|
|
34
|
-
"@dxos/
|
|
35
|
-
"@dxos/keyring": "0.1.56-main.
|
|
36
|
-
"@dxos/keys": "0.1.56-main.
|
|
37
|
-
"@dxos/log": "0.1.56-main.
|
|
38
|
-
"@dxos/messaging": "0.1.56-main.
|
|
39
|
-
"@dxos/model-factory": "0.1.56-main.
|
|
40
|
-
"@dxos/network-manager": "0.1.56-main.
|
|
41
|
-
"@dxos/
|
|
42
|
-
"@dxos/
|
|
43
|
-
"@dxos/random-access-storage": "0.1.56-main.
|
|
44
|
-
"@dxos/rpc": "0.1.56-main.
|
|
45
|
-
"@dxos/teleport": "0.1.56-main.
|
|
46
|
-
"@dxos/teleport-extension-gossip": "0.1.56-main.
|
|
47
|
-
"@dxos/teleport-extension-object-sync": "0.1.56-main.
|
|
48
|
-
"@dxos/teleport-extension-replicator": "0.1.56-main.
|
|
49
|
-
"@dxos/timeframe": "0.1.56-main.
|
|
50
|
-
"@dxos/
|
|
51
|
-
"@dxos/
|
|
23
|
+
"@dxos/async": "0.1.56-main.ed2f871",
|
|
24
|
+
"@dxos/codec-protobuf": "0.1.56-main.ed2f871",
|
|
25
|
+
"@dxos/context": "0.1.56-main.ed2f871",
|
|
26
|
+
"@dxos/credentials": "0.1.56-main.ed2f871",
|
|
27
|
+
"@dxos/crypto": "0.1.56-main.ed2f871",
|
|
28
|
+
"@dxos/debug": "0.1.56-main.ed2f871",
|
|
29
|
+
"@dxos/document-model": "0.1.56-main.ed2f871",
|
|
30
|
+
"@dxos/echo-db": "0.1.56-main.ed2f871",
|
|
31
|
+
"@dxos/errors": "0.1.56-main.ed2f871",
|
|
32
|
+
"@dxos/feed-store": "0.1.56-main.ed2f871",
|
|
33
|
+
"@dxos/hypercore": "0.1.56-main.ed2f871",
|
|
34
|
+
"@dxos/invariant": "0.1.56-main.ed2f871",
|
|
35
|
+
"@dxos/keyring": "0.1.56-main.ed2f871",
|
|
36
|
+
"@dxos/keys": "0.1.56-main.ed2f871",
|
|
37
|
+
"@dxos/log": "0.1.56-main.ed2f871",
|
|
38
|
+
"@dxos/messaging": "0.1.56-main.ed2f871",
|
|
39
|
+
"@dxos/model-factory": "0.1.56-main.ed2f871",
|
|
40
|
+
"@dxos/network-manager": "0.1.56-main.ed2f871",
|
|
41
|
+
"@dxos/protocols": "0.1.56-main.ed2f871",
|
|
42
|
+
"@dxos/node-std": "0.1.56-main.ed2f871",
|
|
43
|
+
"@dxos/random-access-storage": "0.1.56-main.ed2f871",
|
|
44
|
+
"@dxos/rpc": "0.1.56-main.ed2f871",
|
|
45
|
+
"@dxos/teleport": "0.1.56-main.ed2f871",
|
|
46
|
+
"@dxos/teleport-extension-gossip": "0.1.56-main.ed2f871",
|
|
47
|
+
"@dxos/teleport-extension-object-sync": "0.1.56-main.ed2f871",
|
|
48
|
+
"@dxos/teleport-extension-replicator": "0.1.56-main.ed2f871",
|
|
49
|
+
"@dxos/timeframe": "0.1.56-main.ed2f871",
|
|
50
|
+
"@dxos/tracing": "0.1.56-main.ed2f871",
|
|
51
|
+
"@dxos/typings": "0.1.56-main.ed2f871",
|
|
52
|
+
"@dxos/util": "0.1.56-main.ed2f871"
|
|
52
53
|
},
|
|
53
54
|
"devDependencies": {
|
|
54
55
|
"fast-check": "~3.3.0",
|
|
55
56
|
"hypercore-protocol": "^8.0.7",
|
|
56
57
|
"source-map-support": "^0.5.12",
|
|
57
58
|
"wait-for-expect": "^3.0.2",
|
|
58
|
-
"@dxos/text-model": "0.1.56-main.
|
|
59
|
+
"@dxos/text-model": "0.1.56-main.ed2f871"
|
|
59
60
|
},
|
|
60
61
|
"publishConfig": {
|
|
61
62
|
"access": "public"
|
package/src/common/feeds.ts
CHANGED
|
@@ -2,12 +2,11 @@
|
|
|
2
2
|
// Copyright 2021 DXOS.org
|
|
3
3
|
//
|
|
4
4
|
|
|
5
|
-
import invariant from 'tiny-invariant';
|
|
6
|
-
|
|
7
5
|
import { Stream } from '@dxos/codec-protobuf';
|
|
8
6
|
import { Context } from '@dxos/context';
|
|
9
7
|
import { tagMutationsInBatch, ItemDemuxer, ItemManager, setMetadataOnObject } from '@dxos/echo-db';
|
|
10
8
|
import { FeedWriter } from '@dxos/feed-store';
|
|
9
|
+
import { invariant } from '@dxos/invariant';
|
|
11
10
|
import { PublicKey } from '@dxos/keys';
|
|
12
11
|
import { log } from '@dxos/log';
|
|
13
12
|
import { DataMessage } from '@dxos/protocols/proto/dxos/echo/feed';
|
|
@@ -2,10 +2,9 @@
|
|
|
2
2
|
// Copyright 2021 DXOS.org
|
|
3
3
|
//
|
|
4
4
|
|
|
5
|
-
import invariant from 'tiny-invariant';
|
|
6
|
-
|
|
7
5
|
import { Stream } from '@dxos/codec-protobuf';
|
|
8
6
|
import { raise } from '@dxos/debug';
|
|
7
|
+
import { invariant } from '@dxos/invariant';
|
|
9
8
|
import { PublicKey } from '@dxos/keys';
|
|
10
9
|
import { log } from '@dxos/log';
|
|
11
10
|
import {
|
|
@@ -4,7 +4,6 @@
|
|
|
4
4
|
|
|
5
5
|
import { trackLeaks } from '@dxos/async';
|
|
6
6
|
import { Context, cancelWithContext } from '@dxos/context';
|
|
7
|
-
import { timed } from '@dxos/debug';
|
|
8
7
|
import { PublicKey } from '@dxos/keys';
|
|
9
8
|
import { schema } from '@dxos/protocols';
|
|
10
9
|
import { BlobMeta } from '@dxos/protocols/proto/dxos/echo/blob';
|
|
@@ -33,7 +32,6 @@ export class SnapshotManager {
|
|
|
33
32
|
return SpaceSnapshot.decode(blob);
|
|
34
33
|
}
|
|
35
34
|
|
|
36
|
-
@timed(10_000)
|
|
37
35
|
async load(ctx: Context, id: string): Promise<SpaceSnapshot> {
|
|
38
36
|
const blobId = PublicKey.fromHex(id).asUint8Array();
|
|
39
37
|
const blobMeta = await this._blobStore.getMeta(blobId);
|
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
//
|
|
4
4
|
|
|
5
5
|
import CRC32 from 'crc-32';
|
|
6
|
-
import invariant from 'tiny-invariant';
|
|
7
6
|
|
|
8
7
|
import { synchronized, Event } from '@dxos/async';
|
|
9
8
|
import { DataCorruptionError } from '@dxos/errors';
|
|
9
|
+
import { invariant } from '@dxos/invariant';
|
|
10
10
|
import { PublicKey } from '@dxos/keys';
|
|
11
11
|
import { log } from '@dxos/log';
|
|
12
12
|
import { STORAGE_VERSION, schema } from '@dxos/protocols';
|
|
@@ -72,7 +72,7 @@ export class MetadataStore {
|
|
|
72
72
|
log('loaded', { size: dataSize, checksum });
|
|
73
73
|
|
|
74
74
|
if (fileLength < dataSize + 8) {
|
|
75
|
-
throw new DataCorruptionError('Metadata size is smaller than expected.');
|
|
75
|
+
throw new DataCorruptionError('Metadata size is smaller than expected.', { fileLength, dataSize });
|
|
76
76
|
}
|
|
77
77
|
|
|
78
78
|
const data = await file.read(8, dataSize);
|
|
@@ -2,9 +2,8 @@
|
|
|
2
2
|
// Copyright 2020 DXOS.org
|
|
3
3
|
//
|
|
4
4
|
|
|
5
|
-
import invariant from 'tiny-invariant';
|
|
6
|
-
|
|
7
5
|
import { FeedBlock, FeedBlockSelector } from '@dxos/feed-store';
|
|
6
|
+
import { invariant } from '@dxos/invariant';
|
|
8
7
|
import { log } from '@dxos/log';
|
|
9
8
|
import type { FeedMessage } from '@dxos/protocols/proto/dxos/echo/feed';
|
|
10
9
|
|
|
@@ -6,7 +6,7 @@ import expect from 'expect';
|
|
|
6
6
|
import * as fc from 'fast-check';
|
|
7
7
|
import { inspect } from 'util';
|
|
8
8
|
|
|
9
|
-
import { asyncTimeout } from '@dxos/async';
|
|
9
|
+
import { Event, asyncTimeout, sleep } from '@dxos/async';
|
|
10
10
|
import { FeedStore, FeedWrapper } from '@dxos/feed-store';
|
|
11
11
|
import { PublicKey } from '@dxos/keys';
|
|
12
12
|
import { log } from '@dxos/log';
|
|
@@ -109,6 +109,42 @@ describe('pipeline/Pipeline', () => {
|
|
|
109
109
|
expect(processedSequenceNumbers).toEqual(expectedSequenceNumbers);
|
|
110
110
|
});
|
|
111
111
|
|
|
112
|
+
test('cursor change while polling', async () => {
|
|
113
|
+
const pipeline = new Pipeline();
|
|
114
|
+
afterTest(() => pipeline.stop());
|
|
115
|
+
|
|
116
|
+
const builder = new TestFeedBuilder();
|
|
117
|
+
const feedStore = builder.createFeedStore();
|
|
118
|
+
const key = await builder.keyring.createKey();
|
|
119
|
+
const feed = await feedStore.openFeed(key, { writable: true });
|
|
120
|
+
await pipeline.addFeed(feed);
|
|
121
|
+
|
|
122
|
+
for (const _ of range(20)) {
|
|
123
|
+
await feed.appendWithReceipt(TEST_MESSAGE);
|
|
124
|
+
}
|
|
125
|
+
await feed.clear(0, 10);
|
|
126
|
+
|
|
127
|
+
const processedSequenceNumbers: number[] = [];
|
|
128
|
+
const expectedSequenceNumbers = range(20).slice(10);
|
|
129
|
+
const processedEvent = new Event();
|
|
130
|
+
setTimeout(async () => {
|
|
131
|
+
for await (const block of pipeline.consume()) {
|
|
132
|
+
processedSequenceNumbers.push(block.seq);
|
|
133
|
+
processedEvent.emit();
|
|
134
|
+
}
|
|
135
|
+
});
|
|
136
|
+
|
|
137
|
+
await pipeline.start();
|
|
138
|
+
await sleep(1000);
|
|
139
|
+
|
|
140
|
+
await pipeline.pause();
|
|
141
|
+
await pipeline.setCursor(new Timeframe([[feed.key, 9]]));
|
|
142
|
+
await pipeline.unpause();
|
|
143
|
+
|
|
144
|
+
await processedEvent.waitForCondition(() => processedSequenceNumbers.length === 10);
|
|
145
|
+
expect(processedSequenceNumbers).toEqual(expectedSequenceNumbers);
|
|
146
|
+
});
|
|
147
|
+
|
|
112
148
|
test
|
|
113
149
|
.skip('stress', async () => {
|
|
114
150
|
const builder = new TestFeedBuilder();
|
package/src/pipeline/pipeline.ts
CHANGED
|
@@ -2,12 +2,11 @@
|
|
|
2
2
|
// Copyright 2022 DXOS.org
|
|
3
3
|
//
|
|
4
4
|
|
|
5
|
-
import invariant from 'tiny-invariant';
|
|
6
|
-
|
|
7
5
|
import { Event, sleep, synchronized, Trigger } from '@dxos/async';
|
|
8
6
|
import { Context, rejectOnDispose } from '@dxos/context';
|
|
9
7
|
import { failUndefined } from '@dxos/debug';
|
|
10
8
|
import { FeedSetIterator, FeedWrapper, FeedWriter } from '@dxos/feed-store';
|
|
9
|
+
import { invariant } from '@dxos/invariant';
|
|
11
10
|
import { PublicKey } from '@dxos/keys';
|
|
12
11
|
import { log } from '@dxos/log';
|
|
13
12
|
import { FeedMessageBlock } from '@dxos/protocols';
|
|
@@ -265,6 +264,7 @@ export class Pipeline implements PipelineAccessor {
|
|
|
265
264
|
|
|
266
265
|
@synchronized
|
|
267
266
|
async start() {
|
|
267
|
+
invariant(!this._isStarted, 'Pipeline is already started.');
|
|
268
268
|
log('starting...');
|
|
269
269
|
await this._initIterator();
|
|
270
270
|
await this._feedSetIterator!.open();
|
|
@@ -354,6 +354,7 @@ export class Pipeline implements PipelineAccessor {
|
|
|
354
354
|
iterable = lastFeedSetIterator[Symbol.asyncIterator]();
|
|
355
355
|
}
|
|
356
356
|
|
|
357
|
+
// Will be canceled when the iterator gets closed.
|
|
357
358
|
const { done, value } = await iterable.next();
|
|
358
359
|
if (!done) {
|
|
359
360
|
const block = value ?? failUndefined();
|
package/src/space/auth.ts
CHANGED
|
@@ -2,11 +2,10 @@
|
|
|
2
2
|
// Copyright 2019 DXOS.org
|
|
3
3
|
//
|
|
4
4
|
|
|
5
|
-
import invariant from 'tiny-invariant';
|
|
6
|
-
|
|
7
5
|
import { runInContext, scheduleTask } from '@dxos/async';
|
|
8
6
|
import { Context } from '@dxos/context';
|
|
9
7
|
import { randomBytes } from '@dxos/crypto';
|
|
8
|
+
import { invariant } from '@dxos/invariant';
|
|
10
9
|
import { log } from '@dxos/log';
|
|
11
10
|
import { schema } from '@dxos/protocols';
|
|
12
11
|
import { AuthService } from '@dxos/protocols/proto/dxos/mesh/teleport/auth';
|
|
@@ -2,14 +2,13 @@
|
|
|
2
2
|
// Copyright 2022 DXOS.org
|
|
3
3
|
//
|
|
4
4
|
|
|
5
|
-
import invariant from 'tiny-invariant';
|
|
6
|
-
|
|
7
5
|
import { Event, scheduleTask, synchronized, trackLeaks } from '@dxos/async';
|
|
8
6
|
import { Context } from '@dxos/context';
|
|
9
7
|
import { CredentialProcessor, FeedInfo, SpecificCredential, checkCredentialType } from '@dxos/credentials';
|
|
10
8
|
import { getStateMachineFromItem, ItemManager } from '@dxos/echo-db';
|
|
11
9
|
import { CancelledError } from '@dxos/errors';
|
|
12
10
|
import { FeedWriter } from '@dxos/feed-store';
|
|
11
|
+
import { invariant } from '@dxos/invariant';
|
|
13
12
|
import { PublicKey } from '@dxos/keys';
|
|
14
13
|
import { log } from '@dxos/log';
|
|
15
14
|
import { ModelFactory } from '@dxos/model-factory';
|
package/src/space/space.test.ts
CHANGED
|
@@ -3,10 +3,11 @@
|
|
|
3
3
|
//
|
|
4
4
|
|
|
5
5
|
import expect from 'expect';
|
|
6
|
-
import assert from 'node:assert';
|
|
7
6
|
import { promisify } from 'node:util';
|
|
8
7
|
|
|
8
|
+
import { Context } from '@dxos/context';
|
|
9
9
|
import { createCredential, CredentialGenerator } from '@dxos/credentials';
|
|
10
|
+
import { invariant } from '@dxos/invariant';
|
|
10
11
|
import { afterTest, describe, test } from '@dxos/test';
|
|
11
12
|
|
|
12
13
|
import { TestAgentBuilder, testLocalDatabase } from '../testing';
|
|
@@ -21,7 +22,7 @@ describe('space/space', () => {
|
|
|
21
22
|
const agent = await builder.createPeer();
|
|
22
23
|
const space = await agent.createSpace();
|
|
23
24
|
|
|
24
|
-
await space.open();
|
|
25
|
+
await space.open(new Context());
|
|
25
26
|
expect(space.isOpen).toBeTruthy();
|
|
26
27
|
afterTest(() => space.close());
|
|
27
28
|
|
|
@@ -31,7 +32,7 @@ describe('space/space', () => {
|
|
|
31
32
|
await space.initializeDataPipeline();
|
|
32
33
|
await space.dataPipeline.ensureEpochInitialized();
|
|
33
34
|
|
|
34
|
-
|
|
35
|
+
invariant(space.dataPipeline.databaseHost);
|
|
35
36
|
await testLocalDatabase(space.dataPipeline);
|
|
36
37
|
|
|
37
38
|
await builder.close();
|
|
@@ -49,7 +50,7 @@ describe('space/space', () => {
|
|
|
49
50
|
const agent = await builder.createPeer();
|
|
50
51
|
const space = await agent.createSpace(agent.identityKey);
|
|
51
52
|
|
|
52
|
-
await space.open();
|
|
53
|
+
await space.open(new Context());
|
|
53
54
|
expect(space.isOpen).toBeTruthy();
|
|
54
55
|
afterTest(() => space.close());
|
|
55
56
|
|
|
@@ -70,7 +71,7 @@ describe('space/space', () => {
|
|
|
70
71
|
const agent = await builder.createPeer();
|
|
71
72
|
const space = await agent.createSpace(agent.identityKey, space1.key, space1.genesisFeedKey, undefined, true);
|
|
72
73
|
|
|
73
|
-
await space.open();
|
|
74
|
+
await space.open(new Context());
|
|
74
75
|
expect(space.isOpen).toBeTruthy();
|
|
75
76
|
afterTest(() => space.close());
|
|
76
77
|
|
|
@@ -128,7 +129,7 @@ describe('space/space', () => {
|
|
|
128
129
|
const agent = await builder.createPeer();
|
|
129
130
|
const space1 = await agent.createSpace();
|
|
130
131
|
|
|
131
|
-
await space1.open();
|
|
132
|
+
await space1.open(new Context());
|
|
132
133
|
expect(space1.isOpen).toBeTruthy();
|
|
133
134
|
afterTest(() => space1.close());
|
|
134
135
|
|
|
@@ -138,7 +139,7 @@ describe('space/space', () => {
|
|
|
138
139
|
await space1.initializeDataPipeline();
|
|
139
140
|
await space1.dataPipeline.ensureEpochInitialized();
|
|
140
141
|
|
|
141
|
-
|
|
142
|
+
invariant(space1.dataPipeline.databaseHost);
|
|
142
143
|
await testLocalDatabase(space1.dataPipeline);
|
|
143
144
|
|
|
144
145
|
const objectCount = space1.dataPipeline.itemManager.entities.size;
|
|
@@ -149,7 +150,7 @@ describe('space/space', () => {
|
|
|
149
150
|
// Re-open.
|
|
150
151
|
const space2 = await agent.createSpace(agent.identityKey, space1.key, space1.genesisFeedKey, space1.dataFeedKey);
|
|
151
152
|
|
|
152
|
-
await space2.open();
|
|
153
|
+
await space2.open(new Context());
|
|
153
154
|
await space2.controlPipeline.state!.waitUntilTimeframe(space2.controlPipeline.state!.endTimeframe);
|
|
154
155
|
await space2.initializeDataPipeline();
|
|
155
156
|
await space2.dataPipeline.ensureEpochInitialized();
|
|
@@ -157,7 +158,7 @@ describe('space/space', () => {
|
|
|
157
158
|
space2.dataPipeline.setTargetTimeframe(space2.dataPipeline.pipelineState!.endTimeframe);
|
|
158
159
|
await space2.dataPipeline.pipelineState!.waitUntilReachedTargetTimeframe();
|
|
159
160
|
|
|
160
|
-
|
|
161
|
+
invariant(space2.dataPipeline.databaseHost);
|
|
161
162
|
expect(space2.dataPipeline.itemManager.entities.size).toEqual(objectCount);
|
|
162
163
|
|
|
163
164
|
await testLocalDatabase(space2.dataPipeline);
|
|
@@ -171,7 +172,7 @@ describe('space/space', () => {
|
|
|
171
172
|
|
|
172
173
|
let objectCount: number;
|
|
173
174
|
{
|
|
174
|
-
await space.open();
|
|
175
|
+
await space.open(new Context());
|
|
175
176
|
afterTest(() => space.close());
|
|
176
177
|
expect(space.isOpen).toBeTruthy();
|
|
177
178
|
|
|
@@ -181,7 +182,7 @@ describe('space/space', () => {
|
|
|
181
182
|
await space.initializeDataPipeline();
|
|
182
183
|
await space.dataPipeline.ensureEpochInitialized();
|
|
183
184
|
|
|
184
|
-
|
|
185
|
+
invariant(space.dataPipeline.databaseHost);
|
|
185
186
|
await testLocalDatabase(space.dataPipeline);
|
|
186
187
|
|
|
187
188
|
objectCount = space.dataPipeline.itemManager.entities.size;
|
|
@@ -192,7 +193,7 @@ describe('space/space', () => {
|
|
|
192
193
|
|
|
193
194
|
// Re-open.
|
|
194
195
|
{
|
|
195
|
-
await space.open();
|
|
196
|
+
await space.open(new Context());
|
|
196
197
|
expect(space.isOpen).toBeTruthy();
|
|
197
198
|
|
|
198
199
|
await space.controlPipeline.state!.waitUntilTimeframe(space.controlPipeline.state!.endTimeframe);
|
|
@@ -202,7 +203,7 @@ describe('space/space', () => {
|
|
|
202
203
|
space.dataPipeline.setTargetTimeframe(space.dataPipeline.pipelineState!.endTimeframe);
|
|
203
204
|
await space.dataPipeline.pipelineState!.waitUntilReachedTargetTimeframe();
|
|
204
205
|
|
|
205
|
-
|
|
206
|
+
invariant(space.dataPipeline.databaseHost);
|
|
206
207
|
expect(space.dataPipeline.itemManager.entities.size).toEqual(objectCount);
|
|
207
208
|
|
|
208
209
|
await testLocalDatabase(space.dataPipeline);
|
|
@@ -215,7 +216,7 @@ describe('space/space', () => {
|
|
|
215
216
|
const agent = await builder.createPeer();
|
|
216
217
|
const space1 = await agent.createSpace();
|
|
217
218
|
|
|
218
|
-
await space1.open();
|
|
219
|
+
await space1.open(new Context());
|
|
219
220
|
expect(space1.isOpen).toBeTruthy();
|
|
220
221
|
afterTest(() => space1.close());
|
|
221
222
|
|
|
@@ -225,7 +226,7 @@ describe('space/space', () => {
|
|
|
225
226
|
await space1.initializeDataPipeline();
|
|
226
227
|
await space1.dataPipeline.ensureEpochInitialized();
|
|
227
228
|
|
|
228
|
-
|
|
229
|
+
invariant(space1.dataPipeline.databaseHost);
|
|
229
230
|
await testLocalDatabase(space1.dataPipeline);
|
|
230
231
|
|
|
231
232
|
const objectCount = space1.dataPipeline.itemManager.entities.size;
|
|
@@ -255,7 +256,7 @@ describe('space/space', () => {
|
|
|
255
256
|
// Re-open.
|
|
256
257
|
const space2 = await agent.createSpace(agent.identityKey, space1.key, space1.genesisFeedKey, space1.dataFeedKey);
|
|
257
258
|
|
|
258
|
-
await space2.open();
|
|
259
|
+
await space2.open(new Context());
|
|
259
260
|
await space2.controlPipeline.state!.waitUntilTimeframe(space2.controlPipeline.state!.endTimeframe);
|
|
260
261
|
await space2.initializeDataPipeline();
|
|
261
262
|
await space2.dataPipeline.ensureEpochInitialized();
|
|
@@ -263,7 +264,7 @@ describe('space/space', () => {
|
|
|
263
264
|
space2.dataPipeline.setTargetTimeframe(space2.dataPipeline.pipelineState!.endTimeframe);
|
|
264
265
|
await space2.dataPipeline.pipelineState!.waitUntilReachedTargetTimeframe();
|
|
265
266
|
|
|
266
|
-
|
|
267
|
+
invariant(space2.dataPipeline.databaseHost);
|
|
267
268
|
expect(space2.dataPipeline.itemManager.entities.size).toEqual(objectCount);
|
|
268
269
|
|
|
269
270
|
await testLocalDatabase(space2.dataPipeline);
|
package/src/space/space.ts
CHANGED
|
@@ -2,17 +2,18 @@
|
|
|
2
2
|
// Copyright 2022 DXOS.org
|
|
3
3
|
//
|
|
4
4
|
|
|
5
|
-
import invariant from 'tiny-invariant';
|
|
6
|
-
|
|
7
5
|
import { Event, synchronized, trackLeaks, Lock } from '@dxos/async';
|
|
6
|
+
import { Context } from '@dxos/context';
|
|
8
7
|
import { FeedInfo } from '@dxos/credentials';
|
|
9
8
|
import { FeedOptions, FeedWrapper } from '@dxos/feed-store';
|
|
9
|
+
import { invariant } from '@dxos/invariant';
|
|
10
10
|
import { PublicKey } from '@dxos/keys';
|
|
11
11
|
import { log, logInfo } from '@dxos/log';
|
|
12
12
|
import { ModelFactory } from '@dxos/model-factory';
|
|
13
13
|
import type { FeedMessage } from '@dxos/protocols/proto/dxos/echo/feed';
|
|
14
14
|
import { AdmittedFeed, Credential } from '@dxos/protocols/proto/dxos/halo/credentials';
|
|
15
15
|
import { Timeframe } from '@dxos/timeframe';
|
|
16
|
+
import { trace } from '@dxos/tracing';
|
|
16
17
|
import { AsyncCallback, Callback } from '@dxos/util';
|
|
17
18
|
|
|
18
19
|
import { SnapshotManager } from '../db-host';
|
|
@@ -49,6 +50,7 @@ export type CreatePipelineParams = {
|
|
|
49
50
|
*/
|
|
50
51
|
// TODO(dmaretskyi): Extract database stuff.
|
|
51
52
|
@trackLeaks('open', 'close')
|
|
53
|
+
@trace.resource()
|
|
52
54
|
export class Space {
|
|
53
55
|
private readonly _addFeedLock = new Lock();
|
|
54
56
|
|
|
@@ -205,7 +207,8 @@ export class Space {
|
|
|
205
207
|
// return this._dataPipeline?.getFeeds();
|
|
206
208
|
// }
|
|
207
209
|
@synchronized
|
|
208
|
-
|
|
210
|
+
@trace.span()
|
|
211
|
+
async open(ctx: Context) {
|
|
209
212
|
log('opening...');
|
|
210
213
|
if (this._isOpen) {
|
|
211
214
|
return;
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
// Copyright 2022 DXOS.org
|
|
3
3
|
//
|
|
4
4
|
|
|
5
|
+
import { Context } from '@dxos/context';
|
|
5
6
|
import { CredentialGenerator } from '@dxos/credentials';
|
|
6
7
|
import { DocumentModel } from '@dxos/document-model';
|
|
7
8
|
import { FeedStore } from '@dxos/feed-store';
|
|
@@ -198,7 +199,7 @@ export class TestAgent {
|
|
|
198
199
|
space.setControlFeed(controlFeed);
|
|
199
200
|
space.setDataFeed(dataFeed);
|
|
200
201
|
|
|
201
|
-
await space.open();
|
|
202
|
+
await space.open(new Context());
|
|
202
203
|
|
|
203
204
|
this._spaces.set(spaceKey, space);
|
|
204
205
|
return space;
|