jos
d7ed170ba5
Converted all function transforms, expression functions, and embedded docs
2018-11-09 11:16:55 +01:00
jos
a2ae756fd1
Remove semicolons
2018-10-31 21:18:51 +01:00
jos
247aeabffa
Refactor all unit tests to ES6 import/export
2018-10-31 21:17:23 +01:00
Eric Mansfield
d23d8c71a4
Chained conditionals ( #1267 )
...
* Minimally working
* Added tests, toString
* Added tests for evaluation
* Minor changes
* Added a line in the docs about chained conditionals
* Documentation, replacing var and let with const
2018-10-04 20:26:39 +02:00
greenkeeper[bot]
c5971b371a
Update standard to the latest version 🚀 ( #1226 )
...
* chore(package): update standard to version 12.0.0
* update to new lint version with --fix
I believe this mainly adds whitespace to `{}`'s.
* Replace assert.equal with assert.strictEqual
This breaks a lot of tests which I will endevour to fix in the next
commits.
* Fix most errors due to assert.strictEquals
Some instances of `strictEquals` are replaced by `deepEquals`.
`toString` has been used to make some string comparisions explicit.
Tests will still fail untill #1236 and #1237 are fixed.
* Fix assertion erros due to -0
With node 10, assert.strictEqual no longer considers `0 === -0`.
I missed these first time round as I was using node 8.
* Put toString correct side of bracket
I was converting the constructor to a string rather
than the result of the computation. Oops.
* Fixed #1236 : quantileSeq has inconsistant return
* Update package-lock
* Fixed #1237 : norm sometimes returning a complex number instead of number
* Fix cli tests
* More changes for standardjs, and fixes in unit tests
2018-09-08 16:33:58 +02:00
jean-emmanuel
710ed1e58f
Add support for single quotes strings
2018-08-04 10:27:10 +02:00
jos
0583771e4e
Cleanup unused variables and imports
2018-06-13 17:25:51 +02:00
jos
b6b36bfd9b
Use strict equality checks everywhere (=== and !==)
2018-06-13 15:02:21 +02:00
jos
17f07ec098
Fixed incompatibility with v4 (index.js file)
2018-06-13 14:02:50 +02:00
jos
b3b96749bf
Refactored var into const/let, and removed a lot of semicolons
2018-06-13 12:21:14 +02:00
jos
024b2a9e26
Fix most lint errors using npx standard --fix
2018-06-10 20:28:27 +02:00
jos
635cd0b574
Revert using /lib/ in tests, use /src/ again. Fixed coverage testing. WIP
2018-06-06 22:11:52 +02:00
jos
79071b5e4f
Fixed npm run test:browser not working (WIP)
2018-06-06 21:30:41 +02:00
jos
0c084b8e20
npm test working now
2018-06-06 15:36:36 +02:00
jos
99ab11b234
Dropped constant uninitialized
2018-02-04 13:09:09 +01:00
Jos de Jong
e631771df0
Merge branch 'v4' into v4_fn_implicit_multiplication
2018-02-04 11:58:15 +01:00
Jos de Jong
cdda817d9f
Merge pull request #1036 from ericman314/implicit-multiplication
...
Implicit multiplication
2018-02-04 11:55:15 +01:00
jos
11b4c03460
Remove support for calling a function returned by a function, parse as implicit multiplication instead. See #1035
2018-02-03 21:52:18 +01:00
Eric Mansfield
090f4c920f
Added 'number/number (', and tests
2018-02-03 09:44:30 -07:00
Eric Mansfield
17a4e33ae2
Added tests
2018-02-02 21:14:33 -07:00
jos
3f3d50f7a0
Fixed #833 : the constants true, false, null, undefined, NaN, Infinity, and uninitialized are now parsed as ConstantNodes instead of SymbolNodes in the expression parser
2018-01-23 13:55:57 +01:00
jos
8b5396baad
Removed the old expression compiler (which uses eval)
2018-01-23 09:19:11 +01:00
jos
1192bb6bbc
Implemented compile without eval (see #1019 )
2018-01-21 18:13:27 +01:00
jos
8d2d48d81b
Fixed a security issue in typed-function allowing arbitrary code execution
2017-11-18 19:39:30 +01:00
jos
601f1942c2
Replace ES6 functionality with ES5
2017-08-06 11:54:59 +02:00
jos
9666c16378
Fixed #846 : Issues in the functions map, forEach, and filter when used in the expression parser
2017-07-29 14:05:27 +02:00
jos
469e6bf3cf
Fixed #895 : added support for the dollar character $ in symbol names
2017-07-10 20:29:30 +02:00
jos
ed5f2cebaf
Security fixes in isSafeMethod and some others
2017-05-27 19:51:12 +02:00
jos
64498eddd6
Fixed #861 : physical constants not available in the expression parser
2017-05-25 16:13:42 +02:00
jos
f61bb6cf94
Fixed #856 : function subset not returning non-primitive scalars from Arrays correctly
2017-05-16 21:41:03 +02:00
jos
5991c24620
Fixed broken unit tests
2017-05-12 13:36:03 +02:00
jos
29d632f1d9
Fixed creating units with an alias not working within the expression parser
2017-05-12 13:28:13 +02:00
jos
8e8e02bec9
Don't clone config itself, only it's childs
2017-04-22 20:14:52 +02:00
jos
ee6efa3768
Only allow accessing/assigning properties on plain objects. Only allow calling known methods.
2017-04-08 15:32:10 +02:00
jos
37613aca0c
Moved security related tests into a separate file
2017-04-02 13:18:55 +02:00
jos
3c3517daa6
More security fixes + unit tests
2017-03-31 13:41:37 +02:00
jos
43c4fe9c46
Added a few more unit tests
2017-03-31 10:51:11 +02:00
jos
b7a065b538
Removed a redundant console.log in the tests
2017-03-31 10:47:04 +02:00
jos
2f45600905
Fixed a security vulnerability in the expression parser allowing execution of arbitrary JavaScript
2017-03-31 10:18:14 +02:00
jos
bd52740e61
Fixed #795 : Parse error in case of a multi-line expression with just comments
2017-02-15 22:05:38 +01:00
jos
572ec25665
Added another unit test (see #762 )
2016-12-20 19:47:53 +01:00
jos
a5df5e4c47
Fixed #762 : expression parser failing to invoke a function returned by a function
2016-12-10 11:41:38 +01:00
jos
7152142661
Fixed #732 : Allow letter-like unicode characters like Ohm \u2126
2016-11-18 19:19:17 +01:00
jos
064eb31381
Fixed #715 : Parser now exposes test functions like isAlpha which can be replaced in order to adjust the allowed characters in variables names
2016-10-21 16:33:38 +02:00
jos
80c55add2a
Parser not throwing an error for invalid implicit multiplications like -2 2 and 2^3 4
2016-10-21 15:23:20 +02:00
jos
7742b36c5c
Some more fixes regarding numbers ending with a decimal mark (like 2.). See #711 .
2016-09-20 21:35:19 +02:00
jos
9199ae58ae
Fixed #711 : parser accepts numbers ending with a decimal mark again like 2..
2016-09-20 21:02:28 +02:00
jos
92918ed9b2
Fixed #707 : The expression parser no longer accepts numbers ending with a dot like 2.
2016-09-07 21:10:20 +02:00
jos
23d1786cb2
Comments of expressions are are now stored in the parsed nodes, see #690
2016-08-23 21:12:39 +02:00
jos
cb4a1a98cb
Fixed #641 : Bug in expression parser parsing implicit multiplication with wrong precedence in specific cases
2016-04-16 09:43:24 +02:00