Skip to content

HF-131 (7/7): documentation - #1767

Open
marcin-kordas-hoc wants to merge 16 commits into
fix/hf-131-issue-444-addressesfrom
docs/hf-131-types-of-errors
Open

marcin-kordas-hoc wants to merge 16 commits into
fix/hf-131-issue-444-addressesfrom
docs/hf-131-types-of-errors

Conversation

@marcin-kordas-hoc

@marcin-kordas-hoc marcin-kordas-hoc commented Sep 10, 2026 •

Copy link
Copy Markdown
Collaborator

Context

The PR documents error messages and error origins in docs/guide/types-of-errors.md. It is part 7 of 7 of HF-131, stacked on #1766, and changes documentation only.

  • Why: the page did not list #SPILL!, and no guide showed with an example how to read originFunction and argumentIndex.
  • What changed:
    • A #SPILL! row in the error table and a #SPILL! tag. The division by zero tag is dropped, which keeps the page at 10 tags, the cap in dev-docs/DOCS-CONTENT-GUIDE.md.
    • "Error messages and explanations": message states the cause within an error type. HyperFormula does not expand it or generate explanations with a language model.
    • "Finding out where an error came from": originFunction, argumentIndex and address, with a runnable example.
  • Result: the example returns the documented values when pasted: 'SQRT', 1 and 'reference'.

How did you test your changes?

  • The example, run as written against this head, prints "SQRT", 1 and "reference". Without licenseKey the first formula returns #LIC!, which is why the example passes one.
  • No paired tests pull request: there is no code change.
  • CI is green on this head, including build-docs, except the repository-wide FOSSA license check.

Compatibility with Excel and Google Sheets

Not applicable: documentation only.

Public API changes

None.

Out of scope and follow-ups

None.

Types of changes

  • Breaking change (existing functionality no longer works as before) – agreed with the maintainers
  • New feature or improvement (a non-breaking change that adds functionality)
  • Bug fix (a non-breaking change that fixes an issue)
  • Additional language file, or a change to an existing language file (translations)
  • Change to the documentation

Related issues

  1. Part of Improve the formula error messages #1547 (HF-131).

Checklist

ErrorType has ten members; this guide's error table only listed nine. Add
the missing #SPILL! row, matching the existing table's style, plus a short
note that HyperFormula does not turn a message into a longer plain-language
explanation itself — an application layer wanting that should build it on
top of the type/message the engine already provides.

Docs-only, no CHANGELOG entry per this repo's DoD.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@qunabu

qunabu commented Sep 10, 2026

Copy link
Copy Markdown
Contributor

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes using default effort and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 9dbfe89. Configure here.

Comment thread docs/guide/types-of-errors.md
@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Sep 10, 2026 •

Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
hyperformula-docs db631c0 Commit Preview URL

Branch Preview URL
Oct 23 2026, 07:22 AM

@github-actions

github-actions Bot commented Sep 10, 2026 •

Copy link
Copy Markdown

Performance comparison of head (db631c0) vs base (a95916b)

                                     testName |    base |    head | change
--------------------------------------------------------------------------
                                      Sheet A |  503.79 |  501.29 | -0.50%
                                      Sheet B |   161.2 |  164.36 | +1.96%
                                      Sheet T |  144.87 |  147.09 | +1.53%
                                Column ranges |  475.18 |  474.31 | -0.18%
                                Sorted lookup | 14354.2 | 14519.5 | +1.15%
Sheet A:  change value, add/remove row/column |   15.72 |   15.41 | -1.97%
 Sheet B: change value, add/remove row/column |  139.81 |  134.49 | -3.81%
                   Column ranges - add column |  150.49 |  148.62 | -1.24%
                Column ranges - without batch |  454.29 |  449.07 | -1.15%
                        Column ranges - batch |  118.75 |  114.37 | -3.69%

marcin-kordas-hoc and others added 10 commits September 11, 2026 03:43
The page listed the error types but never mentioned originFunction, argumentIndex
or hasMessage, so the only description of them was in the API reference. Also drops
one tag: the page carried 11 against the guide's cap of 10, and 'division by zero'
is the one tag that is a phrase rather than an error code, already covered by
'#DIV/0!'.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

@Tobiadefami Tobiadefami left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could we add { licenseKey: 'gpl-v3' } to the example’s buildFromArray() call? Without it, all three formulas return #LIC! instead of the documented results.

@marcin-kordas-hoc

Copy link
Copy Markdown
Collaborator Author

Confirmed, and it also breaks line 2 of the comment block: without a licence key all three results are #LIC! and argumentIndex is undefined, so // 1, the second argument is wrong too. With { licenseKey: 'gpl-v3' } all three documented values are correct — measured on 67cd26e6b.

marcin-kordas-hoc and others added 4 commits October 22, 2026 17:31
…ray literal

The example now passes a license key, so the three formulas return the documented values
instead of `#LIC!`, writes cell addresses as `{ sheet, row, col }`, and the list of origin
names includes `array literal`.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@codecov

codecov Bot commented Oct 23, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
⚠️ Please upload report for BASE (fix/hf-131-issue-444-addresses@a95916b). Learn more about missing BASE report.

Additional details and impacted files

Impacted file tree graph

@@                        Coverage Diff                        @@
##             fix/hf-131-issue-444-addresses    #1767   +/-   ##
=================================================================
  Coverage                                  ?   97.40%           
=================================================================
  Files                                     ?      207           
  Lines                                     ?    16349           
  Branches                                  ?     3630           
=================================================================
  Hits                                      ?    15925           
  Misses                                    ?      416           
  Partials                                  ?        8           
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants