Skip to content

Commit 2672fbd

Browse files
Merge pull request #89 from SciML/dw/subpackages
Split DiffEqProblemLibrary into subpackages
2 parents 67f3466 + 5052f5e commit 2672fbd

39 files changed

+348
-197
lines changed

.github/workflows/CI.yml

Lines changed: 26 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,39 +1,50 @@
11
name: CI
2+
23
on:
34
pull_request:
45
branches:
56
- master
67
push:
78
branches:
89
- master
10+
11+
concurrency:
12+
# Skip intermediate builds: always.
13+
# Cancel intermediate builds: only if it is a pull request build.
14+
group: ${{ github.workflow }}-${{ github.ref }}
15+
cancel-in-progress: ${{ startsWith(github.ref, 'refs/pull/') }}
16+
917
jobs:
1018
test:
1119
runs-on: ubuntu-latest
1220
strategy:
21+
fail-fast: false
1322
matrix:
14-
group:
15-
- Core
23+
pkg:
24+
- DiffEqProblemLibrary
25+
- DAEProblemLibrary
26+
- DDEProblemLibrary
27+
- JumpProblemLibrary
28+
- ODEProblemLibrary
29+
- SDEProblemLibrary
1630
version:
1731
- '1'
1832
- '1.6'
1933
steps:
20-
- uses: actions/checkout@v2
34+
- uses: actions/checkout@v3
2135
- uses: julia-actions/setup-julia@v1
2236
with:
2337
version: ${{ matrix.version }}
24-
- uses: actions/cache@v1
25-
env:
26-
cache-name: cache-artifacts
27-
with:
28-
path: ~/.julia/artifacts
29-
key: ${{ runner.os }}-test-${{ env.cache-name }}-${{ hashFiles('**/Project.toml') }}
30-
restore-keys: |
31-
${{ runner.os }}-test-${{ env.cache-name }}-
32-
${{ runner.os }}-test-
33-
${{ runner.os }}-
38+
- uses: julia-actions/cache@v1
3439
- uses: julia-actions/julia-buildpkg@v1
40+
with:
41+
project: "${{ matrix.pkg == 'DiffEqProblemLibrary' && '.' || format('lib/{0}', matrix.pkg) }}"
3542
- uses: julia-actions/julia-runtest@v1
43+
with:
44+
project: "${{ matrix.pkg == 'DiffEqProblemLibrary' && '.' || format('lib/{0}', matrix.pkg) }}"
3645
- uses: julia-actions/julia-processcoverage@v1
37-
- uses: codecov/codecov-action@v1
3846
with:
39-
file: lcov.info
47+
directories: "${{ matrix.pkg == 'DiffEqProblemLibrary' && 'src' || format('lib/{0}/src', matrix.pkg) }}"
48+
- uses: codecov/codecov-action@v3
49+
with:
50+
files: lcov.info

.github/workflows/CompatHelper.yml

Lines changed: 43 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,51 @@
11
name: CompatHelper
2-
32
on:
43
schedule:
5-
- cron: '00 * * * *'
6-
issues:
7-
types: [opened, reopened]
8-
4+
- cron: 0 0 * * *
5+
workflow_dispatch:
6+
permissions:
7+
contents: write
8+
pull-requests: write
99
jobs:
10-
build:
11-
runs-on: ${{ matrix.os }}
12-
strategy:
13-
matrix:
14-
julia-version: [1]
15-
julia-arch: [x86]
16-
os: [ubuntu-latest]
10+
CompatHelper:
11+
runs-on: ubuntu-latest
1712
steps:
18-
- uses: julia-actions/setup-julia@latest
13+
- name: Check if Julia is already available in the PATH
14+
id: julia_in_path
15+
run: which julia
16+
continue-on-error: true
17+
- name: Install Julia, but only if it is not already available in the PATH
18+
uses: julia-actions/setup-julia@v1
1919
with:
20-
version: ${{ matrix.julia-version }}
21-
- name: Pkg.add("CompatHelper")
22-
run: julia -e 'using Pkg; Pkg.add("CompatHelper")'
23-
- name: CompatHelper.main()
20+
version: '1'
21+
arch: ${{ runner.arch }}
22+
if: steps.julia_in_path.outcome != 'success'
23+
- name: "Add the General registry via Git"
24+
run: |
25+
import Pkg
26+
ENV["JULIA_PKG_SERVER"] = ""
27+
Pkg.Registry.add("General")
28+
shell: julia --color=yes {0}
29+
- name: "Install CompatHelper"
30+
run: |
31+
import Pkg
32+
name = "CompatHelper"
33+
uuid = "aa819f21-2bde-4658-8897-bab36330d9b7"
34+
version = "3"
35+
Pkg.add(; name, uuid, version)
36+
shell: julia --color=yes {0}
37+
- name: "Run CompatHelper"
38+
run: |
39+
import CompatHelper
40+
subdirs = [""]
41+
for f in readdir("lib"; join=true)
42+
if isdir(f)
43+
push!(subdirs, f)
44+
end
45+
end
46+
@info "CompatHelper directories" subdirs
47+
CompatHelper.main(; subdirs)
48+
shell: julia --color=yes {0}
2449
env:
2550
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
26-
run: julia -e 'using CompatHelper; CompatHelper.main()'
51+
COMPATHELPER_PRIV: ${{ secrets.DOCUMENTER_KEY }}

.github/workflows/FormatCheck.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,12 @@ on:
88
tags: '*'
99
pull_request:
1010

11+
concurrency:
12+
# Skip intermediate builds: always.
13+
# Cancel intermediate builds: only if it is a pull request build.
14+
group: ${{ github.workflow }}-${{ github.ref }}
15+
cancel-in-progress: ${{ startsWith(github.ref, 'refs/pull/') }}
16+
1117
jobs:
1218
build:
1319
runs-on: ubuntu-latest

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
*.jl.cov
22
*.jl.*.cov
33
*.jl.mem
4-
/Manifest.toml
4+
Manifest.toml

Project.toml

Lines changed: 11 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,19 @@
11
name = "DiffEqProblemLibrary"
22
uuid = "a077e3f3-b75c-5d7f-a0c6-6bc4c8ec64a9"
33
authors = ["Chris Rackauckas <[email protected]>"]
4-
version = "4.17.0"
4+
version = "5.0.0"
55

66
[deps]
7-
Catalyst = "479239e8-5488-4da2-87a7-35f2df7eef83"
8-
DiffEqBase = "2b5f629d-d688-5b77-993f-72d75c75574e"
9-
DiffEqOperators = "9fdde737-9c7f-55bf-ade8-46b3f136cc48"
10-
Latexify = "23fbe1c1-3f47-55db-b15f-69d7ec21a316"
11-
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
12-
Markdown = "d6f4376e-aef5-505a-96c1-9c027394607a"
13-
ModelingToolkit = "961ee093-0014-501f-94e3-6117800e7a78"
14-
Random = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c"
7+
DAEProblemLibrary = "dfb8ca35-80a1-48ba-a605-84916a45b4f8"
8+
DDEProblemLibrary = "f42792ee-6ffc-4e2a-ae83-8ee2f22de800"
9+
JumpProblemLibrary = "faf0f6d7-8cee-47cb-b27c-1eb80cef534e"
10+
ODEProblemLibrary = "fdc4e326-1af4-4b90-96e7-779fcce2daa5"
11+
SDEProblemLibrary = "c72e72a9-a271-4b2b-8966-303ed956772e"
1512

1613
[compat]
17-
Catalyst = "11, 12"
18-
DiffEqBase = "6"
19-
DiffEqOperators = "4"
20-
Latexify = "0.15"
21-
ModelingToolkit = "7,8"
14+
DAEProblemLibrary = "0.1"
15+
DDEProblemLibrary = "0.1"
16+
JumpProblemLibrary = "0.1"
17+
ODEProblemLibrary = "0.1"
18+
SDEProblemLibrary = "0.1"
2219
julia = "1.6"
23-
24-
[extras]
25-
Test = "8dfed614-e22c-5e08-85e1-65c5234f0b40"
26-
27-
[targets]
28-
test = ["Test"]

lib/DAEProblemLibrary/LICENSE

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
MIT License
2+
3+
Copyright (c) 2022 SciML
4+
Copyright (c) 2016 Chris Rackauckas
5+
6+
Permission is hereby granted, free of charge, to any person obtaining a copy
7+
of this software and associated documentation files (the "Software"), to deal
8+
in the Software without restriction, including without limitation the rights
9+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10+
copies of the Software, and to permit persons to whom the Software is
11+
furnished to do so, subject to the following conditions:
12+
13+
The above copyright notice and this permission notice shall be included in all
14+
copies or substantial portions of the Software.
15+
16+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22+
SOFTWARE.

lib/DAEProblemLibrary/Project.toml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
name = "DAEProblemLibrary"
2+
uuid = "dfb8ca35-80a1-48ba-a605-84916a45b4f8"
3+
version = "0.1.0"
4+
5+
[deps]
6+
DiffEqBase = "2b5f629d-d688-5b77-993f-72d75c75574e"
7+
Markdown = "d6f4376e-aef5-505a-96c1-9c027394607a"
8+
9+
[compat]
10+
DiffEqBase = "6"
11+
julia = "1.6"

src/dae_premade_problems.jl renamed to lib/DAEProblemLibrary/src/DAEProblemLibrary.jl

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
module DAEProblemLibrary
2+
13
using DiffEqBase, Markdown
24

35
#DAE Example Problems
@@ -31,3 +33,5 @@ Hairer Norsett Wanner Solving Ordinary Differential Equations I - Nonstiff Probl
3133
Usually solved on ``[0,1e11]``
3234
"""
3335
prob_dae_resrob = DAEProblem(f, du0, u0, (0.0, 100000.0))
36+
37+
end # module
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# The test is simply that all of the examples build!
2+
using DAEProblemLibrary

lib/DDEProblemLibrary/LICENSE

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
MIT License
2+
3+
Copyright (c) 2022 SciML
4+
Copyright (c) 2016 Chris Rackauckas
5+
6+
Permission is hereby granted, free of charge, to any person obtaining a copy
7+
of this software and associated documentation files (the "Software"), to deal
8+
in the Software without restriction, including without limitation the rights
9+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10+
copies of the Software, and to permit persons to whom the Software is
11+
furnished to do so, subject to the following conditions:
12+
13+
The above copyright notice and this permission notice shall be included in all
14+
copies or substantial portions of the Software.
15+
16+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22+
SOFTWARE.

0 commit comments

Comments
 (0)