neilcawse and Claude Opus 5.5
f7bc97b378
CLI: check subcommand - cached-value calc oracle and XLSX round-trip fidelity on any corpus
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-11 16:39:30 -04:00
Brandon Thomas
4dca02c89b
Merge pull request #9 from justinjohn0306/fix/system-fonts-in-list
...
Fix: list and render installed system fonts (#4 )
2026-10-11 15:38:44 -04:00
Brandon Thomas and Claude Opus 5.5
e211f666a6
Merge main into installed-fonts: workbook fonts bind on top of main's per-language font set and fallback faces; only families that survive drop_unparseable_fonts count as bound; a language switch rebinds them (review fix-up for #9 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-11 15:38:42 -04:00
Brandon Thomas
fb3737aa03
Merge pull request #19 from justinjohn0306/fix/vba-macro-preservation
...
Preserve VBA macros + Excel-style macros UX (issue #6 )
2026-10-11 15:20:47 -04:00
Brandon Thomas and Claude Opus 5.5
9bf5ecaf04
Merge main into VBA preservation; save macros only into .xlsm (an .xlsx never carries a VBA project); drop the shell round-trip script (review fix-up for #19 )
...
The Rust round-trip test covers what scripts/check-vba-roundtrip.sh checked.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-11 15:20:45 -04:00
Brandon Thomas
1d3abfa4a7
Merge pull request #203 from gyurix/system-theme-detection
...
Linux: the display theme asks the desktop, not winit
2026-10-11 15:09:46 -04:00
Brandon Thomas and Claude Opus 5.5
55d41eb13c
Desktop theme watcher starts only in the desktop app, not in every SheetApp (tests, embedders) (review fix-up for #203 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-11 15:09:43 -04:00
Brandon Thomas
0bea7178a2
Merge branch 'land' into fix-203
2026-10-11 15:04:30 -04:00
Brandon Thomas
177e52a14d
Merge pull request #209 from Dejan-Port/print-only
...
web: print straight to the system print dialog, not just export
2026-10-11 15:04:11 -04:00
Brandon Thomas and Claude Opus 5.5
04fb60ea5d
Printing from the UI (Backstage, Ctrl+P, menu) goes through print_now, so the web build opens the browser's print dialog (review fix-up for #209 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-11 15:04:09 -04:00
Brandon Thomas
f8edb7c1a4
Merge branch 'land' into fix-209
2026-10-11 15:00:04 -04:00
Brandon Thomas and Claude Opus 5.5
347d2a5bc2
Docs: catalog 274 / 290 after #211 and #193
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-11 14:59:45 -04:00
Brandon Thomas
dc85b2ab07
Merge pull request #193 from zaidshurbaji/feature/table-slicers
...
Feature/table slicers
2026-10-11 14:58:32 -04:00
Brandon Thomas and Claude Opus 5.5
8aa9cad703
Slicers: the anchor uses #206 's checked cell_param and stays on the sheet; drop the personal macOS workflow (review fix-up for #193 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-11 14:58:29 -04:00
Brandon Thomas
205981a52a
Merge branch 'land' into fix-193
...
# Conflicts:
# crates/engine/src/cmd/mod.rs
# crates/ui-egui/src/chartview.rs
2026-10-11 14:48:14 -04:00
Brandon Thomas
ce0483fc17
Merge pull request #211 from Zarvinx/feat/drag-selected-columns
...
Reorder selected columns by dragging headers
2026-10-11 14:47:43 -04:00
Brandon Thomas
506320b548
Merge branch 'land' into fix-211
...
# Conflicts:
# crates/engine/src/tests.rs
# docs/ui-parity.md
2026-10-11 14:39:47 -04:00
Brandon Thomas and Claude Opus 5.5
743ca809cc
Fix-up: Insert Copied Cells target and PivotChart anchor use #206 's checked cell_param
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-11 14:34:37 -04:00
Brandon Thomas
a9f9b09acc
Merge pull request #365 from MarekSpodBiedry/issue-359
...
Ctrl+click on an already selected header or cell deselects it (#359 )
2026-10-11 14:34:17 -04:00
Brandon Thomas
57ab1790ad
Merge pull request #364 from MarekSpodBiedry/issue-362
...
Edit date cells as dates, not serial numbers (#362 )
2026-10-11 14:34:16 -04:00
Brandon Thomas
1fc7f50104
Merge pull request #360 from ege-arhan/fix/formulas-ribbon-layout
...
fix(ribbon): Watch Window layout in Formulas ribbon (#342 )
2026-10-11 14:34:14 -04:00
Brandon Thomas
ff516650da
Merge pull request #206 from mikl0s/
...
Cell references: an invalid reference is an error instead of the active cell
2026-10-11 14:34:10 -04:00
Brandon Thomas
76f3a29c79
Merge branch 'land' into fix-206
2026-10-11 14:23:51 -04:00
Brandon Thomas and Claude Opus 5.5
fb8e8ac8f1
Docs: catalog 272 / 290 after #325
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-11 14:22:39 -04:00
Brandon Thomas and Claude Opus 5.5
8fcb9b1007
Fix-up: es/de/cs strings for Forecast Sheet ( #325 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-11 14:15:18 -04:00
Brandon Thomas
7a34692a0d
Merge pull request #325 from vangel76/feat/forecast-sheet
...
Data: Forecast Sheet (data.forecastSheet) (#322 )
# Conflicts:
# ROADMAP.md
# docs/gaps.md
# docs/parity-checklist.md
# docs/ui-parity.md
2026-10-11 13:52:00 -04:00
Brandon Thomas
fda7f5bc14
Merge pull request #333 from vangel76/feat/xlsx-passthrough
...
XLSX: keep unmodelled parts on save (#330 )
# Conflicts:
# ROADMAP.md
# crates/model/src/lib.rs
# crates/model/src/sheet.rs
# docs/file-format-parity.md
# docs/gaps.md
2026-10-11 13:51:59 -04:00
Brandon Thomas
c379da6ac9
Merge pull request #332 from vangel76/feat/xls-read
...
XLSX/IO: read legacy .xls (BIFF8) workbooks (#121 )
# Conflicts:
# docs/gaps.md
2026-10-11 13:51:48 -04:00
Brandon Thomas
26489863b0
Merge pull request #334 from vangel76/feat/page-layout-view
...
View: Page Layout view with rulers and in-place headers and footers (#329 )
2026-10-11 13:51:31 -04:00
Brandon Thomas and Claude Opus 5.5
4a55aa3e34
Merge main into page-layout-view: pages keep the gliding selection ( #266 ), frozen-pane clipping ( #217 ), right-to-left mirroring and freeze handles ( #310 , #309 ); es/de/cs strings for headers and footers
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-11 13:39:07 -04:00
Brandon Thomas and Claude Opus 5.5
baffd3c78d
Fix-up #325 : cap Forecast Sheet history and forecast rows
...
The default periods (a third of the history, up to ~33k) bypassed
MAX_PERIODS, and each forecast row's three ETS formulas refit over the whole
history, so 100k history rows x 10k periods froze the app. History is now at
most 10,000 rows, periods at most 10,000, and history x periods at most
500,000 (about 3 us per history point per fit: a few seconds of recalc at
the cap). The default is clamped to the cap; explicit periods or an end past
it are refused.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-11 13:30:47 -04:00
Brandon Thomas
e800368c91
Merge pull request #266 from arcanii/selection-glide
...
Glide the selection outline to a new selection; View ▸ Animations turns it off (includes #265 )
2026-10-11 13:27:43 -04:00
Brandon Thomas and Claude Opus 5.5
c8b1b941f7
Merge main into selection-glide: the gliding outline and its fill respect frozen panes ( #217 ) and right-to-left sheets ( #310 ); es/de/cs strings for Animations
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-11 13:27:27 -04:00
Brandon Thomas
cf75981fc2
Merge pull request #261 from AlissonFA/fix/cell-vertical-alignment
...
M2: fix cell vertical alignment positioning and add keytips (#241 )
2026-10-11 13:20:27 -04:00
Brandon Thomas and Claude Opus 5.5
b3908bf81e
Key tips HAT/HAM/HAB run Align Top/Middle/Bottom, with a test (review fix-up for #261 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-11 13:20:22 -04:00
MarekSpodBiedry
568b754211
Ctrl+click on an already selected header or cell deselects it ( #359 )
2026-10-11 19:18:39 +02:00
MarekSpodBiedry
ea2e2a5bba
Edit date cells as dates, not serial numbers ( #362 )
2026-10-11 19:18:27 +02:00
Brandon Thomas
fa33d0b90f
Merge pull request #298 from vangel76/fix/symbol-glyph-fallback
...
UI fonts: symbol fallback faces so interface symbols aren't boxes (#197 )
2026-10-11 13:15:43 -04:00
Brandon Thomas and Claude Opus 5.5
27ef18ec2c
symbol_glyphs test: compare against a private-use code point no font covers (review fix-up for #298 )
...
U+25FB is a real glyph in DejaVu, so the test could pass while symbols still rendered as boxes.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-11 13:14:30 -04:00
Brandon Thomas
6cf32cf4eb
Merge branch 'land' into fix-298
...
# Conflicts:
# ROADMAP.md
2026-10-11 13:13:26 -04:00
Brandon Thomas and Claude Opus 5.5
a0cb8f2ca2
Docs: catalog 271 / 290 after #286 and #288
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-11 13:13:01 -04:00
Brandon Thomas
5360a77505
Merge remote-tracking branch 'origin/main' into fix-325
...
# Conflicts:
# ROADMAP.md
# crates/engine/src/cmd/mod.rs
# crates/ui-egui/src/dialogs.rs
# docs/gaps.md
# docs/parity-checklist.md
# docs/ui-parity.md
2026-10-11 13:12:41 -04:00
Brandon Thomas
9a978f0461
Merge pull request #288 from vangel76/fix/insert-copied-cells
...
Clipboard: Insert Copied Cells and Insert Cut Cells (#21 )
2026-10-11 13:12:25 -04:00
Brandon Thomas and Claude Opus 5.5
1fb5f3264d
Spanish, German and Czech strings for Insert Copied/Cut Cells (review fix-up for #288 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-11 13:12:23 -04:00
Brandon Thomas and Claude Opus 5.5
e52fc4aa08
Fix-up #333 : escape kept content types and charge kept VML to the kept total
...
Content types (and extensions) of kept parts come from the input file and
were written into [Content_Types].xml unescaped, so a quote or angle bracket
injected XML; they are now attribute-escaped. Each sheet re-read and kept
its VML drawing (up to 16 MB) outside MAX_KEPT_TOTAL, so many sheets sharing
one highly compressed drawing amplified memory; the drawing is now read
within and charged to the remaining kept-bytes allowance.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-11 13:05:45 -04:00
Brandon Thomas
9cb6cb2384
Merge branch 'land' into fix-288
...
# Conflicts:
# ROADMAP.md
# crates/engine/src/cmd/edit.rs
# docs/target-app-parity.md
2026-10-11 13:01:23 -04:00
Brandon Thomas
344b5cdb53
Merge pull request #286 from vangel76/feat/review-comment-navigation
...
Review: Previous/Next Comment, Show Comments, Show All Notes, Convert to Comments (#281 )
2026-10-11 13:00:30 -04:00
Brandon Thomas and Claude Opus 5.5
c83f214c9d
Spanish, German and Czech strings for comment navigation (review fix-up for #286 )
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-11 13:00:27 -04:00
Brandon Thomas
79fce91359
Merge remote-tracking branch 'origin/main' into fix-333
...
# Conflicts:
# ROADMAP.md
# crates/model/src/lib.rs
# crates/xlsx/src/sheet_read.rs
# docs/file-format-parity.md
# docs/gaps.md
2026-10-11 12:56:45 -04:00
Brandon Thomas and Claude Opus 5.5
e78cc6edc9
Fix-up #332 : bound .xls formula nesting and share one record budget across sheets
...
Chained PtgParen/PtgUminus (or operator) tokens built a ~16K-deep Expr whose
printing or drop overflowed the stack; nesting past the formula parser's
MAX_DEPTH (256) is now reported as unsupported. BoundSheet records pointing
into one huge substream each got their own 40M-record allowance; the
allowance is now shared by the whole Workbook stream, and two sheets at the
same offset are refused.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-11 12:55:17 -04:00