bfenty and Claude
871c4e6c8f
perf(engine): scan only the precedent area's stored cells
...
iter_range walks the sparse store's bands for the area's row range
only, so a chain of N formulas no longer rescans every stored cell of
the sheet per area.
Co-Authored-By: Claude <noreply@anthropic.com >
2026-10-19 19:47:07 +00:00
bfenty and Claude
d19627fc26
fix(engine): walk stored cells in transitive precedent selection
...
Bound the all-level walk to the sheet sparse cell store instead of
iterating every position of each precedent area: formulas late in a
wide area are no longer skipped, blank positions are never selected,
and only formula cells extend the frontier. Adds a regression test
(=SUM(A1:Z1) with a formula at Z1) and silences two clippy lints in
the same function.
Co-Authored-By: Claude <noreply@anthropic.com >
2026-10-19 16:54:45 +00:00
bfenty
752477a231
feat(ui): Ctrl+[ / Ctrl+] select precedent and dependent cells ( #1865 )
...
Adds formulas.selectPrecedents / formulas.selectDependents engine commands
and binds them to Ctrl+[ and Ctrl+] (Ctrl+Shift walks every level), matching
Excel's shortcut parity. Direct-level traces keep whole precedent ranges;
cross-sheet precedents jump to the owning sheet; an empty trace leaves the
selection untouched with an actionable message.
2026-10-19 16:13:44 +00:00
Dante Bertuzzi and Claude Opus 5.5
19f4387cca
Conditional formatting: show a rule's number format ( fixes #1163 ) ( #1769 )
...
The grid's look() and print's cell_look() layered a rule's fill, font and
borders onto the cell style but not its num_fmt, so a cell under a rule with a
number format kept its own. Take the rule's code when it isn't General (in a
differential style General means "not set", as layer_under treats it).
Print also re-formatted every non-General cell from its own style through
display::cell_text; format with the look's code instead, through a new
display::value_text_as that value_text now calls (CSV/Text output unchanged).
Show Formulas keeps cell_text.
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-17 18:37:09 -06:00
NetterSilver and Claude Haiku 5.5
217a8907ff
Reject unknown value-field func in insert.pivotTable ( #1757 )
...
Found while testing crates/engine/src/cmd/pivot.rs:678 (func_param at :248)
Co-authored-by: Claude Haiku 5.5 <noreply@anthropic.com >
2026-10-17 18:34:28 -06:00
Harrison O'Connor-Hoover
79e85c1b80
fix(edit): recalculate every cell changed by large clears ( #1032 ) ( #1128 )
2026-10-15 13:38:13 -06:00
Brandon Thomas
ebe0138d30
Merge main into #855
...
# Conflicts:
# ROADMAP.md
# docs/gaps.md
# docs/target-app-parity.md
2026-10-13 01:52:08 -04:00
Brandon Thomas
be003d44af
Merge main into #863
...
# Conflicts:
# crates/xlsx/src/tests/passthrough_tests.rs
2026-10-13 01:40:22 -04:00
Brandon Thomas
be45ccab31
Merge main into #811
...
# Conflicts:
# ROADMAP.md
# crates/numfmt/src/parse.rs
# crates/numfmt/src/tests.rs
2026-10-13 01:05:45 -04:00
Brandon Thomas
2d0a3f8a47
Merge main into #780
...
# Conflicts:
# ROADMAP.md
# crates/engine/src/cmd/insert.rs
# crates/engine/src/tests.rs
2026-10-13 01:02:28 -04:00
Brandon Thomas
20d6923cb6
Merge main into #766
...
# Conflicts:
# ROADMAP.md
# crates/engine/src/cmd/sheet.rs
2026-10-13 01:00:59 -04:00
Brandon Thomas
c6ab899259
Merge #824 fix-up
2026-10-13 00:57:02 -04:00
Brandon Thomas and Claude Opus 5.5
20309f6e99
Fix-up: close the Save As link test the merge left open
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-13 00:57:02 -04:00
Brandon Thomas
9c773166f9
Merge #594 fix-up
2026-10-13 00:55:57 -04:00
Brandon Thomas and Claude Opus 5.5
623997a19e
Fix-up: close the CSV history-name test the merge left open
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-13 00:55:57 -04:00
Brandon Thomas
9972a75f10
Merge main into #824
...
# Conflicts:
# crates/engine/src/cmd/file.rs
# crates/engine/src/tests.rs
# crates/xlsx/src/tests/passthrough_tests.rs
2026-10-13 00:53:41 -04:00
Brandon Thomas
0068c8f517
Merge main into #649
...
# Conflicts:
# crates/ui-egui/src/grid.rs
2026-10-13 00:48:39 -04:00
Brandon Thomas
b464a7f242
Merge main into #594
...
# Conflicts:
# crates/engine/src/io.rs
2026-10-13 00:48:36 -04:00
Brandon Thomas
2f33d43546
Merge main into #591
...
# Conflicts:
# crates/engine/src/cmd/data.rs
2026-10-13 00:41:59 -04:00
Brandon Thomas and Claude Opus 5.5
6405b00cf7
Fix-up: repair test files after merging the conflicting PRs
...
- restore closing braces the line-level merges of side-by-side tests dropped
- new ChartData literals carry the palette field
- the filter-menu shortcut passes the row with the column
- #688 's tab tests account for #851 's All Sheets button
- Serbian margins for the ruler-margin labels
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-13 00:34:01 -04:00
Marco Arnulfo
c7cb91ea53
Merge remote-tracking branch 'origin/main' into fix/xlsx-xml-maps
2026-10-13 06:33:03 +02:00
Brandon Thomas
94ee7efdf9
Merge main into #853
...
# Conflicts:
# ROADMAP.md
# docs/file-format-parity.md
2026-10-13 00:08:58 -04:00
Brandon Thomas
6dd8f7abe8
Merge main into #796
...
# Conflicts:
# ROADMAP.md
# crates/engine/src/tests.rs
2026-10-13 00:08:27 -04:00
Brandon Thomas
e5f31a02f3
Merge main into #786
...
# Conflicts:
# ROADMAP.md
# docs/gaps.md
2026-10-13 00:08:15 -04:00
Brandon Thomas
d2bd177b98
Merge main into #753
...
# Conflicts:
# crates/calc/src/tests.rs
2026-10-13 00:08:09 -04:00
Brandon Thomas
04428cdfed
Merge main into #749
...
# Conflicts:
# crates/engine/src/tests.rs
2026-10-13 00:08:01 -04:00
Brandon Thomas
29775397ef
Merge main into #712
...
# Conflicts:
# ROADMAP.md
# crates/xlsx/src/tests/mod.rs
# docs/file-format-parity.md
# docs/gaps.md
2026-10-13 00:07:50 -04:00
Brandon Thomas and Claude Opus 5.5
45221f5243
Fix-up: rustfmt extra.rs after merging
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 23:51:11 -04:00
Brandon Thomas
147db777b1
Merge pull request #879 from marcoarnulfo:fix/unknown-save-extension
2026-10-12 23:50:12 -04:00
Brandon Thomas
efed7caa01
Merge pull request #826 from marcoarnulfo:fix/xlsx-external-file-hyperlinks
2026-10-12 23:49:53 -04:00
Brandon Thomas
d6bb4bdf7a
Merge pull request #763 from msaulc:fix/ctrl-shift-arrow-scroll
2026-10-12 23:49:25 -04:00
Brandon Thomas
a435ef6ada
Merge pull request #720 from dantebertuzzi:fix/cell-set-numeric-input
2026-10-12 23:49:02 -04:00
Brandon Thomas
98c85c6de4
Merge pull request #718 from neilcawse:fix/pivot-values-on-rows
2026-10-12 23:49:00 -04:00
Brandon Thomas
2f38d0162f
Merge pull request #704 from isaac-levine:file-export-pdf-menu
2026-10-12 23:48:55 -04:00
Brandon Thomas
89f9e24aad
Merge pull request #664 from richard1912:fix/top10-filter-threshold
2026-10-12 23:48:43 -04:00
Brandon Thomas
50853e3def
Merge pull request #647 from MarekSpodBiedry:issue-508
2026-10-12 23:48:36 -04:00
Brandon Thomas
f378bb9cc7
Merge pull request #641 from MarekSpodBiedry:issue-514
2026-10-12 23:48:27 -04:00
Brandon Thomas
02c973536b
Merge pull request #640 from MarekSpodBiedry:issue-515
2026-10-12 23:48:26 -04:00
Brandon Thomas
8b845ebb6e
Merge pull request #639 from MarekSpodBiedry:issue-516
2026-10-12 23:48:24 -04:00
Brandon Thomas
62100c2542
Merge pull request #638 from MarekSpodBiedry:issue-517
2026-10-12 23:48:23 -04:00
Brandon Thomas
6cddd36f48
Merge pull request #588 from MarekSpodBiedry:issue-576
2026-10-12 23:43:13 -04:00
Brandon Thomas and Claude Opus 5.5
9f9c0ac4a1
Test: open a workbook before setting values in the hyphenated table-name test
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-12 23:43:11 -04:00
Brandon Thomas
e154960ce3
Merge pull request #602 from MarekSpodBiedry:issue-562
2026-10-12 23:35:51 -04:00
Brandon Thomas
24b1b60dbc
Merge pull request #595 from MarekSpodBiedry:issue-569
2026-10-12 23:35:44 -04:00
Brandon Thomas
944e3818f6
Merge pull request #590 from MarekSpodBiedry:issue-574
2026-10-12 23:35:38 -04:00
Brandon Thomas
2d7988d057
Merge pull request #589 from MarekSpodBiedry:issue-575
2026-10-12 23:35:37 -04:00
Brandon Thomas
a668b22833
Merge pull request #588 from MarekSpodBiedry:issue-576
2026-10-12 23:35:35 -04:00
Brandon Thomas
35668da062
Merge pull request #587 from MarekSpodBiedry:issue-577
2026-10-12 23:35:34 -04:00
Brandon Thomas
ca9b3fbbe8
Merge pull request #586 from MarekSpodBiedry:issue-578
2026-10-12 23:35:32 -04:00
Brandon Thomas
92b1072ab8
Merge pull request #487 from nihilist-narwhal:fix-merge-across-values
2026-10-12 23:35:29 -04:00