Skip to content

Commit 7ae8785

Browse files
JamesWrigleyChrisRackauckas
authored andcommitted
Depend only on NonlinearSolveFirstOrder
This has everything needed for the default polyalgorithm.
1 parent 812879d commit 7ae8785

File tree

8 files changed

+20
-12
lines changed

8 files changed

+20
-12
lines changed

Project.toml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
name = "CurveFit"
22
uuid = "5a033b19-8c74-5913-a970-47c3779ef25c"
3-
version = "1.4.0"
3+
version = "1.4.1"
44
authors = ["Paulo José Saiz Jabardo <pjabardo@gmail.com>, Avik Pal <avikpal@mit.edu> and contributors"]
55

66
[deps]
@@ -15,8 +15,8 @@ InverseFunctions = "3587e190-3f89-42d0-90ee-14403ec27112"
1515
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
1616
LinearSolve = "7ed4a6bd-45f5-4d41-b270-4a48e9bafcae"
1717
Markdown = "d6f4376e-aef5-505a-96c1-9c027394607a"
18-
NonlinearSolve = "8913a72c-1f9b-4ce2-8d82-65094dcecaec"
1918
NonlinearSolveBase = "be0214bd-f91f-a760-ac4e-3421ce2b2da0"
19+
NonlinearSolveFirstOrder = "5959db7a-ea39-4486-b5fe-2dd0bf03d60d"
2020
RecursiveArrayTools = "731186ca-8d62-57ce-b412-fbd966d074cd"
2121
SciMLBase = "0bca4576-84f4-4d90-8ffe-ffa030f20462"
2222
Setfield = "efcf1570-3423-57d1-acb7-fd33fddbac46"
@@ -36,8 +36,8 @@ InverseFunctions = "0.1"
3636
LinearAlgebra = "1.10"
3737
LinearSolve = "3.15.0"
3838
Markdown = "1.10.0"
39-
NonlinearSolve = "4.12.0"
4039
NonlinearSolveBase = "2.0"
40+
NonlinearSolveFirstOrder = "1.12"
4141
RecursiveArrayTools = "3.33.0"
4242
SciMLBase = "2.90"
4343
Setfield = "1.1.2"

docs/src/_changelog.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,12 @@ CurrentModule = CurveFit
77
This documents notable changes in CurveFit.jl. The format is based on [Keep a
88
Changelog](https://keepachangelog.com).
99

10+
## [v1.4.1] - 2026-02-14
11+
12+
### Changed
13+
- CurveFit now depends only on NonlinearSolveFirstOrder.jl to reduce
14+
dependencies ([#85]). The default algorithm remains the same.
15+
1016
## [v1.4.0] - 2026-01-31
1117

1218
### Added

src/CurveFit.jl

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,7 @@ using Setfield: @set!
99
using RecursiveArrayTools: NamedArrayPartition
1010
using FastRationals: FastRational
1111
using LinearAlgebra: LinearAlgebra, eigvals!, diagm, qr!, lu!, ldiv!
12-
using LinearSolve: LinearSolve
13-
using NonlinearSolve: NonlinearSolve
12+
using NonlinearSolveFirstOrder: NonlinearSolveFirstOrder
1413
using NonlinearSolveBase: NonlinearSolveBase
1514
using SciMLBase: SciMLBase, AbstractNonlinearAlgorithm, AbstractLinearAlgorithm, ReturnCode,
1615
NonlinearFunction, LinearProblem, NonlinearLeastSquaresProblem, reinit!

test/generic.jl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ end
1717
@testitem "GenericNonlinearCurveFitCache show" begin
1818
using CurveFit
1919
using SciMLBase
20-
using NonlinearSolve: LevenbergMarquardt, GaussNewton, TrustRegion
20+
using NonlinearSolveFirstOrder: LevenbergMarquardt, GaussNewton, TrustRegion
2121

2222
x = collect(1.0:10.0)
2323
fn(a, x) = @. a[1] + a[2] * x

test/king.jl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
end
2121

2222
@testitem "Modified King's Law" begin
23-
using NonlinearSolve
23+
using NonlinearSolveFirstOrder
2424

2525
U = range(1, stop = 20, length = 20)
2626
A = 5.0

test/lin_choice.jl

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
@testitem "Linear solver choice testing" begin
22
@testset "LUFactorization" begin
33
using CurveFit
4-
using NonlinearSolve
4+
using LinearSolve
5+
using NonlinearSolveFirstOrder
56

67
X = collect(1.0:10.0)
78
θ_true = [3.0, 2.0]
@@ -23,7 +24,8 @@
2324

2425
@testset "QRFactorization" begin
2526
using CurveFit
26-
using NonlinearSolve
27+
using LinearSolve
28+
using NonlinearSolveFirstOrder
2729

2830
X = collect(1.0:10.0)
2931
θ_true = [3.0, 2.0]
@@ -45,7 +47,8 @@
4547

4648
@testset "CholeskyFactorization" begin
4749
using CurveFit
48-
using NonlinearSolve
50+
using LinearSolve
51+
using NonlinearSolveFirstOrder
4952

5053
X = collect(1.0:10.0)
5154
θ_true = [3.0, 2.0]

test/rationalfit.jl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
end
1717

1818
@testitem "Nonlinear Rational fit" begin
19-
using NonlinearSolve
19+
using NonlinearSolveFirstOrder
2020

2121
x = range(1, stop = 10, length = 10)
2222
r = CurveFit.RationalPolynomial([1.0, 0.0, -2.0], [1.0, 2.0, 3.0])

test/stats.jl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
@testitem "StatsAPI Integration" begin
22
using StatsAPI
3-
using NonlinearSolve
3+
using NonlinearSolveFirstOrder
44
using LinearAlgebra
55
using LinearSolve
66

0 commit comments

Comments
 (0)