All Versions
243
Latest Version
Avg Release Cycle
27 days
Latest Release
496 days ago

Changelog History
Page 1

  • v11.4.0 Changes

    November 18, 2022
    • Implemented more wildcards to describe rules for simplify, making it easier for example to describe unary minus (#1915). Thanks @thatcomputerguy0101.
    • Implemented functions schur, sylvester, and lyap (#2646). Thanks @egidioln.
    • Implemented function polynomialRoot, and use it in a benchmark (#2839). Thanks @gwhitney.
    • ๐Ÿ›  Fix #2825 partly: improve simplifying operations on constants in non-commutative contexts (#2827). Thanks @samueltlg.
    • ๐Ÿ›  Fix #2840: a bug in the docs and type definitions of Node.traverse and Node.forEach, they do return void.
  • v11.3.3 Changes

    November 07, 2022
    • ๐Ÿ›  Fix #2830: Prevent inserting zero values when creating a SparseMatrix from a DenseMatrix (#2836). Thanks @AlexandreAlvesDB.
    • ๐Ÿ›  Fix #2835: a regression in the type definitions of FunctionNode, introduced in v11.3.2. See #2733. Thanks @dsteve.
  • v11.3.2 Changes

    October 25, 2022
    • โž• Add generics to remaining Node type definitions (#2733). Thanks @mattvague.
    • ๐Ÿ‘ Allow unit prefixes for (absolute) temperatures kelvin, rankine, celsius, and fahrenheit (#2824). Thanks @jfeist
  • v11.3.1 Changes

    October 19, 2022
    • ๐Ÿ›  Fix #2809: code completion issues in some IDE's (#2812).
    • ๐Ÿ›  Fix #2818: throw an error when a function assignment has duplicate parameter names (#2819).
    • โšก๏ธ Update decimal.js to version 10.4.2.
  • v11.3.0 Changes

    October 11, 2022
    • ๐Ÿ‘ Allow creating new subclasses of Node in TypeScript (#2772). Note that this disables being able to narrow MathNodes by using the .type property. Use typeguards like isOperatorNode(...) instead (see #2810). Thanks @mattvague.
    • ๐Ÿ›  Fix #2793: flatten() cloning entries of array/Matrix (#2799).
    • ๐Ÿ›  Fix #2627: TypeScript definitions of pinv missing (#2804). Thanks @HanchaiN.
    • โšก๏ธ Update dependencies to [email protected].
  • v11.2.1 Changes

    September 13, 2022
    • ๐Ÿ›  Fix doc generator being broken, not generating a function reference.
  • v11.2.0 Changes

    September 12, 2022
    • Implement function isRelationalNode (#2731). Thanks @isaacbyr.
    • โž• Added missing types 'largerEq' and 'or' in OperatorNodeMap in the TypeScript definitions. Thanks @ajinkyac03.
    • ๐Ÿ›  Fixed typos in min func type defs (#2768). Thanks @mabdullahadeel.
    • ๐Ÿ‘Œ Improved the TypeScript definitions for pickRandom. Thanks @mattvague.
    • ๐Ÿ›  Fixed documentation of unit min which means minutes, not minim (#2773). Thanks @jasonhornsby.
  • v11.1.0 Changes

    August 23, 2022
    • โž• Add Unit constructor from value and pure (valueless) Unit (#2628). Thanks @costerwi
    • ๐Ÿ›  Fix #2144: examples/advanced/custom_loading.js was broken.
    • ๐Ÿ›  Fix JSON replacer function missing in the TypeScript definitions. Thanks @mattvague.
    • โšก๏ธ Update dependencies to [email protected] and [email protected].
  • v11.0.1 Changes

    July 25, 2022
    • ๐Ÿ›  Fix #2632: TypeScript issue of simplifyConstant and simplifyCore not having a return type defined.
  • v11.0.0 Changes

    July 23, 2022

    !!! BE CAREFUL: BREAKING CHANGES !!!

    ๐Ÿ’ฅ Breaking changes:

    • โฌ‡๏ธ Dropped official support for IE11.
    • โฌ†๏ธ Upgraded to typed-function@3, see josdejong/typed-function/HISTORY.md. Thanks @gwhitney. Most importantly:
      • Conversions now have preference over any.
      • The this variable is no longer bound to the typed function itself.
      • The properties typed.types, typed.conversions, and typed.ignore have been removed.
      • There are new static functions available like typed.referTo, typed.referToSelf, typed.addTypes, typed.addConversions.
    • Implement amended "Rule 2" for implicit multiplication (#2370, #2460): when having a division followed by an implicit multiplication, the division gets higher precedence over the implicit multiplication when (a) the numerator is a constant with optionally a prefix operator (-, +, ~), and (b) the denominator is a constant. For example: formerly -1 / 2 x was interpreted as -1 / (2 * x) and now it is interpreted as (-1 / 2) * x. Thanks @gwhitney.
    • โฌ‡๏ธ Drop elementwise matrix support for trigonometric functions, exp, log, gamma, square, sqrt, cube, and cbrt to prevent confusion with standard matrix functions (#2440, #2465). Instead, use math.map(matrix, fn). Thanks @gwhitney.
    • Simplify: convert equivalent function calls into operators, for example, add(2, x) will now be simplified into 2 + x (#2415, #2466). Thanks @gwhitney.
    • โœ‚ Removed the automatic conversion from number to string (#2482). Thanks @gwhitney.
    • ๐Ÿ›  Fix #2412: let function diff return an empty matrix when the input contains only one element (#2422).
    • ๐Ÿ”จ Internal refactoring in the simplifyCore logic (#2490, #2484, #2459). The function simplifyCore will no longer (partially) merge constants, that behavior has been moved to simplifyConstant. The combination of simplifyConstant and simplifyCore is still close to the old behavior of simplifyCore, but there are some differences. To reproduce the same behavior as the old simplifyCore, you can use math.simplify(expr, [math.simplifyCore, math.simplifyConstant]). Thanks to the refactoring, simplify is more thorough in reducing constants. Thanks @gwhitney.
    • ๐Ÿ‘ Disable support for splitting rest parameters in chained calculations (#2485, #2474). For example: math.chain(3).max(4, 2).done() will now throw an error rather than return 4, because the rest parameter of math.max(...number) has been split between the contents of the chain and the arguments to the max call. Thanks @gwhitney.
    • Function typeOf now returns function (lowercase) for a function instead of Function (#2560). Thanks @gwhitney.

    Non-breaking changes:

    • ๐Ÿ›  Fix #2600: improve the TypeScript definitions of simplify. Thanks @laureen-m and @mattvague.
    • ๐Ÿ›  Fix #2607: improve type definition of createUnit. Thanks @egziko.
    • ๐Ÿ›  Fix #2608: clarify the docs on the need to configure a smaller epsilon when using BigNumbers.
    • ๐Ÿ›  Fix #2613: describe matrix methods get and set in the docs.
    • ๐Ÿ›  Fix link to math.rationalize in the docs (#2616). Thanks @nukisman.
    • ๐Ÿ›  Fix #2621: add TypeScript definitions for count (#2622). Thanks @Hansuku.
    • ๐Ÿ‘Œ Improved TypeScript definitions of multiply (#2623). Thanks @Windrill.