aiongg
c7016fb724
Integration: fix struct literals and call signatures after combining tracks (Series.quartiles, Comment.note_box, Image data Arc, signature language)
2026-10-22 03:11:35 +00:00
aiongg
d5cdd2ea2b
Integration: track t15
...
# Conflicts:
# contributors/people.toml
# crates/engine/src/tests.rs
# docs/file-format-parity.md
# docs/localization-parity.md
2026-10-22 03:05:39 +00:00
aiongg
561382cc6d
Integration: track t14
...
# Conflicts:
# ROADMAP.md
# contributors/people.toml
# crates/formula/src/tests.rs
# docs/file-format-parity.md
# docs/localization-parity.md
# docs/ui-parity.md
2026-10-22 03:05:30 +00:00
aiongg
ca1cdd4229
Integration: track t13
...
# Conflicts:
# ROADMAP.md
# contributors/people.toml
# crates/engine/src/cmd/data.rs
# crates/xlsx/src/tests/mod.rs
# docs/chart-parity.md
# docs/file-format-parity.md
# docs/function-parity.md
# docs/gaps.md
# docs/localization-parity.md
# docs/target-app-parity.md
2026-10-22 03:05:18 +00:00
aiongg
c7fd66d807
Integration: track t12
...
# Conflicts:
# ROADMAP.md
# crates/calc/src/tests.rs
# crates/chart/src/tests.rs
# crates/engine/src/tests.rs
# crates/xlsx/src/tests/mod.rs
# docs/chart-parity.md
2026-10-22 03:05:03 +00:00
aiongg
9350ab1def
Integration: track t11
...
# Conflicts:
# ROADMAP.md
# apps/gridcraft-web/Cargo.toml
# crates/ui-egui/src/i18n.rs
# docs/control-protocol.md
# docs/gaps.md
# docs/target-app-parity.md
# docs/ui-parity.md
2026-10-22 03:04:52 +00:00
aiongg
4c5c345c31
Integration: track t10
...
# Conflicts:
# ROADMAP.md
# crates/ui-egui/tests/sheet_tabs.rs
# crates/xlsx/src/tests/roundtrip.rs
# docs/gaps.md
# docs/ui-parity.md
2026-10-22 03:04:30 +00:00
aiongg
6dda6be2c6
Integration: track t09
...
# Conflicts:
# crates/engine/src/tests.rs
# crates/ui-egui/src/i18n.rs
# crates/ui-egui/src/i18n/pt.rs
# docs/file-format-parity.md
# docs/target-app-parity.md
# docs/ui-parity.md
2026-10-22 03:04:21 +00:00
aiongg
d3201e7cea
Integration: track t08
...
# Conflicts:
# ROADMAP.md
# crates/engine/src/tests.rs
# docs/file-format-parity.md
# docs/localization-parity.md
2026-10-22 03:03:55 +00:00
aiongg
4c81d658ec
Integration: track t05
...
# Conflicts:
# crates/ui-egui/tests/keyboard_shortcuts.rs
# docs/ui-parity.md
2026-10-22 03:01:39 +00:00
aiongg
512b2aa9fd
Integration: track t04
...
# Conflicts:
# ROADMAP.md
# crates/engine/src/cmd/edit.rs
# crates/engine/src/cmd/formulas.rs
# crates/engine/src/tests.rs
# crates/formula/src/lib.rs
# crates/formula/src/parser.rs
# crates/formula/src/tests.rs
# crates/ui-egui/src/control.rs
# crates/ui-egui/src/formula_bar.rs
# crates/ui-egui/src/grid.rs
# crates/ui-egui/src/i18n.rs
# crates/ui-egui/src/lib.rs
# crates/ui-egui/src/ribbon.rs
# crates/ui-egui/tests/selection.rs
# docs/function-parity.md
# docs/ui-parity.md
2026-10-22 03:01:31 +00:00
aiongg
b0b6409112
Integration: track t03
...
# Conflicts:
# ROADMAP.md
# crates/ui-egui/tests/keyboard_shortcuts.rs
# docs/file-format-parity.md
# docs/localization-parity.md
# docs/ui-parity.md
2026-10-22 03:00:13 +00:00
aiongg
54d0f7cfc0
Integration: track t02
...
# Conflicts:
# ROADMAP.md
# crates/core/src/lib.rs
# crates/ui-egui/src/editor.rs
# crates/ui-egui/src/grid.rs
# crates/ui-egui/src/tabs.rs
# docs/chart-parity.md
# docs/localization-parity.md
# docs/ui-parity.md
2026-10-22 02:59:55 +00:00
aiongg
ec61d59b41
Integration: cargo fmt
2026-10-22 02:50:46 +00:00
aiongg
1d9b29ff57
Integration: cargo fmt
2026-10-22 02:45:22 +00:00
aiongg
1316d39865
Merge PR #1151 : Charts: a huge trendline forecast no longer collapses the chart ( #1148 )
...
ROADMAP.md: all rows kept.
crates/chart/src/tests.rs: both tests kept.
2026-10-22 02:37:37 +00:00
aiongg
169c78dda8
Merge PR #1111 : Respect workbook structure protection in sheet rename, move, copy, hide and unhide ( #1049 )
2026-10-22 02:37:22 +00:00
aiongg
470a2ae2c1
Merge PR #1765 : Sheet protection: obey the Sort and Use AutoFilter boxes
...
Conflicts:
- crates/engine/src/cmd/data.rs: do_sort keeps #1284 's sheet parameter and checks Sorting on it; toggle_filter checks Filtering after #1285 's data_target
- crates/engine/src/tests.rs: adjacent tests, both kept
2026-10-22 02:37:16 +00:00
aiongg
6370fd2254
Merge PR #1693 : Charts: series that refer to defined names ([0]!Name) plot their data, and are saved qualified
...
crates/xlsx/src/tests/mod.rs: kept both mod lines (cellmetadata, chart_book_names)
docs/file-format-parity.md: kept HEAD header line, both change rows
2026-10-22 02:36:34 +00:00
aiongg
431aaaaf69
Merge PR #2022 : Reject unparseable conditional-format formulas ( #1999 )
...
crates/engine/src/cmd/insert.rs: kept both sides: PR #884 's is_string_literal and cf_style_json, and PR #2022 's check_cf_* before edit(); 884's kept string literals parse
2026-10-22 02:36:33 +00:00
aiongg
8ec29a8b3b
Merge PR #1652 : Fill handle: right-drag opens the fill menu (Copy Cells, Fill Series, Fill Formatting Only, Fill Without Formatting, Series…)
...
crates/ui-egui/src/grid.rs: kept both GridState fields (context_menu_frame, fill_menu); previous_popups tuple has four elements inside the touch_pan branch; release match has Drag::Rows|Cols, then the two Drag::Fill arms
docs/ui-parity.md: kept HEAD header line, both change rows
2026-10-22 02:36:24 +00:00
aiongg
d97f61748e
Merge PR #1946 : XLSX: keep cell fonts' charset (Arabic 178) and family on save
...
crates/xlsx/src/styles.rs: family/charset block ported into the dxf.is_none() branch of font_xml (PR #1225 made it take Option<&DxfStated>)
docs/file-format-parity.md: header Change line keeps both sides' clauses
2026-10-22 02:36:23 +00:00
aiongg
8e2974cc65
Merge PR #1629 : Memory: undo steps share picture and macro bytes instead of copying them
...
Conflicts:
- ROADMAP.md: both progress-log and revision rows kept
- crates/xlsx/src/sheet_write.rs: keeps #995 's image_part call; drops #1629 's to_vec line (image_part copies from &[u8])
2026-10-22 02:36:22 +00:00
aiongg
cba89cfda8
Merge PR #1066 : Engine: formulas.evaluate refuses what cell entry refuses, saying why
...
ROADMAP.md: both progress-log rows kept.
2026-10-22 02:36:20 +00:00
aiongg
ced3f7ce7a
Merge PR #1912 : Print CJK text with a CID font instead of question marks
...
crates/pdf/src/lib.rs: add_page keeps both fonts [bool; FONT_SLOTS] and links Vec
2026-10-22 02:36:20 +00:00
aiongg
7fd1553a8b
Merge PR #1626 : Keyboard: Ctrl+6 hides and shows objects, saved as workbookPr showObjects
...
Conflicts:
- docs/file-format-parity.md: header and the three .xlsx rows keep main's text plus the show-objects entry; both log rows kept
- docs/ui-parity.md: header keeps main's text plus Ctrl+6; both log rows kept
2026-10-22 02:36:15 +00:00
aiongg
8590dca0db
Merge PR #2207 : clipboard: bound HTML colspan/rowspan expansion ( #2171 )
2026-10-22 02:36:12 +00:00
aiongg
d0394a0f34
Merge PR #2005 : AutoFill refuses a target that doesn't hold the source in a corner (whole rows into whole columns aborted the app)
...
crates/engine/src/fill.rs: kept both tests (#1360 and #2005 ).
2026-10-22 02:36:12 +00:00
aiongg
d67193f403
Merge PR #1685 : #1447 : a PivotChart's link names the workbook
...
docs/file-format-parity.md: header Change line names both pivot fixes; both change log rows kept
2026-10-22 02:36:11 +00:00
aiongg
635056bd23
Merge PR #2131 : Print: JIS B4/B5 and Japanese paper sizes (はがき・封筒・B6)
...
ROADMAP.md: one status line naming both changes; both feature-table and progress-log rows, newest first.
2026-10-22 02:36:10 +00:00
aiongg
7269b12f1e
Integration: #1976 scenarioShow writes stored numbers as values
...
Entering them through the parser applied percent entry to Percentage-formatted
cells (a stored 0.05 would not round-trip). Test: scenario_show_restores_a_percentage_cells_stored_number.
2026-10-22 02:36:05 +00:00
aiongg
c03d4a881b
Merge PR #1570 : XLSX: keep dynamic-array cell metadata (cm) on save
...
ROADMAP.md: kept both progress-log rows
2026-10-22 02:36:04 +00:00
aiongg
7e74b35a1b
Merge PR #2095 : Number Stored as Text: green indicator, warning button and Convert to Number ( #1994 )
...
crates/ui-egui/src/grid.rs: kept object_menu (2084) and error_check_tag (2095), both fns and both calls.
crates/ui-egui/src/i18n/de.rs, pt.rs: union of the entries.
docs/ui-parity.md: one status line naming both changes, both history rows.
2026-10-22 02:36:03 +00:00
aiongg
05ecd6d4a8
Merge PR #1628 : Add Advanced Filter dialog and fix copy-to data loss
...
crates/ui-egui/src/control.rs: kept #1477 's unconditional build_params call
crates/ui-egui/src/dialogs.rs: build_params pub(crate) once, with #1628 's advancedFilter arm
docs/ui-parity.md: status line combined, change-log rows both kept
2026-10-22 02:35:59 +00:00
aiongg
7768f56603
Merge PR #1580 : Calc: CELL("filename") names the workbook's file
2026-10-22 02:35:56 +00:00
aiongg
6b0411091a
Merge PR #1559 : Sort and de-duplicate data.textToColumns fixed-width breaks
...
Conflicts:
- crates/engine/src/cmd/data.rs: adjacent test insertions, both kept
2026-10-22 02:35:56 +00:00
aiongg
2fbb45eac0
Merge PR #2049 : Word-wrap-aware automatic row height ( #1969 )
...
crates/engine/src/cmd/mod.rs: kept #2033 's wrap-only branch and #2049 's wrapped_line_count helper, called inside the wrap branch; dropped #2049 's explicit/else arm.
2026-10-22 02:35:55 +00:00
aiongg
524ab89a1a
Merge PR #1379 : engine: subtotal honours header:false instead of dropping the first data row
...
Conflicts:
- crates/engine/src/cmd/data.rs: subtotal keeps #1285 's data_target and sheet-qualified calls with #1379 's header/first logic; grand-total range starts at first; both tests kept (#1299 filter blanks, #1379 subtotal)
2026-10-22 02:35:51 +00:00
aiongg
6e66756ce8
Merge PR #1976 : Enter bare numbers in Percentage-formatted cells as percents
2026-10-22 02:35:44 +00:00
aiongg
46647fd61e
Merge PR #1474 : Conditional formatting: text rules never match an error value ( #1162 )
2026-10-22 02:35:41 +00:00
aiongg
013ead7389
Integration: #2033 drop the dated history from the auto-fit comments
2026-10-22 02:35:41 +00:00
aiongg
aab44d2c23
Merge PR #1535 : engine: sort and remove duplicates move the rows' notes and hyperlinks
...
# Conflicts:
# crates/engine/src/tests.rs
2026-10-22 02:35:40 +00:00
aiongg
5c1b171892
Merge PR #1738 : Keep chart source range in step with inserted and deleted lines
2026-10-22 02:35:39 +00:00
aiongg
3ed16929d9
Merge PR #1320 : AutoFit Column Width measures text in the font the grid draws it with
...
Conflicts:
- crates/engine/src/cmd/format.rs: autofit_cols keeps #885 's (si, lines) and adds #1320 's measure
2026-10-22 02:35:39 +00:00
aiongg
d83dc11ff2
Merge PR #1695 : Charts: box & whisker charts honor their quartile method
...
crates/engine/src/tests.rs: kept both new tests (csv_as_text_keeps_identifier_columns_as_written and box_whisker_quartile_methods_survive_xlsx).
2026-10-22 02:35:39 +00:00
aiongg
6d4e62d12b
Merge PR #2032 : Formula entry: an incomplete formula's error describes what was typed ( fixes #2030 )
...
crates/formula/src/tests.rs: kept both tests.
2026-10-22 02:35:39 +00:00
aiongg
4fd4d39aa0
Merge PR #1308 : engine: refuse removeDuplicates with no valid column instead of deleting all rows
...
Conflicts:
- crates/engine/src/cmd/data.rs: keeps #1308 's column guard after cols is built; drops its later 'let sheet' (#1285 supplies sheet)
2026-10-22 02:35:34 +00:00
aiongg
26c6e4ca14
Merge PR #1621 : Reject unsupported flip param in arrange.rotate
...
Conflicts:
- crates/engine/src/tests.rs: kept both appended tests
2026-10-22 02:35:33 +00:00
aiongg
0118413c77
Merge PR #2080 : HTML export: place pictures and charts at their anchors
...
crates/engine/src/tests.rs: kept both sides' new tests (journal tests from #1230 , HTML export tests from the PR).
docs/file-format-parity.md: header Last updated 2026-10-21 with both change clauses; both revision-history rows, newest first.
2026-10-22 02:35:32 +00:00
aiongg
b17f47b2ca
Merge PR #2033 : Row auto-fit: count line breaks only in cells that wrap
...
ROADMAP.md: header line keeps the newer 2026-10-19 date and lists this change; this PR's progress-log row added once below the newer rows.
2026-10-22 02:35:31 +00:00