Skip to content

Commit af842b5

Browse files
matbesanconzstevedevmotion
authored
Update compatibility bounds, fixed tolerances and issues in quadratic regularization (#194)
* update compat bounds * update buildkite julia ver * rollback * fix approx tol * action update * action all update * various bounds * atol * remove * Apply suggestions from code review * More updates * Use conda installation on buildkite * Remove Manifest.toml files * Update .gitignore * Update examples/nmf/Project.toml * Run CI on macOS * Use `sources` in Project.toml * atol on gpu test * Remove `strict` kwarg from `makedocs` * Add julia cache to docs CI * fix f32 * Update test/gpu/simple_gpu.jl Co-authored-by: David Widmann <[email protected]> * Fix (?) convergence criterion * Fix (?) sign error * A few more changes * More fixes * Revert a few changes * Don't use `mul!` * Update simple_gpu.jl * Update regularization parameter in the test * Update src/quadratic_newton.jl * Try to revert GPU tests * Fix format action * Fix and improve tests * formatting * typo * Fix format * Set permissions for GH actions --------- Co-authored-by: syz <[email protected]> Co-authored-by: David Widmann <[email protected]>
1 parent 9da044c commit af842b5

34 files changed

+187
-6389
lines changed

.buildkite/pipeline.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,3 +14,4 @@ steps:
1414

1515
env:
1616
GROUP: GPU
17+
PYTHON: ""

.github/workflows/CI.yml

Lines changed: 22 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -12,59 +12,53 @@ concurrency:
1212
group: ${{ github.workflow }}-${{ github.ref }}
1313
cancel-in-progress: ${{ startsWith(github.ref, 'refs/pull/') }}
1414

15+
# needed to allow julia-actions/cache to delete old caches that it has created
16+
permissions:
17+
actions: write
18+
contents: read
19+
1520
jobs:
1621
test:
17-
name: Julia ${{ matrix.version }} - ${{ matrix.os }} - ${{ matrix.arch }}
22+
name: Julia ${{ matrix.version }} - ${{ matrix.os }}
1823
runs-on: ${{ matrix.os }}
19-
continue-on-error: ${{ matrix.version == 'nightly' }}
24+
continue-on-error: ${{ matrix.version == 'pre' }}
2025
strategy:
2126
matrix:
2227
version:
23-
- '1.6'
28+
- 'min'
29+
- 'lts'
2430
- '1'
25-
- 'nightly'
31+
- 'pre'
2632
os:
2733
- ubuntu-latest
34+
- macOS-latest
2835
- windows-latest
29-
arch:
30-
- x64
3136
steps:
32-
- uses: actions/checkout@v2
37+
- uses: actions/checkout@v4
3338
- name: Install python
34-
uses: actions/setup-python@v2
39+
uses: actions/setup-python@v5
3540
with:
36-
python-version: '3.9'
37-
architecture: ${{ matrix.arch }}
41+
python-version: '3.13'
3842
- run: python -m pip install pot
39-
- uses: julia-actions/setup-julia@v1
43+
- uses: julia-actions/setup-julia@v2
4044
with:
4145
version: ${{ matrix.version }}
42-
arch: ${{ matrix.arch }}
43-
- uses: actions/cache@v1
44-
env:
45-
cache-name: cache-artifacts
46-
with:
47-
path: ~/.julia/artifacts
48-
key: ${{ runner.os }}-test-${{ env.cache-name }}-${{ hashFiles('**/Project.toml') }}
49-
restore-keys: |
50-
${{ runner.os }}-test-${{ env.cache-name }}-
51-
${{ runner.os }}-test-
52-
${{ runner.os }}-
53-
- uses: julia-actions/julia-buildpkg@latest
54-
- uses: julia-actions/julia-runtest@latest
46+
- uses: julia-actions/cache@v2
47+
- uses: julia-actions/julia-buildpkg@v1
48+
- uses: julia-actions/julia-runtest@v1
5549
with:
5650
coverage: ${{ matrix.version == '1' && matrix.os == 'ubuntu-latest' }}
5751
env:
5852
PYTHON: python
5953
GROUP: OptimalTransport
6054
- uses: julia-actions/julia-processcoverage@v1
6155
if: matrix.version == '1' && matrix.os == 'ubuntu-latest'
62-
- uses: codecov/codecov-action@v2
56+
- uses: codecov/codecov-action@v5
6357
if: matrix.version == '1' && matrix.os == 'ubuntu-latest'
6458
with:
65-
file: lcov.info
66-
- uses: coverallsapp/github-action@master
59+
files: lcov.info
60+
- uses: coverallsapp/github-action@v2
6761
if: matrix.version == '1' && matrix.os == 'ubuntu-latest'
6862
with:
6963
github-token: ${{ secrets.GITHUB_TOKEN }}
70-
path-to-lcov: lcov.info
64+
file: lcov.info

.github/workflows/CompatHelper.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ jobs:
77
CompatHelper:
88
runs-on: ubuntu-latest
99
steps:
10-
- uses: actions/checkout@v2 # to determine subdirectories of examples
10+
- uses: actions/checkout@v4 # to determine subdirectories of examples
1111
- name: "Add the General registry via Git"
1212
run: |
1313
import Pkg

.github/workflows/DocsPreviewCleanup.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ jobs:
99
runs-on: ubuntu-latest
1010
steps:
1111
- name: Checkout gh-pages branch
12-
uses: actions/checkout@v2
12+
uses: actions/checkout@v4
1313
with:
1414
ref: gh-pages
1515
- name: Delete preview and history + push changes

.github/workflows/Documentation.yml

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,20 +13,32 @@ concurrency:
1313
group: ${{ github.workflow }}-${{ github.ref }}
1414
cancel-in-progress: ${{ startsWith(github.ref, 'refs/pull/') }}
1515

16+
permissions:
17+
actions: write
18+
contents: read
19+
1620
jobs:
1721
build:
22+
# These permissions are needed to:
23+
# - Deploy the documentation: https://documenter.juliadocs.org/stable/man/hosting/#Permissions
24+
# - Delete old caches: https://github.com/julia-actions/cache#usage
25+
permissions:
26+
actions: write
27+
contents: write
28+
pull-requests: read
29+
statuses: write
1830
runs-on: ubuntu-latest
1931
steps:
20-
- uses: actions/checkout@v2
32+
- uses: actions/checkout@v4
2133
- name: Install python
22-
uses: actions/setup-python@v2
34+
uses: actions/setup-python@v5
2335
with:
24-
python-version: '3.9'
25-
architecture: ${{ matrix.arch }}
36+
python-version: '3.13'
2637
- run: python -m pip install pot
27-
- uses: julia-actions/setup-julia@latest
38+
- uses: julia-actions/setup-julia@v2
2839
with:
2940
version: '1'
41+
- uses: julia-actions/cache@v2
3042
- name: Install dependencies
3143
run: |
3244
using Pkg: Pkg

.github/workflows/Format.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ jobs:
77
format:
88
runs-on: ubuntu-latest
99
steps:
10-
- uses: actions/checkout@v2
11-
- uses: julia-actions/setup-julia@latest
10+
- uses: actions/checkout@v4
11+
- uses: julia-actions/setup-julia@v2
1212
with:
1313
version: 1
1414
- name: Format code
@@ -21,4 +21,4 @@ jobs:
2121
- uses: reviewdog/action-suggester@v1
2222
with:
2323
tool_name: JuliaFormatter
24-
fail_on_error: true
24+
fail_level: error

.gitignore

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,7 @@ docs/src/examples/
2626
# It records a fixed state of all packages used by the project. As such, it should not be
2727
# committed for packages, but should be committed for applications that require a static
2828
# environment.
29-
/Manifest.toml
30-
/test/Manifest.toml
31-
/test/gpu/Manifest.toml
29+
Manifest.toml
3230

3331
# Files generated by Jupyter Notebooks
3432
*.ipynb_checkpoints
@@ -38,3 +36,6 @@ docs/src/examples/
3836
*~undo-tree~*
3937
\#*\#
4038
.\#*
39+
40+
# VS Code settings
41+
.vscode/*

Project.toml

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
name = "OptimalTransport"
22
uuid = "7e02d93a-ae51-4f58-b602-d97af76e3b33"
33
authors = ["zsteve <[email protected]>"]
4-
version = "0.3.20"
4+
version = "0.3.21"
55

66
[deps]
77
ExactOptimalTransport = "24df6009-d856-477c-ac5c-91f668376b31"
@@ -12,12 +12,14 @@ NNlib = "872c559c-99b0-510c-b3b7-b6c96a88d5cd"
1212
Reexport = "189a3867-3050-52da-a836-e630ba90ab69"
1313

1414
[compat]
15-
ExactOptimalTransport = "0.1, 0.2"
16-
IterativeSolvers = "0.8.4, 0.9"
17-
LogExpFunctions = "0.2, 0.3"
18-
NNlib = "0.6, 0.7, 0.8"
15+
Distances = "0.10"
16+
ExactOptimalTransport = "0.2"
17+
IterativeSolvers = "0.9"
18+
LogExpFunctions = "0.3"
19+
NNlib = "0.9"
20+
PythonOT = "0.1"
1921
Reexport = "1"
20-
julia = "1"
22+
julia = "1.10"
2123

2224
[extras]
2325
Distances = "b4f34e82-e78d-54a5-968a-f98e89d6e8f7"

0 commit comments

Comments
 (0)