diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 50a4d89..e4d777b 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -30,7 +30,7 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - python-version: ['3.8', '3.9', '3.10', '3.11'] + python-version: ['3.8', '3.9', '3.10', '3.11', '3.12'] os: [ubuntu-20.04, macos-latest] steps: - uses: actions/checkout@v1 @@ -49,7 +49,7 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - python-version: ['3.8', '3.9', '3.10', '3.11'] + python-version: ['3.8', '3.9', '3.10', '3.11', '3.12'] os: [ubuntu-20.04, macos-latest] steps: - uses: actions/checkout@v1 diff --git a/setup.py b/setup.py index 7531381..a7e49e9 100644 --- a/setup.py +++ b/setup.py @@ -12,7 +12,7 @@ history = history_file.read() install_requires = [ - 'Keras>=2.4,<2.15', + 'Keras>=2.4', 'featuretools>=0.6.1,<0.23', 'iso639>=0.1.4,<0.2', 'langdetect>=1.0.7,<2', @@ -21,13 +21,13 @@ 'nltk>=3.3,<4', 'numpy>=1.16.0,<2', 'opencv-python>=3.4.0.12,<4.7', - 'pandas>=1,<2', + 'pandas>=1,<3', 'python-louvain>=0.10,<0.14', # community 'scikit-image>=0.15', 'scikit-learn>=0.21', 'scipy>=1.1.0,<2', 'statsmodels>=0.9.0,<0.15', - 'tensorflow>=2,<2.15', + 'tensorflow>=2,<2.20', 'xgboost>=0.72.1,<2', 'protobuf<4', ] @@ -47,7 +47,7 @@ # general 'bumpversion>=0.5.3,<0.6', 'pip>=9.0.1', - 'watchdog>=0.8.3,<0.11', + 'watchdog>=0.8.3,<5', # docs 'm2r>=0.2.0,<0.3', @@ -103,6 +103,7 @@ 'Programming Language :: Python :: 3.9', 'Programming Language :: Python :: 3.10', 'Programming Language :: Python :: 3.11', + 'Programming Language :: Python :: 3.12', ], description='Pipelines and primitives for machine learning and data science.', entry_points = { @@ -126,7 +127,7 @@ long_description_content_type='text/markdown', name='mlprimitives', packages=find_packages(include=['mlprimitives', 'mlprimitives.*']), - python_requires='>=3.8,<3.12', + python_requires='>=3.8,<3.13', setup_requires=setup_requires, test_suite='tests', tests_require=tests_require, diff --git a/tests/custom/test_feature_extraction.py b/tests/custom/test_feature_extraction.py index c25066b..e5a90f7 100644 --- a/tests/custom/test_feature_extraction.py +++ b/tests/custom/test_feature_extraction.py @@ -35,7 +35,7 @@ class FE(FeatureExtractor): fe.fit(X) assert fe._features == ['b'] - assert fe._detect_features.not_called() + fe._detect_features.assert_not_called() def test_fit_auto_pandas(self): class FE(FeatureExtractor): @@ -52,7 +52,7 @@ class FE(FeatureExtractor): fe.fit(X) assert fe._features == ['a', 'b'] - assert fe._detect_features.called_once_with(X) + fe._detect_features.assert_called_once_with(X) expected_calls = [ ((pd.Series(['a', 'b', 'c']), ), {}), ((pd.Series(['d', 'e', 'f']), ), {}) @@ -74,7 +74,7 @@ class FE(FeatureExtractor): fe.fit(X) assert fe._features == [0, 1] - assert fe._detect_features.called_once_with(X) + assert fe._detect_features.called expected_calls = [ ((pd.Series(['a', 'b', 'c']), ), {}), ((pd.Series(['d', 'e', 'f']), ), {}) diff --git a/tox.ini b/tox.ini index 9a25c4d..ff37e6a 100644 --- a/tox.ini +++ b/tox.ini @@ -1,5 +1,5 @@ [tox] -envlist = py3{8,9,10,11}, test-devel +envlist = py3{8,9,10,11,12}, test-devel [travis] python = @@ -7,6 +7,7 @@ python = 3.9: py39 3.10: py310 3.11: py311 + 3.12: py312 [gh-actions] python = @@ -14,6 +15,7 @@ python = 3.9: py39 3.10: py310 3.11: py311 + 3.12: py312 [testenv] passenv = CI TRAVIS TRAVIS_*