What's New in 8.0.0-beta.1
New Features
- Date Difference Arithmetic: Subtract two dates (
05/20/2026 - 05/01/2026ord1 - d2) with optional unit conversion (05/20/2026 - 05/01/2026 in hours,to weeks). - Natural Percentage Ratios and Offsets:
- Calculate percentage ratios with
X as % of Y,X as a % of Y, orX is what % of Y. - Apply percentage offsets directly to currency and unit values (
$200 + 15%,50 m - 20%).
- Calculate percentage ratios with
- Base and Percentage Conversions: Convert values using
inortowithhex,bin,oct, and%(255 in hex,10 to bin,64 in oct,0.15 in %). - Live Selection Statistics: Selecting multiple lines in the editor displays live Sum, Avg, Min, Max, and Count in the bottom status bar (click to copy the sum).
- Multi-Function Plotting:
- Toggle and compare multiple functions of
xdefined on the active page using interactive series chips in the Plot dialog. - Added smart auto-domain (
x/y) scaling and localized axis limit inputs.
- Toggle and compare multiple functions of
- Cross-Page Reference Enhancements:
- Added autocomplete suggestions for exported variables when typing
page("PageName").. - Added interactive page link answers with variable count tooltips and one-click page navigation.
- Added autocomplete suggestions for exported variables when typing
- Desktop and Editor Settings:
- Keep in Menu Bar / System Tray: Minimize and close to the system tray on Windows and Linux (and menu bar on macOS).
- Start at Login: Launch Numara automatically at system login.
- Close App with Esc: Option to close the desktop window with the
Esckey. - Truncate Answers: Toggle single-line answer ellipsis truncation (with full-answer hover tooltips) when Line Wrap is disabled.
UI Improvements
- Slide-Up Page List Drawer: When undocked (
Slide outmode orAutoon compact windows), the page list now slides up from the bottom as a centered drawer when clicking the active page name in the bottom bar. - Resizable Docked Sidebar: When
Docked(orAutoon wider windows), the left sidebar now includes a drag handle to resize its width (double-click to reset to default width) and smoothly adjusts the desktop window width when switching betweenDockedandSlide outmodes. - Streamlined Bottom Action Bar: Removed the separate sidebar toggle button and consolidated the bottom-right action icons (
User Functions & Units,Settings,About) into a single menu button for a cleaner footer layout. - Redesigned Modal Dialogs: Added draggable dialog headers, standardized top-right close (
X) buttons across all modals, removed redundant footerClose/Cancelbuttons, and improved modal centering on window resize. - Reorganized Settings Dialog:
- Organized tabs into General, Editor, Calculator, Format (with dedicated Numbers, Dates, and Currency sections), and Sync.
- Moved Typography controls (
Font size,Font weight,Line height) into the Editor tab alongside Display & Behavior settings. - Simplified Number format (
1,234.56and1.234,56) and Date format (MM/DD/YYYY,DD/MM/YYYY,YYYY-MM-DD) selectors. - Added a "Keep Sync Folder" option when resetting settings to defaults.
- Interactive Plot Header: Replaced the static single-function plot title with clickable series pills to toggle multiple functions on and off directly inside the Plot modal.
- Editor and Theme Polish: Refined CodeMirror gutter alignment, code-folding indicators, search and replace panel styling, tooltip positioning, and color picker reset button alignment.
Performance and Under-the-Hood Improvements
- Incremental Line Caching: Added per-line scope delta tracking and compiled expression caching in the calculation worker so editing a line only re-evaluates modified and downstream lines.
- Reduced Main-Thread Bundle Size: Removed duplicate Formula.js and Nerdamer imports from the main thread (reducing
numara.jsbundle size by ~30%) and added anO(1)line-height sync fast path when Line Wrap is off. - Cross-Locale Consistency: Added an
'en-US'date/time parsing fallback alongside the system locale, enforced standard ASCII digits (latn) and ISO 8601 calendar output in Luxon, and stripped Unicode locale extension subtags so expressions evaluate consistently across all OS locales. - External File Rename Detection: Improved folder sync reconciliation to detect externally renamed
.numfiles while preserving page IDs and ordering. - Worker Sandbox Hardening: Disabled network globals (
fetch,XMLHttpRequest,WebSocket,EventSource,importScripts) inside the calculation Web Worker. - Codebase Modularization: Refactored the Electron main process, calculation engine, CodeMirror editor, page manager, UI components, and stylesheets into modular subsystems.
- Updated Dependencies: Updated Electron, Math.js, Luxon, and build tooling.
Bug Fixes
- Fixed comma-decimal (
1.234,56) input parsing so numbers under1000(999,9) and ungrouped numbers (1000,1) do not require a thousands separator. - Fixed colon line labels (
label: expr) colliding with single-letter units/constants (m: 100,s: 20,e: 10) and Math.js range syntax (a:5). - Fixed operator precedence for aggregation keywords (
total^2,avg * 2) and prevented multi-statement lines (a = a + 5; total) from executing side effects twice. - Fixed stale
ansand_scope values persisting after an error line, and ensured error lines reset runningsubtotal. - Fixed line continuation (
contPrevLine) across comment-only lines. - Fixed lowercase currency unit aliases not updating when exchange rates are refreshed.
- Fixed User Defined Functions and Units (UDF/UDU) to restore overridden built-in functions/units when removed and prevented plain UDF objects from flattening onto built-ins.
- Fixed HTML escaping in editor token tooltips and prevented user objects from spoofing cross-page links.
- Fixed
Reset Defaultsin Settings to restore default panel and sidebar widths.