handsontable and @handsontable/angular-wrapper 18.0.0 -> 18.1.1, plus the two repo-owned places that pin the version. 18.1 fixes two bugs this repo's specs had pinned as failure modes: - "Sheet size limit exceeded" (upstream #10672): the formulas plugin used to push the grid's maxRows into the HyperFormula engine as its sheet size limit, so a licensing cap below an existing table's row count made the engine reject the whole table. initSetup works around it with Math.max(dataSource.length, editor_rows_allowed). - Formula corruption on updateSettings while a sort is active: a bare {} settings object was enough to turn formula cells into #REF!. updateSettingsSortSafe clears and restores the sort around every call. Both specs now assert the fixed behaviour instead, so a future regression shows up. DC's own workarounds are untouched. 18.1.1 also fixes a filters plugin crash that lands on DC's usage exactly (upstream #13480): editing a cell in a filtered column, or replacing the data with a filter active, after updateSettings() with the filters option. The Angular wrapper calls updateSettings on every update, and DC's viewer and viewboxes run filters: true. 18.1.0 is mostly a performance release (viewport cell-meta release, index translation, single-pass layout, bulk operations). Also: - licenseChecker.js: add the 18.1.1 handsontable packages to excludePackages, or the build stops at the license-checker step (the library's licence string is non-standard). - _hot-icons.scss: regenerated by scripts/gen-hot-icons.mjs; drops the Pikaday rules because 18.1 removed the leftover Pikaday theme styles. - dc-validator.spec.ts: 18.1 tightened ColumnSettings['validator'] to its real union (RemoveIndexSignature), so narrow it the way the production code already does.
29 lines
1.2 KiB
JavaScript
29 lines
1.2 KiB
JavaScript
const licenseChecker = require('license-checker')
|
|
|
|
const check = (cwd) => {
|
|
return new Promise((resolve, reject) => {
|
|
licenseChecker.init(
|
|
{
|
|
production: true,
|
|
start: cwd,
|
|
excludePrivatePackages: true,
|
|
onlyAllow:
|
|
'AFLv2.1;Apache 2.0;Apache-2.0;Apache*;Artistic-2.0;BlueOak-1.0.0;0BSD;BSD*;BSD-2-Clause;BSD-3-Clause;CC0-1.0;CC-BY-3.0;CC-BY-4.0;ISC;MIT;MPL-2.0;ODC-By-1.0;Python-2.0;Unlicense;',
|
|
excludePackages:
|
|
'@cds/city@1.1.0;@handsontable/angular-wrapper@16.0.1;@handsontable/angular-wrapper@17.1.0;@handsontable/angular-wrapper@18.0.0;@handsontable/angular-wrapper@18.1.1;handsontable@^16.0.1;handsontable@16.2.0;handsontable@17.1.0;handsontable@18.0.0;handsontable@18.1.1;hyperformula@2.7.1;hyperformula@3.0.0;hyperformula@3.1.0;hyperformula@3.2.0;hyperformula@3.3.0;jackspeak@3.4.3;path-scurry@1.11.1;package-json-from-dist@1.0.1;buffers@0.1.1'
|
|
},
|
|
(error, json) => {
|
|
if (error) {
|
|
reject(error)
|
|
} else {
|
|
resolve(json)
|
|
}
|
|
}
|
|
)
|
|
})
|
|
}
|
|
|
|
check(process.cwd(), true)
|
|
.then((res) => console.log('All packages are licensed properly'))
|
|
.catch((err) => console.log('license checker err', err))
|