@balena/abstract-sql-compiler 10.6.1-build-dev-deps-444f515b81454a512eaf3a28f49f7b25938b4b9c-1 → 10.6.2-build-include-comments-7045c5bd5244459330a7899ad0fbb974a429ca14-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.
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractSQLSchemaOptimiser.js","sourceRoot":"","sources":["../src/AbstractSQLSchemaOptimiser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AbstractSQLSchemaOptimiser.js","sourceRoot":"","sources":["../src/AbstractSQLSchemaOptimiser.ts"],"names":[],"mappings":"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"}
@@ -36,6 +36,9 @@ const getRuleReferencedScope = (rulePart, scope, isSafe) => {
36
36
  scope[alias] = { tableName: from[1], isSafe };
37
37
  break;
38
38
  case 'SelectQuery':
39
+ // Ignore SelectQuery in the From as we'll handle any fields it selects
40
+ // when we recurse in. With true scope handling however we could prune
41
+ // fields that don't affect the end result and avoid false positives
39
42
  scope[alias] = { tableName: '', isSafe };
40
43
  break;
41
44
  default:
@@ -54,6 +57,8 @@ const getRuleReferencedScope = (rulePart, scope, isSafe) => {
54
57
  };
55
58
  const addReference = (referencedFields, scope, aliasName, fieldName) => {
56
59
  const a = scope[aliasName];
60
+ // The scoped tableName is empty in the case of an aliased from query
61
+ // and those fields will be covered when we recurse into them
57
62
  if (a.tableName !== '') {
58
63
  referencedFields[a.tableName] ??= {
59
64
  create: [],
@@ -78,6 +83,7 @@ const $getRuleReferencedFields = (referencedFields, rulePart, isSafe, { scope, c
78
83
  }
79
84
  switch (rulePart[0]) {
80
85
  case 'SelectQuery':
86
+ // Update the current scope before trying to resolve field references
81
87
  ({ scope, currentlyScopedAliases } = getRuleReferencedScope(rulePart, scope, isSafe));
82
88
  rulePart.forEach((node) => {
83
89
  $getRuleReferencedFields(referencedFields, node, isSafe, {
@@ -100,18 +106,21 @@ const $getRuleReferencedFields = (referencedFields, rulePart, isSafe, { scope, c
100
106
  throw new Error(`Invalid ReferencedField: ${rulePart}`);
101
107
  }
102
108
  for (const aliasName of Object.keys(scope)) {
109
+ // We assume any unreferenced field can come from any of the scoped tables
103
110
  addReference(referencedFields, scope, aliasName, fieldName);
104
111
  }
105
112
  return;
106
113
  }
107
114
  case 'Not':
108
115
  case 'NotExists':
116
+ // When hitting a `Not` we invert the safety rule
109
117
  if (isSafe === IsSafe.Insert) {
110
118
  isSafe = IsSafe.Delete;
111
119
  }
112
120
  else if (isSafe === IsSafe.Delete) {
113
121
  isSafe = IsSafe.Insert;
114
122
  }
123
+ // eslint-disable-next-line no-fallthrough -- Fallthrough
115
124
  case 'Where':
116
125
  case 'And':
117
126
  case 'Exists':
@@ -125,6 +134,8 @@ const $getRuleReferencedFields = (referencedFields, rulePart, isSafe, { scope, c
125
134
  case 'Having':
126
135
  scope = { ...scope };
127
136
  for (const key of Object.keys(scope)) {
137
+ // Treat all entries under a `HAVING` as unknown since it can include counts in such a way
138
+ // that our expectations of safety do not hold
128
139
  scope[key] = { ...scope[key], isSafe: IsSafe.Unknown };
129
140
  }
130
141
  rulePart.forEach((node) => {
@@ -139,6 +150,7 @@ const $getRuleReferencedFields = (referencedFields, rulePart, isSafe, { scope, c
139
150
  throw new Error('Only COUNT(*) is supported for rule referenced fields');
140
151
  }
141
152
  for (const aliasName of currentlyScopedAliases) {
153
+ // We use '' as it means that only operations that affect every field will match against it
142
154
  addReference(referencedFields, scope, aliasName, '');
143
155
  }
144
156
  return;
@@ -192,6 +204,7 @@ const checkQuery = (query) => {
192
204
  tableName = table[1];
193
205
  }
194
206
  else if (typeof table === 'string') {
207
+ // Deprecated: Remove this when we drop implicit tables
195
208
  tableName = table;
196
209
  }
197
210
  else {
@@ -220,15 +233,22 @@ const getModifiedFields = (abstractSqlQuery) => {
220
233
  }
221
234
  };
222
235
  exports.getModifiedFields = getModifiedFields;
236
+ // TS requires this to be a funtion declaration
223
237
  function assertAbstractSqlIsNotLegacy(abstractSql) {
224
238
  if (!(0, AbstractSQLRules2SQL_1.isAbstractSqlQuery)(abstractSql)) {
225
239
  throw new Error('cannot introspect into the string form of AbstractSqlQuery');
226
240
  }
227
241
  }
242
+ // Find how many times an abstract sql fragment selects from the given table
243
+ // TODO:
244
+ // - Not all abstract sql nodes are supported here yet but hopefully nothing
245
+ // important is missing atm
246
+ // - Create missing node types
228
247
  const countTableSelects = (abstractSql, table) => {
229
248
  assertAbstractSqlIsNotLegacy(abstractSql);
230
249
  let sum = 0;
231
250
  switch (abstractSql[0]) {
251
+ // Unary nodes
232
252
  case 'Alias':
233
253
  case 'Any':
234
254
  case 'Average':
@@ -248,6 +268,7 @@ const countTableSelects = (abstractSql, table) => {
248
268
  assertAbstractSqlIsNotLegacy(unaryOperation[1]);
249
269
  return countTableSelects(unaryOperation[1], table);
250
270
  }
271
+ // `COUNT` is an unary function but we only support the `COUNT(*)` form
251
272
  case 'Count': {
252
273
  const countNode = abstractSql;
253
274
  if (countNode[1] !== '*') {
@@ -255,6 +276,7 @@ const countTableSelects = (abstractSql, table) => {
255
276
  }
256
277
  return 0;
257
278
  }
279
+ // Binary nodes
258
280
  case 'AddDateDuration':
259
281
  case 'AddDateNumber':
260
282
  case 'DateTrunc':
@@ -278,6 +300,7 @@ const countTableSelects = (abstractSql, table) => {
278
300
  return (countTableSelects(leftOperand, table) +
279
301
  countTableSelects(rightOperand, table));
280
302
  }
303
+ // Binary nodes with optional `ON` second argument
281
304
  case 'FullJoin':
282
305
  case 'Join':
283
306
  case 'LeftJoin':
@@ -290,6 +313,7 @@ const countTableSelects = (abstractSql, table) => {
290
313
  }
291
314
  return sum + countTableSelects(joinNode[1], table);
292
315
  }
316
+ // n-ary nodes
293
317
  case 'And':
294
318
  case 'Or':
295
319
  case 'SelectQuery':
@@ -302,6 +326,7 @@ const countTableSelects = (abstractSql, table) => {
302
326
  }
303
327
  return sum;
304
328
  }
329
+ // n-ary nodes but the slice starts at the third argument
305
330
  case 'In':
306
331
  case 'NotIn': {
307
332
  const inNode = abstractSql;
@@ -311,6 +336,7 @@ const countTableSelects = (abstractSql, table) => {
311
336
  }
312
337
  return sum;
313
338
  }
339
+ // n-ary-like node
314
340
  case 'Select': {
315
341
  const selectNode = abstractSql;
316
342
  for (const arg of selectNode[1]) {
@@ -319,6 +345,7 @@ const countTableSelects = (abstractSql, table) => {
319
345
  }
320
346
  return sum;
321
347
  }
348
+ // Uninteresting atomic nodes
322
349
  case 'Boolean':
323
350
  case 'Date':
324
351
  case 'Duration':
@@ -330,6 +357,7 @@ const countTableSelects = (abstractSql, table) => {
330
357
  case 'ReferencedField':
331
358
  case 'Text':
332
359
  return 0;
360
+ // The atomic node we're looking for: a table selection
333
361
  case 'Table': {
334
362
  const tableNode = abstractSql;
335
363
  if (tableNode[1] === table) {
@@ -343,6 +371,24 @@ const countTableSelects = (abstractSql, table) => {
343
371
  throw new Error(`unknown abstract sql type: ${abstractSql[0]}`);
344
372
  }
345
373
  };
374
+ // TODO:
375
+ // - This function only narrows the root table of the rule. This is always
376
+ // safe when the root table isn't selected from more than once and it is not
377
+ // negated in the LF. Right now we conservatively check for the former but
378
+ // not the second. The negative forms (e.g. it is forbidden that ...) are
379
+ // not fully supported anyway.
380
+ // - Removing multiple candidates selecting from the same database table to
381
+ // avoid visibility issues is too conservative. The correct criteria is to
382
+ // just remove any that are present in at least 2 disjoint subqueries.
383
+ // Because in this case the problem is that in those cases there is not a
384
+ // single place in the query that has visibility inside both disjoint
385
+ // subqueries and that is a requirement for adding the corrent binds for
386
+ // narrowing.
387
+ // - We assume the ID column is named "id".
388
+ // - This is a very restricted implementation of narrowing which could be
389
+ // expanded to cover more situations.
390
+ //
391
+ // This function modifies `abstractSql` in place.
346
392
  const insertAffectedIdsBinds = (abstractSql, lfRuleInfo) => {
347
393
  const rootTableSelectCount = countTableSelects(abstractSql, lfRuleInfo.root.table);
348
394
  if (rootTableSelectCount !== 1) {
@@ -357,6 +403,9 @@ const insertAffectedIdsBinds = (abstractSql, lfRuleInfo) => {
357
403
  ['Any', ['Bind', lfRuleInfo.root.table], 'Integer'],
358
404
  ],
359
405
  ];
406
+ // Assume (but check) that the query is of the form:
407
+ //
408
+ // SELECT (SELECT COUNT(*) ...) = 0
360
409
  if (abstractSql[0] !== 'Equals' ||
361
410
  abstractSql[1][0] !== 'SelectQuery' ||
362
411
  abstractSql[2][0] !== 'Number') {
@@ -1 +1 @@
1
- {"version":3,"file":"referenced-fields.js","sourceRoot":"","sources":["../src/referenced-fields.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"referenced-fields.js","sourceRoot":"","sources":["../src/referenced-fields.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@balena/abstract-sql-compiler",
3
- "version": "10.6.1-build-dev-deps-444f515b81454a512eaf3a28f49f7b25938b4b9c-1",
3
+ "version": "10.6.2-build-include-comments-7045c5bd5244459330a7899ad0fbb974a429ca14-1",
4
4
  "description": "A translator for abstract sql into sql.",
5
5
  "type": "commonjs",
6
6
  "main": "out/AbstractSQLCompiler.js",
@@ -56,6 +56,6 @@
56
56
  "npm": ">=10.7.0"
57
57
  },
58
58
  "versionist": {
59
- "publishedAt": "2025-07-16T11:34:00.733Z"
59
+ "publishedAt": "2025-07-16T12:40:30.722Z"
60
60
  }
61
61
  }
package/tsconfig.json CHANGED
@@ -8,7 +8,6 @@
8
8
  "noUnusedParameters": true,
9
9
  "noUnusedLocals": true,
10
10
  "preserveConstEnums": true,
11
- "removeComments": true,
12
11
  "sourceMap": true,
13
12
  "declaration": true,
14
13
  "skipLibCheck": true,