diff --git a/.github/workflows/integration.yml b/.github/workflows/integration.yml index 7804a310..6aac7707 100644 --- a/.github/workflows/integration.yml +++ b/.github/workflows/integration.yml @@ -14,13 +14,13 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - python-version: ['3.8', '3.9', '3.10', '3.11', '3.12'] + python-version: ['3.8', '3.9', '3.10', '3.11', '3.12', '3.13'] os: [ubuntu-latest, windows-latest] include: - os: macos-latest python-version: '3.8' - os: macos-latest - python-version: '3.12' + python-version: '3.13' steps: - uses: actions/checkout@v4 - name: Set up Python ${{ matrix.python-version }} @@ -34,7 +34,7 @@ jobs: - name: Run integration tests run: invoke integration - - if: matrix.os == 'ubuntu-latest' && matrix.python-version == 3.12 + - if: matrix.os == 'ubuntu-latest' && matrix.python-version == 3.13 name: Upload integration codecov report uses: codecov/codecov-action@v4 with: diff --git a/.github/workflows/minimum.yml b/.github/workflows/minimum.yml index 336e003c..510cdb20 100644 --- a/.github/workflows/minimum.yml +++ b/.github/workflows/minimum.yml @@ -14,13 +14,13 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - python-version: ['3.8', '3.9', '3.10', '3.11', '3.12'] + python-version: ['3.8', '3.9', '3.10', '3.11', '3.12', '3.13'] os: [ubuntu-latest, windows-latest] include: - os: macos-latest python-version: '3.8' - os: macos-latest - python-version: '3.12' + python-version: '3.13' steps: - uses: actions/checkout@v4 - name: Set up Python ${{ matrix.python-version }} diff --git a/.github/workflows/readme.yml b/.github/workflows/readme.yml index dcc4389f..883e330a 100644 --- a/.github/workflows/readme.yml +++ b/.github/workflows/readme.yml @@ -10,7 +10,7 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - python-version: ['3.8', '3.9', '3.10', '3.11', '3.12'] + python-version: ['3.8', '3.9', '3.10', '3.11', '3.12', '3.13'] os: [ubuntu-latest, macos-latest] # skip windows bc rundoc fails steps: - uses: actions/checkout@v4 diff --git a/.github/workflows/unit.yml b/.github/workflows/unit.yml index a78fa02f..69742dc2 100644 --- a/.github/workflows/unit.yml +++ b/.github/workflows/unit.yml @@ -14,13 +14,13 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - python-version: ['3.8', '3.9', '3.10', '3.11', '3.12'] + python-version: ['3.8', '3.9', '3.10', '3.11', '3.12', '3.13'] os: [ubuntu-latest, windows-latest] include: - os: macos-latest python-version: '3.8' - os: macos-latest - python-version: '3.12' + python-version: '3.13' steps: - uses: actions/checkout@v4 - name: Set up Python ${{ matrix.python-version }} @@ -36,7 +36,7 @@ jobs: - name: Run Unit tests run: invoke unit - - if: matrix.os == 'ubuntu-latest' && matrix.python-version == 3.12 + - if: matrix.os == 'ubuntu-latest' && matrix.python-version == 3.13 name: Upload unit codecov report uses: codecov/codecov-action@v4 with: diff --git a/INSTALL.md b/INSTALL.md index 5862ec86..0648863f 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -3,7 +3,7 @@ ## Requirements **RDT** has been developed and tested on -[Python 3.8, 3.9, 3.10, 3.11 and 3.12](https://www.python.org/downloads/) +[Python 3.8, 3.9, 3.10, 3.11, 3.12, and 3.13](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 diff --git a/pyproject.toml b/pyproject.toml index 6b4b0f3d..e5117cea 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -13,27 +13,32 @@ classifiers = [ 'Programming Language :: Python :: 3.10', 'Programming Language :: Python :: 3.11', 'Programming Language :: Python :: 3.12', + 'Programming Language :: Python :: 3.13', 'Topic :: Scientific/Engineering :: Artificial Intelligence', ] keywords = ['machine learning', 'synthetic data generation', 'benchmark', 'generative models'] dynamic = ['version'] license = { text = 'BSL-1.1' } -requires-python = '>=3.8,<3.13' +requires-python = '>=3.8,<3.14' 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'", + "numpy>=1.26.0;python_version>='3.12' and python_version<'3.13'", + "numpy>=2.1.0;python_version>='3.13'", "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'", + "pandas>=2.1.1;python_version>='3.12' and python_version<'3.13'", + "pandas>=2.2.3;python_version>='3.13'", "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'", + "scipy>=1.12.0;python_version>='3.12' and python_version<'3.13'", + "scipy>=1.14.1;python_version>='3.13'", "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'", + "scikit-learn>=1.3.1;python_version>='3.12' and python_version<'3.13'", + "scikit-learn>=1.5.2;python_version>='3.13'", 'Faker>=17', ] @@ -48,7 +53,7 @@ dependencies = [ rdt = { main = 'rdt.cli.__main__:main' } [project.optional-dependencies] -copulas = ['copulas>=0.12.0',] +copulas = ['copulas>=0.12.1',] pyarrow = ['pyarrow>=17.0.0'] test = [ 'rdt[pyarrow]', diff --git a/tox.ini b/tox.ini index 245932a9..3c846b1a 100644 --- a/tox.ini +++ b/tox.ini @@ -1,5 +1,5 @@ [tox] -envlist = py39-lint, py39-performance, py3{8,9,10,11,12}-{readme,unit,integration,minimum} +envlist = py39-lint, py39-performance, py3{8,9,10,11,12,13}-{readme,unit,integration,minimum} [testenv] skipsdist = false