CalcPad Changelog

What's new in CalcPad 6.2.3

Mar 27, 2024
  • Fixed bugs from the previous version.
  • Fixed the inf/sup x variable marked as error when other letter is used.
  • Improved inf/sup algorithm.

New in CalcPad 6.2.2 (Mar 26, 2024)

  • Updated documentation - lcm and gcd were changed to multivariable.
  • Added splitting of expression on several lines by adding" _" at the end of each line.
  • Fixed redefining of functions with the same name but with different number of arguments.
  • Fixed crash on code editing
  • Fixed opening a file save window on print output command.
  • Fixed line sync links on style and script Html elements.
  • Fixed rewriting VA units with W.
  • Corrected spelling errors (reminder -> remainder, etc.).
  • Fixed units in comments example in help.

New in CalcPad 6.2.1 (Jan 9, 2024)

  • Calcpad made multilingual and ready for localization. All strings exported to resource files.
  • Improved UI.
  • Fixed issues #261 and #262.
  • Fixed occasional crash when using $Map function.

New in CalcPad 6.2.0 (Nov 16, 2023)

  • Calcpad was ported to .NET 8.0.
  • The performance of calculations was enhanced by average of 20%.
  • An option was added to split long equations on two lines after the first " = " sign (issue #234).
  • Two new keywords were introduced for that purpose:
  • split - split the equations on two lines;
  • wrap - do not split. The equations will be wrapped at the end of the line.

New in CalcPad 6.1.9 (Nov 6, 2023)

  • Fixed rewriting of rad with ° in composite units.
  • Added variable substitution control switches (#199 and #226, #234):
  •   #nosub - do not substitute variables (no substitution);
  •   #novar - show equations only with substituted values (no variables);
  •   #varsub - show equations with variables and substituted values (default);
  • Improved formatting of subscripts.
  • Other minor fixes

New in CalcPad 6.1.8 (Oct 26, 2023)

  • All modules and local images used in your code are now packed in a single *.cpdz file without dependencies.
  • Local images are all images that are stored on the local disk with relative path to the current worksheet, say <img src="./Images/plan.png">. Images that use full path, local or internet are not packed.
  • This makes the distribution of *.cpdz files much easier. When you open a *.cpdz file somewhere else, all packed images are restored on the new location.

New in CalcPad 6.1.7 (Oct 18, 2023)

  • The atan2 function was made units aware.

New in CalcPad 6.1.6 (Oct 6, 2023)

  • Application crash handling, logging and data recovery was improved (if anyone has a chance to get there at all).
  • No save prompt when opening a file from the recent files menu was fixed, issue #209.
  • Units formatting was improved as discussed in #210. More space was added before the unit and typeface was changed from italic to roman as discussed in #180.
  • Automatic data validation of Html input forms was added before calculations. All input fields are checked if they contain valid numbers and reported if not.

New in CalcPad 6.1.4 (Sep 9, 2023)

  • The assignment of complex numbers with units to variables was fixed, issue #195.
  • Fixed custom units not recognized in input forms.
  • Fixed settings editing in Cli.

New in CalcPad 6.1.3 (Aug 28, 2023)

  • The Insert->Html menu look and feel was improved.
  • New snippets for Html bulleted and numbered lists were added to the menu.
  • Shortcut keys were added for formatting commands:
  • bold (Ctrl+B);
  • italic (Ctrl+I);
  • underline (Ctrl+U);
  • bulleted list (Ctrl+Shift+L);
  • numbered list (Ctrl+Shift+N);
  • subscript (Ctrl+ "+");
  • superscript (Ctrl+Shift "+").
  • New "Replace" command was implemented in the "Edit" menu (Ctrl+H).
  • Missing units for mWh, μWh, nWh, pWh were added #176 .
  • The OPEN command in Cli and text flow were fixed.

New in CalcPad 6.1.2 (Aug 18, 2023)

  • We added support of of SVG images in the export to MS Word.

New in CalcPad 6.1.1 (Aug 10, 2023)

  • In this release:
  • The issue with not recognizing Greek letters in command line mode was fixed #177.
  • An option to enter Greek letters by escaping the respective Latin letters was added.

New in CalcPad 6.1.0 (Aug 2, 2023)

  • The compiler performance was optimized even further. Now, compiled functions execute 10% - 15% faster.
  • The export of OpenXML files (MS Word) was improved:
  • Fixed export of encoded images to Word;
  • Added support for floating images (left, right);
  • Added support for nested tables;
  • Improved formatting of tables;
  • Added new CSS class "data" for tables.

New in CalcPad 6.0.9 (Jul 23, 2023)

  • Compiler overhead at some cases was fixed.
  • Minor improvements were made of the export to MS Word.

New in CalcPad 6.0.8 (Jul 18, 2023)

  • The precision of Complex Pow function was improved;
  • The integration with a lower bound greater than the upper bound was fixed;
  • Warnings for function rewriting in compiled worksheets were removed;
  • Units for dry volume were added;
  • More derived units for liters were included;
  • Bugs in temperature units conversion were fixed;
  • Various issues with units formatting were fixed;
  • Dalton units (da, u) scaling was fixed;
  • An error message on export to Word of units with subscript was removed.

New in CalcPad 6.0.7 (Jun 2, 2023)

  • The calculation engine was improved and optimized.
  • Rounding was changed to be "away from zero", and not "banker's rounding".
  • A bug was fixed with the "mean" function - It was throwing exceptions in complex mode.
  • Exceptions in the "switch" function with less than 3 arguments were fixed.
  • Complex functions were made to return the primary root.
  • Results from complex functions for some special values were precised.
  • Some static variables, that could cause incorrect results in multithreading environment, where made object dependent. So Calcpad core was made thread safe.

New in CalcPad 6.0.6 (May 12, 2023)

  • Function plotting was ported to the multiplatform SkiaSharp graphics library.
  • Plot quality was improved. Plots are made more compact to save some space.
  • Stack leak after throwing an exception was fixed.

New in CalcPad 6.0.5 (Apr 29, 2023)

  • Fixed checkbox and radio scaling.
  • Fixed line links do not open in error messages.

New in CalcPad 6.0.4 (Apr 24, 2023)

  • You define you own custom units and use them just like normal ones.
  • New time units for week (w), year (y), etc.
  • New aliases for US engineering units (lbm, lb_m, lb_f, kipm, kip_m, kip_f). "Kip" now becomes a force units (not mass), which is more widely used.

New in CalcPad 6.0.3 (Apr 15, 2023)

  • Fixed bug with small brackets after export to pdf.
  • Refactored OpenXML image processor.
  • Fixed error messages in global error handling.

New in CalcPad 6.0.2 (Apr 12, 2023)

  • Fixed export to word of tables and images;
  • Fixed showing of code window after "New".

New in CalcPad 6.0.1 (Apr 7, 2023)

  • UI elements are replaced with the respective symbols, depending on what is selected by the user, so at the end, it is all simple text.
  • The #input type break in condition block now works.
  • Additional Html UI elements like "select", "checkbox", "radio", etc. as demonstrated in this example: Html UI.cpd now exports correctly to Word.

New in CalcPad 6.0.0 (Apr 6, 2023)

  • New logical operators were added:
  • "?" - logical "and";
  • "?" - logical "or";
  • "?" - logical "xor";
  • … and functions:
  • not(x) - logical "not";
  • and(x; y; z...) - logical "and";
  • or(x; y; z...) - logical "or";
  • xor(x; y; z...) - logical "xor";
  • Unlike operators, which are binary, functions can take multiple arguments at a time.
  • The modulo (reminder) operator "%" was changed to "?" (circled fraction symbol). In this way, the percent units "%" will not require a leading dot for disambiguation anymore: ".%". A shortcut “"%%” was added for faster insertion of "?", similar to relational operators.
  • Equation rendering and typography was improved: brackets, roots, spacing, etc. Some bugs in rendering complex equations were fixed.
  • Gentle shading was added under non-parametric function plots: $Plot{f(x) @ x = a : b}
  • To avoid shading, make the plot parametric: $Plot{x|f(x) @ x = a : b}
  • An issue with changing the trigonometric units in Cli (DEG/RAD/GRA) was fixed.
  • The auxiliary files were added to the Calcpad project folder, for easier building from source code by cloners.
  • Documentation and help files were updated.

New in CalcPad 5.9.9 (Mar 26, 2023)

  • Added new integer functions.
  • Program settings and window position are saved between sessions.
  • Fixed residual factors in units.
  • Fixed missing brackets in units division.
  • Fixed figure bracket size for if/switch.
  • Added common math and physical constants in the "Insert" menu and quick help:

New in CalcPad 5.9.8 (Mar 11, 2023)

  • Added viscosity units as per #135;
  • Added knots units for speed as per #135;
  • Improved switch formatting;
  • Fixed highlighting for unit conversion;
  • Upgraded to version 5.9.8.

New in CalcPad 5.9.7 (Mar 9, 2023)

  • If and switch functions are displayed in the output on multiple lines, with a curly left bracket as discussed in #96;
  • A new command line interpreter tool was added as discussed in #132;
  • "Paste image from clipboard" into the code feature was added, as requested in #123;
  • Crash after start was fixed as per issue #134;
  • Percent % and permille ‰ units were added as discussed in #110 and #124;
  • You can force parsing as units, by placing a dot before the name (e.g. .m, .g), when a variable with the same name exists #117 .
  • Conversion of @, ' and " to ° ′ and ″ (degrees, minutes, seconds), by pressing Ctrl+G was added as per #129;

New in CalcPad 5.9.6 (Feb 26, 2023)

  • Implemented Kahan summation algorithm to reduce floating point error accumulation.
  • Added export of CSS colors and backgrounds from the report. You can add them by inline styles like:
  • '<p style="background: #FFF0F0; color: crimson">The check is not satisfied!</p>
  • 'The check is <span style="background: #FFF0F0; color: crimson">not satisfied</span>!
  • For red color you can use also class="err" as before. For green color, a new "ok" class is added (small letters): class="ok"

New in CalcPad 5.9.5 (Feb 13, 2023)

  • Added global exception handling and data recovery.
  • All unhandled exceptions are now caught globally and reported to the user on screen.
  • Then, the data is automatically saved to a temporary file and the application is restarted.
  • The new Calcpad session attempts to recover and restore the unsaved data.
  • Even if it fails to recover, you can still find your data into the TEMP folder. Just search for the latest *.tmp file.
  • Even if crashes were extremely rare for Calcpad, now the risk for unexpected crash and loss of data is reduced to almost zero (I hope).

New in CalcPad 5.9.4 (Feb 7, 2023)

  • Optimized solver invocation.
  • Fixed unit composition issue #117.
  • Optimized rectangular slab example.

New in CalcPad 5.9.3 (Jan 24, 2023)

  • Various bugs with code editing, highlighting and undo were fixed. Mostly with macros.
  • Synchronization of scrolling was added for files with macros and modules.
  • If you double click on a line or press ctrl+Enter in the code editor the output will scroll to match the respective lines;
  • line numbers of the unwrapped code are now links. If you click any, you will find the matching source line in the original code.
  • Performance was improved with another 15%-20%. This is achieved by optimizing function calling.

New in CalcPad 5.9.2 (Jan 11, 2023)

  • Fixed bug with default input values after #include.

New in CalcPad 5.9.1 (Jan 5, 2023)

  • Added interactive (step-by-step) execution.
  • New #pause and #input keywords.
  • Documentation updated.

New in CalcPad 5.8.9 (Oct 25, 2022)

  • Added #continue keyword for branching loops.
  • Added #round keyword for different rounding in a sheet. See discussion #85
  • Fixed: Ctrl + O does not display the file open dialog. See discussion #87 and issue #88
  • Fixed: "Find Next" does not scroll to the found string, issue #89

New in CalcPad 5.8.8 (Oct 10, 2022)

  • New:
  • exp function was added, issue #77;
  • sign function was documented. It was present in the math code, but not available in the documentation;
  • abs function was formatted as | x |, issue #75;
  • nested sums bug was fixed;
  • screen keyboard was improved. Buttons were made larger but more compact. New functions were added;

New in CalcPad 5.8.7 (Sep 27, 2022)

  • The performance of math core was optimized by 15-20% average, up to 2 times at some cases, mostly when calculating with units.

New in CalcPad 5.8.6 (Sep 15, 2022)

  • Calculations with electrical units were improved as per issue #61. Now, default units are properly displayed.
  • Title highlighting was added as per issue #62.
  • Support for links in output was added. If you click a link that is valid URL or local Html file, it is opened in a new browser. You can select the prefered browser from the combo box just bellow the output window. If the link is a *.cpd file, it is opened inside Calcpad. That is how, you can make a contents page that opens different files.
  • Adding a file to the recent file list, when double-clicked in windows explorer, was fixed, issue #66.
  • Documentation was updated.

New in CalcPad 5.8.5 (Sep 7, 2022)

  • Fixed find/replace focus issue #57
  • Macro parser refactored
  • Added check for input fields in macros (not currently supported in Calcpad)

New in CalcPad 5.8.4 Pre-release (Sep 2, 2022)

  • Adaptive Lobatto integration performance was improved.
  • Missing value tooltips for variables were fixed.
  • Skipping of blank lines on file open was also fixed.
  • Documentation was updated with better explanation for root finding and integration.
  • Replacing of == with ≡ in comments on file open was fixed.

New in CalcPad 5.8.3 Pre-release (Aug 20, 2022)

  • No-calcs option was added to display the equation "as is" without results. This is implemented by additional #noc switch, besides #val and #equ, see issue #44.
  • Revolutions (rev) angle units were included. One rev = 2pi radians = 360 degrees. Check #34 (comment).
  • "Missing )" parsing bug was fixed, see issue #46.
  • Documentation and syntax definitions were updated.

New in CalcPad 5.8.2 Pre-release (Aug 17, 2022)

  • Fixed breach of *.cpdz files by saving as *.cpd. See #28 (comment)
  • Counting of input fields in the source code is now correct.
  • Added C-style relational operators: ==, !=, >=, <= as per #38, No 4. They work as shortcuts to the respective Calcpad operators and are replaced after leaving the current line, as follows:
  • == => ≡
  • != => ≠
  • >= => ≥
  • <= => ≤
  • Fixed resetting input fields to zero after editing the source code.
  • Fixed resetting input fields to zero after undo all steps.
  • The replacement of Html select input with text in the output is performed only if class "post" is added to the select element.
  • Fixed macro replace order bug, issue #40.
  • Images are inserted on the current line (not in the beginning of the document), issue #36.

New in CalcPad 5.8.1 Pre-release (Aug 11, 2022)

  • A consistent system of native angle units was inmplemented:
  • ° (or deg) - degrees;
  • ′ - minutes
  • ″ - seconds;
  • Rad - radians;
  • Grad - gradians (grades);
  • Operator precedence bug for multiplication with units was fixed. In previous versions 1/2m was treated in the same way as 1/2m = 1/(2m) = 0.5m^(-1). Now, 1/2m = 0.5m.
  • A bug with unsaved input values for included files was also fixed. When all of the input fields were into the included files and none in the main file, they were not saved.
  • Quick help was updated with the new features - macros, includes and angle units.

New in CalcPad 5.8 Pre-release (Aug 7, 2022)

  • Macros and includes were added:
  • Inline string variable:
  • def {var name}$ = {content}
  • Multiline string variable:
  • def {var name}$
  • {line 1}
  • {line 2}
  • ...
  • end def
  • Inline macro:
  • def {macro name}$({param1}$; {param2}$; ...) = {content}
  • Multiline macro:
  • def {macro name}$({param1}$; {param2}$; ...)
  • {line 1}
  • {line 2}
  • ...
  • end def
  • Usage:
  • {var name}$
  • {macro name}$({arg1}; {arg2}; ...)
  • Include external module (that will not be included):
  • include {filename}
  • Open local section in a module:
  • local
  • Open global section in a module:
  • global
  • Macro names and parameters can include small and capital latin letters, numbers and underscore _. They must start with a letter.
  • Documentation has not been updated yet.
  • Macros are still not compatible with input fields. Do not use input fields in macros.

New in CalcPad 5.7.1 (Jun 26, 2022)

  • The new version includes the following improvements and bug fixes:
  • Local images are copied to the target folder on "Save As..." command.
  • There was a bug with local when saving the file to *.docx format. It is now fixed.
  • The infinite loop bug on opening a file that contains formulas with leading spaces is also fixed.

New in CalcPad 5.7.0 (Jun 21, 2022)

  • In this version, we added valuable new features and made some nice improvements as follows:
  • Find and replace dialog was added with the respective button in the toolbar;
  • Auto-complete list with suggestions appears while typing - issue #17;
  • The syntax highlighting was improved. Now, it detects undeclared variables and functions and recognizes standalone units (without a preceding number);
  • Bracket matching added. The corresponding opening and closing brackets are highlighted in bold and red;
  • The UI responsiveness was improved by making more tasks to execute asynchronously;
  • The program prompts to save the current fine before opening a new file - Issue #21;
  • The formatting of brackets in the output was improved;
  • New units for angles in degrees were added "°". You can use them to enter angles in degrees even in #rad mode, say "90°", instead "π/2";
  • Images can be loaded from the local path of the *.cpd file. Just write <img src="./myimage.png" ...>.

New in CalcPad 3.2.0.1 (Oct 29, 2018)

  • Minor improvements and bug fixes
  • Some numerical methods precision has increased by
  • adding Richardson extrapolation
  • Some improvements in units handling was made as
  • well.

New in CalcPad 3 (May 7, 2018)

  • Units support Metric/Imperial/USCS