ChangeLog
xFunc v4.5.0 (dev)
xFunc v4.4.1
- #733 - Lexer optimization.
- #743 - Upgrade to .NET 8. (#744)
- #749 - Remove the obsolete serialization APIs. (#750)
xFunc v4.4.0
- #680 - Remove Moq. (#651).
- #688 - DocFx Documentation.
- #175 - Support rational numbers (#693).
- #667 - Migrate to NUnit (#700).
- #701 - Align units
ToString
implementation with parser. - #704 - Lambda can't resolve a parameter (#705).
- #706 -
CallExpression
uses incorrect scope for parameters evaluation (#707). - #708 - Remove unnecessary variables.
- #710 - Add ability to execute expression from files (#712).
- #717 - Support partial application of functions (#718).
- #720 - New Results API (#723).
xFunc v4.3.0
- #641 - Introduce
VectorValue
/MatrixValue
(#648). - #131 - Support aliases for simplify, deriv and etc. (#652).
- #653 - Add support of function currying (#661).
- #662 - The simplification of trigonometric and inverse trigonometric functions is not correct (#665).
- #663 - Add support of variables to factorial (#669).
- #673 - Units should be wrapped into quotes (#674).
xFunc v4.2.0
- #620 - Create Converter benchmarks / performance improvements (#621, #622).
- #623 - Use shared instance of constants in ParameterCollection (#624).
- #625 - Remove russian localization (#626).
- #628 - Create CallExpression / High-Order Functions (#635).
- #641 - Reduce memory allocation and increase
ImmutableArray<T>
speed (#640). - #304 - Parse assignment operators / 'if' function as expression instead of statement (#642).
- #525 - Try Central Package Management (#526).
- #608 - Variable names not case sensitive (#613).
xFunc v4.1.0
- #557 - Split xFunc UI to separate repository. (#558)
- #553 - Add more cases to type analyzer (exception handling). (#554)
- #544 - Add support of operations on different unit types. (#545)
- #542 - Implement unit value comparison. (#543)
- #516 - Volume: cm³, m³, l, in³, gal, ft³, yd³. (#527)
- #515 - Area Units (#523)
- #192 - Support for exponential form of a complex number. (#488)
- #489 - Add basic simplification rules for Power and Temperature units. (#490)
- #491 - Mass Units:
mg
,g
,kg
,slugs
,lb
,t
,oz
. - #514 - Length:
nm
,µm
,mm
,cm
,m
,km
,in
,ft
,yd
,mi
,nmi
,chains
,rods
,au
,ly
,pc
. (#519) - #513 - Time:
μs
,ms
,s
,min
,hr
,days
,weeks
,years
, addns
. (#521) - #467 - Relicense from Apache to MIT (#468)
- #474 - Upgrade to .NET 6 (#478)
- #423 - Add README to NuGet package (#423)
- #486 - Add Temperature Unit (#487)
- #364 - [Simplifier] Add more simplification rules (#406), (#407)
- #308 - Add Power Unit (#409)
- #457 - Add support for string data type (#458)
- #464 - Add string concatenation support (#465)
- #308 - Add Convert function (#459)
- #464 - Add string data-type support to parameters (#466)
xFunc v4.0.1
xFunc v4.0.0
- About 6 times faster and about 11 times lower memory usage.
- #304 - Parse assignment operators / 'if' function as expression instead of statement
- #306 - Create wrapper struct for double (#360)
- #343 - Precedence of operators (#344)
- #345 - Use InheritDoc (#346)
- #357 - Pad bin/hex numbers (#358)
- #362 - Differentiation of x^x returns wrong expression (#363)
- #345 - Limit types that can be used as Parameter (#369)
- #338 - Simplify AngleValue same as Number (#342)
- #331 - Immutable expressions (#337)
- #332 - Create function to convert Number to ComplexNumber (#335)
- #327 - Provide configurable fallback scenario for Analyzers (#328)
- #302 - Add 'tohex', 'tooct', 'tobin' functions (#326)
- #324 - Dictionary as parameters storage (#325)
- About 6.8 times faster and about 14.5 times lower memory usage for parsing.
- #303 - Introduce bitwise shift operators (#305)
- #311 - Use structs for Tokens (#319)
- #312 - Remove Lexer from public API (#317)
- Deterministic builds (#295)
- #291 - Try Nullable reference types (#293)
- #269 - Precalculate common angles for trigonometric functions (#292)
- #289 - Implement 'Sign', '==', '!=', '<', '>', '<=', '>=' for Angle Numbers (#290)
- #286 - '2 ^ -2' does not work (#287)
- #284 - Implicit mul and exponentiation cannot be parsed (#285)
- Update shared number consts (#283)
- #279 - Add Trunc and Frac functions (#280)
- #268 - Introduce units (deg, rad, etc) (#278)
- Add context to analyzer. (#277)
- #275 - Remove parent property (#276)
- #119 - Add support of ternary operator (#272)
- #228, #236 - Buffered Enumerator (#271)
- #262 - Add 'Log' simplification rules (#263)
- #260 - UI is crashed for 'sqrt(x)' graphs (#261)
- SourceLink (#258)
- #256 - Differentiator Performance (#257)
- Use strict types (Variable instead of IExpression) in Inc, Dec, AddAsssign, SubAssign, DivAssign, MulAssing (#252)
- #248 - xFunc Dotnet Tool (#251)
- Add FxCop (#249)
- Add StyleCop (#247)
- #235 - Expressions are parsed incorrectly
- #236 - Rework parser (remove RPN)
- #244 - The ^ operator should be right-associative