Skip to content

Commit d30eeab

Browse files
committed
3.1.1
2 parents af30acd + 23d644e commit d30eeab

File tree

108 files changed

+5758
-1960
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

108 files changed

+5758
-1960
lines changed

.eslintrc.js

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,13 @@ module.exports = {
66
'@typescript-eslint',
77
'license-header',
88
'jsdoc',
9+
'jasmine',
10+
'jest',
911
],
12+
env: {
13+
jasmine: true,
14+
'jest/globals': true,
15+
},
1016
parserOptions: {
1117
tsconfigRootDir: __dirname,
1218
project: './tsconfig.test.json',
@@ -17,6 +23,9 @@ module.exports = {
1723
'plugin:@typescript-eslint/eslint-recommended',
1824
'plugin:@typescript-eslint/recommended',
1925
'plugin:@typescript-eslint/recommended-requiring-type-checking',
26+
'plugin:jasmine/recommended',
27+
'plugin:jest/recommended',
28+
'plugin:jest/style',
2029
],
2130
rules: {
2231
// Automatic fixers
@@ -113,6 +122,13 @@ module.exports = {
113122
MethodDefinition: true,
114123
}
115124
}],
125+
'jest/no-jasmine-globals': 'off',
126+
'jest/no-alias-methods': 'off',
127+
'jest/no-conditional-expect': 'warn',
128+
'jest/no-standalone-expect': 'warn',
129+
'jest/no-test-prefixes': 'off',
130+
'jest/prefer-to-be': 'warn',
131+
'jest/prefer-to-have-length': 'off',
116132
},
117133
overrides: [
118134
{
@@ -127,5 +143,11 @@ module.exports = {
127143
'sort-keys': ['error', 'asc'],
128144
}
129145
},
146+
{
147+
files: ['**/*.spec.ts'],
148+
rules: {
149+
'@typescript-eslint/no-non-null-assertion': 'off',
150+
}
151+
}
130152
],
131153
}

.github/workflows/audit.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,4 +32,4 @@ jobs:
3232

3333
- name: Run audit
3434
run: |
35-
npm audit --omit='dev'
35+
npm run audit

CHANGELOG.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,13 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
77

88
## [Unreleased]
99

10+
## [3.1.1] - 2025-12-18
11+
12+
### Fixed
13+
14+
- Fixed an issue where cells were not recalculated after adding, removing and renaming sheets. [#1116](https://github.com/handsontable/hyperformula/issues/1116)
15+
- Fixed an issue where overwriting a non-computed cell caused the `Value of the formula cell is not computed` error. [#1194](https://github.com/handsontable/hyperformula/issues/1194)
16+
1017
## [3.1.0] - 2025-10-14
1118

1219
### Changed

README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,11 @@
2525
HyperFormula is a headless spreadsheet built in TypeScript, serving as both a parser and evaluator of spreadsheet formulas. It can be integrated into your browser or utilized as a service with Node.js as your back-end technology.
2626

2727
## What HyperFormula can be used for?
28+
2829
HyperFormula doesn't assume any existing user interface, making it a general-purpose library that can be used in various business applications. Here are some examples:
2930

31+
- Deterministic compute layer for AI & LLMs
32+
- Calculated fields in CRM and ERP software
3033
- Custom spreadsheet-like app
3134
- Business logic builder
3235
- Forms and form builder

docs/guide/compatibility-with-microsoft-excel.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,17 @@ That said, there are cases when HyperFormula can't be compatible with all three
1313

1414
Still, with the right configuration, you can achieve nearly full compatibility.
1515

16+
### Excel function coverage
17+
18+
HyperFormula implements **350 out of 515 Excel functions** (68% coverage), as of version 3.1.0 and Excel 2024. This means that **165 Excel functions** (32%) are not yet available in HyperFormula.
19+
20+
Additionally, HyperFormula includes some functions that are not part of Excel's standard function set, bringing the total number of available functions to **{{ $page.functionsCount }}**.
21+
22+
For a complete list of supported functions, see the [built-in functions](built-in-functions.md) page.
23+
24+
If you need any of the missing Excel functions, you can [contact us](contact.md) or implement them as [custom functions](custom-functions.md), extending HyperFormula's capabilities to meet your specific requirements.
25+
26+
1627
## Configure compatibility with Microsoft Excel
1728

1829
### String comparison rules

docs/guide/release-notes.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,15 @@ This page lists HyperFormula release notes. The format is based on
66
HyperFormula adheres to
77
[Semantic Versioning](https://semver.org/spec/v2.0.0.html).
88

9+
## 3.1.1
10+
11+
**Release date: December 18, 2025**
12+
13+
### Fixed
14+
15+
- Fixed an issue where cells were not recalculated after adding, removing and renaming sheets. [#1116](https://github.com/handsontable/hyperformula/issues/1116)
16+
- Fixed an issue where overwriting a non-computed cell caused the `Value of the formula cell is not computed` error. [#1194](https://github.com/handsontable/hyperformula/issues/1194)
17+
918
## 3.1.0
1019

1120
**Release date: October 14, 2025**

docs/index.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,11 @@ description: HyperFormula® - An open-source headless spreadsheet for business w
3030
HyperFormula is a headless spreadsheet built in TypeScript, serving as both a parser and evaluator of spreadsheet formulas. It can be integrated into your browser or utilized as a service with Node.js as your back-end technology.
3131

3232
## What HyperFormula can be used for?
33+
3334
HyperFormula doesn't assume any existing user interface, making it a general-purpose library that can be used in various business applications. Here are some examples:
3435

36+
- Deterministic compute layer for AI & LLMs
37+
- Calculated fields in CRM and ERP software
3538
- Custom spreadsheet-like app
3639
- Business logic builder
3740
- Forms and form builder

ht.config.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,5 +6,5 @@ module.exports = {
66
HT_VERSION: packageBody.version,
77
HT_PACKAGE_NAME: packageBody.name,
88
HT_BUILD_DATE: moment().format('DD/MM/YYYY HH:mm:ss'),
9-
HT_RELEASE_DATE: '14/10/2025',
9+
HT_RELEASE_DATE: '18/12/2025',
1010
};

0 commit comments

Comments
 (0)