@powersync/service-sync-rules 0.0.0-dev-20260909133214 → 0.0.0-dev-20260929095716

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.
Files changed (111) hide show
  1. package/README.md +49 -14
  2. package/dist/BucketSource.d.ts +2 -2
  3. package/dist/ConnectionConfig.d.ts +39 -0
  4. package/dist/ConnectionConfig.js +97 -0
  5. package/dist/ConnectionConfig.js.map +1 -0
  6. package/dist/HydratedSyncConfig.d.ts +2 -0
  7. package/dist/HydratedSyncConfig.js +6 -3
  8. package/dist/HydratedSyncConfig.js.map +1 -1
  9. package/dist/SqlSyncRules.d.ts +15 -0
  10. package/dist/SqlSyncRules.js +3 -1
  11. package/dist/SqlSyncRules.js.map +1 -1
  12. package/dist/SyncConfig.d.ts +8 -1
  13. package/dist/SyncConfig.js +7 -1
  14. package/dist/SyncConfig.js.map +1 -1
  15. package/dist/SyncConfigParserHooks.d.ts +103 -0
  16. package/dist/SyncConfigParserHooks.js +11 -0
  17. package/dist/SyncConfigParserHooks.js.map +1 -0
  18. package/dist/compatibility.d.ts +2 -1
  19. package/dist/compatibility.js +4 -2
  20. package/dist/compatibility.js.map +1 -1
  21. package/dist/compiler/compiler.d.ts +4 -4
  22. package/dist/compiler/compiler.js +2 -2
  23. package/dist/compiler/equality.d.ts +2 -2
  24. package/dist/compiler/equality.js +2 -2
  25. package/dist/compiler/expression.d.ts +3 -3
  26. package/dist/compiler/expression.js +2 -2
  27. package/dist/compiler/parser.d.ts +1 -1
  28. package/dist/compiler/parser.js +2 -2
  29. package/dist/compiler/sqlite.js +1 -2
  30. package/dist/compiler/sqlite.js.map +1 -1
  31. package/dist/compiler/table.d.ts +2 -2
  32. package/dist/compiler/table.js +1 -1
  33. package/dist/from_yaml.d.ts +14 -1
  34. package/dist/from_yaml.js +77 -19
  35. package/dist/from_yaml.js.map +1 -1
  36. package/dist/index.d.ts +3 -0
  37. package/dist/index.js +3 -0
  38. package/dist/index.js.map +1 -1
  39. package/dist/json.d.ts +7 -0
  40. package/dist/json.js +2 -0
  41. package/dist/json.js.map +1 -0
  42. package/dist/json_schema.d.ts +11 -0
  43. package/dist/json_schema.js +26 -3
  44. package/dist/json_schema.js.map +1 -1
  45. package/dist/legacy/BaseSqlDataQuery.d.ts +12 -0
  46. package/dist/legacy/BaseSqlDataQuery.js +3 -0
  47. package/dist/legacy/BaseSqlDataQuery.js.map +1 -1
  48. package/dist/legacy/SqlBucketDescriptor.d.ts +9 -0
  49. package/dist/legacy/SqlBucketDescriptor.js +6 -0
  50. package/dist/legacy/SqlBucketDescriptor.js.map +1 -1
  51. package/dist/legacy/SqlDataQuery.d.ts +6 -0
  52. package/dist/legacy/SqlDataQuery.js +3 -0
  53. package/dist/legacy/SqlDataQuery.js.map +1 -1
  54. package/dist/legacy/SqlParameterQuery.d.ts +4 -0
  55. package/dist/legacy/SqlParameterQuery.js +1 -0
  56. package/dist/legacy/SqlParameterQuery.js.map +1 -1
  57. package/dist/legacy/StaticSqlParameterQuery.d.ts +4 -0
  58. package/dist/legacy/StaticSqlParameterQuery.js +1 -0
  59. package/dist/legacy/StaticSqlParameterQuery.js.map +1 -1
  60. package/dist/legacy/TableQuerySchema.d.ts +1 -0
  61. package/dist/legacy/TableQuerySchema.js +1 -0
  62. package/dist/legacy/TableQuerySchema.js.map +1 -1
  63. package/dist/legacy/TableValuedFunctionSqlParameterQuery.d.ts +4 -0
  64. package/dist/legacy/TableValuedFunctionSqlParameterQuery.js +1 -0
  65. package/dist/legacy/TableValuedFunctionSqlParameterQuery.js.map +1 -1
  66. package/dist/legacy/sql_filters.d.ts +13 -0
  67. package/dist/legacy/sql_filters.js +10 -0
  68. package/dist/legacy/sql_filters.js.map +1 -1
  69. package/dist/legacy/sql_support.d.ts +33 -0
  70. package/dist/legacy/sql_support.js +33 -0
  71. package/dist/legacy/sql_support.js.map +1 -1
  72. package/dist/legacy/streams/filter.d.ts +22 -0
  73. package/dist/legacy/streams/filter.js +19 -0
  74. package/dist/legacy/streams/filter.js.map +1 -1
  75. package/dist/legacy/streams/from_sql.d.ts +3 -0
  76. package/dist/legacy/streams/from_sql.js +4 -1
  77. package/dist/legacy/streams/from_sql.js.map +1 -1
  78. package/dist/legacy/streams/functions.d.ts +3 -0
  79. package/dist/legacy/streams/functions.js +3 -0
  80. package/dist/legacy/streams/functions.js.map +1 -1
  81. package/dist/legacy/streams/parameter.d.ts +10 -0
  82. package/dist/legacy/streams/stream.d.ts +7 -1
  83. package/dist/legacy/streams/stream.js +7 -1
  84. package/dist/legacy/streams/stream.js.map +1 -1
  85. package/dist/legacy/streams/variant.d.ts +6 -0
  86. package/dist/legacy/streams/variant.js +1 -0
  87. package/dist/legacy/streams/variant.js.map +1 -1
  88. package/dist/legacy/validators.d.ts +1 -0
  89. package/dist/legacy/validators.js +1 -0
  90. package/dist/legacy/validators.js.map +1 -1
  91. package/dist/sql_functions.d.ts +1 -1
  92. package/dist/sync_plan/evaluator/bucket_source.js +1 -1
  93. package/dist/sync_plan/evaluator/index.js +1 -0
  94. package/dist/sync_plan/evaluator/index.js.map +1 -1
  95. package/dist/sync_plan/evaluator/parameter_evaluator.d.ts +1 -1
  96. package/dist/sync_plan/evaluator/parameter_evaluator.js +1 -1
  97. package/dist/sync_plan/plan.d.ts +7 -1
  98. package/dist/sync_plan/schema_inference.d.ts +1 -1
  99. package/dist/sync_plan/schema_inference.js +1 -1
  100. package/dist/sync_plan/serialize.d.ts +18 -2
  101. package/dist/sync_plan/serialize.js +34 -6
  102. package/dist/sync_plan/serialize.js.map +1 -1
  103. package/dist/utils.d.ts +1 -0
  104. package/dist/utils.js +43 -12
  105. package/dist/utils.js.map +1 -1
  106. package/dist/yaml_source_locations.d.ts +14 -0
  107. package/dist/yaml_source_locations.js +117 -0
  108. package/dist/yaml_source_locations.js.map +1 -0
  109. package/dist/yaml_validation.js.map +1 -1
  110. package/package.json +2 -1
  111. package/schema/sync_rules.json +46 -1
@@ -1 +1 @@
1
- {"version":3,"file":"compatibility.js","sourceRoot":"","sources":["../src/compatibility.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compatibility.js","sourceRoot":"","sources":["../src/compatibility.ts"],"names":[],"mappings":"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"}
@@ -34,7 +34,7 @@ export interface ParseStreamOptions extends StreamOptions {
34
34
  warnOnDangerousParameter: boolean;
35
35
  }
36
36
  /**
37
- * State for compiling sync streams and replication events into a sync plan.
37
+ * State for compiling Sync Streams and replication events into a sync plan.
38
38
  *
39
39
  * The compiler stores a mutable intermediate representation that is essentially a copy of the resulting
40
40
  * {@link SyncPlan}. Stream compilation uses JavaScript classes with behavioral equality, while events use plain
@@ -62,7 +62,7 @@ export declare class SyncStreamsCompiler {
62
62
  */
63
63
  commonTableExpression(sql: string, errors: ParsingErrorListener): PreparedSubquery | null;
64
64
  /**
65
- * Utility for compiling a sync stream.
65
+ * Utility for compiling a Sync Stream.
66
66
  *
67
67
  * @param options Name, priority and `auto_subscribe` state for the stream.
68
68
  */
@@ -90,7 +90,7 @@ export declare function compileEventDefinitions(definitions: Readonly<Record<str
90
90
  errors: SqlRuleError[];
91
91
  };
92
92
  /**
93
- * Utility for compiling a single sync stream.
93
+ * Utility for compiling a single Sync Stream.
94
94
  */
95
95
  export interface IndividualSyncStreamCompiler {
96
96
  /**
@@ -119,7 +119,7 @@ export interface IndividualEventCompiler {
119
119
  /**
120
120
  * Something reporting errors.
121
121
  *
122
- * While sync streams can be made up of multiple SQL statements from different YAML strings, we want to be able to
122
+ * While Sync Streams can be made up of multiple SQL statements from different YAML strings, we want to be able to
123
123
  * accurately describe the source of an error in YAML when we report it.
124
124
  *
125
125
  * So, every transformation that might need to report errors receives an instance of this interface which implicitly
@@ -10,7 +10,7 @@ import { QuerierGraphBuilder } from './querier_graph.js';
10
10
  import { EventRowEvaluator } from './rows.js';
11
11
  import { SqlScope } from './scope.js';
12
12
  /**
13
- * State for compiling sync streams and replication events into a sync plan.
13
+ * State for compiling Sync Streams and replication events into a sync plan.
14
14
  *
15
15
  * The compiler stores a mutable intermediate representation that is essentially a copy of the resulting
16
16
  * {@link SyncPlan}. Stream compilation uses JavaScript classes with behavioral equality, while events use plain
@@ -56,7 +56,7 @@ export class SyncStreamsCompiler {
56
56
  return parser.parseAsSubquery(stmt);
57
57
  }
58
58
  /**
59
- * Utility for compiling a sync stream.
59
+ * Utility for compiling a Sync Stream.
60
60
  *
61
61
  * @param options Name, priority and `auto_subscribe` state for the stream.
62
62
  */
@@ -1,13 +1,13 @@
1
1
  import { SqliteParameterValue } from '../types.js';
2
2
  /**
3
- * Stable value-based hashcodes for JavaScript. The sync streams compiler uses hashmaps derived from this to efficiently
3
+ * Stable value-based hashcodes for JavaScript. The Sync Streams compiler uses hashmaps derived from this to efficiently
4
4
  * de-duplicate equivalent expressions and lookups.
5
5
  *
6
6
  * This is copied from Dart SDK sources, which in turn based the algorithm on Jenkins hash functions.
7
7
  *
8
8
  * Because hash codes are stable across restarts, they should not be used for untrusted inputs to avoid attacks
9
9
  * provoking hash collisions and subpar hashmap performance. The sync rules package only uses these hashes to compile
10
- * sync streams, but the compiled IR processing source rows does not need these hashes.
10
+ * Sync Streams, but the compiled IR processing source rows does not need these hashes.
11
11
  */
12
12
  export declare class StableHasher {
13
13
  private static readonly seed;
@@ -1,12 +1,12 @@
1
1
  /**
2
- * Stable value-based hashcodes for JavaScript. The sync streams compiler uses hashmaps derived from this to efficiently
2
+ * Stable value-based hashcodes for JavaScript. The Sync Streams compiler uses hashmaps derived from this to efficiently
3
3
  * de-duplicate equivalent expressions and lookups.
4
4
  *
5
5
  * This is copied from Dart SDK sources, which in turn based the algorithm on Jenkins hash functions.
6
6
  *
7
7
  * Because hash codes are stable across restarts, they should not be used for untrusted inputs to avoid attacks
8
8
  * provoking hash collisions and subpar hashmap performance. The sync rules package only uses these hashes to compile
9
- * sync streams, but the compiled IR processing source rows does not need these hashes.
9
+ * Sync Streams, but the compiled IR processing source rows does not need these hashes.
10
10
  */
11
11
  export class StableHasher {
12
12
  static seed = 614160925; // 'PowerSync'.hashCode on the Dart VM
@@ -8,7 +8,7 @@ import { SourceResultSet } from './table.js';
8
8
  /**
9
9
  * An analyzed SQL expression tracking dependencies on non-static data (i.e. rows or connection sources).
10
10
  *
11
- * Consider the sync stream `SELECT * FROM issues WHERE is_public OR auth.param('is_admin')`. To be able to explicitly
11
+ * Consider the Sync Stream `SELECT * FROM issues WHERE is_public OR auth.param('is_admin')`. To be able to explicitly
12
12
  * track dependencies referenced in expressions, we transform them into a {@link SyncExpression}. For the `WHERE` clause
13
13
  * in that example, the {@link sqlExpression} would be `?1 OR (?2 ->> 'is_admin')`, where `?1` is a {@link ColumnInRow}
14
14
  * and `?2` is a {@link ConnectionParameter}.
@@ -92,7 +92,7 @@ export declare class ConnectionParameter implements EqualsIgnoringPrimaryResultS
92
92
  * Tracks the original source location for translated {@link SqlExpression} nodes.
93
93
  *
94
94
  * We want to serialize translated expressions for sync plan, so embedding source offsets in them expands the size of
95
- * sync plans and is tedious. We only need access to node locations while compiling sync streams, which we store in this
95
+ * sync plans and is tedious. We only need access to node locations while compiling Sync Streams, which we store in this
96
96
  * in-memory map.
97
97
  */
98
98
  export declare class NodeLocations {
@@ -104,7 +104,7 @@ export interface SourceLocation {
104
104
  /**
105
105
  * An error reporter that can understand the given {@link location}.
106
106
  *
107
- * Because sync streams might be composed of multiple source statements (like common table expressions) that can
107
+ * Because Sync Streams might be composed of multiple source statements (like common table expressions) that can
108
108
  * ultimately only be fully analyzed together, this is necessary to ensure we can report errors on the correct source
109
109
  * everywhere.
110
110
  */
@@ -4,7 +4,7 @@ import { RecursiveExpressionVisitor } from '../sync_plan/expression_visitor.js';
4
4
  /**
5
5
  * An analyzed SQL expression tracking dependencies on non-static data (i.e. rows or connection sources).
6
6
  *
7
- * Consider the sync stream `SELECT * FROM issues WHERE is_public OR auth.param('is_admin')`. To be able to explicitly
7
+ * Consider the Sync Stream `SELECT * FROM issues WHERE is_public OR auth.param('is_admin')`. To be able to explicitly
8
8
  * track dependencies referenced in expressions, we transform them into a {@link SyncExpression}. For the `WHERE` clause
9
9
  * in that example, the {@link sqlExpression} would be `?1 OR (?2 ->> 'is_admin')`, where `?1` is a {@link ColumnInRow}
10
10
  * and `?2` is a {@link ConnectionParameter}.
@@ -142,7 +142,7 @@ export class ConnectionParameter {
142
142
  * Tracks the original source location for translated {@link SqlExpression} nodes.
143
143
  *
144
144
  * We want to serialize translated expressions for sync plan, so embedding source offsets in them expands the size of
145
- * sync plans and is tedious. We only need access to node locations while compiling sync streams, which we store in this
145
+ * sync plans and is tedious. We only need access to node locations while compiling Sync Streams, which we store in this
146
146
  * in-memory map.
147
147
  */
148
148
  export class NodeLocations {
@@ -76,7 +76,7 @@ export declare class StreamQueryParser {
76
76
  private nestedParser;
77
77
  /**
78
78
  * Process the AST of a statement, returning whether it's close enough to a valid select statement to be supported for
79
- * sync streams (allowing us to process an invalid statement further to perhaps collect more errors).
79
+ * Sync Streams (allowing us to process an invalid statement further to perhaps collect more errors).
80
80
  */
81
81
  private processAst;
82
82
  private addAndTermToWhereClause;
@@ -143,7 +143,7 @@ export class StreamQueryParser {
143
143
  }
144
144
  /**
145
145
  * Process the AST of a statement, returning whether it's close enough to a valid select statement to be supported for
146
- * sync streams (allowing us to process an invalid statement further to perhaps collect more errors).
146
+ * Sync Streams (allowing us to process an invalid statement further to perhaps collect more errors).
147
147
  */
148
148
  processAst(node, options) {
149
149
  if (node.type != 'select') {
@@ -408,7 +408,7 @@ export class StreamQueryParser {
408
408
  if (name == null) {
409
409
  // For unqualified references, there must be a single table in scope. We don't allow unqualified references if
410
410
  // there are multiple tables because we don't know which column is available in which table with certainty (and
411
- // don't want to re-compile sync streams on schema changes). So, we just refuse to resolve those ambigious
411
+ // don't want to re-compile Sync Streams on schema changes). So, we just refuse to resolve those ambigious
412
412
  // references.
413
413
  const defaultResultSet = this.statementScope.defaultResultSet;
414
414
  if (defaultResultSet) {
@@ -157,8 +157,7 @@ export class PostgresToSqlite {
157
157
  const left = this.translateNodeWithLocation(expr.left);
158
158
  const right = this.translateNodeWithLocation(expr.right);
159
159
  if (expr.op === 'LIKE') {
160
- // We don't support LIKE in the old bucket definition system, and want to make sure we're clear about ICU,
161
- // case sensitivity and changing the escape character first. TODO: Support later.
160
+ // TODO: Support later. We want to make sure we're clear about ICU, case sensitivity and changing the escape character first.
162
161
  this.options.errors.report('LIKE expressions are not currently supported.', expr);
163
162
  return { type: 'function', function: 'like', parameters: [left, right] };
164
163
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sqlite.js","sourceRoot":"","sources":["../../src/compiler/sqlite.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sqlite.js","sourceRoot":"","sources":["../../src/compiler/sqlite.ts"],"names":[],"mappings":"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"}
@@ -55,7 +55,7 @@ export declare class PhysicalSourceResultSet extends BaseSourceResultSet {
55
55
  * streams.
56
56
  *
57
57
  * This information must only be used to generate analysis warnings, e.g. for column references that don't exist in
58
- * resolved tables. It must not affect how sync streams are compiled, as that is always schema-independent.
58
+ * resolved tables. It must not affect how Sync Streams are compiled, as that is always schema-independent.
59
59
  */
60
60
  readonly schemaTablesForWarnings: SourceSchemaTable[];
61
61
  constructor(tablePattern: ImplicitSchemaTablePattern, source: SyntacticResultSetSource,
@@ -64,7 +64,7 @@ export declare class PhysicalSourceResultSet extends BaseSourceResultSet {
64
64
  * streams.
65
65
  *
66
66
  * This information must only be used to generate analysis warnings, e.g. for column references that don't exist in
67
- * resolved tables. It must not affect how sync streams are compiled, as that is always schema-independent.
67
+ * resolved tables. It must not affect how Sync Streams are compiled, as that is always schema-independent.
68
68
  */
69
69
  schemaTablesForWarnings: SourceSchemaTable[]);
70
70
  get evaluationTarget(): SourceResultSet;
@@ -46,7 +46,7 @@ export class PhysicalSourceResultSet extends BaseSourceResultSet {
46
46
  * streams.
47
47
  *
48
48
  * This information must only be used to generate analysis warnings, e.g. for column references that don't exist in
49
- * resolved tables. It must not affect how sync streams are compiled, as that is always schema-independent.
49
+ * resolved tables. It must not affect how Sync Streams are compiled, as that is always schema-independent.
50
50
  */
51
51
  schemaTablesForWarnings) {
52
52
  super(source);
@@ -1,7 +1,9 @@
1
+ import { SyncRulesSchemaValidator } from './json_schema.js';
1
2
  import { SyncConfigWithErrors } from './SyncConfig.js';
3
+ import { AdditionalSyncConfigParser } from './SyncConfigParserHooks.js';
2
4
  import { SourceSchema } from './types.js';
3
5
  /**
4
- * Reads `sync_rules.yaml` files containing a sync configuration.
6
+ * Reads `sync_rules.yaml` files containing a sync config.
5
7
  *
6
8
  * @internal Only exposed through `SqlSyncRules.fromYaml`.
7
9
  */
@@ -13,6 +15,17 @@ export declare class SyncConfigFromYaml {
13
15
  read(): SyncConfigWithErrors;
14
16
  }
15
17
  export interface SyncConfigFromYamlOptions {
18
+ /**
19
+ * Additional parsing hooks registered by the service. Standalone callers, including extension tests,
20
+ * can supply hooks through SqlSyncRules.fromYaml; omitted hooks are normalized to an empty array.
21
+ */
22
+ readonly parsers: readonly AdditionalSyncConfigParser[];
23
+ /**
24
+ * Compiled schema validator supplied by the service parser, matching its registered hooks.
25
+ * Standalone callers, including tests, normally omit this so the schema is composed from parsers.
26
+ * Supplying a validator skips schema composition and compilation but still runs the parsing hooks.
27
+ */
28
+ readonly schemaValidator?: SyncRulesSchemaValidator;
16
29
  readonly throwOnError: boolean;
17
30
  readonly schema?: SourceSchema;
18
31
  /**
package/dist/from_yaml.js CHANGED
@@ -4,18 +4,20 @@ import { CompatibilityContext, CompatibilityEdition, CompatibilityOption, TimeVa
4
4
  import { SyncStreamsCompiler } from './compiler/compiler.js';
5
5
  import { SqlRuleError, SyncRulesErrors, YamlError } from './errors.js';
6
6
  import { PreparedEventDefinition } from './events/CompiledEventSourceQuery.js';
7
- import { validateSyncRulesSchema } from './json_schema.js';
7
+ import { compileSyncRulesSchemaValidator, createSyncRulesSchema, validateSyncRulesSchema } from './json_schema.js';
8
8
  import { SqlBucketDescriptor } from './legacy/SqlBucketDescriptor.js';
9
9
  import { syncStreamFromSql } from './legacy/streams/from_sql.js';
10
10
  import { SqlSyncRules } from './SqlSyncRules.js';
11
11
  import { validateStorageVersion } from './StorageVersion.js';
12
12
  import { PrecompiledSyncConfig } from './sync_plan/evaluator/index.js';
13
+ import { validateAdditionalSyncConfigParsers } from './SyncConfigParserHooks.js';
13
14
  import { TablePattern } from './TablePattern.js';
14
15
  import { buildParsedToSourceValueMap, isBlockScalar, isQuotedScalar } from './yaml_scalar_map.js';
16
+ import { createYamlSourceLocationResolver, mapAjvErrorsToYamlErrors } from './yaml_source_locations.js';
15
17
  import { documentState } from './yaml_validation.js';
16
18
  const ACCEPT_POTENTIALLY_DANGEROUS_QUERIES = Symbol('ACCEPT_POTENTIALLY_DANGEROUS_QUERIES');
17
19
  /**
18
- * Reads `sync_rules.yaml` files containing a sync configuration.
20
+ * Reads `sync_rules.yaml` files containing a sync config.
19
21
  *
20
22
  * @internal Only exposed through `SqlSyncRules.fromYaml`.
21
23
  */
@@ -24,7 +26,7 @@ export class SyncConfigFromYaml {
24
26
  yaml;
25
27
  #errors = [];
26
28
  #lineCounter = new LineCounter();
27
- // Names of bucket definitions and sync streams, to prevent duplicates.
29
+ // Names of bucket definitions and Sync Streams, to prevent duplicates.
28
30
  #definitionNames = new Set();
29
31
  #definedCtes = [];
30
32
  constructor(options, yaml) {
@@ -48,23 +50,79 @@ export class SyncConfigFromYaml {
48
50
  }
49
51
  ]
50
52
  });
53
+ validateAdditionalSyncConfigParsers(this.options.parsers);
54
+ const sourceLocations = createYamlSourceLocationResolver(parsed);
51
55
  const config = this.#parseConfig(parsed);
52
- // #parseConfig() should have found all errors in the YAML source. As an additional check, and to ensure our sync
53
- // rules schema is up-to-date, also validate with ajv. We do this last because errors found here don't have line
54
- // numbers on them.
56
+ let encoded = null;
57
+ // Validate the YAML nodes first so structural errors retain their source locations. Conversion can still fail
58
+ // for unresolved aliases inside module-owned options, which must follow the same diagnostic handling.
55
59
  if (!this.#hasFatalError) {
56
- const valid = validateSyncRulesSchema(parsed.toJSON());
57
- if (!valid) {
58
- this.#errors.push(...validateSyncRulesSchema.errors.map((e) => {
59
- return new YamlError(e);
60
- }));
60
+ try {
61
+ encoded = parsed.toJSON();
62
+ }
63
+ catch (error) {
64
+ this.#errors.push(new YamlError(error instanceof Error ? error : new Error(String(error))));
65
+ }
66
+ }
67
+ const hasConnectionConfig = encoded?.config != null && Object.hasOwn(encoded.config, 'connections');
68
+ if (hasConnectionConfig && config.compatibility.edition < CompatibilityEdition.COMPILED_STREAMS) {
69
+ const location = sourceLocations.getLocation(['config', 'connections'], 'key');
70
+ this.#errors.push(new YamlError(new Error("The 'config.connections' section requires edition 3."), location && { start: location.start_offset, end: location.end_offset }));
71
+ }
72
+ // Parser hooks run before the JSON Schema check, so they can report specific diagnostics for the options they
73
+ // own. Hooks must therefore tolerate structurally invalid input.
74
+ if (!this.#hasFatalError) {
75
+ const reportDiagnostic = (diagnostic) => {
76
+ const location = diagnostic.location;
77
+ const error = new YamlError(new Error(diagnostic.message), location && {
78
+ start: location.start_offset,
79
+ end: location.end_offset
80
+ });
81
+ error.type = diagnostic.level;
82
+ this.#errors.push(error);
83
+ };
84
+ try {
85
+ for (const parser of this.options.parsers) {
86
+ parser.parse({
87
+ config: encoded,
88
+ context: {
89
+ parsedConfig: config,
90
+ sourceTables: config.getSourceTables(),
91
+ defaultSchema: this.options.defaultSchema,
92
+ sourceLocations,
93
+ reportDiagnostic
94
+ }
95
+ });
96
+ if (this.#hasFatalError)
97
+ break;
98
+ }
99
+ // Hooks populate connection options on the config, but persistence serializes its compiled plan.
100
+ // Keep the plan's connection options in sync so they survive a reload.
101
+ if (config instanceof PrecompiledSyncConfig && Object.keys(config.connectionConfig).length != 0) {
102
+ config.plan.connectionConfig = config.connectionConfig;
103
+ }
104
+ }
105
+ catch (error) {
106
+ this.#errors.push(new YamlError(error instanceof Error ? error : new Error(String(error))));
107
+ }
108
+ }
109
+ // The composed schema catches remaining structural issues, such as additional fields or connection options no
110
+ // parser reported on. Run it last: its union-branch errors are less specific than the parser diagnostics above.
111
+ // Retain the YAML tree so errors highlight the actual key/value.
112
+ if (!this.#hasFatalError) {
113
+ const validate = this.options.schemaValidator ??
114
+ (this.options.parsers.length == 0
115
+ ? validateSyncRulesSchema
116
+ : compileSyncRulesSchemaValidator(createSyncRulesSchema(this.options.parsers)));
117
+ if (!validate(encoded)) {
118
+ this.#errors.push(...mapAjvErrorsToYamlErrors(sourceLocations, validate.errors));
61
119
  }
62
120
  }
63
121
  this.#throwOnErrorIfRequested();
64
122
  return config;
65
123
  }
66
124
  #parseConfig(parsed) {
67
- const root = documentState(parsed, (e) => this.#errors.push(e)).requireMap('Sync Config must be a YAML map.');
125
+ const root = documentState(parsed, (e) => this.#errors.push(e)).requireMap('Sync config must be a YAML map.');
68
126
  if (parsed.errors.length > 0 || root == null) {
69
127
  this.#errors.push(...parsed.errors.map((e) => new YamlError(e)));
70
128
  this.#throwOnErrorIfRequested();
@@ -74,6 +132,8 @@ export class SyncConfigFromYaml {
74
132
  }
75
133
  using rootState = root;
76
134
  using declaredOptions = rootState.get('config')?.requireMap();
135
+ // The composed schema validates connection options and preserves module-owned table fields.
136
+ declaredOptions?.get('connections');
77
137
  let compatibility;
78
138
  let storageVersion;
79
139
  if (declaredOptions) {
@@ -128,7 +188,7 @@ export class SyncConfigFromYaml {
128
188
  }
129
189
  }
130
190
  /**
131
- * Parses the `config` block of a sync configuration.
191
+ * Parses the `config` block of a sync config.
132
192
  *
133
193
  * @see https://docs.powersync.com/sync/advanced/compatibility
134
194
  */
@@ -254,7 +314,7 @@ export class SyncConfigFromYaml {
254
314
  }
255
315
  // This is with config.edition <= 2, we want to encourage users with streams to migrate to version 3 to use
256
316
  // compiled sync plans.
257
- streamMap?.reportError('This is using an alpha version of Sync Streams. We recommend upgrading `config.edition` to version 3 to support the latest features.', 'warning');
317
+ streamMap?.reportError('This is using the deprecated alpha version of Sync Streams. It will be removed in the next major version. Upgrade `config.edition` to version 3.', 'warning');
258
318
  for (const { key, keyScalar, value: maybeMap } of bucketMap?.stringKeyedItems() ?? []) {
259
319
  if (!this.#checkUniqueName(key, keyScalar)) {
260
320
  continue;
@@ -311,10 +371,8 @@ export class SyncConfigFromYaml {
311
371
  if (map == null)
312
372
  continue;
313
373
  // We don't support with or multiple queries in streams, those are only supported by the new compiler.
314
- map
315
- .get('with')
316
- ?.reportError('Common table expressions are not supported without the `sync_config_compiler` option.');
317
- map.get('queries')?.reportError('Multiple queries not supported without the `sync_config_compiler` option.');
374
+ map.get('with')?.reportError('Common table expressions require edition 3.');
375
+ map.get('queries')?.reportError('Multiple queries require edition 3.');
318
376
  const accept_potentially_dangerous_queries = map.get('accept_potentially_dangerous_queries')?.requireScalar()?.requireBoolean() == true;
319
377
  const queryOptions = {
320
378
  ...this.options,
@@ -426,7 +484,7 @@ export class SyncConfigFromYaml {
426
484
  return;
427
485
  }
428
486
  /**
429
- * Reads string contents from a YAML scalar and returns an error listener for the sync stream compiler.
487
+ * Reads string contents from a YAML scalar and returns an error listener for the Sync Streams compiler.
430
488
  */
431
489
  #scalarErrorListener(scalar) {
432
490
  const value = scalar.toString();
@@ -1 +1 @@
1
- {"version":3,"file":"from_yaml.js","sourceRoot":"","sources":["../src/from_yaml.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"from_yaml.js","sourceRoot":"","sources":["../src/from_yaml.ts"],"names":[],"mappings":"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"}