130 Commits

Author SHA1 Message Date
Jos de Jong
6f00715754
Specify import require paths (continuation of #1941) (#1962)
* Add `.js` extension to source file imports

* Specify package `exports` in `package.json`

Specify package type as `commonjs` (It's good to be specific)

* Move all compiled scripts into `lib` directory

Remove ./number.js (You can use the compiled ones in `./lib/*`)

Tell node that the `esm` directory is type `module` and enable tree shaking.

Remove unused files from packages `files` property

* Allow importing of package.json

* Make library ESM first

* - Fix merge conflicts
- Refactor `bundleAny` into `defaultInstance.js` and `browserBundle.cjs`
- Refactor unit tests to be able to run with plain nodejs (no transpiling)
- Fix browser examples

* Fix browser and browserstack tests

* Fix running unit tests on Node 10 (which has no support for modules)

* Fix node.js examples (those are still commonjs)

* Remove the need for `browserBundle.cjs`

* Generate minified bundle only

* [Security] Bump node-fetch from 2.6.0 to 2.6.1 (#1963)

Bumps [node-fetch](https://github.com/bitinn/node-fetch) from 2.6.0 to 2.6.1. **This update includes a security fix.**
- [Release notes](https://github.com/bitinn/node-fetch/releases)
- [Changelog](https://github.com/node-fetch/node-fetch/blob/master/docs/CHANGELOG.md)
- [Commits](https://github.com/bitinn/node-fetch/compare/v2.6.0...v2.6.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Cleanup console.log

* Add integration tests to test the entry points (commonjs/esm, full/number only)

* Create backward compatibility error messages in the files moved/removed since v8

* Describe breaking changes in HISTORY.md

* Bump karma from 5.2.1 to 5.2.2 (#1965)

Bumps [karma](https://github.com/karma-runner/karma) from 5.2.1 to 5.2.2.
- [Release notes](https://github.com/karma-runner/karma/releases)
- [Changelog](https://github.com/karma-runner/karma/blob/master/CHANGELOG.md)
- [Commits](https://github.com/karma-runner/karma/compare/v5.2.1...v5.2.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

Co-authored-by: Lee Langley-Rees <lee@greenimp.co.uk>
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-09-20 18:01:29 +02:00
Jos de Jong
76a0ec755b Publish v7.1.0 2020-07-13 21:26:05 +02:00
Jos de Jong
6ef0f9b887 Allow to pick embedded docs from an other comment block than just the first 2020-07-13 21:17:28 +02:00
Harry Sarson
08feb7fc79
remove contributors from package.json in favour of AUTHORS (#1774)
* remove contributors from package.json in favour of AUTHORS

The contributors section of our package.json is _very_ long and
manually updating can (?) be a pain.

I took a leaf out of nodejs's book and copied their update-authors
script [1].

[1]: https://github.com/nodejs/node/blob/master/tools/update-authors.js

* remove some of my many emails

* add a couple more mail mappings

* get lint passing

* add instruction to update-authors

Co-authored-by: Jos de Jong <wjosdejong@gmail.com>
2020-03-23 19:57:20 +01:00
Harry Sarson
462f46947f fix qr and sign edge cases (#1670)
* fix qr and sign edge cases

qr() was throwing an error if the pivots of a matrix were zero.
This commit fixes that and ensures that the results are consistant
with wolfram alpha.

Whilst doing this I found a bug in complex.js, I have added a work
around but we should flag this upstream.

I also addressed the long standing concerns about assert statements
within the body of the qr function.

Fixes #1669
Fixes #942

* further improvements to qr and sign

mainly fixing things I got wrong in previous commit

* add array test

* fix: remove only from tests and disallow

Uses mochas `--forbid-only` flag as advised by
https://github.com/standard/standard/issues/988
2019-11-18 20:03:09 +01:00
Harry Sarson
4cfef3ac34 fix no-case-declarations lint 2019-08-21 10:09:10 +01:00
Harry Sarson
b6a42c032d run standard --fix 2019-08-21 10:09:10 +01:00
jos
d8a4f3a00a Update to standard@13.0.2 2019-07-20 13:46:31 +02:00
jos
b390a23f4b Fix function reference not published in npm library 2019-06-09 20:44:16 +02:00
jos
41efed79d3 Fix #1473: remove 'use strict' in every file 2019-05-26 20:21:18 +02:00
jos
64529c3d2e replace tools/validateEmbeddedDocs with a unit test 2019-05-22 14:41:34 +02:00
jos
ec44199dc0 Ignore generated docs in repo, cleanup generated docs before generation 2019-05-22 14:25:42 +02:00
jos
9af5206a88 Make matrix dependency requried again for subset. Make IndexNodes dependencies explicit. Disable subset in number implementation for now 2019-05-22 11:08:12 +02:00
jos
ab1b83a2f6 Remove generated files from repo, make tests independent from generated files 2019-05-12 15:14:13 +02:00
jos
dd830a8892 Fix executing entry files on load of file 2019-05-08 12:44:36 +02:00
jos
c0a11b3d88 Auto generate impureFunctionsAny files 2019-05-08 11:33:51 +02:00
jos
8162f0c2bb Automatically generate functionsAny and functionsNumber 2019-05-08 10:19:08 +02:00
jos
52cc01e752 Use templates and handlebars to generate entry files 2019-05-05 16:43:34 +02:00
jos
cc740b39be Move snapshot code into /src to have it transpiled 2019-05-04 15:17:15 +02:00
jos
47e1adcd0e Dynamically generate the expected snapshot structure based on the factories 2019-05-04 14:39:30 +02:00
jos
158e39b673 Replace deprecated gulp-util with fancy-log 2019-05-04 10:05:15 +02:00
jos
ad51c22066 Fix embedded docs warnings. Fix CLI auto completion on non-supported classes 2019-05-04 09:54:12 +02:00
jos
a770b7c4d3 Fix an issue in the entry generator 2019-04-29 21:28:22 +02:00
jos
20aa9a005a Fix circular dependency in math namespace for evaluate 2019-04-29 21:19:50 +02:00
jos
427c39c33b Created ES5 and ES6 entry points 2019-04-28 20:56:08 +02:00
jos
bb9a1e2164 Rename *Full files to *Any 2019-04-27 20:27:26 +02:00
jos
e4bb1c6198 Generate individual files for dependencies (tree shaking working now :) ) 2019-04-24 21:13:49 +02:00
jos
2450ed1fc1 Update entry files and snapshots with latest merged functions 2019-04-24 11:05:39 +02:00
jos
f4d4180cea Move all entry files under ./src/entry 2019-04-24 10:48:01 +02:00
jos
33cead1327 Improved deprecation errors and warnings. Introduce lazy again for factories. 2019-04-22 09:45:57 +02:00
jos
6081360d6a Merged develop into modular_architecture 2019-04-13 16:51:51 +02:00
jos
d8957d23ae Get all examples running :) 2019-04-10 16:52:02 +02:00
jos
3a34a57924 Auto generate dependenciesFull.js and dependenciesNumber.js (WIP) 2019-04-10 08:48:15 +02:00
jos
22bec13d10 Implement number factories, dependencies. Make matrix and bignumber optional where possible 2019-04-03 09:46:44 +02:00
jos
29b80aa941 Rename "recipes" into "dependencies" 2019-03-13 09:32:13 +01:00
jos
70cbc3ec30 Replace http urls with https where supported 2019-02-27 13:08:42 +01:00
jos
241d45cbbe Improve use cases, POC of recipes 2019-02-24 15:29:44 +01:00
jos
83df09800b Merge branch 'develop' into modular_architecture_merge
# Conflicts:
#	HISTORY.md
#	gulpfile.js
#	package-lock.json
#	package.json
#	src/core/function/typed.js
#	src/expression/transform/index.js
#	src/function/statistics/sum.js
#	src/function/utils/index.js
#	src/type/unit/Unit.js
#	src/version.js
#	test/expression/node/FunctionNode.test.js
#	test/type/unit/function/createUnit.test.js
#	test/utils/bignumber/formatter.test.js
#	test/utils/number.test.js
2019-02-09 21:26:25 +01:00
jos
99da53da0e Flatten everything in a mathjs instance to make it consistent with the ES6 exports. Create deprecation warnings for the old classes and functions 2019-02-07 21:24:51 +01:00
jos
19bc1e0fce Implemented snapshot testing for all exported bundles and instances 2019-01-23 14:50:29 +01:00
jos
078f1dd69f Renamed methods .eval to .evaluate, updated all docs and examples accordingly 2019-01-16 10:11:32 +01:00
jos
05e6cfec7f Doc generation working again. Renamed variance and evaluate occurrences in the docs. 2019-01-09 11:21:43 +01:00
jos
5dd0a9ba9c Get bundle working (with lazy loading) 2019-01-02 10:03:05 +01:00
jos
2630129c72 Fix linting issues 2018-11-20 21:24:59 +01:00
jos
d09a7ff584 Create script to check for non-ascii characters (see #1326) 2018-11-20 21:13:36 +01:00
Harry Sarson
74ff86fd4b Store uncompressed matricies and drop dev dep on tar and on q. (#1316)
git handles compression for us so compressing the matricies we use to test
is unnessessary. Additionally, handling the compression made the
code significantly more complex and required pulling in extra packages
from npm.

This commit updates the matrix market code to use uncompressed files.
I have also replaced use of the promise libary 'q' with built in
promises.
2018-11-10 11:40:28 +01:00
jos
4a529dc94a Fixed tests in test-node 2018-11-07 14:07:30 +01:00
jos
2fd6cbd568 Converted matrix classes. Fixes in dependency resolving/ordering. 2018-11-07 12:38:00 +01: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
jos
88263c47c7 Woohoo fixed the last lint errors 2018-06-13 21:51:09 +02:00