@balena/pinejs 20.0.3 → 20.0.4-build-fix-regression--5eac96faefde83ce9d1964b407cf6a490df83920-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,3 +1,22 @@
1
+ - commits:
2
+ - subject: Fix missing required validation on bindings
3
+ hash: 5eac96faefde83ce9d1964b407cf6a490df83920
4
+ body: |
5
+ In previous commit `bdb34d` the code path for `getAndCheckBindValues` was simplified
6
+ considering the declared type of `{dataType: string}`. That typing is not complete and thus the simplification was wrong.
7
+
8
+ The field property may also contain a `required` property which is used for doing oData validation (from sbvr-types)
9
+ In that simplification we excluded the required information for bound variables: https://github.com/balena-io/pinejs/commit/bdb34d9df39e0d9d00db492cbb1ef6dfc61e8450#diff-abade937407ef92d95cd36b5719e481229475da7d3f8bdc613bebef8971c35d2R107
10
+
11
+ This reverts back the code simplification but keeping the necessary changes for List binding type.
12
+ footer:
13
+ Change-type: patch
14
+ change-type: patch
15
+ author: Otavio Jacobi
16
+ nested: []
17
+ version: 20.0.4
18
+ title: ""
19
+ date: 2025-02-14T00:29:34.580Z
1
20
  - commits:
2
21
  - subject: Compile in as (= ANY($singleListBinding))
3
22
  hash: bdb34d9df39e0d9d00db492cbb1ef6dfc61e8450
@@ -1599,6 +1618,7 @@
1599
1618
  hash: be8fc31c3754186dd4c43ca8d4c056b0def7ffbd
1600
1619
  body: >
1601
1620
 
1621
+
1602
1622
  As balena-lint
1603
1623
  rejects `new
1604
1624
  Boolean()`, `new
@@ -1620,11 +1640,12 @@
1620
1640
  hash: 46a369117c9d1222089498a8794c32d14edef85b
1621
1641
  body: >
1622
1642
 
1623
- As engine and
1624
- npm is now required
1625
- as part of
1626
- package.json we can
1627
- drop this dependency
1643
+
1644
+ As engine and npm is
1645
+ now required as part
1646
+ of package.json we
1647
+ can drop this
1648
+ dependency
1628
1649
  footer:
1629
1650
  Change-type: patch
1630
1651
  change-type: patch
@@ -1656,6 +1677,7 @@
1656
1677
  hash: 1819ee97811e20da93c6e0f227db6a62ada8c00e
1657
1678
  body: >
1658
1679
 
1680
+
1659
1681
  Ensure that the
1660
1682
  input passed in for
1661
1683
  JSON types is either
@@ -1755,9 +1777,9 @@
1755
1777
  hash: 19c2760ecf76b4097d7d3045c2eefbf74fd7c2da
1756
1778
  body: >
1757
1779
 
1758
- This also
1759
- deprecates the
1760
- legacy version
1780
+
1781
+ This also deprecates
1782
+ the legacy version
1761
1783
  footer:
1762
1784
  Change-type: minor
1763
1785
  change-type: minor
@@ -1783,10 +1805,11 @@
1783
1805
  hash: 1c25d9b8d011791a9e98a5929ad48cdd9f3bab6b
1784
1806
  body: >
1785
1807
 
1786
- It can in fact
1787
- be a lot of
1788
- different things and
1789
- that is now also
1808
+
1809
+ It can in fact be a
1810
+ lot of different
1811
+ things and that is
1812
+ now also
1790
1813
 
1791
1814
  reflected in the
1792
1815
  typing
@@ -1811,11 +1834,11 @@
1811
1834
  hash: 6fcb2c4257f9fc50f6b4b1070dec86ace9f71237
1812
1835
  body: >
1813
1836
 
1814
- We know what
1815
- type they return and
1816
- they should be
1817
- explicitly accepted
1818
- as
1837
+
1838
+ We know what type
1839
+ they return and they
1840
+ should be explicitly
1841
+ accepted as
1819
1842
 
1820
1843
  those types instead
1821
1844
  where it is valid to
@@ -1845,6 +1868,7 @@
1845
1868
  hash: 39058b2dacac51da96158d594b2d72e3238d0cbc
1846
1869
  body: >
1847
1870
 
1871
+
1848
1872
  Update
1849
1873
  @balena/sbvr-types
1850
1874
  from 3.4.18 to 3.5.0
@@ -1989,10 +2013,11 @@
1989
2013
  hash: d589fb6cd92a3a7570e3b2ebea14acbb84807d8a
1990
2014
  body: >
1991
2015
 
1992
- This also
1993
- deprecates the
1994
- legacy use of direct
1995
- true/false entries
2016
+
2017
+ This also deprecates
2018
+ the legacy use of
2019
+ direct true/false
2020
+ entries
1996
2021
  footer:
1997
2022
  Change-type: minor
1998
2023
  change-type: minor
@@ -2898,7 +2923,7 @@
2898
2923
  date: 2025-01-29T15:24:40.161Z
2899
2924
  version: 20.0.3
2900
2925
  title: ""
2901
- date: 2025-02-11T16:05:48.018Z
2926
+ date: 2025-02-11T16:46:22.425Z
2902
2927
  - commits:
2903
2928
  - subject: "Migrations.md: Update the rollbackable migrations guide"
2904
2929
  hash: 192216f3f07fa8637bc024bb634227d1b09b26d8
@@ -5104,6 +5129,7 @@
5104
5129
 
5105
5130
 
5106
5131
 
5132
+
5107
5133
 
5108
5134
 
5109
5135
  As balena-lint
@@ -5153,6 +5179,7 @@
5153
5179
 
5154
5180
 
5155
5181
 
5182
+
5156
5183
 
5157
5184
 
5158
5185
  As engine and npm is
@@ -5217,6 +5244,7 @@
5217
5244
 
5218
5245
 
5219
5246
 
5247
+
5220
5248
 
5221
5249
 
5222
5250
  Ensure that the
@@ -5344,6 +5372,7 @@
5344
5372
 
5345
5373
 
5346
5374
 
5375
+
5347
5376
 
5348
5377
 
5349
5378
  This also deprecates
@@ -5399,6 +5428,7 @@
5399
5428
 
5400
5429
 
5401
5430
 
5431
+
5402
5432
 
5403
5433
 
5404
5434
  It can in fact be a
@@ -5455,6 +5485,7 @@
5455
5485
 
5456
5486
 
5457
5487
 
5488
+
5458
5489
 
5459
5490
 
5460
5491
  We know what type
@@ -5516,6 +5547,7 @@
5516
5547
 
5517
5548
 
5518
5549
 
5550
+
5519
5551
 
5520
5552
 
5521
5553
  Update
@@ -5688,6 +5720,7 @@
5688
5720
 
5689
5721
 
5690
5722
 
5723
+
5691
5724
 
5692
5725
 
5693
5726
  This also deprecates
package/CHANGELOG.md CHANGED
@@ -4,6 +4,11 @@ All notable changes to this project will be documented in this file
4
4
  automatically by Versionist. DO NOT EDIT THIS FILE MANUALLY!
5
5
  This project adheres to [Semantic Versioning](http://semver.org/).
6
6
 
7
+ # v20.0.4
8
+ ## (2025-02-14)
9
+
10
+ * Fix missing required validation on bindings [Otavio Jacobi]
11
+
7
12
  # v20.0.3
8
13
  ## (2025-02-11)
9
14
 
package/VERSION CHANGED
@@ -1 +1 @@
1
- 20.0.3
1
+ 20.0.4
@@ -46,7 +46,7 @@ export const getAndCheckBindValues = async (request, bindings) => {
46
46
  const sqlModelTables = sbvrUtils.getAbstractSqlModel(request).tables;
47
47
  return await Promise.all(bindings.map(async (binding) => {
48
48
  let fieldName = '';
49
- let dataType;
49
+ let field;
50
50
  let value;
51
51
  if (binding[0] === 'Bind') {
52
52
  const bindValue = binding[1];
@@ -66,42 +66,48 @@ export const getAndCheckBindValues = async (request, bindings) => {
66
66
  if (maybeField == null) {
67
67
  throw new Error(`Could not find field '${fieldName}'`);
68
68
  }
69
- dataType = maybeField.dataType;
69
+ field = maybeField;
70
70
  }
71
71
  else if (Number.isInteger(bindValue)) {
72
72
  if (bindValue >= odataBinds.length) {
73
73
  console.error(`Invalid binding number '${bindValue}' for binds: `, odataBinds);
74
74
  throw new Error('Invalid binding');
75
75
  }
76
+ let dataType;
76
77
  [dataType, value] = odataBinds[bindValue];
78
+ field = { dataType };
77
79
  }
78
80
  else if (typeof bindValue === 'string') {
79
81
  if (!Object.hasOwn(odataBinds, bindValue)) {
80
82
  console.error(`Invalid binding '${bindValue}' for binds: `, odataBinds);
81
83
  throw new Error('Invalid binding');
82
84
  }
85
+ let dataType;
83
86
  [dataType, value] = odataBinds[bindValue];
87
+ field = { dataType };
84
88
  }
85
89
  else {
86
90
  throw new Error(`Unknown binding: ${binding}`);
87
91
  }
88
92
  }
89
93
  else {
94
+ let dataType;
90
95
  [dataType, value] = binding;
96
+ field = { dataType };
91
97
  }
92
98
  if (value === undefined) {
93
99
  throw new Error(`Bind value cannot be undefined: ${binding}`);
94
100
  }
95
101
  try {
96
- return await validateBindingType(engine, value, dataType);
102
+ return await validateBindingType(engine, value, field);
97
103
  }
98
104
  catch (err) {
99
105
  throw new BadRequestError(`"${fieldName}" ${err.message}`);
100
106
  }
101
107
  }));
102
108
  };
103
- const validateBindingType = async (engine, $value, $dataType) => {
104
- if ($dataType === 'List') {
109
+ const validateBindingType = async (engine, $value, field) => {
110
+ if (field.dataType === 'List') {
105
111
  if (!Array.isArray($value)) {
106
112
  throw new Error('List value binding must be an array');
107
113
  }
@@ -109,12 +115,10 @@ const validateBindingType = async (engine, $value, $dataType) => {
109
115
  if (dataType === 'Null') {
110
116
  return null;
111
117
  }
112
- return await validateBindingType(engine, value, dataType);
118
+ return await validateBindingType(engine, value, { dataType });
113
119
  }));
114
120
  }
115
- return await AbstractSQLCompiler[engine].dataTypeValidate($value, {
116
- dataType: $dataType,
117
- });
121
+ return await AbstractSQLCompiler[engine].dataTypeValidate($value, field);
118
122
  };
119
123
  const checkModifiedFields = (ruleReferencedFields, modifiedFields) => {
120
124
  const refs = ruleReferencedFields[modifiedFields.table];
@@ -1 +1 @@
1
- {"version":3,"file":"abstract-sql.js","sourceRoot":"","sources":["../../src/sbvr-api/abstract-sql.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"abstract-sql.js","sourceRoot":"","sources":["../../src/sbvr-api/abstract-sql.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@balena/pinejs",
3
- "version": "20.0.3",
3
+ "version": "20.0.4-build-fix-regression--5eac96faefde83ce9d1964b407cf6a490df83920-1",
4
4
  "main": "out/server-glue/module.js",
5
5
  "type": "module",
6
6
  "repository": "git@github.com:balena-io/pinejs.git",
@@ -148,6 +148,6 @@
148
148
  "recursive": true
149
149
  },
150
150
  "versionist": {
151
- "publishedAt": "2025-02-11T16:05:50.126Z"
151
+ "publishedAt": "2025-02-14T00:29:35.598Z"
152
152
  }
153
153
  }
@@ -79,7 +79,7 @@ export const getAndCheckBindValues = async (
79
79
  return await Promise.all(
80
80
  bindings.map(async (binding) => {
81
81
  let fieldName = '';
82
- let dataType: string;
82
+ let field: { dataType: string; required?: boolean };
83
83
  let value: any;
84
84
  if (binding[0] === 'Bind') {
85
85
  const bindValue = binding[1];
@@ -104,7 +104,7 @@ export const getAndCheckBindValues = async (
104
104
  if (maybeField == null) {
105
105
  throw new Error(`Could not find field '${fieldName}'`);
106
106
  }
107
- dataType = maybeField.dataType;
107
+ field = maybeField;
108
108
  } else if (Number.isInteger(bindValue)) {
109
109
  if (bindValue >= odataBinds.length) {
110
110
  console.error(
@@ -113,7 +113,9 @@ export const getAndCheckBindValues = async (
113
113
  );
114
114
  throw new Error('Invalid binding');
115
115
  }
116
+ let dataType;
116
117
  [dataType, value] = odataBinds[bindValue];
118
+ field = { dataType };
117
119
  } else if (typeof bindValue === 'string') {
118
120
  if (!Object.hasOwn(odataBinds, bindValue)) {
119
121
  console.error(
@@ -122,12 +124,16 @@ export const getAndCheckBindValues = async (
122
124
  );
123
125
  throw new Error('Invalid binding');
124
126
  }
127
+ let dataType;
125
128
  [dataType, value] = odataBinds[bindValue as BindKey];
129
+ field = { dataType };
126
130
  } else {
127
131
  throw new Error(`Unknown binding: ${binding}`);
128
132
  }
129
133
  } else {
134
+ let dataType;
130
135
  [dataType, value] = binding;
136
+ field = { dataType };
131
137
  }
132
138
 
133
139
  if (value === undefined) {
@@ -135,7 +141,7 @@ export const getAndCheckBindValues = async (
135
141
  }
136
142
 
137
143
  try {
138
- return await validateBindingType(engine, value, dataType);
144
+ return await validateBindingType(engine, value, field);
139
145
  } catch (err: any) {
140
146
  throw new BadRequestError(`"${fieldName}" ${err.message}`);
141
147
  }
@@ -146,9 +152,9 @@ export const getAndCheckBindValues = async (
146
152
  const validateBindingType = async (
147
153
  engine: Engines,
148
154
  $value: any,
149
- $dataType: string,
155
+ field: { dataType: string; required?: boolean },
150
156
  ): Promise<any> => {
151
- if ($dataType === 'List') {
157
+ if (field.dataType === 'List') {
152
158
  if (!Array.isArray($value)) {
153
159
  throw new Error('List value binding must be an array');
154
160
  }
@@ -158,13 +164,11 @@ const validateBindingType = async (
158
164
  if (dataType === 'Null') {
159
165
  return null;
160
166
  }
161
- return await validateBindingType(engine, value, dataType);
167
+ return await validateBindingType(engine, value, { dataType });
162
168
  }),
163
169
  );
164
170
  }
165
- return await AbstractSQLCompiler[engine].dataTypeValidate($value, {
166
- dataType: $dataType,
167
- });
171
+ return await AbstractSQLCompiler[engine].dataTypeValidate($value, field);
168
172
  };
169
173
 
170
174
  const checkModifiedFields = (