@jax-js/jax 0.1.7 → 0.1.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -363,6 +363,19 @@ pnpm install
363
363
  pnpm run build:watch
364
364
  ```
365
365
 
366
+ The `pnpm install` command automatically sets up Git hooks via
367
+ [Husky](https://typicode.github.io/husky/). Pre-commit hooks will run ESLint and Prettier on staged
368
+ files to ensure code quality.
369
+
370
+ You can also run linting and formatting manually:
371
+
372
+ ```bash
373
+ pnpm lint # Run ESLint
374
+ pnpm format # Format all files with Prettier
375
+ pnpm format:check # Check formatting without writing
376
+ pnpm check # Run TypeScript type checking
377
+ ```
378
+
366
379
  Then you can run tests in a headless browser using [Vitest](https://vitest.dev/).
367
380
 
368
381
  ```bash
package/dist/index.cjs CHANGED
@@ -5329,6 +5329,7 @@ function lstsq(a, b) {
5329
5329
  });
5330
5330
  const llb = triangularSolve(l, lb, {
5331
5331
  leftSide: true,
5332
+ lower: true,
5332
5333
  transposeA: true
5333
5334
  });
5334
5335
  return matmul(at, llb.ref);
@@ -5342,6 +5343,7 @@ function lstsq(a, b) {
5342
5343
  });
5343
5344
  const llb = triangularSolve(l, lb, {
5344
5345
  leftSide: true,
5346
+ lower: true,
5345
5347
  transposeA: true
5346
5348
  });
5347
5349
  return llb;
@@ -7003,7 +7005,10 @@ function triangularSolve(a, b, { leftSide = false, lower = false, transposeA = f
7003
7005
  b = fudgeArray(b);
7004
7006
  if (!leftSide) transposeA = !transposeA;
7005
7007
  else b = moveaxis$1(b, -2, -1);
7006
- if (transposeA) a = moveaxis$1(a, -2, -1);
7008
+ if (transposeA) {
7009
+ a = moveaxis$1(a, -2, -1);
7010
+ lower = !lower;
7011
+ }
7007
7012
  let x = triangularSolve$1(a, b, {
7008
7013
  lower,
7009
7014
  unitDiagonal
package/dist/index.js CHANGED
@@ -5292,6 +5292,7 @@ function lstsq(a, b) {
5292
5292
  });
5293
5293
  const llb = triangularSolve(l, lb, {
5294
5294
  leftSide: true,
5295
+ lower: true,
5295
5296
  transposeA: true
5296
5297
  });
5297
5298
  return matmul(at, llb.ref);
@@ -5305,6 +5306,7 @@ function lstsq(a, b) {
5305
5306
  });
5306
5307
  const llb = triangularSolve(l, lb, {
5307
5308
  leftSide: true,
5309
+ lower: true,
5308
5310
  transposeA: true
5309
5311
  });
5310
5312
  return llb;
@@ -6966,7 +6968,10 @@ function triangularSolve(a, b, { leftSide = false, lower = false, transposeA = f
6966
6968
  b = fudgeArray(b);
6967
6969
  if (!leftSide) transposeA = !transposeA;
6968
6970
  else b = moveaxis$1(b, -2, -1);
6969
- if (transposeA) a = moveaxis$1(a, -2, -1);
6971
+ if (transposeA) {
6972
+ a = moveaxis$1(a, -2, -1);
6973
+ lower = !lower;
6974
+ }
6970
6975
  let x = triangularSolve$1(a, b, {
6971
6976
  lower,
6972
6977
  unitDiagonal
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jax-js/jax",
3
- "version": "0.1.7",
3
+ "version": "0.1.8",
4
4
  "description": "Numerical computing and ML in the browser",
5
5
  "keywords": [
6
6
  "machine learning",
@@ -44,6 +44,8 @@
44
44
  "eslint": "^9.31.0",
45
45
  "eslint-plugin-import": "^2.32.0",
46
46
  "globals": "^16.0.0",
47
+ "husky": "^9.1.7",
48
+ "lint-staged": "^16.2.7",
47
49
  "playwright": "~1.52.0",
48
50
  "prettier": "^3.6.2",
49
51
  "prettier-plugin-svelte": "^3.4.0",
@@ -74,6 +76,15 @@
74
76
  ],
75
77
  "proseWrap": "always"
76
78
  },
79
+ "lint-staged": {
80
+ "*.{ts,tsx,js,jsx}": [
81
+ "eslint --fix",
82
+ "prettier --write"
83
+ ],
84
+ "*.{json,md,yml,yaml,css,svelte,html}": [
85
+ "prettier --write"
86
+ ]
87
+ },
77
88
  "scripts": {
78
89
  "build": "tsdown",
79
90
  "build:watch": "TSDOWN_WATCH_MODE=1 tsdown",