Repository navigation
Formulas: report the parse error for the text as typed (#2030) - #6
Draft
isaac-levine wants to merge 494 commits into
Draft
isaac-levine wants to merge 494 commits into
isaac-levine wants to merge 494 commits into
Conversation
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ame test Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…fore-textafter-with-negati
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… where dbus-daemon is missing Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…m-autofilter-is-less-than-l
…ength # Conflicts: # docs/localization-parity.md
…-left-sheets # Conflicts: # docs/file-format-parity.md # docs/localization-parity.md
# Conflicts: # docs/file-format-parity.md # docs/localization-parity.md
# Conflicts: # docs/file-format-parity.md
# Conflicts: # docs/ui-parity.md
# Conflicts: # docs/file-format-parity.md
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…press Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
# Conflicts: # docs/file-format-parity.md # docs/localization-parity.md
…ef-parse-accepts-signed-ro
…p-theme-watcher-opens-a-ne
…uchscreen-devices-cannot-p
…anslations # Conflicts: # crates/ui-egui/src/i18n.rs # docs/localization-parity.md
…itor-references docs: drop references to competing commercial software
…o-closed parens (storytold#2030) Entry retries with up to 8 appended ')' and returned the last error, so an incomplete formula like =1+ reported an unexpected ')' the user never typed. Keep the first error instead. Same fix in the UI locale path.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Typing an incomplete formula such as
=1+reported "unexpected)" although no)was typed. Cell entry closes missing parentheses by retrying the parse with up to 8 appended), and it returned the error from the last retry. That error is about the appended parens, not the text the user typed.The entry path now keeps the error from the first parse and reports that if every retry fails.
=1+now says "unexpected end of formula". The same retry loop incrates/ui-egui/src/formula_locale.rsgot the same change. A new engine test covers the message and checks that=SUM(1,2is still auto-closed.Commands run:
cargo fmt --all -- --check: cleancargo clippy -p gridcraft-engine -p gridcraft-ui-egui --all-targets -- -D warnings: cleancargo test -p gridcraft-engine: all pass (296 unit tests plus integration tests)cargo test -p gridcraft-ui-egui --lib formula_locale: passes, but no test in that filter exercises the changed codecargo xtask layers: no violationsNot verified:
cargo xtask wasmand the fullgridcraft-ui-eguitest suite were not run (the sandbox disk filled up mid-run). I did not confirm the new test fails without the fix by running it, only by reading the code path.Upstream issue: storytold#2030
Generated by Claude Code