Skip to content

Fix localized VSTACK and HSTACK names - #1748

Open
Tobiadefami wants to merge 2 commits into
developfrom
fix/localized-vstack-hstack-names
Open

Fix localized VSTACK and HSTACK names#1748
Tobiadefami wants to merge 2 commits into
developfrom
fix/localized-vstack-hstack-names

Conversation

@Tobiadefami

@Tobiadefami Tobiadefami commented Aug 25, 2026

Copy link
Copy Markdown
Collaborator

Context

HyperFormula 3.4.0 shipped VSTACK and HSTACK with English placeholder names in language packs where Microsoft Excel uses localized names. This PR moves the previously reviewed localization fix out of the unrelated TAKE PR and into a dedicated change.

This extracts the VSTACK/HSTACK portion of commit b902d53bc, originally authored by Kuba Sekowski.

Changes

Language VSTACK HSTACK
Czech SROVNAT.SVISLE SROVNAT.VODOROVNĚ
Danish VSTAK HSTAK
German VSTAPELN HSTAPELN
Spanish APILARV APILARH
Finnish VPINO HPINO
French ASSEMB.V ASSEMB.H
Hungarian FÜGG.HALMOZÁS VÍZSZ.HALMOZÁS
Italian STACK.VERT STACK.ORIZ
Norwegian VSTAKK HSTAKK
Dutch VERT.STAPELEN HOR.STAPELEN
Polish STOS.PION STOS.POZ
Portuguese JUNTARV JUNTARH
Russian ВСТОЛБИК ГСТОЛБИК
Turkish DÜŞEYYIĞ YATAYYIĞ

Indonesian and Swedish remain in English, matching Excel. The PR also adds source-verification guidance to DEV_DOCS.md and an Unreleased changelog entry.

Source verification

All 14 localized pairs and the unchanged Indonesian and Swedish pairs were checked on 2026-08-25 against Microsoft Support's current individual VSTACK/HSTACK pages, using each page title and displayed formula syntax. This caught one mismatch in the original table: Danish is VSTAK / HSTAK.

Microsoft's Danish alphabetical function index currently conflicts with those individual pages, so DEV_DOCS.md now requires checking the linked individual page rather than copying a name from the index alone.

Migration note

This is a breaking change for formulas created with HyperFormula 3.4.0 that use English VSTACK or HSTACK while one of the affected language packs is active. Those formulas must switch to the names listed above.

Validation

Companion tests: handsontable/hyperformula-tests#44

  • 34/34 focused i18n tests passed.
  • Full browser suite passed: 12,388 assertions in Chrome and Firefox.
  • TypeScript compilation passed.
  • Targeted lint completed with zero errors.
  • git diff --check passed.

Types of changes

  • Breaking change
  • New feature or improvement
  • Bug fix
  • Additional language file or translation change
  • Documentation change

Note

Medium Risk
Breaking change for localized formula parsing in 14 locales; runtime behavior of the functions is unchanged, but existing formulas using English names in those locales will fail until updated.

Overview
Replaces English placeholder names for VSTACK and HSTACK in 14 language packs (csCZ, daDK, deDE, esES, fiFI, frFR, huHU, itIT, nbNO, nlNL, plPL, ptPT, ruRU, trTR) with Microsoft Excel’s localized names (e.g. German VSTAPELN / HSTAPELN, Czech SROVNAT.SVISLE / SROVNAT.VODOROVNĚ). English, Indonesian, and Swedish still use VSTACK / HSTACK.

Documents the breaking change under Unreleased in CHANGELOG.md. DEV_DOCS.md now requires verifying localized names against authoritative Excel sources, adds Microsoft’s localized alphabetical function list for newer functions, and says to keep English when Excel does not ship a localized name.

Migration: formulas written under HyperFormula 3.4.0 with English VSTACK/HSTACK while one of the affected locales is active must use the new localized names.

Reviewed by Cursor Bugbot for commit 6719cb9. Bugbot is set up for automated code reviews on this repo. Configure here.

@cla-external-contractor-signup

Copy link
Copy Markdown

@Tobiadefami thanks for the pull request. No CLA step needed here — our records show you signed the Contributor License Agreement on 2026-07-31. That signature came from our previous signing form and has been carried over, so there is nothing for you to re-sign.

@Tobiadefami Tobiadefami mentioned this pull request Aug 25, 2026
13 tasks

@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 92ce125. Configure here.

Comment thread src/i18n/languages/daDK.ts Outdated
@codecov

codecov Bot commented Aug 25, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 97.31%. Comparing base (61ead73) to head (6719cb9).

Additional details and impacted files

Impacted file tree graph

@@           Coverage Diff            @@
##           develop    #1748   +/-   ##
========================================
  Coverage    97.31%   97.31%           
========================================
  Files          195      195           
  Lines        15719    15719           
  Branches      3455     3384   -71     
========================================
  Hits         15297    15297           
- Misses         414      422    +8     
+ Partials         8        0    -8     
Files with missing lines Coverage Δ
src/i18n/languages/csCZ.ts 100.00% <ø> (ø)
src/i18n/languages/daDK.ts 100.00% <ø> (ø)
src/i18n/languages/deDE.ts 100.00% <ø> (ø)
src/i18n/languages/esES.ts 100.00% <ø> (ø)
src/i18n/languages/fiFI.ts 100.00% <ø> (ø)
src/i18n/languages/frFR.ts 100.00% <ø> (ø)
src/i18n/languages/huHU.ts 100.00% <ø> (ø)
src/i18n/languages/itIT.ts 100.00% <ø> (ø)
src/i18n/languages/nbNO.ts 100.00% <ø> (ø)
src/i18n/languages/nlNL.ts 100.00% <ø> (ø)
... and 4 more

... and 5 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.

@github-actions

github-actions Bot commented Aug 25, 2026

Copy link
Copy Markdown

Performance comparison of head (6719cb9) vs base (61ead73)

                                     testName |    base |    head | change
--------------------------------------------------------------------------
                                      Sheet A |  502.95 |  512.42 | +1.88%
                                      Sheet B |     157 |  166.52 | +6.06%
                                      Sheet T |  142.48 |  146.02 | +2.48%
                                Column ranges |  469.46 |  484.37 | +3.18%
                                Sorted lookup | 14432.1 | 14671.1 | +1.66%
Sheet A:  change value, add/remove row/column |   16.17 |   16.92 | +4.64%
 Sheet B: change value, add/remove row/column |  138.43 |  140.41 | +1.43%
                   Column ranges - add column |  150.49 |  152.77 | +1.52%
                Column ranges - without batch |  469.73 |  458.29 | -2.44%
                        Column ranges - batch |  120.65 |  118.86 | -1.48%

@cloudflare-workers-and-pages

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 6719cb9 Commit Preview URL

Branch Preview URL
Aug 25 2026, 07:21 PM

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.

1 participant