Skip to content

Fixed an issue where named expressions added on engine initialization were not updated on changes #1521

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 7 commits into from
Jul 18, 2025

Conversation

sequba
Copy link
Contributor

@sequba sequba commented Jul 17, 2025

Context

It fixes an issue where named expressions were not marked as dirty after clearing dirty nodes in setCellContents, causing dependent formulas not to update correctly on subsequent value changes.

Original solution developed by @Esmail-Rahmani in #1504. Adjusted by @sequba

How did you test your changes?

  • unit tests pass
  • unit test that reproduces the issue

Types of changes

  • Breaking change (a fix or a feature because of which an existing functionality doesn't work as expected anymore)
  • 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. Fixes [Bug]: Named expression defined as a cell range does not recalculate #1501

Checklist:

  • I have reviewed the guidelines about Contributing to HyperFormula and I confirm that my code follows the code style of this project.
  • I have signed the Contributor License Agreement.
  • My change is compliant with the OpenDocument standard.
  • My change is compatible with Microsoft Excel.
  • My change is compatible with Google Sheets.
  • I described my changes in the CHANGELOG.md file.
  • My changes require a documentation update.
  • My changes require a migration guide.

sequba and others added 2 commits July 17, 2025 10:39
…putation (#1504)

Fix #1501

---------

Co-authored-by: Kuba Sekowski <jakub.sekowski@handsontable.com>
@sequba sequba self-assigned this Jul 17, 2025
@sequba sequba linked an issue Jul 17, 2025 that may be closed by this pull request
@sequba sequba changed the title Feature/issue 1501 Fixed an issue where named expressions added on engine initialization were not updated on changes Jul 17, 2025
Copy link

github-actions bot commented Jul 17, 2025

Performance comparison of head (14f4f00) vs base (d3ac97a)

                                     testName |   base |   head |  change
-------------------------------------------------------------------------
                                      Sheet A | 515.34 | 512.63 |  -0.53%
                                      Sheet B |  167.1 | 165.89 |  -0.72%
                                      Sheet T | 147.81 | 144.48 |  -2.25%
                                Column ranges |  510.6 | 508.22 |  -0.47%
Sheet A:  change value, add/remove row/column |  14.97 |  13.39 | -10.55%
 Sheet B: change value, add/remove row/column | 134.57 | 132.13 |  -1.81%
                   Column ranges - add column | 149.18 | 154.22 |  +3.38%
                Column ranges - without batch | 427.76 | 447.21 |  +4.55%
                        Column ranges - batch | 108.78 |  113.8 |  +4.61%

@sequba sequba requested review from qunabu and warpech July 17, 2025 11:10
@sequba sequba merged commit 69adfc3 into develop Jul 18, 2025
25 checks passed
@sequba sequba deleted the feature/issue-1501 branch July 18, 2025 06:41
Copy link

codecov bot commented Jul 18, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 97.22%. Comparing base (d3ac97a) to head (14f4f00).
Report is 1 commits behind head on develop.

Additional details and impacted files

Impacted file tree graph

@@           Coverage Diff            @@
##           develop    #1521   +/-   ##
========================================
  Coverage    97.22%   97.22%           
========================================
  Files          169      169           
  Lines        14523    14523           
  Branches      3080     3169   +89     
========================================
  Hits         14120    14120           
+ Misses         403      396    -7     
- Partials         0        7    +7     
Files with missing lines Coverage Δ
src/BuildEngineFactory.ts 100.00% <100.00%> (ø)

... and 4 files with indirect coverage changes

🚀 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.

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.

[Bug]: Named expression defined as a cell range does not recalculate
3 participants