Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 19 additions & 21 deletions .github/workflows/ci-workflow.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,56 +7,54 @@ jobs:
name: Check npm audit
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
- uses: actions/checkout@v6
- uses: actions/setup-node@v6
with:
node-version: '18.x'
node-version: 24.x
- run: npm audit
env:
CI: true
cql4browsers:
name: Check cql4browsers
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
- uses: actions/checkout@v6
- uses: actions/setup-node@v6
with:
node-version: '18.x'
node-version: 24.x
- run: ./bin/validate_cql4browsers.sh
env:
CI: true
lint:
name: Check lint and prettier
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
- uses: actions/checkout@v6
- uses: actions/setup-node@v6
with:
node-version: '18.x'
node-version: 24.x
- run: npm install
- run: npm run lint
- run: npm run prettier
env:
CI: true
- run: ./bin/check_for_nonassertive_tests.sh
test:
name: Test on node 18 and ubuntu-latest
name: Test using Node ${{ matrix.node }} on ubuntu-latest
runs-on: ubuntu-latest
strategy:
matrix:
node: [18.x, 22.x, 24.x]
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
- uses: actions/checkout@v6
- uses: actions/setup-node@v6
with:
node-version: '18.x'
node-version: ${{ matrix.node }}
- name: Set timezone to America/New_York
uses: zcong1993/setup-timezone@master
with:
timezone: America/New_York
- run: date +"%Y-%m-%d %T"
- run: npm install
- run: ./bin/check_for_nonassertive_tests.sh
- run: npx nyc --reporter=lcov npm test
env:
CI: true
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v4
if: ${{ matrix.node == '24.x' }}
uses: codecov/codecov-action@v5
with:
token: ${{ secrets.CODECOV_TOKEN }}
1 change: 1 addition & 0 deletions .tool-versions
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
java temurin-17.0.17+10
gradle 9.3.0
nodejs 24.14.0
4 changes: 3 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -62,9 +62,11 @@ The above is a partial list covering the most significant limitations. For more

To use this project, you should perform the following steps:

1. Install [Node.js](http://nodejs.org/) (Note: `npm` version `6.x.x` recommended)
1. Install [Node.js](http://nodejs.org/) LTS<sup>*</sup>
2. Execute the following from the root directory: `npm install`

<sup>*</sup> This project is primarily developed and tested using Node 24.x, but all versions >= 18.x are expected to work. Since Node 18.x has reached end-of-life, developers should consider this project's support for Node 18.x to be _deprecated_.

# To Execute Your CQL

Please note that while the CQL Execution library supports many aspects of CQL, it does not support
Expand Down
23 changes: 22 additions & 1 deletion examples/browser/cql4browsers.js
Original file line number Diff line number Diff line change
Expand Up @@ -17348,6 +17348,10 @@ exports.UnitTables = UnitTables;
(isImmutable(value) || Array.isArray(value) || isPlainObject(value)));
}

function isProtoKey(key) {
return (typeof key === 'string' && (key === '__proto__' || key === 'constructor'));
}

// http://jsperf.com/copy-array-inline
function arrCopy(arr, offset) {
offset = offset || 0;
Expand All @@ -17366,6 +17370,9 @@ exports.UnitTables = UnitTables;
}
var to = {};
for (var key in from) {
if (isProtoKey(key)) {
continue;
}
if (hasOwnProperty.call(from, key)) {
to[key] = from[key];
}
Expand Down Expand Up @@ -17430,6 +17437,10 @@ exports.UnitTables = UnitTables;
merged.push(value);
}
: function (value, key) {
if (isProtoKey(key)) {
return;
}

var hasVal = hasOwnProperty.call(merged, key);
var nextVal =
hasVal && merger ? merger(merged[key], value, key) : value;
Expand Down Expand Up @@ -18417,6 +18428,9 @@ exports.UnitTables = UnitTables;
}

function set(collection, key, value) {
if (typeof key === 'string' && isProtoKey(key)) {
return collection;
}
if (!isDataStructure(collection)) {
throw new TypeError('Cannot update non-data-structure value: ' + collection);
}
Expand Down Expand Up @@ -20133,6 +20147,10 @@ exports.UnitTables = UnitTables;
assertNotInfinite(this.size);
var object = {};
this.__iterate(function (v, k) {
if (isProtoKey(k)) {
return;
}

object[k] = v;
});
return object;
Expand All @@ -20153,6 +20171,9 @@ exports.UnitTables = UnitTables;
var result$1 = {};
// @ts-expect-error `__iterate` exists on all Keyed collections but method is not defined in the type
value.__iterate(function (v, k) {
if (isProtoKey(k)) {
return;
}
result$1[k] = toJS(v);
});
return result$1;
Expand Down Expand Up @@ -21329,7 +21350,7 @@ exports.UnitTables = UnitTables;
return isIndexed(v) ? v.toList() : isKeyed(v) ? v.toMap() : v.toSet();
}

var version = "5.1.4";
var version = "5.1.5";

/* eslint-disable import/order */

Expand Down
Loading
Loading