Skip to content

fix(deps): update dependency lineax to >=0.1.0,<0.1.1#85

Open
renovate[bot] wants to merge 2 commits intomainfrom
renovate/lineax-0.x
Open

fix(deps): update dependency lineax to >=0.1.0,<0.1.1#85
renovate[bot] wants to merge 2 commits intomainfrom
renovate/lineax-0.x

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Jan 27, 2026

This PR contains the following updates:

Package Change Age Confidence
lineax >=0.0.8,<0.0.9>=0.1.0,<0.1.1 age confidence

Release Notes

google/lineax (lineax)

v0.1.0: lineax v0.1.0

Compare Source

Phew, it's been a while since a release! It's about time we got something out.

Breaking changes

  • AbstractLinearSolver.allow_dependent_{rows, columns} have been removed in favour of the simpler AbstractLinearSolver.assume_full_rank. (Thanks @​adconner! In particular for being so patient with me and my bugs 😅 #​158)

Features

  • Added the lineax.LSMR solver. This is a solver that will return the pseudoinverse (like lineax.SVD) solution, and handles nonsquare/singular matrices. In addition, it is an iterative solver. (Thanks @​f0uriest @​PTNobel @​healeyq3 @​johannahaffner! #​86)
  • Added the lineax.Normal solver. This wraps another existing solver so that it operates via the normal equations. (Thanks @​adconner! #​159)

Compatibility

  • Now compatible with modern JAX (at least 0.8.2), which was newly promoting some static values to tracers. (#​183, #​187, #​188)

Bugfixes

  • Preconditioned Krylov solvers now also use the preconditioner on the backward pass, instead of no preconditioner. (Thanks @​f0uriest! #​162)

Performance

New Contributors

Full Changelog: patrick-kidger/lineax@v0.0.8...v0.1.0


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

renovate-approve[bot]
renovate-approve bot previously approved these changes Jan 27, 2026
@liblaf
Copy link
Contributor

liblaf bot commented Jan 27, 2026

⚠️MegaLinter analysis: Success with warnings

Descriptor Linter Files Fixed Errors Warnings Elapsed time
✅ BASH shellcheck 2 0 0 0.02s
✅ BASH shfmt 2 0 0 0 0.44s
⚠️ COPYPASTE jscpd yes 275 no 7.39s
✅ JSON prettier 7 0 0 0 0.95s
✅ JSON v8r 7 0 0 4.45s
⚠️ PYTHON ruff yes yes 1 no 0.47s
✅ REPOSITORY git_diff yes no no 0.47s
⚠️ SPELL cspell 196 1 0 6.46s
✅ YAML prettier 4 0 0 0 0.91s
✅ YAML v8r 4 0 0 5.32s
✅ YAML yamllint 4 0 0 0.53s

Detailed Issues

⚠️ SPELL / cspell - 1 error
tmp.6NE8UxMvCk/renovate-config.json:28:4      - Unknown word (pyenv)      -- "pyenv": {
	 Suggestions: [peen, pena, pend, peng, penh]
CSpell: Files checked: 196, Issues found: 1 in 1 file.


You can skip this misspellings by defining the following .cspell.json file at the root of your repository
Of course, please correct real typos before :)

{
    "version": "0.2",
    "language": "en",
    "ignorePaths": [
        "**/node_modules/**",
        "**/vscode-extension/**",
        "**/.git/**",
        "**/.pnpm-lock.json",
        ".vscode",
        "package-lock.json",
        "megalinter-reports"
    ],
    "words": [
        "pyenv"
    ]
}


You can also copy-paste megalinter-reports/LINTER_DEFAULT at the root of your repository
⚠️ COPYPASTE / jscpd - 275 errors
Clone found (python):
 - exp/2025/07/30/dynamics/collision/collision-bunny-bunny/main.py [1:1 - 14:5] (13 lines, 115 tokens)
   exp/2025/07/30/dynamics/collision/collision-bunny-sphere/main.py [1:1 - 14:4]

Clone found (python):
 - exp/2025/07/30/dynamics/collision/collision-bunny-bunny/main.py [22:5 - 84:78] (62 lines, 768 tokens)
   exp/2025/07/30/dynamics/collision/collision-bunny-sphere/main.py [22:5 - 84:8]

Clone found (python):
 - exp/2025/07/30/dynamics/collision/collision-bunny-bunny/main.py [87:5 - 114:2] (27 lines, 319 tokens)
   exp/2025/07/30/dynamics/collision/collision-bunny-sphere/main.py [84:4 - 111:2]

Clone found (python):
 - exp/2025/07/30/dynamics/collision/collision-bunny/main.py [21:5 - 35:7] (14 lines, 116 tokens)
   exp/2025/07/30/dynamics/collision/collision-bunny-bunny/main.py [17:5 - 31:4]

Clone found (python):
 - exp/2025/07/30/dynamics/collision/collision-bunny/main.py [58:1 - 67:4] (9 lines, 151 tokens)
   exp/2025/07/30/dynamics/collision/collision-bunny-sphere/main.py [31:1 - 40:3]

Clone found (python):
 - exp/2025/07/30/dynamics/collision/collision-bunny/main.py [67:3 - 77:9] (10 lines, 124 tokens)
   exp/2025/07/30/dynamics/collision/collision-bunny-sphere/main.py [40:3 - 49:6]

Clone found (python):
 - exp/2025/07/30/dynamics/collision/collision-bunny/main.py [81:9 - 88:5] (7 lines, 101 tokens)
   exp/2025/07/30/dynamics/collision/collision-bunny-sphere/main.py [52:9 - 59:7]

Clone found (python):
 - exp/2025/07/30/dynamics/collision/collision-bunny/main.py [90:4 - 100:5] (10 lines, 128 tokens)
   exp/2025/07/30/dynamics/collision/collision-bunny-sphere/main.py [58:2 - 68:4]

Clone found (python):
 - exp/2025/07/30/dynamics/collision/collision-bunny/main.py [100:2 - 116:4] (16 lines, 181 tokens)
   exp/2025/07/30/dynamics/collision/collision-bunny-sphere/main.py [68:2 - 84:10]

Clone found (python):
 - exp/2025/07/30/dynamics/collision/collision-bunny/main.py [116:6 - 132:5] (16 lines, 200 tokens)
   exp/2025/07/30/dynamics/collision/collision-bunny-sphere/main.py [87:5 - 103:13]

Clone found (python):
 - exp/2025/07/30/dynamics/collision/collision-box/main.py [1:1 - 50:5] (49 lines, 490 tokens)
   exp/2025/07/30/dynamics/collision/collision-bunny/main.py [1:1 - 50:3]

Clone found (python):
 - exp/2025/07/30/dynamics/collision/collision-box/main.py [52:9 - 79:28] (27 lines, 359 tokens)
   exp/2025/07/30/dynamics/collision/collision-bunny/main.py [54:2 - 81:3]

Clone found (python):
 - exp/2025/07/30/dynamics/collision/collision-box/main.py [78:9 - 96:75] (18 lines, 224 tokens)
   exp/2025/07/30/dynamics/collision/collision-bunny-sphere/main.py [49:10 - 96:8]

Clone found (python):
 - exp/2025/07/30/dynamics/collision/collision-box/main.py [104:5 - 142:10] (38 lines, 481 tokens)
   exp/2025/07/30/dynamics/collision/collision-bunny/main.py [97:8 - 105:12]

Clone found (python):
 - tests/warp/energies/elastic/hyperelastic/func/test_hess_quad.py [50:6 - 60:2] (10 lines, 99 tokens)
   tests/warp/energies/elastic/hyperelastic/func/test_hess_quad.py [24:1 - 34:7]

Clone found (python):
 - tests/warp/energies/elastic/hyperelastic/func/test_hess_quad.py [64:5 - 73:8] (9 lines, 160 tokens)
   tests/warp/energies/elastic/hyperelastic/func/test_hess_quad.py [41:5 - 50:8]

Clone found (python):
 - tests/warp/energies/elastic/hyperelastic/func/test_hess_quad.py [77:3 - 83:8] (6 lines, 75 tokens)
   tests/warp/energies/elastic/hyperelastic/func/test_hess_quad.py [28:2 - 34:7]

Clone found (python):
 - tests/warp/energies/elastic/hyperelastic/func/test_hess_quad.py [86:5 - 95:8] (9 lines, 160 tokens)
   tests/warp/energies/elastic/hyperelastic/func/test_hess_quad.py [41:5 - 50:8]

Clone found (python):
 - tests/warp/energies/elastic/hyperelastic/func/test_hess_quad.py [95:8 - 105:8] (10 lines, 116 tokens)
   tests/warp/energies/elastic/hyperelastic/func/test_hess_quad.py [50:8 - 34:7]

Clone found (python):
 - tests/warp/energies/elastic/hyperelastic/func/test_hess_quad.py [108:5 - 117:12] (9 lines, 158 tokens)
   tests/warp/energies/elastic/hyperelastic/func/test_hess_quad.py [41:5 - 50:4]

Clone found (python):
 - tests/warp/energies/elastic/hyperelastic/func/test_hess_quad.py [141:3 - 150:13] (9 lines, 90 tokens)
   tests/warp/energies/elastic/hyperelastic/func/test_hess_quad.py [130:3 - 139:13]

Clone found (python):
 - tests/warp/energies/elastic/hyperelastic/func/test_hess_prod.py [99:8 - 109:22] (10 lines, 97 tokens)
   tests/warp/energies/elastic/hyperelastic/func/test_hess_prod.py [76:8 - 86:13]

Clone found (python):
 - tests/warp/energies/elastic/hyperelastic/func/test_hess_prod.py [109:22 - 120:6] (11 lines, 182 tokens)
   tests/warp/energies/elastic/hyperelastic/func/test_hess_prod.py [86:13 - 97:5]

Clone found (python):
 - tests/warp/energies/elastic/hyperelastic/func/test_hess_prod.py [120:6 - 125:2] (5 lines, 93 tokens)
   tests/warp/energies/elastic/hyperelastic/func/test_hess_prod.py [97:5 - 104:2]

Clone found (python):
 - tests/warp/energies/elastic/hyperelastic/func/test_hess_diag.py [68:5 - 73:13] (5 lines, 65 tokens)
   tests/warp/energies/elastic/hyperelastic/func/test_hess_prod.py [81:5 - 86:13]

Clone found (python):
 - tests/warp/energies/elastic/hyperelastic/func/test_hess_diag.py [74:5 - 85:11] (11 lines, 208 tokens)
   tests/warp/energies/elastic/hyperelastic/func/test_hess_prod.py [88:5 - 99:11]

Clone found (python):
 - tests/warp/energies/elastic/hyperelastic/func/test_hess_diag.py [85:8 - 94:22] (9 lines, 83 tokens)
   tests/warp/energies/elastic/hyperelastic/func/test_hess_diag.py [64:8 - 86:13]

Clone found (python):
 - tests/warp/energies/elastic/hyperelastic/func/test_hess_diag.py [94:22 - 106:11] (12 lines, 211 tokens)
   tests/warp/energies/elastic/hyperelastic/func/test_hess_diag.py [73:13 - 122:11]

Clone found (python):
 - tests/warp/energies/elastic/hyperelastic/func/test_hess_diag.py [104:6 - 109:2] (5 lines, 80 tokens)
   tests/warp/energies/elastic/hyperelastic/func/test_hess_diag.py [83:5 - 89:2]

Clone found (python):
 - src/liblaf/apple/warp/energies/elastic/_vol_preserve_det.py [24:53 - 34:60] (10 lines, 100 tokens)
   src/liblaf/apple/warp/energies/elastic/_vol_preserve_det_func.py [18:52 - 28:59]

Clone found (python):
 - src/liblaf/apple/warp/energies/elastic/_vol_preserve_det.py [34:60 - 45:48] (11 lines, 106 tokens)
   src/liblaf/apple/warp/energies/elastic/_vol_preserve_det_func.py [28:59 - 39:47]

Clone found (python):
 - src/liblaf/apple/warp/energies/elastic/_vol_preserve_det.py [45:48 - 65:48] (20 lines, 193 tokens)
   src/liblaf/apple/warp/energies/elastic/_vol_preserve_det_func.py [39:47 - 59:47]

Clone found (python):
 - src/liblaf/apple/warp/energies/elastic/_vol_preserve_det.py [65:48 - 86:48] (21 lines, 206 tokens)
   src/liblaf/apple/warp/energies/elastic/_vol_preserve_det_func.py [59:47 - 80:47]

Clone found (python):
 - src/liblaf/apple/warp/energies/elastic/_vol_preserve_det.py [86:48 - 102:8] (16 lines, 194 tokens)
   src/liblaf/apple/warp/energies/elastic/_vol_preserve_det_func.py [80:47 - 96:8]

Clone found (python):
 - src/liblaf/apple/warp/energies/elastic/_phace_v2.py [207:5 - 214:11] (7 lines, 115 tokens)
   src/liblaf/apple/warp/energies/elastic/_vol_preserve_det_func.py [89:5 - 96:7]

Clone found (python):
 - src/liblaf/apple/warp/energies/elastic/_phace_v2.py [265:27 - 272:5] (7 lines, 100 tokens)
   src/liblaf/apple/warp/energies/elastic/_phace_v2.py [254:20 - 261:7]

Clone found (python):
 - src/liblaf/apple/warp/energies/elastic/_phace_v2.py [276:15 - 286:77] (10 lines, 112 tokens)
   src/liblaf/apple/warp/energies/elastic/_phace_v2.py [254:20 - 275:17]

Clone found (python):
 - src/liblaf/apple/warp/energies/elastic/_phace_v2.py [293:4 - 302:41] (9 lines, 102 tokens)
   src/liblaf/apple/warp/energies/elastic/_phace_v2.py [256:4 - 264:12]

Clone found (python):
 - src/liblaf/apple/warp/energies/elastic/_phace_v2.py [331:9 - 338:7] (7 lines, 75 tokens)
   src/liblaf/apple/warp/energies/elastic/_phace_v2.py [223:1 - 231:6]

Clone found (python):
 - src/liblaf/apple/warp/energies/elastic/_base.py [245:6 - 252:2] (7 lines, 88 tokens)
   src/liblaf/apple/warp/energies/elastic/_base.py [222:7 - 229:7]

Clone found (python):
 - src/liblaf/apple/warp/energies/elastic/_base.py [270:8 - 277:4] (7 lines, 92 tokens)
   src/liblaf/apple/warp/energies/elastic/_base.py [222:8 - 229:7]

Clone found (python):
 - src/liblaf/apple/warp/energies/elastic/_base.py [289:12 - 295:5] (6 lines, 75 tokens)
   src/liblaf/apple/warp/energies/elastic/_base.py [264:11 - 270:7]

Clone found (python):
 - src/liblaf/apple/warp/energies/elastic/_base.py [361:2 - 369:5] (8 lines, 109 tokens)
   src/liblaf/apple/warp/energies/elastic/_base.py [325:2 - 333:14]

Clone found (python):
 - src/liblaf/apple/warp/energies/elastic/_base.py [401:9 - 408:7] (7 lines, 101 tokens)
   src/liblaf/apple/warp/energies/elastic/_base.py [367:9 - 374:7]

Clone found (python):
 - src/liblaf/apple/warp/energies/elastic/_arap_muscle_func.py [89:5 - 97:7] (8 lines, 150 tokens)
   src/liblaf/apple/warp/energies/elastic/_phace_v2.py [194:5 - 202:19]

Clone found (python):
 - src/liblaf/apple/warp/energies/elastic/_arap_muscle.py [25:33 - 37:40] (12 lines, 130 tokens)
   src/liblaf/apple/warp/energies/elastic/_arap_muscle_func.py [18:32 - 30:39]

Clone found (python):
 - src/liblaf/apple/warp/energies/elastic/_arap_muscle.py [37:40 - 49:28] (12 lines, 127 tokens)
   src/liblaf/apple/warp/energies/elastic/_arap_muscle_func.py [30:39 - 42:27]

Clone found (python):
 - src/liblaf/apple/warp/energies/elastic/_arap_muscle.py [49:28 - 65:28] (16 lines, 221 tokens)
   src/liblaf/apple/warp/energies/elastic/_arap_muscle_func.py [42:27 - 58:27]

Clone found (python):
 - src/liblaf/apple/warp/energies/elastic/_arap_muscle.py [65:28 - 87:28] (22 lines, 240 tokens)
   src/liblaf/apple/warp/energies/elastic/_arap_muscle_func.py [58:27 - 80:27]

Clone found (python):
 - src/liblaf/apple/warp/energies/elastic/_arap_muscle.py [87:28 - 104:8] (17 lines, 228 tokens)
   src/liblaf/apple/warp/energies/elastic/_arap_muscle_func.py [80:27 - 97:8]

Clone found (python):
 - src/liblaf/apple/warp/energies/elastic/_arap_muscle.py [125:5 - 151:2] (26 lines, 200 tokens)
   src/liblaf/apple/warp/energies/elastic/_vol_preserve_det.py [120:5 - 146:10]

Clone found (python):
 - src/liblaf/apple/warp/energies/elastic/_arap_func.py [75:5 - 80:7] (5 lines, 105 tokens)
   src/liblaf/apple/warp/energies/elastic/_phace_v2.py [184:5 - 189:12]

Clone found (python):
 - src/liblaf/apple/warp/energies/elastic/_arap.py [25:26 - 33:33] (8 lines, 95 tokens)
   src/liblaf/apple/warp/energies/elastic/_arap_func.py [18:25 - 26:32]

Clone found (python):
 - src/liblaf/apple/warp/energies/elastic/_arap.py [33:33 - 43:21] (10 lines, 86 tokens)
   src/liblaf/apple/warp/energies/elastic/_arap_func.py [26:32 - 34:20]

Clone found (python):
 - src/liblaf/apple/warp/energies/elastic/_arap.py [45:6 - 51:8] (6 lines, 119 tokens)
   src/liblaf/apple/warp/energies/elastic/_arap_func.py [36:6 - 42:8]

Clone found (python):
 - src/liblaf/apple/warp/energies/elastic/_arap.py [56:21 - 75:21] (19 lines, 195 tokens)
   src/liblaf/apple/warp/energies/elastic/_arap_func.py [47:20 - 66:20]

Clone found (python):
 - src/liblaf/apple/warp/energies/elastic/_arap.py [75:21 - 89:8] (14 lines, 183 tokens)
   src/liblaf/apple/warp/energies/elastic/_arap_func.py [66:20 - 80:8]

Clone found (python):
 - src/liblaf/apple/warp/energies/elastic/_arap.py [104:21 - 134:18] (30 lines, 243 tokens)
   src/liblaf/apple/warp/energies/elastic/_vol_preserve_det.py [120:5 - 150:43]

Clone found (python):
 - exp/2026/01/28/smas/src/20-forward-phace.py [32:5 - 49:7] (17 lines, 173 tokens)
   exp/2026/01/28/smas/src/21-forward-whole.py [44:5 - 61:6]

Clone found (python):
 - exp/2025/12/31/inverse-toy/src/20-forward-prestrain.py [1:1 - 11:2] (10 lines, 96 tokens)
   exp/2025/12/31/inverse-toy/src/20-forward.py [1:1 - 11:11]

Clone found (python):
 - exp/2025/12/31/inverse-toy/src/20-forward-prestrain.py [40:8 - 49:5] (9 lines, 81 tokens)
   exp/2025/12/31/inverse-toy/src/20-forward.py [34:13 - 43:5]

Clone found (python):
 - exp/2025/12/31/inverse-toy/src/20-forward-prestrain.py [74:5 - 86:38] (12 lines, 132 tokens)
   exp/2025/12/31/inverse-toy/src/20-forward.py [59:8 - 70:2]

Clone found (python):
 - exp/2025/12/31/inverse-toy/src/20-forward-prestrain.py [88:3 - 98:3] (10 lines, 96 tokens)
   exp/2025/12/31/inverse-toy/src/20-forward.py [72:3 - 82:32]

Clone found (python):
 - exp/2025/12/31/inverse-toy/src/20-forward-prestrain.py [101:5 - 115:35] (14 lines, 120 tokens)
   exp/2025/12/31/inverse-toy/src/20-forward.py [101:5 - 115:25]

Clone found (python):
 - exp/2025/12/31/inverse-toy/src/20-forward-newton.py [31:5 - 45:2] (14 lines, 189 tokens)
   exp/2025/12/31/inverse-toy/src/20-forward.py [61:6 - 90:2]

Clone found (python):
 - exp/2025/12/31/inverse-toy/src/10-gen-grid.py [25:2 - 35:9] (10 lines, 79 tokens)
   exp/2025/12/31/inverse-toy/src/10-gen.py [27:4 - 37:5]

Clone found (python):
 - exp/2025/12/31/inverse-toy/src/10-gen-grid.py [48:5 - 57:16] (9 lines, 131 tokens)
   exp/2025/12/31/inverse-toy/src/10-gen.py [52:8 - 61:18]

Clone found (python):
 - exp/2025/12/31/inverse-toy/src/10-gen-grid.py [61:16 - 66:16] (5 lines, 110 tokens)
   exp/2025/12/31/inverse-toy/src/10-gen.py [65:17 - 70:17]

Clone found (python):

(Truncated to 13333 characters out of 51945)
⚠️ PYTHON / ruff - 1 error
ARG003 Unused class method argument: `clamp_hess_diag`
   --> src/liblaf/apple/warp/energies/elastic/_base.py:319:9
    |
317 |         module: str | None = None,
318 |         *,
319 |         clamp_hess_diag: bool = True,
    |         ^^^^^^^^^^^^^^^
320 |     ) -> wp.Kernel:
321 |         # @wp.kernel
    |

Found 1 error.

See detailed reports in MegaLinter artifacts

MegaLinter is graciously provided by OX Security

@renovate renovate bot force-pushed the renovate/lineax-0.x branch from 89f0a78 to 795607f Compare February 12, 2026 10:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant