Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
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
9 changes: 4 additions & 5 deletions .github/workflows/checks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,10 @@ jobs:
- python-version: '3.12'
- python-version: '3.13'
- python-version: '3.14' # To actually run the default config
# cvxpy is excluded on Python 3.15 because one of its dependencies (sparsediffpy<0.7) has no
# cp315 wheel and can't be built without BLAS.
- python-version: '3.15'
options: 'quadprog_projector fairgrad'
# OS variations
- os: macOS-latest
- os: windows-latest
Expand All @@ -46,11 +50,6 @@ jobs:
extra_groups: 'lower_bounds'
# Latest: torch nightly build.
- torch_channel: 'nightly'
# Upcoming Python version, not yet supported by stable torch. cvxpy is excluded because one
# of its dependencies (sparsediffpy) has no wheel yet and can't be built without BLAS.
- python-version: '3.15'
torch_channel: 'nightly'
options: 'quadprog_projector fairgrad'

steps:
- name: Checkout repository
Expand Down
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,10 @@ changelog does not include internal changes that do not affect the user.

## [Unreleased]

### Added

- Added Python 3.15 classifier in pyproject.toml (we now also run tests on Python 3.15 in the CI).

### Fixed

- Fixed `Krum` and `KrumWeighting` ranking rows by sums of Euclidean distances instead of
Expand Down
6 changes: 5 additions & 1 deletion docs/source/installation.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
:end-before: <!-- end installation -->
```

Note that `torchjd` requires Python 3.10, 3.11, 3.12, 3.13 or 3.14 and `torch>=2.0`.
Note that `torchjd` requires Python 3.10, 3.11, 3.12, 3.13, 3.14 or 3.15 and `torch>=2.0`.

Some aggregators have additional dependencies that are not included by default when installing
`torchjd`. The following table lists the optional dependency groups and the aggregators they enable:
Expand All @@ -20,3 +20,7 @@ To install `torchjd` with all of its optional dependencies, you can also use:
```
pip install "torchjd[full]"
```

Note that on Python 3.15, [cvxpy](https://github.com/cvxpy/cvxpy/) doesn't provide wheels yet, so
installing `cagrad`, `nash_mtl` or `full` requires building some of its dependencies from source
(which needs a BLAS library).
1 change: 1 addition & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ classifiers = [
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
"Programming Language :: Python :: 3.15",
"Topic :: Scientific/Engineering",
"Topic :: Scientific/Engineering :: Artificial Intelligence",
]
Expand Down
Loading