@crvouga/mockingbird-service-postgres 3.6.0 → 3.7.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 +7 -1
- package/COMPATIBILITY.md +31 -0
- package/README.md +5 -0
- package/dist/admin.js +216 -26
- package/dist/admin.js.map +3 -3
- package/dist/api/schema-report.d.ts +32 -0
- package/dist/ast/nodes.d.ts +2 -0
- package/dist/executor/relation.d.ts +1 -0
- package/dist/expressions/context.d.ts +4 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +405 -27
- package/dist/index.js.map +4 -4
- package/dist/server.js +229 -27
- package/dist/server.js.map +3 -3
- package/dist/storage/database-state.d.ts +7 -0
- package/dist/types/regnamespace.d.ts +5 -0
- package/dist/types/value.d.ts +2 -0
- package/dist/unstable.js +388 -198
- package/dist/unstable.js.map +4 -4
- package/dist/wire/cli.js +457 -82
- package/dist/wire/cli.js.map +4 -4
- package/dist/wire/index.js +229 -27
- package/dist/wire/index.js.map +3 -3
- package/package.json +1 -1
|
@@ -100,6 +100,8 @@ export declare class TableData {
|
|
|
100
100
|
schema: string;
|
|
101
101
|
columns: ColumnMeta[];
|
|
102
102
|
rows: Datum[][];
|
|
103
|
+
rowXmins: WeakMap<Datum[], number>;
|
|
104
|
+
slabXmins: number[] | null;
|
|
103
105
|
/** Frozen columnar storage after snapshot hydrate; `rows` stays empty until materialized. */
|
|
104
106
|
slab: ColumnarSlab | null;
|
|
105
107
|
constraints: ConstraintMeta[];
|
|
@@ -189,6 +191,7 @@ export interface DomainData {
|
|
|
189
191
|
shareCount?: number;
|
|
190
192
|
}
|
|
191
193
|
export interface FunctionData {
|
|
194
|
+
settings?: Record<string, string>;
|
|
192
195
|
name: string;
|
|
193
196
|
schema: string;
|
|
194
197
|
argNames: (string | null)[];
|
|
@@ -262,6 +265,10 @@ export declare class DatabaseState {
|
|
|
262
265
|
clock: Clock;
|
|
263
266
|
changes: number;
|
|
264
267
|
private oidCounter;
|
|
268
|
+
/** Local monotonic xid allocator; 2 denotes a row from a legacy snapshot without metadata. */
|
|
269
|
+
xidCounter: number;
|
|
270
|
+
transactionXid: number | null;
|
|
271
|
+
allocateXid(): number;
|
|
265
272
|
inTransaction: boolean;
|
|
266
273
|
/** Transaction-only events: included in rollback clones, never in exported snapshots. */
|
|
267
274
|
pendingTriggers: Array<{
|
|
@@ -19,5 +19,10 @@ export declare function parseNamespaceInput(text: string): {
|
|
|
19
19
|
} | {
|
|
20
20
|
name: string;
|
|
21
21
|
};
|
|
22
|
+
export declare function parseRelationInput(text: string): {
|
|
23
|
+
oid: number;
|
|
24
|
+
} | {
|
|
25
|
+
parts: string[];
|
|
26
|
+
};
|
|
22
27
|
/** regnamespaceout: `-` for zero, the quoted schema name, or the bare number when no schema has that oid. */
|
|
23
28
|
export declare function namespaceText(oid: number, name: string | null | undefined): string;
|
package/dist/types/value.d.ts
CHANGED
|
@@ -82,6 +82,7 @@ export declare function moneyText(cents: bigint): string;
|
|
|
82
82
|
export interface OutputCtx {
|
|
83
83
|
/** unquoted schema name for an oid, or null when no schema has it */
|
|
84
84
|
namespaceName?(oid: number): string | null;
|
|
85
|
+
relationName?(oid: number): string | null;
|
|
85
86
|
/** offset seconds east of UTC for rendering timestamptz at given UTC micros */
|
|
86
87
|
zoneOffsetAt(utcMicros: bigint): number;
|
|
87
88
|
}
|
|
@@ -93,6 +94,7 @@ export declare function datumText(t: TypeId, v: Datum, ctx: OutputCtx): string;
|
|
|
93
94
|
export interface InputCtx {
|
|
94
95
|
/** oid of the schema with exactly this name; raises 3F000 when there is none */
|
|
95
96
|
namespaceOid?(name: string): number;
|
|
97
|
+
relationOid?(parts: string[]): number;
|
|
96
98
|
/** session zone offset lookup for naive timestamptz input */
|
|
97
99
|
zoneOffsetForNaive(naiveMicros: bigint): number;
|
|
98
100
|
/** enum label validation: returns true when label is valid for the enum type */
|