HyperFormula 3.1.0: Improved Cross-Sheet Operations, Easier APIs, and Clearer Docs
Version 3.1.0 of HyperFormula is now available. This release focuses on small but significant technical improvements, including more intuitive API naming, better formula behavior across sheets, and a new internal tool for compatibility testing. We’ve also made several documentation updates for better developer onboarding and usage.
OFFSET Now Supports Cross-Sheet References
The OFFSET
function in HyperFormula now correctly handles references to other sheets. This function returns the value of a cell located a specific number of rows and columns away from a given reference point.
Previously, sheet references were ignored (#1477), which could lead to incorrect results in multi-sheet setups. With this fix, OFFSET
behaves as expected across sheets, improving formula reliability and bringing HyperFormula even closer to the behavior of mainstream spreadsheet engines like Excel and Google Sheets.
Improved Naming for Custom Function Array-Handling Properties
To improve code clarity, we’ve renamed two properties in the FunctionMetadata
interface, which controls the behavior of custom functions:
arraySizeMethod
→sizeOfResultArrayMethod
arrayFunction
→enableArrayArithmeticForArguments
These new names are more self-explanatory, easier to understand, and better reflect the purpose of each option:
enableArrayArithmeticForArguments
(previouslyarrayFunction
) is a boolean that enables array arithmetic in a function’s arguments and nested expressions.sizeOfResultArrayMethod
(previouslyarraySizeMethod
) defines the name of the method that calculates the size of the result array. It’s only needed if the function can return an array.
The original names are still supported for backward compatibility, but they are now officially deprecated and will be removed in a future major release. We recommend switching to the new names to stay up to date and avoid future migration work.
Internal Compatibility Testing
We’ve introduced a new internal framework for benchmarking HyperFormula’s calculation results against those of leading spreadsheet engines like Excel and Google Sheets. This tool helps us systematically identify even subtle differences in formula behavior.
While it doesn’t directly change how HyperFormula behaves today, it plays a critical role in spotting edge cases, catching inconsistencies, and guiding future improvements.
Documentation Updates
This release also includes several updates to the documentation to make key concepts clearer and support easier onboarding for developers:
- Improved explanations of date/time formats.
- Updated guides on basic operations, value types, and built-in functions, and compatibility with Google Sheets.
- Added instructions for integrating language packs and troubleshooting HyperFormula setup in Vue apps.
Release Notes
Changed
- Renamed the
arraySizeMethod
parameter in theFunctionMetadata
interface tosizeOfResultArrayMethod
. ThearraySizeMethod
is deprecated and will be removed in one of the next major releases. #1401 - Renamed the
arrayFunction
parameter in theFunctionMetadata
interface toenableArrayArithmeticForArguments
. ThearrayFunction
is deprecated and will be removed in one of the next major releases. #1401
Fixed
- Fixed an issue where the
OFFSET
function was ignoring the sheet reference in the provided address. #1477