Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
a5aaa98
fix: explicit imports in NonlinearSolveBase
avik-pal Sep 5, 2025
c8c4eee
fix: link to SpeedMapping
avik-pal Sep 5, 2025
759a5af
ci: fix inputs
avik-pal Sep 5, 2025
8e2f2a9
ci: formatter pin to v1
avik-pal Sep 5, 2025
df52fba
fix: properly specify version
avik-pal Sep 5, 2025
9bfa568
ci: remove duplicate workflows
avik-pal Sep 5, 2025
c23a805
fix: documentation
avik-pal Sep 5, 2025
1906e02
ci: reuse workflows from Lux
avik-pal Sep 5, 2025
8298c02
ci: use specific branch (drop me)
avik-pal Sep 5, 2025
b646240
fix: min compats
avik-pal Sep 5, 2025
e32fd87
fix: nonlinearsolvescipy
avik-pal Sep 5, 2025
3519ba4
test: skip cuda installation + tests on pre-releases
avik-pal Sep 5, 2025
0f70bc4
fix: more min compat
avik-pal Sep 5, 2025
a8a2e9f
fix: make DI v0.7
avik-pal Sep 5, 2025
16eb41f
fix: don't support speedmapping v0.4 for now
avik-pal Sep 5, 2025
efc673f
test: relax tolerance for broyden
avik-pal Sep 5, 2025
b823064
fix: bracketing nlsolve min compats
avik-pal Sep 5, 2025
84bd88b
fix: more min compat
avik-pal Sep 5, 2025
c5876f0
Revert "ci: use specific branch (drop me)"
avik-pal Sep 5, 2025
f05de75
fix: more min compat
avik-pal Sep 5, 2025
ff70a8b
fix: more min compat
avik-pal Sep 5, 2025
2384fc3
fix: nonlinearsolve test fixes
avik-pal Sep 5, 2025
d2dadc4
fix: first order tests
avik-pal Sep 5, 2025
5d68f63
fix: more compat fixes
avik-pal Sep 5, 2025
38a8c10
fix: missing sources
avik-pal Sep 5, 2025
c15e8f6
ci: fix
avik-pal Sep 6, 2025
fa4dfd6
ci: fix
avik-pal Sep 6, 2025
1dfd7b7
ci(buildkite): use sources
avik-pal Sep 6, 2025
b0c65fa
fix: simple nonlinear solve working in kernels again
avik-pal Sep 6, 2025
defd61f
ci: fix group for BVPs
avik-pal Sep 6, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 4 additions & 25 deletions .buildkite/pipeline.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,23 +3,13 @@ steps:
plugins:
- JuliaCI/julia#v1:
version: "1"
- JuliaCI/julia-test#v1:
test_args: "GROUP=cuda"
- JuliaCI/julia-coverage#v1:
codecov: true
dirs:
- src
- ext
command: |
julia --color=yes --code-coverage=user --depwarn=yes --project=. -e '
import Pkg;
Pkg.Registry.update();
# Install packages present in subdirectories
dev_pks = Pkg.PackageSpec[];
for path in ("lib/SciMLJacobianOperators", "lib/BracketingNonlinearSolve", "lib/NonlinearSolveBase", "lib/SimpleNonlinearSolve", "lib/NonlinearSolveFirstOrder", "lib/NonlinearSolveSpectralMethods", "lib/NonlinearSolveQuasiNewton")
push!(dev_pks, Pkg.PackageSpec(; path));
end
Pkg.develop(dev_pks);
Pkg.instantiate();
Pkg.test(; coverage="user")'
agents:
queue: "juliagpu"
cuda: "*"
Expand All @@ -31,23 +21,13 @@ steps:
plugins:
- JuliaCI/julia#v1:
version: "1"
- JuliaCI/julia-test#v1:
test_args: "GROUP=cuda"
- JuliaCI/julia-coverage#v1:
codecov: true
dirs:
- src
- ext
command: |
julia --color=yes --code-coverage=user --depwarn=yes --project=lib/SimpleNonlinearSolve -e '
import Pkg;
Pkg.Registry.update();
# Install packages present in subdirectories
dev_pks = Pkg.PackageSpec[];
for path in ("lib/NonlinearSolveBase", "lib/BracketingNonlinearSolve", "lib/SciMLJacobianOperators")
push!(dev_pks, Pkg.PackageSpec(; path))
end
Pkg.develop(dev_pks);
Pkg.instantiate();
Pkg.test(; coverage="user")'
agents:
queue: "juliagpu"
cuda: "*"
Expand All @@ -56,6 +36,5 @@ steps:
if: build.message !~ /\[skip tests\]/

env:
GROUP: CUDA
JULIA_PKG_SERVER: "" # it often struggles with our large artifacts
SECRET_CODECOV_TOKEN: "HC7K/ymhi62KUQ5OLU4DOl+11gaQt4JhXX/2nfTGlTsBB8mEMxQ8R+sHIp/2HjEup5eSXAN2IWQDQ7RDBuQvVp0T1UVtr2e4YNZFztKnsJXrFO15hXxYShJodI//X/8DzhlQd/lyTDOAOJu3eznsc3sC2CUgJzXZxLUtQN9YaZ1i3a+NoN1mO5UpkkHVhXigwF5gjy+0tei8fCdcP+SIhG0EanS5yd9q/SurtCpMHsHyUG97+ZVPglSKgdaqr31+PdmiPJ+ynp4+Hnc/esosxUSHSIL+ryRTO+28RNwPTiNf99J51RJLQmz1knWTR1ky6tiYIZ5218O6wvNil0SqNw==;U2FsdGVkX18nBY3t4LZYlEIz3EVKjpqCd994JNeJGt006up+sAjXEssI0tgCVXnfXsenVsP3NCCEoOS1GXc44g=="
51 changes: 13 additions & 38 deletions .github/workflows/CI_BracketingNonlinearSolve.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@ concurrency:

jobs:
test:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
Expand All @@ -29,40 +28,16 @@ jobs:
os:
- ubuntu-latest
- macos-latest
steps:
- uses: actions/checkout@v4
- uses: julia-actions/setup-julia@v2
with:
version: ${{ matrix.version }}
- uses: actions/cache@v4
env:
cache-name: cache-artifacts
with:
path: ~/.julia/artifacts
key: ${{ runner.os }}-test-${{ env.cache-name }}-${{ hashFiles('**/Project.toml') }}
restore-keys: |
${{ runner.os }}-test-${{ env.cache-name }}-
${{ runner.os }}-test-
${{ runner.os }}-
- name: "Install Dependencies and Run Tests"
run: |
import Pkg
Pkg.Registry.update()
# Install packages present in subdirectories
dev_pks = Pkg.PackageSpec[]
for path in ("lib/NonlinearSolveBase", "lib/SciMLJacobianOperators")
push!(dev_pks, Pkg.PackageSpec(; path))
end
Pkg.develop(dev_pks)
Pkg.instantiate()
Pkg.test(; coverage="user")
shell: julia --color=yes --code-coverage=user --depwarn=yes --project=lib/BracketingNonlinearSolve {0}
- uses: julia-actions/julia-processcoverage@v1
with:
directories: lib/BracketingNonlinearSolve/src,lib/BracketingNonlinearSolve/ext,lib/NonlinearSolveBase/src,lib/NonlinearSolveBase/ext,lib/SciMLJacobianOperators/src
- uses: codecov/codecov-action@v5
with:
file: lcov.info
token: ${{ secrets.CODECOV_TOKEN }}
verbose: true
fail_ci_if_error: false
uses: LuxDL/Lux.jl/.github/workflows/CommonCI.yml@main
with:
julia_version: ${{ matrix.version }}
os: ${{ matrix.os }}
project: "lib/BracketingNonlinearSolve"
local_dependencies: "lib/NonlinearSolveBase,lib/SciMLJacobianOperators"

downgrade:
uses: LuxDL/Lux.jl/.github/workflows/CommonCI.yml@main
with:
julia_version: "1.11"
project: "lib/BracketingNonlinearSolve"
downgrade_testing: true
66 changes: 24 additions & 42 deletions .github/workflows/CI_NonlinearSolve.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,6 @@ concurrency:

jobs:
test:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
Expand All @@ -48,44 +47,27 @@ jobs:
# Don't run nopre tests on prerelease Julia
- group: nopre
version: "pre"
steps:
- uses: actions/checkout@v4
- uses: julia-actions/setup-julia@v2
with:
version: ${{ matrix.version }}
- uses: actions/cache@v4
env:
cache-name: cache-artifacts
with:
path: ~/.julia/artifacts
key: ${{ runner.os }}-test-${{ env.cache-name }}-${{ hashFiles('**/Project.toml') }}
restore-keys: |
${{ runner.os }}-test-${{ env.cache-name }}-
${{ runner.os }}-test-
${{ runner.os }}-
- name: "Install Dependencies and Run Tests"
run: |
import Pkg
Pkg.Registry.update()
# Install packages present in subdirectories
dev_pks = Pkg.PackageSpec[]
for path in ("lib/SciMLJacobianOperators", "lib/BracketingNonlinearSolve", "lib/NonlinearSolveBase", "lib/SimpleNonlinearSolve", "lib/NonlinearSolveFirstOrder", "lib/NonlinearSolveSpectralMethods", "lib/NonlinearSolveQuasiNewton")
push!(dev_pks, Pkg.PackageSpec(; path))
end
Pkg.develop(dev_pks)
Pkg.instantiate()
Pkg.test(; coverage="user")
shell: julia --color=yes --code-coverage=user --depwarn=yes --project=. {0}
env:
GROUP: ${{ matrix.group }}
# Wrapper tests run sequentially to avoid parallel initialization issues with external packages
RETESTITEMS_NWORKERS: ${{ matrix.group == 'wrappers' && '0' || '' }}
- uses: julia-actions/julia-processcoverage@v1
with:
directories: src,ext,lib/SciMLJacobianOperators/src,lib/BracketingNonlinearSolve/src,lib/NonlinearSolveBase/src,lib/NonlinearSolveBase/ext,lib/SimpleNonlinearSolve/src,lib/NonlinearSolveFirstOrder/src,lib/NonlinearSolveSpectralMethods/src,lib/NonlinearSolveQuasiNewton/src
- uses: codecov/codecov-action@v5
with:
file: lcov.info
token: ${{ secrets.CODECOV_TOKEN }}
verbose: true
fail_ci_if_error: false
uses: LuxDL/Lux.jl/.github/workflows/CommonCI.yml@main
with:
julia_version: ${{ matrix.version }}
os: ${{ matrix.os }}
project: "."
local_dependencies: "lib/BracketingNonlinearSolve,lib/NonlinearSolveBase,lib/NonlinearSolveFirstOrder,lib/NonlinearSolveQuasiNewton,lib/NonlinearSolveSpectralMethods,lib/SimpleNonlinearSolve"
test_args: "GROUP=${{ matrix.group }}"

downgrade:
strategy:
fail-fast: false
matrix:
group:
- core
- downstream
- wrappers
- misc
- nopre
uses: LuxDL/Lux.jl/.github/workflows/CommonCI.yml@main
with:
project: "."
julia_version: "1.11"
downgrade_testing: true
test_args: "GROUP=${{ matrix.group }}"
85 changes: 11 additions & 74 deletions .github/workflows/CI_NonlinearSolveBase.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@ concurrency:

jobs:
test:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
Expand All @@ -28,78 +27,16 @@ jobs:
os:
- ubuntu-latest
- macos-latest
steps:
- uses: actions/checkout@v4
- uses: julia-actions/setup-julia@v2
with:
version: ${{ matrix.version }}
- uses: actions/cache@v4
env:
cache-name: cache-artifacts
with:
path: ~/.julia/artifacts
key: ${{ runner.os }}-test-${{ env.cache-name }}-${{ hashFiles('**/Project.toml') }}
restore-keys: |
${{ runner.os }}-test-${{ env.cache-name }}-
${{ runner.os }}-test-
${{ runner.os }}-
- name: "Install Dependencies and Run Tests"
run: |
import Pkg
Pkg.Registry.update()
# Install packages present in subdirectories
dev_pks = Pkg.PackageSpec[]
for path in ("lib/SciMLJacobianOperators",)
push!(dev_pks, Pkg.PackageSpec(; path))
end
Pkg.develop(dev_pks)
Pkg.instantiate()
Pkg.test(; coverage="user")
shell: julia --color=yes --code-coverage=user --depwarn=yes --project=lib/NonlinearSolveBase {0}
- uses: julia-actions/julia-processcoverage@v1
with:
directories: lib/NonlinearSolveBase/src,lib/NonlinearSolveBase/ext,lib/SciMLJacobianOperators/src
- uses: codecov/codecov-action@v5
with:
file: lcov.info
token: ${{ secrets.CODECOV_TOKEN }}
verbose: true
fail_ci_if_error: false
uses: LuxDL/Lux.jl/.github/workflows/CommonCI.yml@main
with:
julia_version: ${{ matrix.version }}
os: ${{ matrix.os }}
project: "lib/NonlinearSolveBase"
local_dependencies: "lib/SciMLJacobianOperators"

downgrade:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
version:
- "1.10"
steps:
- uses: actions/checkout@v4
- uses: julia-actions/setup-julia@v2
with:
version: ${{ matrix.version }}
- uses: julia-actions/julia-downgrade-compat@v2
with:
skip: SciMLJacobianOperators
- name: "Install Dependencies and Run Tests"
run: |
import Pkg
Pkg.Registry.update()
# Install packages present in subdirectories
dev_pks = Pkg.PackageSpec[]
for path in ("lib/SciMLJacobianOperators",)
push!(dev_pks, Pkg.PackageSpec(; path))
end
Pkg.develop(dev_pks)
Pkg.instantiate()
Pkg.test(; coverage="user")
shell: julia --color=yes --code-coverage=user --depwarn=yes --project=lib/NonlinearSolveBase {0}
- uses: julia-actions/julia-processcoverage@v1
with:
directories: lib/NonlinearSolveBase/src,lib/NonlinearSolveBase/ext,lib/SciMLJacobianOperators/src
- uses: codecov/codecov-action@v5
with:
file: lcov.info
token: ${{ secrets.CODECOV_TOKEN }}
verbose: true
fail_ci_if_error: false
uses: LuxDL/Lux.jl/.github/workflows/CommonCI.yml@main
with:
julia_version: "1.11"
project: "lib/NonlinearSolveBase"
downgrade_testing: true
51 changes: 13 additions & 38 deletions .github/workflows/CI_NonlinearSolveFirstOrder.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@ concurrency:

jobs:
test:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
Expand All @@ -29,40 +28,16 @@ jobs:
os:
- ubuntu-latest
- macos-latest
steps:
- uses: actions/checkout@v4
- uses: julia-actions/setup-julia@v2
with:
version: ${{ matrix.version }}
- uses: actions/cache@v4
env:
cache-name: cache-artifacts
with:
path: ~/.julia/artifacts
key: ${{ runner.os }}-test-${{ env.cache-name }}-${{ hashFiles('**/Project.toml') }}
restore-keys: |
${{ runner.os }}-test-${{ env.cache-name }}-
${{ runner.os }}-test-
${{ runner.os }}-
- name: "Install Dependencies and Run Tests"
run: |
import Pkg
Pkg.Registry.update()
# Install packages present in subdirectories
dev_pks = Pkg.PackageSpec[]
for path in ("lib/SciMLJacobianOperators", "lib/NonlinearSolveBase")
push!(dev_pks, Pkg.PackageSpec(; path))
end
Pkg.develop(dev_pks)
Pkg.instantiate()
Pkg.test(; coverage="user")
shell: julia --color=yes --code-coverage=user --depwarn=yes --project=lib/NonlinearSolveFirstOrder {0}
- uses: julia-actions/julia-processcoverage@v1
with:
directories: lib/NonlinearSolveFirstOrder/src,lib/NonlinearSolveBase/src,lib/NonlinearSolveBase/ext,lib/SciMLJacobianOperators/src
- uses: codecov/codecov-action@v5
with:
file: lcov.info
token: ${{ secrets.CODECOV_TOKEN }}
verbose: true
fail_ci_if_error: false
uses: LuxDL/Lux.jl/.github/workflows/CommonCI.yml@main
with:
julia_version: ${{ matrix.version }}
os: ${{ matrix.os }}
project: "lib/NonlinearSolveFirstOrder"
local_dependencies: "lib/NonlinearSolveBase,lib/SciMLJacobianOperators"

downgrade:
uses: LuxDL/Lux.jl/.github/workflows/CommonCI.yml@main
with:
julia_version: "1.11"
project: "lib/NonlinearSolveFirstOrder"
downgrade_testing: true
Loading
Loading