github bornova/numara-calculator v7.6.0

2 hours ago

What's New in v7.6.0

Numara 7.6.0 is a major release introducing Cross-Page Imports, Full Offline PWA Support, Mobile Ergonomics, calculation engine improvements, and security hardening.


Highlights

  • Cross-Page Variables & Imports: You can now reference variables and calculations from any other page using page("PageName") (e.g. r = page("Rates"), then r.hourly * 40). Includes full autocomplete hinting and clickable page links in results!
  • Full Offline PWA & Service Worker: Numara on the web can now be installed as a Progressive Web App (PWA) and launched completely offline from a cold start, with smart background cache updates.
  • Mobile Ergonomics & Notch Support: Smooth full-screen experience on phones and tablets with safe-area insets (no overlapping home bars) and disabled auto-capitalization/autocorrect on math expressions.

Features & Improvements

Cross-Page Math & Navigation

  • Reference other pages using page("Name") or page("id").
  • Auto-complete suggestions for imported page variables and object properties.
  • Clickable page link tags in the results gutter to quickly navigate between related pages.

Progressive Web App & Offline

  • Service Worker: Implemented network-first navigation with offline fallback and background asset revalidation.
  • Adaptive Icons: Added dedicated Android maskable icons (icon-maskable-192.png, icon-maskable-512.png) with safe-zone margins and apple-touch-icon.png for iOS Home Screens.
  • PWA Enhancements: Added app shortcuts (e.g. "New Calculation"), window controls overlay support, and device orientation flexibility.

Calculation Engine & Editor

  • Running Total Keyword Collisions: Fixed an issue where variable names containing keywords (e.g. total_amount = 500) were excluded from running totals (total, subtotal).
  • Temporal Scope in Imports: Cross-page expressions referencing today or now now resolve accurately in the importing page.
  • Live Search Panel: Match positions and highlights now update in real-time as you edit text with the search panel open.
  • Bottom Answer Copying: Fixed Copy All Answers and Copy Page when using the bottom answer position layout.
  • Formatting Crash Guards: Added defensive fallbacks in number and currency formatting to prevent RangeError crashes when invalid precision settings are passed.

Security & Stability Hardening

  • Content Security Policy (CSP): Added strict CSP headers whitelisting only local assets and the Frankfurter currency API.
  • DOM XSS Protection: Switched DOM updates across error dialogs, confirmations, plot titles, and status messages from innerHTML to textContent.
  • Sync Safety: Cancelled pending debounced saves during page rename and deletion to eliminate race conditions in folder synchronization.
  • Electron Hardening: Added window destruction guards and protocol restrictions (http:, https:) on external URL handlers.

CI/CD & Testing

  • Automated multi-OS test matrix (Ubuntu, macOS, Windows) running 574 unit tests on every push and pull request.

Contributors

Special thanks to @meghprkh for the contribution to the PWA Service Worker architecture and adaptive icons in PR #300!

Don't miss a new numara-calculator release

NewReleases is sending notifications on new releases.