diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index de04a89c1..2119be6c1 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -36,6 +36,9 @@ on: #- review_request_removed #- auto_merge_enabled #- auto_merge_disabled + push: + branches: + - master # jobs define the steps that will be executed on the runner jobs: @@ -44,8 +47,9 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - # python versions for elephant: [3.6, 3.7, 3.8, 3.9] - python-version: [3.6, 3.7, 3.8, 3.9] + # python versions for elephant: [3.7, 3.8, 3.9, "3.10"] + python-version: [3.7, 3.8, 3.9, "3.10"] + # OS [ubuntu-latest, macos-latest, windows-latest] os: [ubuntu-latest] @@ -214,7 +218,8 @@ jobs: strategy: matrix: # python versions for elephant: [3.6, 3.7, 3.8, 3.9] - python-version: [3.6] + python-version: [3.9] + # OS [ubuntu-latest, macos-latest, windows-latest] os: [ubuntu-latest] @@ -282,7 +287,6 @@ jobs: run: | # $CONDA is an environment variable pointing to the root of the miniconda directory echo $CONDA/bin >> $GITHUB_PATH - sudo apt install -y libopenmpi-dev openmpi-bin - name: Cache pip uses: actions/cache@v2 @@ -301,6 +305,7 @@ jobs: conda env update --file requirements/environment-docs.yml --name base conda install -c conda-forge openmpi conda install -c conda-forge pandoc + pip install -e .[extras] # run notebooks sed -i -E "s/nbsphinx_execute *=.*/nbsphinx_execute = 'always'/g" doc/conf.py @@ -313,4 +318,4 @@ jobs: - name: make html run: | cd doc - make html \ No newline at end of file + make html diff --git a/.github/workflows/build_wheels.yml b/.github/workflows/build_wheels.yml index 46cd527d8..22cb9f3b5 100644 --- a/.github/workflows/build_wheels.yml +++ b/.github/workflows/build_wheels.yml @@ -25,7 +25,7 @@ jobs: - uses: actions/setup-python@v2 - name: Install cibuildwheel - run: python -m pip install cibuildwheel==1.10.0 + run: python -m pip install cibuildwheel==2.3.1 - name: Install libomp if: runner.os == 'macOS' @@ -34,8 +34,8 @@ jobs: - name: Build wheels run: python -m cibuildwheel --output-dir wheelhouse env: - CIBW_SKIP: "cp27-* cp33-* cp34-* cp35-* pp*" - CIBW_PROJECT_REQUIRES_PYTHON: ">=3.6" + CIBW_SKIP: "cp27-* cp33-* cp34-* cp35-* cp36-* pp*" + CIBW_PROJECT_REQUIRES_PYTHON: ">=3.7" CIBW_ARCHS: "auto64" - uses: actions/upload-artifact@v2 diff --git a/.travis.yml b/.travis.yml index 70df09a2e..ddfb4bcfe 100644 --- a/.travis.yml +++ b/.travis.yml @@ -8,8 +8,8 @@ addons: matrix: include: - - name: "conda 3.6 extras,opencl" - python: 3.6 + - name: "conda 3.7 extras,opencl" + python: 3.7 env: DISTRIB="conda" before_install: sudo apt install -y libopenmpi-dev openmpi-bin before_script: @@ -32,7 +32,7 @@ matrix: env: DISTRIB="pip" - name: "docs" - python: 3.6 + python: 3.7 env: DISTRIB="conda" before_install: sudo apt install -y libopenmpi-dev openmpi-bin before_script: diff --git a/doc/install.rst b/doc/install.rst index 541e44565..98e2b09ee 100644 --- a/doc/install.rst +++ b/doc/install.rst @@ -14,7 +14,7 @@ Below is the explanation of how to proceed with these two steps. Prerequisites ************* -Elephant requires `Python `_ 3.6, 3.7, 3.8, or 3.9. +Elephant requires `Python `_ 3.7, 3.8, 3.9 or 3.10. .. tabs:: diff --git a/requirements/environment-docs.yml b/requirements/environment-docs.yml index c9da5d22c..2068f16e5 100644 --- a/requirements/environment-docs.yml +++ b/requirements/environment-docs.yml @@ -4,7 +4,8 @@ channels: - conda-forge # required for MPI dependencies: - - python>=3.6 + - python>=3.7 + - mpi4py - numpy - scipy diff --git a/requirements/environment-tests.yml b/requirements/environment-tests.yml index c9da5d22c..2068f16e5 100644 --- a/requirements/environment-tests.yml +++ b/requirements/environment-tests.yml @@ -4,7 +4,8 @@ channels: - conda-forge # required for MPI dependencies: - - python>=3.6 + - python>=3.7 + - mpi4py - numpy - scipy diff --git a/requirements/environment.yml b/requirements/environment.yml index c9da5d22c..00f3e8cc4 100644 --- a/requirements/environment.yml +++ b/requirements/environment.yml @@ -4,7 +4,7 @@ channels: - conda-forge # required for MPI dependencies: - - python>=3.6 + - python>=3.7 - mpi4py - numpy - scipy diff --git a/setup.py b/setup.py index 57ab67d43..ed2c0f1f7 100644 --- a/setup.py +++ b/setup.py @@ -29,12 +29,12 @@ '-Dfim_EXPORTS', '-fopenmp', '/std:c++17']) elif platform.system() == "Darwin": fim_module = Extension( - name = 'elephant.spade_src.fim', - sources = ['elephant/spade_src/src/fim.cpp'], - include_dirs = ['elephant/spade_src/include'], - language = 'c++', - libraries = ['pthread', 'omp'], - extra_compile_args = [ + name='elephant.spade_src.fim', + sources=['elephant/spade_src/src/fim.cpp'], + include_dirs=['elephant/spade_src/include'], + language='c++', + libraries=['pthread', 'omp'], + extra_compile_args=[ '-DMODULE_NAME=fim', '-DUSE_OPENMP', '-DWITH_SIG_TERM', '-Dfim_EXPORTS', '-O3', '-pedantic', '-Wextra', '-Weffc++', '-Wunused-result', '-Werror', '-Werror=return-type', @@ -67,13 +67,18 @@ long_description=long_description, license="BSD", url='http://python-elephant.org', + python_requires=">=3.7", classifiers=[ 'Development Status :: 5 - Production/Stable', 'Intended Audience :: Science/Research', 'License :: OSI Approved :: BSD License', 'Natural Language :: English', 'Operating System :: OS Independent', - 'Programming Language :: Python :: 2', 'Programming Language :: Python :: 3', + 'Programming Language :: Python :: 3.7', + 'Programming Language :: Python :: 3.8', + 'Programming Language :: Python :: 3.9', + 'Programming Language :: Python :: 3.10', + 'Programming Language :: Python :: 3 :: Only', 'Topic :: Scientific/Engineering'] )