2025-10-22 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix infinite loop during factorization (e.g. when calculating "base(1234567,x,3)=2^31") on Windows

2025-10-21 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Hide mode string (when show-mode-in-prompt is enabled) when asking for user input
	* Improve interpretation of function expressions with x, y, and/or z in object names (e.g. "x year"), and/or within quotation marks (e.g. "x*code('x')"), in qalc

2025-10-18 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Avoid "Did you mean..." warning with same original text string as suggested

2025-10-17 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix crash after factorization with calculate-as-you-type enabled
	* Fix segfault with both calculate-as-you-type and RPN mode enabled
	* Improve support for character encodings other than UTF-8

2025-10-16 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* New completion method which presents a numbered list of matches and lets the user select an item by entering the corresponding number
	* Completion mode option
	* Refine completion matching
	* Hide "101" name variants

2025-10-13 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Show error when function or variable disabled by "--disable-insecure" is used
	* Fix "make test" (unittest) when compiled with --disable-insecure
	* Fix matching of multiple words in title
	* Fix compilation with -fsanitize=undefined

2025-10-09 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Improve speed when performing many multiple calculations read from file (by a factor of about 100 for simple calculations)
	* Increase responsiveness by decreasing the length of sleep periods (from 10 to 1 ms) while waiting
	* Improve calculation timer accuracy and add workaround for low time resolution for sleep on Windows

2025-10-08 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Allow any separator before time in date/time value if colon is used, and allow space as separator even if quotation marks are not used
	* Allow use of Z after date for UTC time (without any time specified)
	* Do not allow left over characters after date
	* Fix negative time zone in date and time input

2025-10-07 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Use category and title from existing local variable/function when using "=" for variable/function assignment
	* Fix output of calculate-as-you-type parsed value (division was displayed using negative exponent) for excluded functions
	* Do not write unnecessary (de)activate global objects to local definitions
	* Always include million, thousand, hundred (they are not ambiguous like other large numbers)
	* Fix make distcheck

2025-10-05 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Move erg/gram from equivalent to absorbed dose category
	* If last character is a digit, include both letters and numerals in matched word for completion
	* Fix reference names not used for reference of base units in some cases causing failure to load 13 units with Russian translation
	* Make astronomical unit symbol case insensitive and use lower-case letters by default ("au")

2025-10-04 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Calculate with interval/uncertainty in where expression even if exact mode
	* Fix display of "calculate as you type" and "save config" options, and remove duplicate "save mode" on Windows, in mode list
	* Update names for Loschmidt, Molary volume of ideal gas, and Sackur tetrode constants to improve consistency
	* Update value of HiggsBoson, quark_c, and quark_t constants
	* Add StandardGravity_unit name
	* Minor adjustment to Fine-Structure and Rydberg constants to more precisely reflect CODATA values for derived constants
	* Use current mode for display of value, place units and uncertanity on same line, for variables in qalc

2025-09-30 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Improve accuracy for intervals in solutions to equations when using interval arithmetic
	* Improve handling of intervals in where expressions
	* Move jerk, snap, crackle, and pop to subcategory
	* Change title "Gee" to "Standard Gravity (unit)" and add standard gravity per second

2025-09-29 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Avoid slow display of extreme numbers (> 2^10000000) with calculate-as-you-type
	* Add min/km and min/mile (pace)
	* Fix output of extremely large exact number with unnecessarily low precision with PrintOptions::preverve_precision activated
	* Restrict number of digits (10000) for extremely large numbers when saving variable to file
	* Fix 10 in scientific notation for approximate number in variable value displayed with decimals

2025-09-25 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix segfault when calculating log(a^n, a) with interval arthmetic is disabled
	* Show warning and ask for confirmation when deactivating interval arithmetic in qalc
	* (Re)activate interval arithmetic in qalc (if configuration from prevision version)

2025-09-24 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix language option without encoding (without ".utf8" at end)
	* Fix LANGUAGE and LANG variables for translation of definitions on platforms other than Window
	* Fix scruple unit typo ("scuple")
	* Hide questionable IUNS calorie unit
	* Initialize tm_isdst with -1 to make time zone determination more predictable, and accurate, for time around when daylight saving changes

2025-09-22 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Make titles for derived units without special symbols more consistent
	* Automatically update calculate-as-you-type calculations every second when the expression contains now or uptime variable, or time() function
	* Automatically calculate expression with "to"-operator even if it contains no other operator or number
	* Fix id of uptime variable (was same as id for plus infinity)

2025-09-21 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Add Kayser, Lambert, Foot-Lambert, Darcy, and Millidarcy units
	* Fix unit selection for automatic conversion from single unit with quantity one in some cases (e.g. barye)

2025-09-19 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Use mol as base unit for Einstein and clarify that Einstein refers to one mole of pohoton
	* Match object name on words after underscore, e.g. oz in fl_oz (find/list command)
	* Move (micro)einstein/(m²⋅s) to new category (molar flux) and add corresponding SI units

2025-09-18 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix inequality with 1/f(x) on one side, e.g. "1/(x-2) <= 2"
	* Add erg/(cm²⋅s) unit
	* Lower max bit width in bitrot(), bitset(), and setbits() functions, and max steps in shift()

2025-09-17 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix endless loop in Calculator::hasToExpression() with expression containing negative circled sans-serif digit dingbat
	* Add (reduced) compton wavelength for muon, neutron, proton, and tau
	* Add ƛ_C symbol to reduced compton wavelength and change alternative symbol for natural unit of length to ƛ_unit
	* Stricter command argument in command() function
	* Fix search term with more than one word and search for word preceded by parenthesis in title
	* Specify minimal vector size for linearfit(), quadraticfit(), and cubicfit() functions

2025-09-15 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* More efficient reducing of vector size (fixes segfault when aborting plot with very large number of samples)

2025-09-14 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix segfault when plot data generation is aborted before first y value has been calculated

2025-09-12 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix segfault (infinite loop) in Calculator::findMatchingUnit() with "sr*Pa^2"
	* Improve abortion of prime functions, and fix segfault when aborting prevprime() function
	* Fix possible freeze when creating CompositeUnit with malformed expression (primarily relevant when parsing expression after "to" operator)
	* Lower highest number of bits (to 10 000) in floating point conversion functions to avoid unresponsive application

2025-09-11 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix value of Planck unit (was rounded to 7 decimals)

2025-09-08 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Relocate qalc.history to $XDG_STATE_HOME (~/.local/state)

2025-09-03 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Do not show calculate as you type result for data set function with "info" (default) as second argument
	* Separate translation of "info" as data set argument from "info" as qalc command
	* Add "simple" to-operator option for non-scientific notation and apply non-scientific notation (exp off) for "decimal"

2025-09-01 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Show warning about default assumptions the first time an equation is solved, in qalc
	* Show warning when trying to calculate logarithm of quantity with unit, or value with unit in exponent
	* Show warning "(!)" when calculate as you type expression, in qalc, results in a question

2025-08-31 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix segfault with very small numbers (when floatValue() should return zero), high number of bits, and insufficient precision, in floating point conversion

2025-08-30 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Update calculation of fraction of year (with day counting basis 0 and 1) to match method used in spreadsheets other than Gnumeric

2025-08-29 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Add output in scientific (sci), or engineering (eng), notation as "to"-operator option (e.g. 1000 000 to sci = 1E6; also affects use of unit prefixes, negative unit exponents, etc.)

2025-08-27 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix dollarde() and dollarfr() functions

2025-08-22 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Allow use of non-existing variables, without using quotation marks or backslash (now also supported in X variable value), in plot expressions, and set appropriate assumptions in all cases (this affects GUIs but not the plot() function)

2025-08-20 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Parse 'p' in hexadecimal number as an operator (raise and multiply after parsing during calculation, e.g. 5p10 = 0x5 * 0x2^10), as with scientific E-notation, in order to improve display of parsed expression and avoid slow and very memory intensive calculations which might cause segfault in mpz_ui_pow_ui
	* Fix poolvar(), ttest(), and cor() functions
	* cor() and pearson() are the same function
	* Simplify (do not use csum() function) poolvar(), covar(), meandev(), var(), varp(), rms(), geomean(), harmmean(), and weighmean() functions
	* Change default quantile algorithm from 8 to 7
	* Only allow positive values in geomean() and harmmean() functions

2025-08-16 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix calculate as you type and indentation with prompt string containing Unicode characters, control characters, and/or escape sequences
	* Add "save config" option (if disabled qalc.cfg is never automatically updated)

2025-08-11 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Add symbols/abbreviations with variant name (US, UK) as suffix (shown as subscript), and hide corresponding symbol/abbreviation with variant as prefix
	* Add TeX scaled point unit
	* Change "ATA Pica" to "Johnson Pica" and "ATA Point" to "American Point", and make corresponding name/symbol changes
	* Set minimum preferred prefix to 0 for metric ton
	* Return first argument of uncertainty() function directly without evaluation, in midpoint() function

2025-08-09 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Add TeX point, twip, and agate typography units

2025-08-03 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix segfault when parsing "( \" followed by operator with RPN syntax
	* Fix segfault in parsing of text argument in some cases (with RPN syntax)

2025-08-02 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Add support for input of functions with more than one argument using RPN syntax

2025-08-01 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Load exchange rates even if exchange rates updates is not enabled (compiled with --without-libcurl), and show error message when exrates command is used in this case

2025-07-29 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix qError() function

2025-07-26 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix completion of text string ending with capital E

2025-07-22 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix input of inverse trigonometric function using Unicode power (e.g. sin⁻¹(x))
	* Add support for input of exponent before argument of trigonometric function (e.g. sin²(x))

2025-07-21 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix segfault during output of both approximate and exact logical OR value without (in)equality
	* Do not add linebreak, in qalc, after OR outside of result display and when result does not contain (in)equality
	* Fix display of result aborted because of time limit in some cases in qalc

2025-07-19 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Return exact integers in more case in log() function
	* Fix segfault during calculation of (in)equality with root() function with insufficient number of arguments

2025-07-17 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix segfault with text argument containing potential text returning function, or variable containing text value
	* Add support for "to 1/n" as alternative to "to fraction"
	* Ask for interpretation of comma (when comma is not default decimal separator)

2025-07-10 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix calculate as you type and indentation for show-mode-in-prompt with custom mode strings

2025-07-09 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Support for input of second argument of log() function with a number before parenthesis (e.g. log153(23409) = log_153(23409) = log(23409, 153))
	* Add lb and log_2 names to log2() function, and lg and log_10 to log10()
	* Add micron unit
	* Convert micron and kph before calculation

2025-07-08 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix locale used for definitions when language option is set in qalc

2025-07-07 Marko Zajc <marko@zajc.tel>

	* Do not colorize "E" in scientific E notation

2025-07-06 Cookie04DE <52695768+Cookie04DE@users.noreply.github.com>

	* Add new binary prefixes (robi, quebi)
	* Enable use of recently added SI prefixes in output by default

2025-07-02 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix non-localized data set key properties for languages where translations for multiple territories is available (e.g. zh_CN and zh_TW)
	* Use semicolon as argument separator in output when comma is used as digit group separator
	* Add indentation to each line of error/warning/information message with newline character (e.g. data object property list) in qalc
	* Fix dataset copyright translation (the last translation in the data file were used regardless of language)
	* Hide class property in elements data set

2025-07-01 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Customizable prompt in qalc

2025-06-21 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Improve avoidance of random number precalculation in iterative functions
	* Do not overwrite user definitions when running tests
	* Use inverse when converting from s to Hz (and similar)

2025-06-20 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Calculate random function in function argument occurring multple times in function definition
	* Improve random function handling in "where" expression

2025-06-15 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Improve check for functions not compatible with calulate-as-you-type (less false positives)

2025-06-13 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Improve output for repeating decimals (do not repeat zero, e.g. in 1/81, and fix single repeating decimal with overline)

2025-06-02 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix handling of a single vector argument in times() function
	* Warn in save() function when function expression contains conversion using "to"

2025-06-01 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Remove symbols/names from XOF, XAF
	* Avoid using multiple exchange rates sources for conversion between two currencies

2025-05-31 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Add symbols for THB, CRC, MVR, MUR, and NPR
	* Fix name for TRY, KES, and PAB
	* Replace SLL with SLE, and STD with STN
	* Use Eswatini instead of Swaziland as country name

2025-05-29 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Disable calculate as you type for expression containing export, load, or command function (in addition to save and plot)

2025-05-17 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Only allow numbers and white space in exchanges rates
	* Add fallback URL for exchange-api

2025-05-16 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Only convert right-hand side value for (in)equalities, when converting to dimensionless or angle units (for original values without unit), or non-linear units
	* Reset exact value (for dual approximation) when applying "to" command in qalc
	* Show error when trying to perform multiple conversions at same time using "to" command (without preceding expression on the same line)
	* Fix segfault when exact and approximate results (of equation) have non-matching format (should not occur)

2025-05-10 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix angle conversion for (in)equalities (both sides where converted)

2025-05-01 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Improve handling of user functions returning value with angle unit, in angle arguments

2025-04-30 howaboutuser <120489523+howaboutuser@users.noreply.github.com>

	* Add traditional Chinese translation

2025-04-22 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Add support for units in limit() (separate units before calculating limit)
	* Calculate limit for values containing infinity (not only infinite numbers) for definite integrals (do not return nonsense value for "integrate(x^2 exp(−x^2/(2m^2)),−infinity m,infinity m,x)")
	* Treat approximate integer as integer for dimension, fix positive rational non-integer dimension not resulting in error, and do not test if number of steps is a positive integer if the sixth argument is negative, in genvector()
	* Remove quotation marks (at beginning and end) from default value of text argument, even if the resulting text string is not empty

2025-04-12 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix default separator in load() and export() functions
	* Show a warning when it appears as if the user tries to convert part of an expression (when there is an closing bracket without an opening bracket after "to")

2025-04-03 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Add boolean argument for reversed conversion (to text string) in bin(), oct(), dec(), hex(), and base()
	* Improve handling of function, returning text string, in text argument
	* Fix µ_B name/symbol for Bohr magneton
	* Fix name for gal/s and planck/bohr

2025-03-30 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix abort using SIGINT (Ctrl+C) during factor command (and some other commands)

2025-03-23 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix incorrect limit without direction for expression containing tan(x) when value to approach is pi/2
	* Fix warning for some limits with tan(x)
	* Do not return zero for tan(pi/2)-tan(pi/2)

2025-03-19 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix assumption conflict in solve("v3"/"r1"*"r2"+"v3"=2.5,"v3") - set do_polynomial_division=true in solve() and use same simplification for factorization test during solving of equation regardless of state of do_polynomial_disivison (both changes fixes the issue separately)
	* Use LANGUAGE instead of LANG environment variable on Windows in order to avoid changing regional format settings
	* Add "language" option in qalc
	* Fix angle unit in output for "mode" command in qalc

2025-03-18 Rafael Franco <me@rafaelfranco.es>

	* Fix autocalculate input offset with readline vi mode

2025-03-09 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Support all real numbers in binomial(), comb(), and perm() functions (and use binomial() in the other two functions)
	* Fix non-localized data set key properties (when localized version is available)
	* Make copyright text of Elements and Planets data sets translatable

2025-03-08 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Improve decision to use parentheses for tab/ctrl+i result insert in qalc

2025-03-07 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Improve simplification and speed in diff() function for high orders by applying polynomial division and factorization between iterations

2025-03-03 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Add support for display of repeating decimals using overline (vinculum) instead of ellipsis
	* Remove confusing MRC name/symbol from MR (memory recall) variable

2025-02-20 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Convert turn left over after unit conversion to radians (e.g. "10000Nm*250*rpm to W")

2025-02-17 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Split function description into multiple text blocks, at newline, in help/info output in qalc in order to avoid blank lines when output does not fit terminal screen

2025-02-13 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Do not convert to inactive unit
	* Fix calculate as you type with RPN syntax (update when last character is an operator)
	* Support calculate as you type with RPN stack enabled
	* Fix "where" operator using a saved equation (the "where" expression is a variable containing an equality or inequality)
	* Add Ctrl+I shortcut for input of the previous result, either with text of value, or as temporary variable (replaced in history on exit) for approximate or long values

2025-02-01 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Return x=a*e^(i*r) (with r instead of n), with a warning informing the user that r represents any real number, for abs(x)=a

2025-01-31 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Do not show value twice, if not translated, in description of plot function

2025-01-19 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix solve() function with replace() function as first argument (fixes solve2() function)

2025-01-18 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Do not show couldn't write preferences warning if file is a symlink

2025-01-08 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Avoid recalculation of old calculate as you type expression when expression is empty, or calculation of empty expression before any calculation has occured, and calculation or parsing settings have been modified
	* Add description to ans variable

2025-01-03 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix rounding in 1/# conversion to integer (e.g. "1/2 to 0.99")

2025-01-02 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Always use four digits for year in date (e.g. "0064-07-18" instead of "64-07-18")
	* Support input of date using dd-mm-yyyy format

2024-12-27 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix solving of x^4-4x^3+10x^2-12x+1=0, and similar, in exact mode
	* Use hours or minutes as default unit for conversion to time unit of expression with time format but no units (e.g. "0:00:12 to s")

2024-12-24 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix dual/auto approximation when unable to find exact solution to equation
	* Fix unability to find approximate solutions to some high degree equations (e.g. "x⁴ − 4x³ + 10x² − 12x = −1")

2024-12-12 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix terminal columns and rows when piping/redirecting input (call rl_initialize() even if readline() is used)

2024-12-09 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Add factor() function (returns integer or polynomial factors in a vector)
	* Fix automatic variable detection in select()

2024-12-08 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* a(i) and a[i] syntax (the latter with restrictions for a) for element in vector
	* Set ans variable to solution(s) of equation (as if solve() were used)

2024-12-04 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix compilation without readline

2024-11-27 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix ans variables with calculate as you type activated

2024-11-25 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Add plot() function example, and support expression in y=f(x) format

2024-11-20 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix test of equation solution in some cases (fixes "sqrt(x-1/x)+sqrt(1-1/x)-x=0" when approximation is not exact)
	* Fix current value for "help set approximation" when approximation is exact but auto/dual approximation is not reset (after "exact" command)

2024-11-18 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Option to specify number of displayed significant digits, instead of using precision (if PrintOptions::max_decimals < -1, digits = -max_decimals)

2024-11-15 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Improve decision to automatically convert unchanged quantity with unit
	* Fix segfault with very large integer raised by very large integer (integer length multiplied by exponent overflows long long int), e.g. "fs^EiK"
	* Fix wrong output of converted unit with non-numerical exponent in some cases (e.g. ft^x converted to m without expansion)
	* Improve calculation of formatted string length (for filtering of multiple results in Calculator::calculateAndPrint())
	* Remove "timed out" alternative results in Calculator::calculateAndPrint()
	* Place "approx." on same line as value (instead of as equals sign) in qalc
	* Display "aborted" for long aborted result in qalc

2024-11-11 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix case conversion of µ to M and similar (compare initial text string when converted back to lower case)

2024-11-06 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Add multilimit() function

2024-11-06 Stefan Gerlach <stefan.gerlach@uni-konstanz.de>

	* Fix issues building with MSVC

2024-11-02 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix spacing after implicit mulitplication interpretation question in qalc
	* Fix formatting when commands/expression is read from file before interactive mode

2024-10-27 Marko Zajc <marko@zajc.tel>

	* Add triple() function

2024-10-19 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix clear using Ctrl+L when input line is not empty
	* Improved detection of charsets other than UTF-8

2024-10-18 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Add calculate as you type (disabled by default) to qalc

2024-10-14 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Improve ability to abort matrix functions (e.g. identity() with large argument)

2024-10-07 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Do not show warning for logarithmic ratio unit, with quantity, as function argument

2024-09-29 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix inability to abort randpoisson() with very high rate value

2024-09-28 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix crash with empty vector in plot function, e.g. plot([])

2024-09-20 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Do not show single input decimal number as only combined fraction if fraction format is set to dual
	* Apply fraction format also for integers if set to percent, permille, or permyriad
	* Add (hidden) support for percent, permille, and permyriad fraction formats in qalc

2024-09-18 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix segfault with recursive (self-referencing) function

2024-09-17 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix save definitions option
	* When questions are avoided (when reading commands/expression from file or in result only mode), create temporary objects for "variable" and "function" commands, do not ask before replacing object, and fail without question for illegal names
	* Avoid asking questions when reading commands/expressions from file before interactive mode
	* Fix line break for output from command line expression or file, before interactive mode
	* Update "exp" option documentation to reflect that custom negative values are allowed
	* "unkeep" command (reverse of "keep")

2024-09-16 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Remove unnecessary calculation for output of integers with non-decimal number base (fixes delay with very high precision)
	* Fix input of negative exponent in scientific e notation with rpn syntax

2024-09-12 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Add nmi symbol for nautical mile

2024-09-01 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Do not show single input decimal number as fraction by default if small or large enough to be displayed using scientific notation

2024-08-31 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Support abbreviations for scientific (sci) and engineering (eng) as options for scientific notation (exp)

2024-08-30 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix superfluous "did you mean..." warning for two functions with parenthesis without separator (e.g. "atan2(a,b)atan2(c,d)")
	* Fix definite integral for 1/sqrt(1-x^2), with lower limit <= -1 and/or upper limit >= 1, and similar (temporary workaround)

2024-08-10 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix parsing of 1°2'3" as 1°+2'+3" (and similar)
	* Update nounit() function description

2024-08-04 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Add Calculator::parseToExpression()
	* Minor fixes for "to" conversion in Calculator::calculateAndPrint()

2024-07-24 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Add free_thread_caches() function
	* Place n and C last in variable isolation priority order
	* Fix interpretation of mH₂O, and related units with Unicode subscript, in qalc
	* Fix memory leaks

2024-07-14 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix saving of percentage interpretation in qalc

2024-07-09 Marko Zajc <marko@zajc.eu.org>

	* Disable load() and export() functions when --disable-insecure compile option is enabled
	* Fix a potential segfault when freeing DataObject

2024-07-09 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Improve compatibility with MSVC (including replacement of variable length arrays)
	* Show error for unrecognized command line options when expression is separated from options by "--"

2024-07-03 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix Calculator::reset()

2024-07-01 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Improve handling of "where" expression when variable name is placed after inequality symbol
	* Improve handling of "where" expression in exact mode
	* Improve removal of n in exact mode

2024-06-27 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Return n >= a + 1 for n > a, and n <= a - 1 for n < a, if a is an integer (and n represents an integer)

2024-06-22 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Always return false for 1/f(x)=0 (not f(x)=infinity)
	* Do not solve ln(f(x))=-infinity

2024-06-15 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Add therm and thermie units (IT, ISO, and U.S.)
	* Use exact Btu relation
	* Use symbol "cal" for thermochemical (instead of international table) calorie
	* Add IUNS calorie
	* Fix input of scientific E-notation using lowercase e in numbers using concise interval notation, in expressions

2024-06-11 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Always allow "ignore comma" option (will change default decimal separator if not dot), and show more informative error message for "ignore dot" if decimals separator is dot
	* Do not mark decimal separator question as asked after percentage calculation has been asked

2024-06-10 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Add MathStructure::representsFinite() to improve handling when unknown if value is real or complex
	* Fix "bit width" and "signed integer" arguments in setbits()

2024-06-06 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Preserve allow_infinite parameter for recursive comparison in MathStructure::equals()
	* Return true for infinity multiplied by zero in MathStructure::representsUndefined()
	* Add recursion counter to MathStructure::isolate_x() and MathStructure::isolate_x_sub() (variable isolation) to avoid stack overflow
	* Return true if both text strings are empty in equalsIgnoreCase()
	* Fix parenthesis added in front of multiplication sign in some cases
	* Use less strict rules when comparing with previous expression (to avoid infinite loop) when isolating variable, in MathStructure::isolate_x_sub(); * Do not apply x+x^(1/a)=b => x=(b-x)^a if (part of) x represents undefined

2024-06-05 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix negative-size-param (crash) when a variable name/symbol with more than 20 characters is used in "where" expression
	* Fix approximation mode changed with AUTOMATIC_APPROXIMATION_SINGLE in calculate_dual_exact (affects calculate-as-you-type in qalculate-qt)

2024-05-30 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Update values of physical constants with CODATA 2022 values; Change title and names/symbols of weak mixing angle (prepend "sin2" to theta variants and change order)

2024-05-26 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Return exact negative integers in log10()
	* Decrease (potentially) number of false negatives for represents... functions
	* Add descriptions for is... and represents... functions
	* Fix RoundFunction::represents...
	* Check for exact solution equaly simplified as approximation value in calculate_dual_exact when approximation is AUTOMATIC_APPROXIMATION_SINGLE
	* Fix confusing behaviour of complex forms other than rectangular in some case with equalities and inequalities

2024-05-23 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Remove n from equation solution if possible using assumptions of x
	* Fix auto/dual approximation with "where" expression
	* Fix Number::getCentralInteger()
	* "n > a" equals "n >= floor(a)", if a is not an integer, and equivalent for other inequality operators
	* Fix handling of where expressions with multiple inequality statements for a single variable, e.g. "where x>0 and x<10" (parsed expression were as aborted, and calculated value always 1)

2024-05-19 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix potential (but unlikely) segfault when integrating expression with abs() and empty ln()
	* Add allroots() function
	* Fix unnecessary parenthesis (with wrong color for closing bracket) around unit with exponent for colorized HTML output (affects qalculate-qt)

2024-05-12 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Add additional names/symbols (tr,pla,rev,revolution,revolutions,cyc,cycle,cycles) to turn unit
	* Add rpm unit (= turns/min)

2024-05-10 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix qalc not exiting after factorization in non-interactive mode

2024-05-06 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix a^(f(x))=a^(b*g(x)) where b=2 or b=3

2024-05-01 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Avoid potential issues with equations and inequalities caused possibly modified comparison type property (primarily potentially resulting in AND instead of OR and vice versa)
	* Fix multiplication sign after exponentiation factor for unformatted output without unicode exponents

2024-04-30 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix "(ax+1)^n > 1" and "(ax+1)^n >= 1", where n is even and a is not 1, returning false

2024-04-27 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix -Wdocumentation warnings

2024-04-21 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Ask for the desired interpretation the first time percent addition is used (e.g. 100 + 10% equals 110 or 100.1)

2024-04-21 Fishhh <hubert.gluchowski19@gmail.com>

	* Fix Number::equals(0, ..., true) when number is infinite (also affects MathStructure::equals(), MathStructure::replace(), and MathStructure::calculateReplace() and replace() function)

2024-04-20 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Do not show error for 2nd argument with unknown variable in root() function
	* Fix precision for approximate data set number values, without uncertainty explicitly specified, with positive scientific e-notation exponent
	* Ignore two's input setting for hexadecimal floating-point literals using 0x...p... notation

2024-04-15 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Add Sun to planets data set
	* Add solar radius, mass, and luminosity as units

2024-04-11 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Add support for column vector in if() function

2024-04-07 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Relax conditions for (x^a)^b=x^(a*b) and x^a*x^b=x^(a+b) when complex numbers are deactivated (fixes segfaults)

2024-04-06 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Add support for solving root(a, x)=b (requires rational value for ln(a)/ln(b))
	* Use parentheses for exponent using scientific notation (with power of 10)
	* Add checkAvailableVersion() variant returning package URL

2024-04-03 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Add multiples() function (returns multiples of a number within specified range)

2024-04-02 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Add powertower() function
	* Add recursive depth limit to avoid running out of stack memory (causing segfault)

2024-03-25 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Solve equations containing if() function
	* Fix awg(x)=... and awgd(x)=... when default assumption type is not real and fix solve() with these equations

2024-03-21 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Support integer factorization of integers in matrix/vector, and of numerator and denominator in rational number

2024-03-12 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix setbits()

2024-03-10 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Do not apply "read precision" setting to integer exponents for values with units
	* Change from line to point (or dot) plot style for data with many discontinuous points

2024-03-08 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Replace special colorize values, for selection of Unicode exponents, with different use_unicode_signs values
	* Use Unicode exponents, in MathStructure::print(), if format is false, even if tagtype is not TAG_TYPE_TERMINAL
	* Fix Unicode exponents with number bases < 10

2024-03-01 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Improve parsing of text arguments - fix quotation mark replaced by feet or inches and % replaced by percent variable, remove quotation marks when parts of argument are quoted separately (a "b" "c" = "a b c"), and do not replace quoted curly brackets in expression unless necessary
	* Do not use sexagesimal output format for very large numbers (when scientific notation is necessary for integer part) and reduce maximal number of decimals (for last position when previous positions is non-zero)
	* Handle case when initial guess results in division by zero, and avoid unnecessary error messages, in newtonsolve()

2024-02-27 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix BTC exchange rate from coinbase, if available from other source, not used before restart after exchange rates update, and do not mark BTC as hidden (places the unit in submenu in GUIs)

2024-02-20 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Support "where" statements, without "where", before main expression, e.g. "a=2, b=3; a^b"

2024-02-18 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Change handling of "where" expression (create temporary variables) to allow previously undefined variable names and to avoid confusing output of parsed expression (e.g. redefined "c" was displayed as SpeedOfLight)

2024-02-16 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Detect spelling errors in qalc options (when using set command)

2024-02-14 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Change handling a vectors in multiple function arguments (of non-vector type) - return vector instead of matrix, require equal number of elements, and use the same vector index for all argument for each function instance (e.g. atan2([1  2], [3  4]) = [atan2(1, 3)  atan(2 4)]
	* Set handle vector property by default, for text, date, and boolean arguments, and for arguments, in global non-builtin functions, without specified type
	* Enable parsing of vectors for text arguments
	* Add foreach() function (simplified for function, using vector instead of counter)
	* Add setbits() function
	* Add flip() function (changes order of elements in vectors and matrices)
	* Add "binary bits" option in qalc

2024-02-08 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Add LightSecond, LightMinute, and LightHour units
	* Add integerDigits(), digitGet(), and digitSet() functions
	* Add more rounding methods and replace PrintOptions::round_halfway_to_even (and truncate time zone value hack) with PrintOptions::rounding
	* Add PrintOptions::duodecimal_symbols (replace time zone value hack)
	* Replace PrintOptions::lower_case_e with PrintOptions::exp_display and add option for scientific notation without E (10^x)
	* Add ParseOptions::binary_bits (replaces non-boolean values for twos_complement and hexadecimal_twos_complement)
	* Add keep command, which makes variable or function non-temporary, in qalc

2024-02-02 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Check for potential spelling mistakes in unrecognized qalc commands
	* Show error messages for command without argument, if not a reasonable expression, even if "/" is not used

2024-01-31 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Add support for hexadecimal floating-point literals using 0x...p... notation (0x1.4p3 = 0x1.4 * 2^3 = 10)
	* In dsolve(), assume that C is real if y is (fixes dsolve(diff(y, x) = y)), and, if y cannot be isolated completely, return resulting equation in solve() function (e.g. dsolve(diff(y , x) = y)= solve(ln(y) = x + C, y))

2024-01-30 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Add support for a...b syntax for sequence (vector) of integers
	* Add support for j:k (for sequence of numbers with increment 1), and j:i:k (with increment i) syntax
	* Add colon() function (used by new syntax)
	* Use parentheses for number with scientific notation in more cases

2024-01-29 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Do not list reactivated global objects when using "list" command (without argument)
	* Recognize function name with parentheses appended in argument of "delete" command (useful for deletion of function with same name as variable or unit)
	* Add bitset() and bitget() functions

2024-01-27 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Support scientific notation using 10^x instead of e notation for non-html output and in qalc

2024-01-26 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Allow specification of numbers of bits for two's complement input
	* If number of bits are not enough for output of binary or hexadecimal number, use default, instead of minimal, number of bits

2024-01-22 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Detect potential spelling errors in suspicious expressions

2024-01-21 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix "set cplxform cis"
	* Fix conversion to angle unit for complex angle, cis and polar forms
	* Improve output of complex angle form in some cases
	* Do not display exact result for dual approximation if parsed expression differs (can occur in some cases with conversion to angle unit), and in some cases where the only differences is how exact numbers in function arguments are

2024-01-18 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Allow multiple options, separated by semicolon, with a single --set (-s) command line argument

2024-01-14 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* lambertw(x*e^x, 0)=x if x>=-1

2024-01-11 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix -no... command line options when using double dash, e.g. "--nocurrencies"
	* Avoid radian unit missing error message with --nounits command line option
	* Exit with error status code if command line expression generates error

2024-01-03 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Allow values higher than 1 (true) to specify line width of plot grid

2023-12-28 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Add support for "decimals" "to"-conversion (display as decimal fraction)
	* log(x, 1) is always zero when x has non-zero imaginary part

2023-12-25 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix log(1, 1)

2023-12-23 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Improve handling of zero solution and initial guess in newtonsolve() and secantsolve(), and check validity of solution

2023-12-18 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix "to"-conversion to prefix and add "prefix" conversion option (for optimal prefix)
	* Fix parsed expression repeated in result with some functions
	* Allow omission of equals zero in solve() function
	* Convert to simple fraction if value only contains integers, when converting to fixed denominator
	* Improve handling of text arguments with default value consisting of two double quotes (empty string)

2023-12-16 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix segfault in newtonsolve() and secantsolve() when equation does not contain variable
	* Algebra and calculus functions represents scalars if all arguments do

2023-12-14 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Add support for two's complement input (short settings "twosin" and "hextwosin") in qalc
	* Fix current value of hextwos in mode help

2023-11-21 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix BTC exchange rate (data now seem to always use USD)
	* Replace exchangerate.host (now requires API key) with currency-api (https://cdn.jsdelivr.net/gh/fawazahmed0/currency-api@1/latest/currencies/eur.json)

2023-11-19 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Improve formatting of base unit(s) in unit information in qalc
	* Fix plural name of U.S. survey rods
	* Improve output of defs2doc

2023-11-13 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Ignore spaces when converting text string to integer

2023-10-31 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Display all exponents 0-9 using Unicode superscript characters (not, as before, only for units), in qalc (using TAG_TYPE_TERMINAL), if these are the only exponents in the expression (behaviour can be altered using uniexp option)

2023-10-30 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Add history command, listing expression history
	* Ignore underscore in number

2023-10-29 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Add fraction formats for output using percent, permille, and permyriad
	* Add additional year definitions as units
	* Improve handling of (x*sqrt(x)-y*sqrt(y))/(sqrt(x)-sqrt(y))=x+sqrt(x*y)+y

2023-10-27 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Support for specifying a fixed denominator for display of fractions
	* Fix case insensitive comparison for strings with more than two or more consecutive Unicode characters in qalc

2023-10-25 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix parsing of case insensitive object name ending with Unicode character when followed by another Unicode character in expression, e.g. микрометр

2023-10-21 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix output of value converted to unit expression with numerical multiplier in denominator, e.g. L/(100 km)

2023-10-18 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix segfault (infinite loop) when trying to solve (x*sqrt(x)-y*sqrt(y))/(sqrt(x)-sqrt(y))=x+sqrt(x*y)+y

2023-10-06 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix asin(x)=a, acos(x)=a, and atan(x)=a, when a contains an angle unit and default angle unit is set

2023-09-28 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Fix Calculator::hasWhereExpression()

2023-09-23 Hanna Knutsson <hanna.knutsson@protonmail.com>

	* Return gcd of numerators divided by lcm of denominators in gcd() with non-integer rational numbers, and vice versa for lcm()

2023-09-16 Hanna Knutsson <hanna.knutsson@protonmail.com>

