@malloydata/malloy 0.0.190 → 0.0.191-dev240925232958

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 (90) hide show
  1. package/dist/lang/ast/expressions/constant-expression.js +4 -1
  2. package/dist/lang/ast/expressions/expr-aggregate-function.js +25 -14
  3. package/dist/lang/ast/expressions/expr-alternation-tree.js +1 -3
  4. package/dist/lang/ast/expressions/expr-cast.js +1 -1
  5. package/dist/lang/ast/expressions/expr-coalesce.js +1 -1
  6. package/dist/lang/ast/expressions/expr-func.js +20 -31
  7. package/dist/lang/ast/expressions/expr-granular-time.js +1 -1
  8. package/dist/lang/ast/expressions/expr-id-reference.js +1 -3
  9. package/dist/lang/ast/expressions/expr-props.js +8 -8
  10. package/dist/lang/ast/expressions/expr-time-extract.js +7 -13
  11. package/dist/lang/ast/expressions/expr-ungroup.js +4 -8
  12. package/dist/lang/ast/expressions/for-range.js +2 -3
  13. package/dist/lang/ast/expressions/function-ordering.js +6 -6
  14. package/dist/lang/ast/expressions/partial-compare.js +1 -3
  15. package/dist/lang/ast/expressions/pick-when.js +30 -20
  16. package/dist/lang/ast/expressions/range.js +1 -1
  17. package/dist/lang/ast/expressions/top-by.js +1 -1
  18. package/dist/lang/ast/field-space/dynamic-space.js +1 -1
  19. package/dist/lang/ast/field-space/index-field-space.js +6 -6
  20. package/dist/lang/ast/field-space/parameter-space.js +14 -3
  21. package/dist/lang/ast/field-space/project-field-space.js +1 -1
  22. package/dist/lang/ast/field-space/query-spaces.d.ts +2 -1
  23. package/dist/lang/ast/field-space/query-spaces.js +7 -6
  24. package/dist/lang/ast/field-space/reference-field.js +1 -1
  25. package/dist/lang/ast/field-space/refined-space.js +3 -3
  26. package/dist/lang/ast/field-space/static-space.js +11 -2
  27. package/dist/lang/ast/parameters/has-parameter.js +4 -4
  28. package/dist/lang/ast/query-builders/index-builder.js +4 -4
  29. package/dist/lang/ast/query-builders/project-builder.js +2 -2
  30. package/dist/lang/ast/query-builders/reduce-builder.js +5 -5
  31. package/dist/lang/ast/query-elements/anonymous-query.js +1 -1
  32. package/dist/lang/ast/query-elements/query-reference.js +2 -2
  33. package/dist/lang/ast/query-items/field-declaration.js +7 -4
  34. package/dist/lang/ast/query-items/field-references.js +1 -1
  35. package/dist/lang/ast/query-items/typecheck_utils.js +31 -11
  36. package/dist/lang/ast/query-properties/filters.js +4 -4
  37. package/dist/lang/ast/query-properties/ordering.js +3 -3
  38. package/dist/lang/ast/query-properties/qop-desc.js +2 -2
  39. package/dist/lang/ast/query-properties/top.js +5 -5
  40. package/dist/lang/ast/query-utils.js +1 -1
  41. package/dist/lang/ast/source-elements/named-source.d.ts +2 -2
  42. package/dist/lang/ast/source-elements/named-source.js +12 -13
  43. package/dist/lang/ast/source-elements/refined-source.js +9 -7
  44. package/dist/lang/ast/source-elements/sql-source.js +5 -5
  45. package/dist/lang/ast/source-elements/table-source.js +2 -2
  46. package/dist/lang/ast/source-properties/joins.js +6 -6
  47. package/dist/lang/ast/source-properties/renames.js +3 -3
  48. package/dist/lang/ast/source-query-elements/source-query-element.d.ts +2 -1
  49. package/dist/lang/ast/source-query-elements/source-query-element.js +3 -2
  50. package/dist/lang/ast/source-query-elements/sq-arrow.js +2 -2
  51. package/dist/lang/ast/source-query-elements/sq-extend.js +1 -1
  52. package/dist/lang/ast/source-query-elements/sq-reference.js +5 -5
  53. package/dist/lang/ast/source-query-elements/sq-refine.js +2 -2
  54. package/dist/lang/ast/source-query-elements/sq-source.js +1 -1
  55. package/dist/lang/ast/sql-elements/sql-string.js +2 -2
  56. package/dist/lang/ast/statements/define-query.js +2 -2
  57. package/dist/lang/ast/statements/define-source.js +3 -3
  58. package/dist/lang/ast/statements/import-statement.js +7 -7
  59. package/dist/lang/ast/struct-utils.js +1 -1
  60. package/dist/lang/ast/types/expression-def.js +21 -22
  61. package/dist/lang/ast/types/lookup-result.d.ts +5 -1
  62. package/dist/lang/ast/types/malloy-element.d.ts +8 -5
  63. package/dist/lang/ast/types/malloy-element.js +33 -27
  64. package/dist/lang/ast/view-elements/qop-desc-view.js +3 -3
  65. package/dist/lang/ast/view-elements/reference-view.js +6 -6
  66. package/dist/lang/ast/view-elements/refine-utils.js +6 -6
  67. package/dist/lang/ast/view-elements/view-arrow.js +1 -1
  68. package/dist/lang/ast/view-elements/view-refine.js +1 -1
  69. package/dist/lang/malloy-to-ast.d.ts +7 -7
  70. package/dist/lang/malloy-to-ast.js +56 -55
  71. package/dist/lang/parse-log.d.ts +323 -6
  72. package/dist/lang/parse-log.js +62 -16
  73. package/dist/lang/parse-malloy.d.ts +5 -3
  74. package/dist/lang/parse-malloy.js +22 -31
  75. package/dist/lang/test/annotation.spec.js +4 -4
  76. package/dist/lang/test/expressions.spec.js +93 -74
  77. package/dist/lang/test/imports.spec.js +5 -5
  78. package/dist/lang/test/lenses.spec.js +18 -18
  79. package/dist/lang/test/literals.spec.js +1 -1
  80. package/dist/lang/test/locations.spec.js +5 -5
  81. package/dist/lang/test/parameters.spec.js +34 -34
  82. package/dist/lang/test/parse-expects.d.ts +10 -28
  83. package/dist/lang/test/parse-expects.js +38 -33
  84. package/dist/lang/test/parse.spec.js +49 -49
  85. package/dist/lang/test/query.spec.js +82 -82
  86. package/dist/lang/test/source.spec.js +6 -6
  87. package/dist/lang/test/test-translator.d.ts +19 -0
  88. package/dist/lang/test/test-translator.js +20 -1
  89. package/dist/tags.js +4 -2
  90. package/package.json +1 -1
@@ -23,7 +23,7 @@
23
23
  * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
24
24
  */
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.exprToString = exports.getSelectOneStruct = exports.markSource = exports.makeModelFunc = exports.model = exports.expr = exports.getJoinField = exports.getQueryField = exports.getQueryFieldDef = exports.getFieldDef = exports.getModelQuery = exports.getExplore = exports.BetaExpression = exports.TestTranslator = exports.TestChildTranslator = exports.aTableDef = exports.pretty = void 0;
26
+ exports.warningMessage = exports.errorMessage = exports.warning = exports.error = exports.exprToString = exports.getSelectOneStruct = exports.markSource = exports.makeModelFunc = exports.model = exports.expr = exports.getJoinField = exports.getQueryField = exports.getQueryFieldDef = exports.getFieldDef = exports.getModelQuery = exports.getExplore = exports.BetaExpression = exports.TestTranslator = exports.TestChildTranslator = exports.aTableDef = exports.pretty = void 0;
27
27
  const util_1 = require("util");
28
28
  const malloy_types_1 = require("../../model/malloy_types");
29
29
  const ast_1 = require("../ast");
@@ -312,6 +312,7 @@ class TestTranslator extends parse_malloy_1.MalloyTranslator {
312
312
  if (whatImports) {
313
313
  mysterious = false;
314
314
  this.logger.log({
315
+ code: 'missing-imports',
315
316
  at: this.defaultLocation(),
316
317
  message: `Missing imports: ${whatImports.join(',')}`,
317
318
  severity: 'error',
@@ -321,6 +322,7 @@ class TestTranslator extends parse_malloy_1.MalloyTranslator {
321
322
  if (needThese) {
322
323
  mysterious = false;
323
324
  this.logger.log({
325
+ code: 'missing-schema',
324
326
  at: this.defaultLocation(),
325
327
  message: `Missing schema: ${needThese.join(',')}`,
326
328
  severity: 'error',
@@ -328,6 +330,7 @@ class TestTranslator extends parse_malloy_1.MalloyTranslator {
328
330
  }
329
331
  if (mysterious) {
330
332
  this.logger.log({
333
+ code: 'mysterious-translation-failure',
331
334
  at: this.defaultLocation(),
332
335
  message: 'mysterious translation failure',
333
336
  severity: 'error',
@@ -589,4 +592,20 @@ function exprToString(e, symbols = {}) {
589
592
  return `{${e.node}}`;
590
593
  }
591
594
  exports.exprToString = exprToString;
595
+ function error(code, data) {
596
+ return { code, data, severity: 'error' };
597
+ }
598
+ exports.error = error;
599
+ function warning(code, data) {
600
+ return { code, data, severity: 'warn' };
601
+ }
602
+ exports.warning = warning;
603
+ function errorMessage(message) {
604
+ return { message, severity: 'error' };
605
+ }
606
+ exports.errorMessage = errorMessage;
607
+ function warningMessage(message) {
608
+ return { message, severity: 'warn' };
609
+ }
610
+ exports.warningMessage = warningMessage;
592
611
  //# sourceMappingURL=test-translator.js.map
package/dist/tags.js CHANGED
@@ -272,13 +272,14 @@ class TagErrorListener {
272
272
  };
273
273
  const range = { start: errAt, end: errAt };
274
274
  const logMsg = {
275
+ code: 'tag-parse-syntax-error',
275
276
  message: msg,
276
277
  at: { url: this.sourceURL, range },
277
278
  severity: 'error',
278
279
  };
279
280
  this.log.push(logMsg);
280
281
  }
281
- semanticError(cx, msg) {
282
+ semanticError(cx, code, msg) {
282
283
  const errAt = {
283
284
  line: this.atLine,
284
285
  // mtoy TODO get this right
@@ -286,6 +287,7 @@ class TagErrorListener {
286
287
  };
287
288
  const range = { start: errAt, end: errAt };
288
289
  const logMsg = {
290
+ code,
289
291
  message: msg,
290
292
  at: { url: this.sourceURL, range },
291
293
  severity: 'error',
@@ -435,7 +437,7 @@ class TaglineParser extends tree_1.AbstractParseTreeVisitor {
435
437
  break;
436
438
  }
437
439
  }
438
- this.msgLog.semanticError(ctx, `Reference to undefined property ${path.join('.')}`);
440
+ this.msgLog.semanticError(ctx, 'tag-property-not-found', `Reference to undefined property ${path.join('.')}`);
439
441
  return this.defaultResult();
440
442
  }
441
443
  visitTagEq(ctx) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@malloydata/malloy",
3
- "version": "0.0.190",
3
+ "version": "0.0.191-dev240925232958",
4
4
  "license": "MIT",
5
5
  "exports": {
6
6
  ".": "./dist/index.js",