Skip to content
Open
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
6 changes: 3 additions & 3 deletions .github/workflows/integration.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,13 +14,13 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13']
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13', '3.14']
os: [ubuntu-latest, windows-latest]
include:
- os: macos-latest
python-version: '3.9'
- os: macos-latest
python-version: '3.13'
python-version: '3.14'
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
Expand All @@ -34,7 +34,7 @@ jobs:
- name: Run integration tests
run: invoke integration

- if: matrix.os == 'ubuntu-latest' && matrix.python-version == 3.13
- if: matrix.os == 'ubuntu-latest' && matrix.python-version == 3.14
name: Upload integration codecov report
uses: codecov/codecov-action@v4
with:
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/minimum.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,13 +14,13 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13']
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13', '3.14']
os: [ubuntu-latest, windows-latest]
include:
- os: macos-latest
python-version: '3.9'
- os: macos-latest
python-version: '3.13'
python-version: '3.14'
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/prepare_release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ jobs:
run: |
python -m pip install --upgrade pip
python -m pip install requests==2.31.0
python -m pip install bandit==1.7.7
python -m pip install bandit==1.9.2
python -m pip install packaging
python -m pip install .[test]

Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/readme.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,17 +4,17 @@ on:
push:
pull_request:
types: [opened, reopened]

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
readme:
runs-on: ${{ matrix.os }}
strategy:
matrix:
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13']
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13', '3.14']
os: [ubuntu-latest, macos-latest] # skip windows bc rundoc fails
steps:
- uses: actions/checkout@v4
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/unit.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,13 +14,13 @@ jobs:
runs-on: ${{ matrix.os }}
strategy:
matrix:
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13']
python-version: ['3.9', '3.10', '3.11', '3.12', '3.13', '3.14']
os: [ubuntu-latest, windows-latest]
include:
- os: macos-latest
python-version: '3.9'
- os: macos-latest
python-version: '3.13'
python-version: '3.14'
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
Expand All @@ -36,7 +36,7 @@ jobs:
- name: Run Unit tests
run: invoke unit

- if: matrix.os == 'ubuntu-latest' && matrix.python-version == 3.13
- if: matrix.os == 'ubuntu-latest' && matrix.python-version == 3.14
name: Upload unit codecov report
uses: codecov/codecov-action@v4
with:
Expand Down
2 changes: 1 addition & 1 deletion INSTALL.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
## Requirements

**RDT** has been developed and tested on
[Python 3.9, 3.10, 3.11, 3.12, and 3.13](https://www.python.org/downloads/)
[Python 3.9, 3.10, 3.11, 3.12, 3.13 and 3.14](https://www.python.org/downloads/)

Also, although it is not strictly required, the usage of a [virtualenv](
https://virtualenv.pypa.io/en/latest/) is highly recommended in order to avoid
Expand Down
20 changes: 14 additions & 6 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -13,31 +13,36 @@ classifiers = [
'Programming Language :: Python :: 3.11',
'Programming Language :: Python :: 3.12',
'Programming Language :: Python :: 3.13',
'Programming Language :: Python :: 3.14',
'Topic :: Scientific/Engineering :: Artificial Intelligence',
]
keywords = ['machine learning', 'synthetic data generation', 'benchmark', 'generative models']
dynamic = ['version']
license = { text = 'BSL-1.1' }
requires-python = '>=3.9,<3.14'
requires-python = '>=3.9,<3.15'
readme = 'README.md'
dependencies = [
"numpy>=1.21.0;python_version<'3.10'",
"numpy>=1.23.3;python_version>='3.10' and python_version<'3.12'",
"numpy>=1.26.0;python_version>='3.12' and python_version<'3.13'",
"numpy>=2.1.0;python_version>='3.13'",
"numpy>=2.1.0;python_version>='3.13' and python_version<'3.14'",
"numpy>=2.3.2;python_version>='3.14'",
"pandas>=1.4.0;python_version<'3.11'",
"pandas>=1.5.0;python_version>='3.11' and python_version<'3.12'",
"pandas>=2.1.1;python_version>='3.12' and python_version<'3.13'",
"pandas>=2.2.3;python_version>='3.13'",
"pandas>=2.2.3;python_version>='3.13' and python_version<'3.14'",
"pandas>=2.3.3;python_version>='3.14'",
"scipy>=1.7.3;python_version<'3.10'",
"scipy>=1.9.2;python_version>='3.10' and python_version<'3.12'",
"scipy>=1.12.0;python_version>='3.12' and python_version<'3.13'",
"scipy>=1.14.1;python_version>='3.13'",
"scipy>=1.14.1;python_version>='3.13' and python_version<'3.14'",
"scipy>=1.16.1;python_version>='3.14'",
"scikit-learn>=1.0.2;python_version<'3.10'",
"scikit-learn>=1.1.0;python_version>='3.10' and python_version<'3.11'",
"scikit-learn>=1.1.3;python_version>='3.11' and python_version<'3.12'",
"scikit-learn>=1.3.1;python_version>='3.12' and python_version<'3.13'",
"scikit-learn>=1.5.2;python_version>='3.13'",
"scikit-learn>=1.5.2;python_version>='3.13' and python_version<'3.14'",
"scikit-learn>=1.8.0;python_version>='3.14'",
'Faker>=17, !=37.11.0',
'python-dateutil>=2.9',
]
Expand All @@ -53,7 +58,10 @@ dependencies = [
rdt = { main = 'rdt.cli.__main__:main' }

[project.optional-dependencies]
copulas = ['copulas>=0.12.1',]
copulas = [
"copulas>=0.12.1;python_version<'3.14'",
"copulas>=0.14.0;python_version>='3.14'",
]
pyarrow = ['pyarrow>=17.0.0',]
test = [
'rdt[pyarrow]',
Expand Down
2 changes: 2 additions & 0 deletions tasks.py
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,8 @@ def _get_minimum_versions(dependencies, python_version):
(spec.version for spec in req.specifier if spec.operator in ('>=', '==')),
existing_version,
)
if isinstance(new_version, str):
new_version = Version(new_version)
if new_version > existing_version:
min_versions[req.name] = (
f'{req.name}=={new_version}' # Change when a valid newer version is found
Expand Down